diff --git a/.github/workflows/psql.yml b/.github/workflows/psql.yml index d2edb7a0c..4e0e3ed46 100644 --- a/.github/workflows/psql.yml +++ b/.github/workflows/psql.yml @@ -48,7 +48,7 @@ jobs: test: strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] arch: ["x86_64"] runs-on: ubuntu-latest env: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4a33e83c0..fe1ce0855 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -41,7 +41,7 @@ jobs: binary: strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] arch: ["x86_64", "aarch64"] runs-on: ubuntu-20.04 env: @@ -109,7 +109,7 @@ jobs: needs: ["binary", "semver"] strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] platform: ["amd64", "arm64"] runs-on: ubuntu-latest steps: @@ -142,7 +142,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] rootless: [true, false] steps: - name: Checkout diff --git a/.github/workflows/release_enterprise.yml b/.github/workflows/release_enterprise.yml index db28e3fb8..231a85320 100644 --- a/.github/workflows/release_enterprise.yml +++ b/.github/workflows/release_enterprise.yml @@ -41,7 +41,7 @@ jobs: binary: strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] arch: ["x86_64", "aarch64"] schema: ["vectors", "extensions", "public"] runs-on: ubuntu-22.04 @@ -117,7 +117,7 @@ jobs: needs: ["binary", "semver"] strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] platform: ["amd64", "arm64"] schema: ["vectors", "extensions", "public"] runs-on: ubuntu-latest @@ -151,7 +151,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - version: [14, 15, 16] + version: [14, 15, 16, 17] schema: ["vectors", "extensions", "public"] steps: - name: Checkout diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index 2cb2d27b4..8a6286fd7 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -65,6 +65,8 @@ jobs: touch ~/.cargo/config.toml echo 'target.aarch64-unknown-linux-gnu.linker = "aarch64-linux-gnu-gcc"' >> ~/.cargo/config.toml echo 'target.aarch64-unknown-linux-gnu.runner = ["qemu-aarch64-static", "-L", "/usr/aarch64-linux-gnu"]' >> ~/.cargo/config.toml + rustup target add x86_64-unknown-linux-gnu + rustup target add aarch64-unknown-linux-gnu - name: Set up Sccache uses: mozilla-actions/sccache-action@v0.0.4 - name: Set up Cache @@ -95,6 +97,9 @@ jobs: export PGRX_PG_CONFIG_PATH=$(pwd)/vendor/pg16_${ARCH}_debian/pg_config/pg_config export PGRX_TARGET_INFO_PATH_PG16=$(pwd)/vendor/pg16_${ARCH}_debian/pgrx_binding cargo clippy --package pgvectors --features pg16 --no-deps --target $ARCH-unknown-linux-gnu + export PGRX_PG_CONFIG_PATH=$(pwd)/vendor/pg17_${ARCH}_debian/pg_config/pg_config + export PGRX_TARGET_INFO_PATH_PG17=$(pwd)/vendor/pg17_${ARCH}_debian/pgrx_binding + cargo clippy --package pgvectors --features pg17 --no-deps --target $ARCH-unknown-linux-gnu - name: Build run: | cargo build --workspace --exclude pgvectors --exclude pyvectors --target $ARCH-unknown-linux-gnu @@ -107,6 +112,9 @@ jobs: export PGRX_PG_CONFIG_PATH=$(pwd)/vendor/pg16_${ARCH}_debian/pg_config/pg_config export PGRX_TARGET_INFO_PATH_PG16=$(pwd)/vendor/pg16_${ARCH}_debian/pgrx_binding cargo build --package pgvectors --lib --features pg16 --target $ARCH-unknown-linux-gnu + export PGRX_PG_CONFIG_PATH=$(pwd)/vendor/pg17_${ARCH}_debian/pg_config/pg_config + export PGRX_TARGET_INFO_PATH_PG17=$(pwd)/vendor/pg17_${ARCH}_debian/pgrx_binding + cargo build --package pgvectors --lib --features pg17 --target $ARCH-unknown-linux-gnu - name: Test run: | cargo test --workspace --exclude pgvectors --exclude pyvectors --no-fail-fast --target $ARCH-unknown-linux-gnu diff --git a/.github/workflows/update_vendor.yml b/.github/workflows/update_vendor.yml index 46017a146..76912b80a 100644 --- a/.github/workflows/update_vendor.yml +++ b/.github/workflows/update_vendor.yml @@ -26,17 +26,21 @@ jobs: run: | export BRANCH=$(grep -o 'pgrx = { git = "https://github.com/tensorchord/pgrx.git", branch = "[^"]*' Cargo.toml | cut -d '"' -f 4) docker run --rm --platform linux/amd64 -v ./:/mnt/build \ - -e "VERSION=14" -e "BRANCH=$BRANCH" debian:buster bash /mnt/build/scripts/update_vendor.sh & + -e "VERSION=14" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & docker run --rm --platform linux/amd64 -v ./:/mnt/build \ - -e "VERSION=15" -e "BRANCH=$BRANCH" debian:buster bash /mnt/build/scripts/update_vendor.sh & + -e "VERSION=15" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & docker run --rm --platform linux/amd64 -v ./:/mnt/build \ - -e "VERSION=16" -e "BRANCH=$BRANCH" debian:buster bash /mnt/build/scripts/update_vendor.sh & + -e "VERSION=16" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & + docker run --rm --platform linux/amd64 -v ./:/mnt/build \ + -e "VERSION=17" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & + docker run --rm --platform linux/arm64 -v ./:/mnt/build \ + -e "VERSION=14" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & docker run --rm --platform linux/arm64 -v ./:/mnt/build \ - -e "VERSION=14" -e "BRANCH=$BRANCH" debian:buster bash /mnt/build/scripts/update_vendor.sh & + -e "VERSION=15" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & docker run --rm --platform linux/arm64 -v ./:/mnt/build \ - -e "VERSION=15" -e "BRANCH=$BRANCH" debian:buster bash /mnt/build/scripts/update_vendor.sh & + -e "VERSION=16" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & docker run --rm --platform linux/arm64 -v ./:/mnt/build \ - -e "VERSION=16" -e "BRANCH=$BRANCH" debian:buster bash /mnt/build/scripts/update_vendor.sh & + -e "VERSION=17" -e "BRANCH=$BRANCH" debian:bookworm bash /mnt/build/scripts/update_vendor.sh & wait sudo chown -R $USER ./vendor - name: Create Pull Request diff --git a/Cargo.lock b/Cargo.lock index 30b8ba9f9..6a03ac72a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -41,6 +41,16 @@ dependencies = [ "libc", ] +[[package]] +name = "annotate-snippets" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccaf7e9dfbb6ab22c82e473cd1a8a7bd313c19a5b7e40970f3d89ef5a5c9e81e" +dependencies = [ + "unicode-width", + "yansi-term", +] + [[package]] name = "anstream" version = "0.6.15" @@ -471,16 +481,15 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.69.4" +version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ + "annotate-snippets", "bitflags 2.6.0", "cexpr", "clang-sys", - "itertools 0.12.1", - "lazy_static", - "lazycell", + "itertools", "proc-macro2", "quote", "regex", @@ -1606,15 +1615,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "1.0.11" @@ -1674,7 +1674,7 @@ dependencies = [ "ascii-canvas", "bit-set", "ena", - "itertools 0.11.0", + "itertools", "lalrpop-util", "petgraph", "pico-args", @@ -1702,12 +1702,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - [[package]] name = "levenshtein" version = "1.0.5" @@ -2070,8 +2064,8 @@ dependencies = [ [[package]] name = "pgrx" -version = "0.12.1" -source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.1-patch#5aadeb126b7e7c5c4aa04cf38528de81a21982a0" +version = "0.12.5" +source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.5-patch#1fd3d1544c2f9ac68ec0c6e293fd2de398b6d3d7" dependencies = [ "atomic-traits", "bitflags 2.6.0", @@ -2094,10 +2088,11 @@ dependencies = [ [[package]] name = "pgrx-bindgen" -version = "0.12.1" -source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.1-patch#5aadeb126b7e7c5c4aa04cf38528de81a21982a0" +version = "0.12.5" +source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.5-patch#1fd3d1544c2f9ac68ec0c6e293fd2de398b6d3d7" dependencies = [ "bindgen", + "cc", "clang-sys", "eyre", "pgrx-pg-config", @@ -2110,8 +2105,8 @@ dependencies = [ [[package]] name = "pgrx-macros" -version = "0.12.1" -source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.1-patch#5aadeb126b7e7c5c4aa04cf38528de81a21982a0" +version = "0.12.5" +source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.5-patch#1fd3d1544c2f9ac68ec0c6e293fd2de398b6d3d7" dependencies = [ "pgrx-sql-entity-graph", "proc-macro2", @@ -2121,8 +2116,8 @@ dependencies = [ [[package]] name = "pgrx-pg-config" -version = "0.12.1" -source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.1-patch#5aadeb126b7e7c5c4aa04cf38528de81a21982a0" +version = "0.12.5" +source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.5-patch#1fd3d1544c2f9ac68ec0c6e293fd2de398b6d3d7" dependencies = [ "cargo_toml", "eyre", @@ -2138,8 +2133,8 @@ dependencies = [ [[package]] name = "pgrx-pg-sys" -version = "0.12.1" -source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.1-patch#5aadeb126b7e7c5c4aa04cf38528de81a21982a0" +version = "0.12.5" +source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.5-patch#1fd3d1544c2f9ac68ec0c6e293fd2de398b6d3d7" dependencies = [ "cee-scape", "libc", @@ -2152,8 +2147,8 @@ dependencies = [ [[package]] name = "pgrx-sql-entity-graph" -version = "0.12.1" -source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.1-patch#5aadeb126b7e7c5c4aa04cf38528de81a21982a0" +version = "0.12.5" +source = "git+https://github.com/tensorchord/pgrx.git?branch=v0.12.5-patch#1fd3d1544c2f9ac68ec0c6e293fd2de398b6d3d7" dependencies = [ "convert_case", "eyre", @@ -3394,6 +3389,12 @@ version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + [[package]] name = "unicode-xid" version = "0.2.4" @@ -3822,6 +3823,15 @@ dependencies = [ "tap", ] +[[package]] +name = "yansi-term" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe5c30ade05e61656247b2e334a031dfd0cc466fadef865bdcdea8d537951bf1" +dependencies = [ + "winapi", +] + [[package]] name = "zerocopy" version = "0.7.35" diff --git a/Cargo.toml b/Cargo.toml index 91baa3992..09a582254 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -28,7 +28,7 @@ libc.workspace = true log.workspace = true memmap2.workspace = true paste.workspace = true -pgrx = { version = "=0.12.1", default-features = false, features = [] } +pgrx = { version = "=0.12.5", default-features = false, features = [] } rand.workspace = true rustix.workspace = true serde.workspace = true @@ -88,7 +88,7 @@ rust.unused_lifetimes = "warn" rust.unused_qualifications = "warn" [patch.crates-io] -pgrx = { git = "https://github.com/tensorchord/pgrx.git", branch = "v0.12.1-patch" } +pgrx = { git = "https://github.com/tensorchord/pgrx.git", branch = "v0.12.5-patch" } [profile.opt] inherits = "dev" diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 737397f07..edfb95780 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,2 @@ [toolchain] channel = "nightly-2024-09-14" -profile = "default" -components = ["rust-analyzer", "rust-src"] -targets = ["aarch64-unknown-linux-gnu", "x86_64-unknown-linux-gnu"] diff --git a/src/logger/postgres.rs b/src/logger/postgres.rs index 1d5f656f1..c018d248f 100644 --- a/src/logger/postgres.rs +++ b/src/logger/postgres.rs @@ -122,7 +122,7 @@ fn write_pipe_chunks(pid: u32, mut msg: &[u8], dest: LogDestination) { chunk.extend((len as u16).to_le_bytes()); chunk.extend((pid as i32).to_le_bytes()); #[cfg(feature = "pg14")] - chunk.extend((is_last as u8).to_le_bytes()); + chunk.extend(is_last.to_le_bytes()); #[cfg(any(feature = "pg15", feature = "pg16", feature = "pg17"))] chunk.extend((flags as u8).to_le_bytes()); chunk.extend_from_slice(&msg[..len]); diff --git a/vendor/pg14_aarch64_debian/pg_config/pg_config.txt b/vendor/pg14_aarch64_debian/pg_config/pg_config.txt index 5ea06177b..f74b86593 100644 --- a/vendor/pg14_aarch64_debian/pg_config/pg_config.txt +++ b/vendor/pg14_aarch64_debian/pg_config/pg_config.txt @@ -11,13 +11,13 @@ MANDIR = /usr/share/postgresql/14/man SHAREDIR = /usr/share/postgresql/14 SYSCONFDIR = /etc/postgresql-common PGXS = /usr/lib/postgresql/14/lib/pgxs/src/makefiles/pgxs.mk -CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/14/man' '--docdir=/usr/share/doc/postgresql-doc-14' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/14' '--bindir=/usr/lib/postgresql/14/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 14.13-1.pgdg100+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-13' 'CLANG=/usr/bin/clang-13' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/14/man' '--docdir=/usr/share/doc/postgresql-doc-14' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/14' '--bindir=/usr/lib/postgresql/14/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 14.13-1.pgdg120+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' CC = gcc CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security +CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -moutline-atomics -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security CFLAGS_SL = -fPIC -LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-13/lib -Wl,--as-needed +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed LDFLAGS_EX = LDFLAGS_SL = -LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lpthread -lrt -ldl -lm -VERSION = PostgreSQL 14.13 (Debian 14.13-1.pgdg100+1) +LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 14.13 (Debian 14.13-1.pgdg120+1) diff --git a/vendor/pg14_aarch64_debian/pgrx_binding/pg14_raw_bindings.rs b/vendor/pg14_aarch64_debian/pgrx_binding/pg14_raw_bindings.rs index 766433d8f..ef6a640ee 100644 --- a/vendor/pg14_aarch64_debian/pgrx_binding/pg14_raw_bindings.rs +++ b/vendor/pg14_aarch64_debian/pgrx_binding/pg14_raw_bindings.rs @@ -1,4 +1,4 @@ -/* automatically generated by rust-bindgen 0.69.4 */ +/* automatically generated by rust-bindgen 0.70.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] @@ -177,12 +177,12 @@ pub const PG_MINORVERSION_NUM: u32 = 13; pub const PG_USE_STDBOOL: u32 = 1; #[allow(unsafe_code)] pub const PG_VERSION: &::core::ffi::CStr = unsafe { - ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"14.13 (Debian 14.13-1.pgdg100+1)\0") + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"14.13 (Debian 14.13-1.pgdg120+1)\0") }; pub const PG_VERSION_NUM: u32 = 140013; #[allow(unsafe_code)] pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { - :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 14.13 (Debian 14.13-1.pgdg100+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit\0") + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 14.13 (Debian 14.13-1.pgdg120+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") }; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; @@ -229,6 +229,7 @@ pub const DEFAULT_EVENT_SOURCE: &::core::ffi::CStr = pub const PG_CACHE_LINE_SIZE: u32 = 128; pub const TRACE_SORT: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; @@ -242,28 +243,37 @@ pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 28; +pub const __GLIBC_MINOR__: u32 = 36; pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; pub const _____fpos_t_defined: u32 = 1; pub const ____mbstate_t_defined: u32 = 1; pub const _____fpos64_t_defined: u32 = 1; @@ -298,7 +308,6 @@ pub const WNOWAIT: u32 = 16777216; pub const __WNOTHREAD: u32 = 536870912; pub const __WALL: u32 = 1073741824; pub const __WCLONE: u32 = 2147483648; -pub const __ENUM_IDTYPE_T: u32 = 1; pub const __W_CONTINUED: u32 = 65535; pub const __WCOREFLAG: u32 = 128; pub const __ldiv_t_defined: u32 = 1; @@ -333,11 +342,6 @@ pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __PTHREAD_MUTEX_LOCK_ELISION: u32 = 0; -pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND: u32 = 0; -pub const __PTHREAD_MUTEX_USE_UNION: u32 = 0; -pub const __PTHREAD_RWLOCK_ELISION_EXTRA: u32 = 0; -pub const __PTHREAD_SPINS: u32 = 0; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; @@ -550,9 +554,9 @@ pub const LC_MEASUREMENT_MASK: u32 = 2048; pub const LC_IDENTIFICATION_MASK: u32 = 4096; pub const LC_ALL_MASK: u32 = 8127; pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; -pub const __bool_true_false_are_defined: u32 = 1; #[allow(unsafe_code)] pub const INT64_FORMAT: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; @@ -632,7 +636,9 @@ pub const PF_VSOCK: u32 = 40; pub const PF_KCM: u32 = 41; pub const PF_QIPCRTR: u32 = 42; pub const PF_SMC: u32 = 43; -pub const PF_MAX: u32 = 44; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; pub const AF_UNSPEC: u32 = 0; pub const AF_LOCAL: u32 = 1; pub const AF_UNIX: u32 = 1; @@ -680,7 +686,9 @@ pub const AF_VSOCK: u32 = 40; pub const AF_KCM: u32 = 41; pub const AF_QIPCRTR: u32 = 42; pub const AF_SMC: u32 = 43; -pub const AF_MAX: u32 = 44; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; pub const SOL_RAW: u32 = 255; pub const SOL_DECNET: u32 = 261; pub const SOL_X25: u32 = 262; @@ -704,15 +712,20 @@ pub const SOL_ALG: u32 = 279; pub const SOL_NFC: u32 = 280; pub const SOL_KCM: u32 = 281; pub const SOL_TLS: u32 = 282; -pub const SOMAXCONN: u32 = 128; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; pub const _SS_SIZE: u32 = 128; +pub const __BITS_PER_LONG: u32 = 64; pub const FIOSETOWN: u32 = 35073; pub const SIOCSPGRP: u32 = 35074; pub const FIOGETOWN: u32 = 35075; pub const SIOCGPGRP: u32 = 35076; pub const SIOCATMARK: u32 = 35077; -pub const SIOCGSTAMP: u32 = 35078; -pub const SIOCGSTAMPNS: u32 = 35079; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; pub const SOL_SOCKET: u32 = 1; pub const SO_DEBUG: u32 = 1; pub const SO_REUSEADDR: u32 = 2; @@ -735,8 +748,8 @@ pub const SO_PASSCRED: u32 = 16; pub const SO_PEERCRED: u32 = 17; pub const SO_RCVLOWAT: u32 = 18; pub const SO_SNDLOWAT: u32 = 19; -pub const SO_RCVTIMEO: u32 = 20; -pub const SO_SNDTIMEO: u32 = 21; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; pub const SO_SECURITY_AUTHENTICATION: u32 = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; @@ -745,16 +758,10 @@ pub const SO_ATTACH_FILTER: u32 = 26; pub const SO_DETACH_FILTER: u32 = 27; pub const SO_GET_FILTER: u32 = 26; pub const SO_PEERNAME: u32 = 28; -pub const SO_TIMESTAMP: u32 = 29; -pub const SCM_TIMESTAMP: u32 = 29; pub const SO_ACCEPTCONN: u32 = 30; pub const SO_PEERSEC: u32 = 31; pub const SO_PASSSEC: u32 = 34; -pub const SO_TIMESTAMPNS: u32 = 35; -pub const SCM_TIMESTAMPNS: u32 = 35; pub const SO_MARK: u32 = 36; -pub const SO_TIMESTAMPING: u32 = 37; -pub const SCM_TIMESTAMPING: u32 = 37; pub const SO_PROTOCOL: u32 = 38; pub const SO_DOMAIN: u32 = 39; pub const SO_RXQ_OVFL: u32 = 40; @@ -782,6 +789,31 @@ pub const SO_PEERGROUPS: u32 = 59; pub const SO_ZEROCOPY: u32 = 60; pub const SO_TXTIME: u32 = 61; pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; pub const __osockaddr_defined: u32 = 1; pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; pub const IP_OPTIONS: u32 = 4; @@ -832,6 +864,7 @@ pub const IP_NODEFRAG: u32 = 22; pub const IP_CHECKSUM: u32 = 23; pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; pub const IP_PMTUDISC_DONT: u32 = 0; pub const IP_PMTUDISC_WANT: u32 = 1; pub const IP_PMTUDISC_DO: u32 = 2; @@ -865,6 +898,9 @@ pub const IPV6_RECVERR: u32 = 25; pub const IPV6_V6ONLY: u32 = 26; pub const IPV6_JOIN_ANYCAST: u32 = 27; pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; pub const IPV6_IPSEC_POLICY: u32 = 34; pub const IPV6_XFRM_POLICY: u32 = 35; pub const IPV6_HDRINCL: u32 = 36; @@ -976,7 +1012,7 @@ pub const PGINVALID_SOCKET: i32 = -1; #[allow(unsafe_code)] pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked( - b"postgres (PostgreSQL) 14.13 (Debian 14.13-1.pgdg100+1)\n\0", + b"postgres (PostgreSQL) 14.13 (Debian 14.13-1.pgdg120+1)\n\0", ) }; #[allow(unsafe_code)] @@ -1000,6 +1036,7 @@ pub const __MATH_DECLARE_LDOUBLE: u32 = 1; pub const MATH_ERRNO: u32 = 1; pub const MATH_ERREXCEPT: u32 = 2; pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; pub const DEBUG5: u32 = 10; pub const DEBUG4: u32 = 11; pub const DEBUG3: u32 = 12; @@ -1153,10 +1190,6 @@ pub const AT_SYMLINK_NOFOLLOW: u32 = 256; pub const AT_REMOVEDIR: u32 = 512; pub const AT_SYMLINK_FOLLOW: u32 = 1024; pub const AT_EACCESS: u32 = 512; -pub const _STAT_VER_KERNEL: u32 = 0; -pub const _STAT_VER_LINUX: u32 = 0; -pub const _STAT_VER: u32 = 0; -pub const _MKNOD_VER_LINUX: u32 = 0; pub const __S_IFMT: u32 = 61440; pub const __S_IFDIR: u32 = 16384; pub const __S_IFCHR: u32 = 8192; @@ -1865,33 +1898,33 @@ pub const SIGHUP: u32 = 1; pub const SIGQUIT: u32 = 3; pub const SIGTRAP: u32 = 5; pub const SIGKILL: u32 = 9; -pub const SIGBUS: u32 = 10; -pub const SIGSYS: u32 = 12; pub const SIGPIPE: u32 = 13; pub const SIGALRM: u32 = 14; -pub const SIGURG: u32 = 16; -pub const SIGSTOP: u32 = 17; -pub const SIGTSTP: u32 = 18; -pub const SIGCONT: u32 = 19; -pub const SIGCHLD: u32 = 20; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; pub const SIGTTIN: u32 = 21; pub const SIGTTOU: u32 = 22; -pub const SIGPOLL: u32 = 23; -pub const SIGXCPU: u32 = 24; +pub const SIGPOLL: u32 = 29; pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; pub const SIGVTALRM: u32 = 26; pub const SIGPROF: u32 = 27; -pub const SIGUSR1: u32 = 30; -pub const SIGUSR2: u32 = 31; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; pub const SIGWINCH: u32 = 28; -pub const SIGIO: u32 = 23; -pub const SIGIOT: u32 = 6; -pub const SIGCLD: u32 = 20; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; pub const __SIGRTMIN: u32 = 32; -pub const __SIGRTMAX: u32 = 32; -pub const _NSIG: u32 = 33; -pub const SIGSTKFLT: u32 = 16; -pub const SIGPWR: u32 = 30; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; pub const __sig_atomic_t_defined: u32 = 1; pub const __siginfo_t_defined: u32 = 1; pub const __SI_MAX_SIZE: u32 = 128; @@ -1900,7 +1933,7 @@ pub const __SI_HAVE_SIGSYS: u32 = 1; pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; pub const __sigevent_t_defined: u32 = 1; pub const __SIGEV_MAX_SIZE: u32 = 64; -pub const NSIG: u32 = 33; +pub const NSIG: u32 = 65; pub const SA_NOCLDSTOP: u32 = 1; pub const SA_NOCLDWAIT: u32 = 2; pub const SA_SIGINFO: u32 = 4; @@ -1915,11 +1948,20 @@ pub const SA_STACK: u32 = 134217728; pub const SIG_BLOCK: u32 = 0; pub const SIG_UNBLOCK: u32 = 1; pub const SIG_SETMASK: u32 = 2; -pub const __BITS_PER_LONG: u32 = 64; pub const FPSIMD_MAGIC: u32 = 1179680769; pub const ESR_MAGIC: u32 = 1163088385; pub const EXTRA_MAGIC: u32 = 1163416577; pub const SVE_MAGIC: u32 = 1398162689; +pub const SVE_SIG_FLAG_SM: u32 = 1; +pub const ZA_MAGIC: u32 = 1412850501; +pub const __SVE_VQ_BYTES: u32 = 16; +pub const __SVE_VQ_MIN: u32 = 1; +pub const __SVE_VQ_MAX: u32 = 512; +pub const __SVE_VL_MIN: u32 = 16; +pub const __SVE_VL_MAX: u32 = 8192; +pub const __SVE_NUM_ZREGS: u32 = 32; +pub const __SVE_NUM_PREGS: u32 = 16; +pub const __SVE_ZREGS_OFFSET: u32 = 0; pub const SVE_VQ_BYTES: u32 = 16; pub const SVE_VQ_MIN: u32 = 1; pub const SVE_VQ_MAX: u32 = 512; @@ -2334,6 +2376,10 @@ pub const InvalidLocalTransactionId: u32 = 0; pub const MAX_LOCKMODES: u32 = 10; pub const DEFAULT_LOCKMETHOD: u32 = 1; pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; pub const OLD_SNAPSHOT_PADDING_ENTRIES: u32 = 10; pub const MAX_IO_CONCURRENCY: u32 = 1000; pub const BUFFER_LOCK_UNLOCK: u32 = 0; @@ -2874,6 +2920,9 @@ pub const EventTriggerOidIndexId: u32 = 3468; pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const XLOG_TBLSPC_CREATE: u32 = 0; pub const XLOG_TBLSPC_DROP: u32 = 16; pub const TRIGGER_EVENT_INSERT: u32 = 0; @@ -3011,9 +3060,6 @@ pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; -pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; -pub const CACHEDPLAN_MAGIC: u32 = 953717834; -pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const SPI_ERROR_CONNECT: i32 = -1; pub const SPI_ERROR_COPY: i32 = -2; pub const SPI_ERROR_OPUNKNOWN: i32 = -3; @@ -6667,7 +6713,6 @@ pub const RANGESTRAT_CONTAINED_BY: u32 = 8; pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; pub const RANGESTRAT_EQ: u32 = 18; pub type pg_int64 = ::core::ffi::c_long; -pub type va_list = [u64; 4usize]; pub type __gnuc_va_list = [u64; 4usize]; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; @@ -6715,6 +6760,7 @@ pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; @@ -6857,20 +6903,15 @@ impl Default for _IO_FILE { } } } +pub type va_list = __gnuc_va_list; pub type off_t = __off_t; pub type fpos_t = __fpos_t; -pub type wchar_t = ::core::ffi::c_uint; -pub mod idtype_t { - pub type Type = ::core::ffi::c_uint; - pub const P_ALL: Type = 0; - pub const P_PID: Type = 1; - pub const P_PGID: Type = 2; -} pub type _Float128 = u128; pub type _Float32 = f32; pub type _Float64 = f64; pub type _Float32x = f64; pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct div_t { @@ -6915,10 +6956,10 @@ pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; -pub type u_int8_t = ::core::ffi::c_uchar; -pub type u_int16_t = ::core::ffi::c_ushort; -pub type u_int32_t = ::core::ffi::c_uint; -pub type u_int64_t = ::core::ffi::c_ulong; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -6951,19 +6992,25 @@ pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::core::ffi::c_uint, - pub __writers: ::core::ffi::c_uint, - pub __wrphase_futex: ::core::ffi::c_uint, - pub __writers_futex: ::core::ffi::c_uint, - pub __pad3: ::core::ffi::c_uint, - pub __pad4: ::core::ffi::c_uint, - pub __cur_writer: ::core::ffi::c_int, - pub __shared: ::core::ffi::c_int, - pub __pad1: ::core::ffi::c_ulong, - pub __pad2: ::core::ffi::c_ulong, - pub __flags: ::core::ffi::c_uint, +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -6983,6 +7030,21 @@ impl Default for __pthread_internal_list { pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, @@ -7002,29 +7064,32 @@ impl Default for __pthread_mutex_s { } } #[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __pad1: ::core::ffi::c_ulong, + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::core::ffi::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_1 { +impl Default for __pthread_cond_s { fn default() -> Self { let mut s = ::core::mem::MaybeUninit::::uninit(); unsafe { @@ -7033,35 +7098,12 @@ impl Default for __pthread_cond_s__bindgen_ty_1 { } } } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::core::ffi::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, -} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_2 { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -impl Default for __pthread_cond_s { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } +pub struct __once_flag { + pub __data: ::core::ffi::c_int, } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] @@ -7573,6 +7615,49 @@ pub mod _bindgen_ty_3 { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fd_set { + pub fds_bits: [::core::ffi::c_ulong; 16usize], +} +pub type __kernel_sighandler_t = + ::core::option::Option; +pub type __kernel_key_t = ::core::ffi::c_int; +pub type __kernel_mqd_t = ::core::ffi::c_int; +pub type __kernel_old_uid_t = ::core::ffi::c_ushort; +pub type __kernel_old_gid_t = ::core::ffi::c_ushort; +pub type __kernel_long_t = ::core::ffi::c_long; +pub type __kernel_ulong_t = ::core::ffi::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = ::core::ffi::c_uint; +pub type __kernel_pid_t = ::core::ffi::c_int; +pub type __kernel_ipc_pid_t = ::core::ffi::c_int; +pub type __kernel_uid_t = ::core::ffi::c_uint; +pub type __kernel_gid_t = ::core::ffi::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = ::core::ffi::c_int; +pub type __kernel_uid32_t = ::core::ffi::c_uint; +pub type __kernel_gid32_t = ::core::ffi::c_uint; +pub type __kernel_old_dev_t = ::core::ffi::c_uint; +pub type __kernel_size_t = __kernel_ulong_t; +pub type __kernel_ssize_t = __kernel_long_t; +pub type __kernel_ptrdiff_t = __kernel_long_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fsid_t { + pub val: [::core::ffi::c_int; 2usize], +} +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = ::core::ffi::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = ::core::ffi::c_int; +pub type __kernel_clockid_t = ::core::ffi::c_int; +pub type __kernel_caddr_t = *mut ::core::ffi::c_char; +pub type __kernel_uid16_t = ::core::ffi::c_ushort; +pub type __kernel_gid16_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct linger { pub l_onoff: ::core::ffi::c_int, pub l_linger: ::core::ffi::c_int, @@ -7612,13 +7697,6 @@ impl Default for ip_opts { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct ip_mreqn { - pub imr_multiaddr: in_addr, - pub imr_address: in_addr, - pub imr_ifindex: ::core::ffi::c_int, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] pub struct in_pktinfo { pub ipi_ifindex: ::core::ffi::c_int, pub ipi_spec_dst: in_addr, @@ -7650,8 +7728,10 @@ pub mod _bindgen_ty_5 { pub const IPPROTO_SCTP: Type = 132; pub const IPPROTO_UDPLITE: Type = 136; pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; pub const IPPROTO_RAW: Type = 255; - pub const IPPROTO_MAX: Type = 256; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; } pub mod _bindgen_ty_6 { pub type Type = ::core::ffi::c_uint; @@ -7757,6 +7837,13 @@ pub struct ip_mreq { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, @@ -18863,6 +18950,7 @@ impl Default for siginfo_t { pub mod _bindgen_ty_10 { pub type Type = ::core::ffi::c_int; pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; pub const SI_TKILL: Type = -6; pub const SI_SIGIO: Type = -5; pub const SI_ASYNCIO: Type = -4; @@ -18882,6 +18970,7 @@ pub mod _bindgen_ty_11 { pub const ILL_PRVREG: Type = 6; pub const ILL_COPROC: Type = 7; pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; } pub mod _bindgen_ty_12 { pub type Type = ::core::ffi::c_uint; @@ -18893,6 +18982,8 @@ pub mod _bindgen_ty_12 { pub const FPE_FLTRES: Type = 6; pub const FPE_FLTINV: Type = 7; pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; } pub mod _bindgen_ty_13 { pub type Type = ::core::ffi::c_uint; @@ -18900,6 +18991,11 @@ pub mod _bindgen_ty_13 { pub const SEGV_ACCERR: Type = 2; pub const SEGV_BNDERR: Type = 3; pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; } pub mod _bindgen_ty_14 { pub type Type = ::core::ffi::c_uint; @@ -19032,48 +19128,6 @@ pub type __s32 = ::core::ffi::c_int; pub type __u32 = ::core::ffi::c_uint; pub type __s64 = ::core::ffi::c_longlong; pub type __u64 = ::core::ffi::c_ulonglong; -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __kernel_fd_set { - pub fds_bits: [::core::ffi::c_ulong; 16usize], -} -pub type __kernel_sighandler_t = - ::core::option::Option; -pub type __kernel_key_t = ::core::ffi::c_int; -pub type __kernel_mqd_t = ::core::ffi::c_int; -pub type __kernel_old_uid_t = ::core::ffi::c_ushort; -pub type __kernel_old_gid_t = ::core::ffi::c_ushort; -pub type __kernel_long_t = ::core::ffi::c_long; -pub type __kernel_ulong_t = ::core::ffi::c_ulong; -pub type __kernel_ino_t = __kernel_ulong_t; -pub type __kernel_mode_t = ::core::ffi::c_uint; -pub type __kernel_pid_t = ::core::ffi::c_int; -pub type __kernel_ipc_pid_t = ::core::ffi::c_int; -pub type __kernel_uid_t = ::core::ffi::c_uint; -pub type __kernel_gid_t = ::core::ffi::c_uint; -pub type __kernel_suseconds_t = __kernel_long_t; -pub type __kernel_daddr_t = ::core::ffi::c_int; -pub type __kernel_uid32_t = ::core::ffi::c_uint; -pub type __kernel_gid32_t = ::core::ffi::c_uint; -pub type __kernel_old_dev_t = ::core::ffi::c_uint; -pub type __kernel_size_t = __kernel_ulong_t; -pub type __kernel_ssize_t = __kernel_long_t; -pub type __kernel_ptrdiff_t = __kernel_long_t; -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __kernel_fsid_t { - pub val: [::core::ffi::c_int; 2usize], -} -pub type __kernel_off_t = __kernel_long_t; -pub type __kernel_loff_t = ::core::ffi::c_longlong; -pub type __kernel_time_t = __kernel_long_t; -pub type __kernel_time64_t = ::core::ffi::c_longlong; -pub type __kernel_clock_t = __kernel_long_t; -pub type __kernel_timer_t = ::core::ffi::c_int; -pub type __kernel_clockid_t = ::core::ffi::c_int; -pub type __kernel_caddr_t = *mut ::core::ffi::c_char; -pub type __kernel_uid16_t = ::core::ffi::c_ushort; -pub type __kernel_gid16_t = ::core::ffi::c_ushort; pub type __le16 = __u16; pub type __be16 = __u16; pub type __le32 = __u32; @@ -19136,6 +19190,14 @@ pub struct extra_context { #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct sve_context { + pub head: _aarch64_ctx, + pub vl: __u16, + pub flags: __u16, + pub __reserved: [__u16; 2usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct za_context { pub head: _aarch64_ctx, pub vl: __u16, pub __reserved: [__u16; 3usize], @@ -19162,7 +19224,6 @@ pub struct timezone { pub tz_minuteswest: ::core::ffi::c_int, pub tz_dsttime: ::core::ffi::c_int, } -pub type __timezone_ptr_t = *mut timezone; pub mod __itimer_which { pub type Type = ::core::ffi::c_uint; pub const ITIMER_REAL: Type = 0; @@ -19195,6 +19256,8 @@ pub struct user_fpsimd_struct { pub type elf_greg_t = __uint64_t; pub type elf_gregset_t = [elf_greg_t; 34usize]; pub type elf_fpregset_t = user_fpsimd_struct; +pub type __pr_uid_t = ::core::ffi::c_uint; +pub type __pr_gid_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct elf_siginfo { @@ -19237,8 +19300,8 @@ pub struct elf_prpsinfo { pub pr_zomb: ::core::ffi::c_char, pub pr_nice: ::core::ffi::c_char, pub pr_flag: ::core::ffi::c_ulong, - pub pr_uid: ::core::ffi::c_uint, - pub pr_gid: ::core::ffi::c_uint, + pub pr_uid: __pr_uid_t, + pub pr_gid: __pr_gid_t, pub pr_pid: ::core::ffi::c_int, pub pr_ppid: ::core::ffi::c_int, pub pr_pgrp: ::core::ffi::c_int, @@ -19256,8 +19319,10 @@ impl Default for elf_prpsinfo { } } pub type psaddr_t = *mut ::core::ffi::c_void; -pub type prgregset_t = elf_gregset_t; -pub type prfpregset_t = elf_fpregset_t; +pub type __prgregset_t = elf_gregset_t; +pub type __prfpregset_t = elf_fpregset_t; +pub type prgregset_t = __prgregset_t; +pub type prfpregset_t = __prfpregset_t; pub type lwpid_t = __pid_t; pub type prstatus_t = elf_prstatus; pub type prpsinfo_t = elf_prpsinfo; @@ -24986,6 +25051,117 @@ pub type ExplainOneQuery_hook_type = ::core::option::Option< >; pub type explain_get_index_name_hook_type = ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut OverrideSearchPath, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_object_relabel_type = ::core::option::Option< unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), >; @@ -26603,100 +26779,6 @@ pub mod BackslashQuoteType { pub const BACKSLASH_QUOTE_ON: Type = 1; pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; } -pub mod PlanCacheMode { - pub type Type = ::core::ffi::c_uint; - pub const PLAN_CACHE_MODE_AUTO: Type = 0; - pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; - pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::core::ffi::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::core::ffi::c_char, - pub commandTag: CommandTag::Type, - pub param_types: *mut Oid, - pub num_params: ::core::ffi::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::core::ffi::c_void, - pub cursor_options: ::core::ffi::c_int, - pub fixed_result: bool, - pub resultDesc: TupleDesc, - pub context: MemoryContext, - pub query_list: *mut List, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub search_path: *mut OverrideSearchPath, - pub query_context: MemoryContext, - pub rewriteRoleId: Oid, - pub rewriteRowSecurity: bool, - pub dependsOnRLS: bool, - pub gplan: *mut CachedPlan, - pub is_oneshot: bool, - pub is_complete: bool, - pub is_saved: bool, - pub is_valid: bool, - pub generation: ::core::ffi::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: int64, - pub num_generic_plans: int64, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::core::ffi::c_int, - pub stmt_list: *mut List, - pub is_oneshot: bool, - pub is_saved: bool, - pub is_valid: bool, - pub planRoleId: Oid, - pub dependsOnRole: bool, - pub saved_xmin: TransactionId, - pub generation: ::core::ffi::c_int, - pub refcount: ::core::ffi::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::core::ffi::c_int, - pub expr: *mut Node, - pub is_valid: bool, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub context: MemoryContext, - pub node: dlist_node, -} -impl Default for CachedExpression { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} pub mod PortalStrategy { pub type Type = ::core::ffi::c_uint; pub const PORTAL_ONE_SELECT: Type = 0; @@ -33241,8 +33323,8 @@ extern "C" { __newfd: ::core::ffi::c_int, __new: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; - pub fn tmpfile() -> *mut FILE; pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fopen( @@ -33459,15 +33541,13 @@ extern "C" { pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn perror(__s: *const ::core::ffi::c_char); - pub static mut sys_nerr: ::core::ffi::c_int; - pub static sys_errlist: [*const ::core::ffi::c_char; 0usize]; pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn popen( __command: *const ::core::ffi::c_char, __modes: *const ::core::ffi::c_char, ) -> *mut FILE; - pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; pub fn flockfile(__stream: *mut FILE); pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; @@ -33606,6 +33686,9 @@ extern "C" { __param: *mut ::core::ffi::c_ushort, __buffer: *mut drand48_data, ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn calloc( __nmemb: ::core::ffi::c_ulong, @@ -33616,6 +33699,11 @@ extern "C" { __size: ::core::ffi::c_ulong, ) -> *mut ::core::ffi::c_void; pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; pub fn posix_memalign( @@ -33788,6 +33876,11 @@ extern "C" { __s2: *const ::core::ffi::c_void, __n: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; pub fn memchr( __s: *const ::core::ffi::c_void, __c: ::core::ffi::c_int, @@ -35729,7 +35822,6 @@ extern "C" { pub fn tzset(); pub static mut daylight: ::core::ffi::c_int; pub static mut timezone: ::core::ffi::c_long; - pub fn stime(__when: *const time_t) -> ::core::ffi::c_int; pub fn timegm(__tp: *mut tm) -> time_t; pub fn timelocal(__tp: *mut tm) -> time_t; pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; @@ -36321,9 +36413,9 @@ extern "C" { name: *const ::core::ffi::c_char, ) -> EphemeralNamedRelation; pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; - pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn readdir(__dirp: *mut DIR) -> *mut dirent; pub fn readdir_r( __dirp: *mut DIR, @@ -37523,9 +37615,7 @@ extern "C" { ) -> ::core::ffi::c_int; pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) -> ::core::ffi::c_int; - pub static _sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub static sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub fn gettimeofday(__tv: *mut timeval, __tz: __timezone_ptr_t) -> ::core::ffi::c_int; + pub fn gettimeofday(__tv: *mut timeval, __tz: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; pub fn settimeofday(__tv: *const timeval, __tz: *const timezone) -> ::core::ffi::c_int; pub fn adjtime(__delta: *const timeval, __olddelta: *mut timeval) -> ::core::ffi::c_int; pub fn getitimer(__which: __itimer_which_t, __value: *mut itimerval) -> ::core::ffi::c_int; @@ -39886,6 +39976,34 @@ extern "C" { pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; pub static mut CurrentResourceOwner: ResourceOwner; pub static mut CurTransactionResourceOwner: ResourceOwner; pub static mut TopTransactionResourceOwner: ResourceOwner; @@ -41316,6 +41434,127 @@ extern "C" { labeled: bool, es: *mut ExplainState, ); + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; pub fn GetSecurityLabel( @@ -42082,58 +42321,6 @@ extern "C" { pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; - pub static mut plan_cache_mode: ::core::ffi::c_int; - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::core::ffi::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::core::ffi::c_void, - cursor_options: ::core::ffi::c_int, - fixed_result: bool, - ); - pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); - pub fn DropCachedPlan(plansource: *mut CachedPlanSource); - pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); - pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; - pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; - pub fn CachedPlanGetTargetList( - plansource: *mut CachedPlanSource, - queryEnv: *mut QueryEnvironment, - ) -> *mut List; - pub fn GetCachedPlan( - plansource: *mut CachedPlanSource, - boundParams: ParamListInfo, - owner: ResourceOwner, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); - pub fn CachedPlanAllowsSimpleValidityCheck( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn CachedPlanIsSimplyValid( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; - pub fn FreeCachedExpression(cexpr: *mut CachedExpression); pub fn EnablePortalManager(); pub fn PreCommit_Portals(isPrepare: bool) -> bool; pub fn AtAbort_Portals(); @@ -44503,6 +44690,11 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; pub static mut Transform_null_equals: bool; pub fn transformExpr( pstate: *mut ParseState, @@ -44642,6 +44834,179 @@ extern "C" { rtree: *mut Node, location: ::core::ffi::c_int, ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + joinalias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; pub fn LookupTypeName( pstate: *mut ParseState, typeName: *const TypeName, @@ -57632,12 +57997,6 @@ pub const dsm_op_DSM_OP_ATTACH: u32 = 1; pub const dsm_op_DSM_OP_DETACH: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] pub const dsm_op_DSM_OP_DESTROY: u32 = 3; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_ALL")] -pub const idtype_t_P_ALL: u32 = 0; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PID")] -pub const idtype_t_P_PID: u32 = 1; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PGID")] -pub const idtype_t_P_PGID: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] pub const jbvType_jbvNull: u32 = 0; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] diff --git a/vendor/pg14_x86_64_debian/pg_config/pg_config.txt b/vendor/pg14_x86_64_debian/pg_config/pg_config.txt index a51134817..3b50cb8e5 100644 --- a/vendor/pg14_x86_64_debian/pg_config/pg_config.txt +++ b/vendor/pg14_x86_64_debian/pg_config/pg_config.txt @@ -11,13 +11,13 @@ MANDIR = /usr/share/postgresql/14/man SHAREDIR = /usr/share/postgresql/14 SYSCONFDIR = /etc/postgresql-common PGXS = /usr/lib/postgresql/14/lib/pgxs/src/makefiles/pgxs.mk -CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/14/man' '--docdir=/usr/share/doc/postgresql-doc-14' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/14' '--bindir=/usr/lib/postgresql/14/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 14.13-1.pgdg100+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-13' 'CLANG=/usr/bin/clang-13' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/14/man' '--docdir=/usr/share/doc/postgresql-doc-14' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/14' '--bindir=/usr/lib/postgresql/14/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 14.13-1.pgdg120+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' CC = gcc CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer CFLAGS_SL = -fPIC -LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-13/lib -Wl,--as-needed +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed LDFLAGS_EX = LDFLAGS_SL = -LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lpthread -lrt -ldl -lm -VERSION = PostgreSQL 14.13 (Debian 14.13-1.pgdg100+1) +LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 14.13 (Debian 14.13-1.pgdg120+1) diff --git a/vendor/pg14_x86_64_debian/pgrx_binding/pg14_raw_bindings.rs b/vendor/pg14_x86_64_debian/pgrx_binding/pg14_raw_bindings.rs index c2d7d48ad..ceba7a598 100644 --- a/vendor/pg14_x86_64_debian/pgrx_binding/pg14_raw_bindings.rs +++ b/vendor/pg14_x86_64_debian/pgrx_binding/pg14_raw_bindings.rs @@ -1,4 +1,4 @@ -/* automatically generated by rust-bindgen 0.69.4 */ +/* automatically generated by rust-bindgen 0.70.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] @@ -177,12 +177,12 @@ pub const PG_MINORVERSION_NUM: u32 = 13; pub const PG_USE_STDBOOL: u32 = 1; #[allow(unsafe_code)] pub const PG_VERSION: &::core::ffi::CStr = unsafe { - ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"14.13 (Debian 14.13-1.pgdg100+1)\0") + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"14.13 (Debian 14.13-1.pgdg120+1)\0") }; pub const PG_VERSION_NUM: u32 = 140013; #[allow(unsafe_code)] pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { - :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 14.13 (Debian 14.13-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit\0") + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 14.13 (Debian 14.13-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") }; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; @@ -229,6 +229,7 @@ pub const DEFAULT_EVENT_SOURCE: &::core::ffi::CStr = pub const PG_CACHE_LINE_SIZE: u32 = 128; pub const TRACE_SORT: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; @@ -242,29 +243,39 @@ pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; +pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 28; +pub const __GLIBC_MINOR__: u32 = 36; pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; +pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; pub const _____fpos_t_defined: u32 = 1; pub const ____mbstate_t_defined: u32 = 1; pub const _____fpos64_t_defined: u32 = 1; @@ -299,7 +310,6 @@ pub const WNOWAIT: u32 = 16777216; pub const __WNOTHREAD: u32 = 536870912; pub const __WALL: u32 = 1073741824; pub const __WCLONE: u32 = 2147483648; -pub const __ENUM_IDTYPE_T: u32 = 1; pub const __W_CONTINUED: u32 = 65535; pub const __WCOREFLAG: u32 = 128; pub const __ldiv_t_defined: u32 = 1; @@ -321,9 +331,6 @@ pub const LITTLE_ENDIAN: u32 = 1234; pub const BIG_ENDIAN: u32 = 4321; pub const PDP_ENDIAN: u32 = 3412; pub const BYTE_ORDER: u32 = 1234; -#[allow(unsafe_code)] -pub const __FD_ZERO_STOS: &::core::ffi::CStr = - unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"stosq\0") }; pub const __sigset_t_defined: u32 = 1; pub const __timeval_defined: u32 = 1; pub const _STRUCT_TIMESPEC: u32 = 1; @@ -337,10 +344,6 @@ pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const __PTHREAD_MUTEX_LOCK_ELISION: u32 = 1; -pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND: u32 = 0; -pub const __PTHREAD_MUTEX_USE_UNION: u32 = 0; -pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED: u32 = 1; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; @@ -553,9 +556,9 @@ pub const LC_MEASUREMENT_MASK: u32 = 2048; pub const LC_IDENTIFICATION_MASK: u32 = 4096; pub const LC_ALL_MASK: u32 = 8127; pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; -pub const __bool_true_false_are_defined: u32 = 1; #[allow(unsafe_code)] pub const INT64_FORMAT: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; @@ -635,7 +638,9 @@ pub const PF_VSOCK: u32 = 40; pub const PF_KCM: u32 = 41; pub const PF_QIPCRTR: u32 = 42; pub const PF_SMC: u32 = 43; -pub const PF_MAX: u32 = 44; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; pub const AF_UNSPEC: u32 = 0; pub const AF_LOCAL: u32 = 1; pub const AF_UNIX: u32 = 1; @@ -683,7 +688,9 @@ pub const AF_VSOCK: u32 = 40; pub const AF_KCM: u32 = 41; pub const AF_QIPCRTR: u32 = 42; pub const AF_SMC: u32 = 43; -pub const AF_MAX: u32 = 44; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; pub const SOL_RAW: u32 = 255; pub const SOL_DECNET: u32 = 261; pub const SOL_X25: u32 = 262; @@ -707,15 +714,20 @@ pub const SOL_ALG: u32 = 279; pub const SOL_NFC: u32 = 280; pub const SOL_KCM: u32 = 281; pub const SOL_TLS: u32 = 282; -pub const SOMAXCONN: u32 = 128; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; pub const _SS_SIZE: u32 = 128; +pub const __BITS_PER_LONG: u32 = 64; pub const FIOSETOWN: u32 = 35073; pub const SIOCSPGRP: u32 = 35074; pub const FIOGETOWN: u32 = 35075; pub const SIOCGPGRP: u32 = 35076; pub const SIOCATMARK: u32 = 35077; -pub const SIOCGSTAMP: u32 = 35078; -pub const SIOCGSTAMPNS: u32 = 35079; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; pub const SOL_SOCKET: u32 = 1; pub const SO_DEBUG: u32 = 1; pub const SO_REUSEADDR: u32 = 2; @@ -738,8 +750,8 @@ pub const SO_PASSCRED: u32 = 16; pub const SO_PEERCRED: u32 = 17; pub const SO_RCVLOWAT: u32 = 18; pub const SO_SNDLOWAT: u32 = 19; -pub const SO_RCVTIMEO: u32 = 20; -pub const SO_SNDTIMEO: u32 = 21; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; pub const SO_SECURITY_AUTHENTICATION: u32 = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; @@ -748,16 +760,10 @@ pub const SO_ATTACH_FILTER: u32 = 26; pub const SO_DETACH_FILTER: u32 = 27; pub const SO_GET_FILTER: u32 = 26; pub const SO_PEERNAME: u32 = 28; -pub const SO_TIMESTAMP: u32 = 29; -pub const SCM_TIMESTAMP: u32 = 29; pub const SO_ACCEPTCONN: u32 = 30; pub const SO_PEERSEC: u32 = 31; pub const SO_PASSSEC: u32 = 34; -pub const SO_TIMESTAMPNS: u32 = 35; -pub const SCM_TIMESTAMPNS: u32 = 35; pub const SO_MARK: u32 = 36; -pub const SO_TIMESTAMPING: u32 = 37; -pub const SCM_TIMESTAMPING: u32 = 37; pub const SO_PROTOCOL: u32 = 38; pub const SO_DOMAIN: u32 = 39; pub const SO_RXQ_OVFL: u32 = 40; @@ -785,6 +791,31 @@ pub const SO_PEERGROUPS: u32 = 59; pub const SO_ZEROCOPY: u32 = 60; pub const SO_TXTIME: u32 = 61; pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; pub const __osockaddr_defined: u32 = 1; pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; pub const IP_OPTIONS: u32 = 4; @@ -835,6 +866,7 @@ pub const IP_NODEFRAG: u32 = 22; pub const IP_CHECKSUM: u32 = 23; pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; pub const IP_PMTUDISC_DONT: u32 = 0; pub const IP_PMTUDISC_WANT: u32 = 1; pub const IP_PMTUDISC_DO: u32 = 2; @@ -868,6 +900,9 @@ pub const IPV6_RECVERR: u32 = 25; pub const IPV6_V6ONLY: u32 = 26; pub const IPV6_JOIN_ANYCAST: u32 = 27; pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; pub const IPV6_IPSEC_POLICY: u32 = 34; pub const IPV6_XFRM_POLICY: u32 = 35; pub const IPV6_HDRINCL: u32 = 36; @@ -979,7 +1014,7 @@ pub const PGINVALID_SOCKET: i32 = -1; #[allow(unsafe_code)] pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked( - b"postgres (PostgreSQL) 14.13 (Debian 14.13-1.pgdg100+1)\n\0", + b"postgres (PostgreSQL) 14.13 (Debian 14.13-1.pgdg120+1)\n\0", ) }; #[allow(unsafe_code)] @@ -1001,6 +1036,7 @@ pub const __MATH_DECLARE_LDOUBLE: u32 = 1; pub const MATH_ERRNO: u32 = 1; pub const MATH_ERREXCEPT: u32 = 2; pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; pub const DEBUG5: u32 = 10; pub const DEBUG4: u32 = 11; pub const DEBUG3: u32 = 12; @@ -1154,10 +1190,6 @@ pub const AT_SYMLINK_NOFOLLOW: u32 = 256; pub const AT_REMOVEDIR: u32 = 512; pub const AT_SYMLINK_FOLLOW: u32 = 1024; pub const AT_EACCESS: u32 = 512; -pub const _STAT_VER_KERNEL: u32 = 0; -pub const _STAT_VER_LINUX: u32 = 1; -pub const _MKNOD_VER_LINUX: u32 = 0; -pub const _STAT_VER: u32 = 1; pub const __S_IFMT: u32 = 61440; pub const __S_IFDIR: u32 = 16384; pub const __S_IFCHR: u32 = 8192; @@ -1865,33 +1897,33 @@ pub const SIGHUP: u32 = 1; pub const SIGQUIT: u32 = 3; pub const SIGTRAP: u32 = 5; pub const SIGKILL: u32 = 9; -pub const SIGBUS: u32 = 10; -pub const SIGSYS: u32 = 12; pub const SIGPIPE: u32 = 13; pub const SIGALRM: u32 = 14; -pub const SIGURG: u32 = 16; -pub const SIGSTOP: u32 = 17; -pub const SIGTSTP: u32 = 18; -pub const SIGCONT: u32 = 19; -pub const SIGCHLD: u32 = 20; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; pub const SIGTTIN: u32 = 21; pub const SIGTTOU: u32 = 22; -pub const SIGPOLL: u32 = 23; -pub const SIGXCPU: u32 = 24; +pub const SIGPOLL: u32 = 29; pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; pub const SIGVTALRM: u32 = 26; pub const SIGPROF: u32 = 27; -pub const SIGUSR1: u32 = 30; -pub const SIGUSR2: u32 = 31; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; pub const SIGWINCH: u32 = 28; -pub const SIGIO: u32 = 23; -pub const SIGIOT: u32 = 6; -pub const SIGCLD: u32 = 20; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; pub const __SIGRTMIN: u32 = 32; -pub const __SIGRTMAX: u32 = 32; -pub const _NSIG: u32 = 33; -pub const SIGSTKFLT: u32 = 16; -pub const SIGPWR: u32 = 30; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; pub const __sig_atomic_t_defined: u32 = 1; pub const __siginfo_t_defined: u32 = 1; pub const __SI_MAX_SIZE: u32 = 128; @@ -1900,7 +1932,7 @@ pub const __SI_HAVE_SIGSYS: u32 = 1; pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; pub const __sigevent_t_defined: u32 = 1; pub const __SIGEV_MAX_SIZE: u32 = 64; -pub const NSIG: u32 = 33; +pub const NSIG: u32 = 65; pub const SA_NOCLDSTOP: u32 = 1; pub const SA_NOCLDWAIT: u32 = 2; pub const SA_SIGINFO: u32 = 4; @@ -2325,6 +2357,10 @@ pub const InvalidLocalTransactionId: u32 = 0; pub const MAX_LOCKMODES: u32 = 10; pub const DEFAULT_LOCKMETHOD: u32 = 1; pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; pub const OLD_SNAPSHOT_PADDING_ENTRIES: u32 = 10; pub const MAX_IO_CONCURRENCY: u32 = 1000; pub const BUFFER_LOCK_UNLOCK: u32 = 0; @@ -2865,6 +2901,9 @@ pub const EventTriggerOidIndexId: u32 = 3468; pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const XLOG_TBLSPC_CREATE: u32 = 0; pub const XLOG_TBLSPC_DROP: u32 = 16; pub const TRIGGER_EVENT_INSERT: u32 = 0; @@ -3002,9 +3041,6 @@ pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; -pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; -pub const CACHEDPLAN_MAGIC: u32 = 953717834; -pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const SPI_ERROR_CONNECT: i32 = -1; pub const SPI_ERROR_COPY: i32 = -2; pub const SPI_ERROR_OPUNKNOWN: i32 = -3; @@ -6658,7 +6694,6 @@ pub const RANGESTRAT_CONTAINED_BY: u32 = 8; pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; pub const RANGESTRAT_EQ: u32 = 18; pub type pg_int64 = ::core::ffi::c_long; -pub type va_list = __builtin_va_list; pub type __gnuc_va_list = __builtin_va_list; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; @@ -6706,6 +6741,7 @@ pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; @@ -6848,19 +6884,14 @@ impl Default for _IO_FILE { } } } +pub type va_list = __gnuc_va_list; pub type off_t = __off_t; pub type fpos_t = __fpos_t; -pub type wchar_t = ::core::ffi::c_int; -pub mod idtype_t { - pub type Type = ::core::ffi::c_uint; - pub const P_ALL: Type = 0; - pub const P_PID: Type = 1; - pub const P_PGID: Type = 2; -} pub type _Float32 = f32; pub type _Float64 = f64; pub type _Float32x = f64; pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_int; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct div_t { @@ -6905,10 +6936,10 @@ pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; -pub type u_int8_t = ::core::ffi::c_uchar; -pub type u_int16_t = ::core::ffi::c_ushort; -pub type u_int32_t = ::core::ffi::c_uint; -pub type u_int64_t = ::core::ffi::c_ulong; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -6941,20 +6972,25 @@ pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::core::ffi::c_uint, - pub __writers: ::core::ffi::c_uint, - pub __wrphase_futex: ::core::ffi::c_uint, - pub __writers_futex: ::core::ffi::c_uint, - pub __pad3: ::core::ffi::c_uint, - pub __pad4: ::core::ffi::c_uint, - pub __cur_writer: ::core::ffi::c_int, - pub __shared: ::core::ffi::c_int, - pub __rwelision: ::core::ffi::c_schar, - pub __pad1: [::core::ffi::c_uchar; 7usize], - pub __pad2: ::core::ffi::c_ulong, - pub __flags: ::core::ffi::c_uint, +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -6974,6 +7010,21 @@ impl Default for __pthread_internal_list { pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, @@ -6994,29 +7045,33 @@ impl Default for __pthread_mutex_s { } } #[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __rwelision: ::core::ffi::c_schar, + pub __pad1: [::core::ffi::c_uchar; 7usize], + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::core::ffi::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_1 { +impl Default for __pthread_cond_s { fn default() -> Self { let mut s = ::core::mem::MaybeUninit::::uninit(); unsafe { @@ -7025,35 +7080,12 @@ impl Default for __pthread_cond_s__bindgen_ty_1 { } } } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::core::ffi::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, -} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_2 { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -impl Default for __pthread_cond_s { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } +pub struct __once_flag { + pub __data: ::core::ffi::c_int, } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] @@ -7565,6 +7597,49 @@ pub mod _bindgen_ty_3 { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fd_set { + pub fds_bits: [::core::ffi::c_ulong; 16usize], +} +pub type __kernel_sighandler_t = + ::core::option::Option; +pub type __kernel_key_t = ::core::ffi::c_int; +pub type __kernel_mqd_t = ::core::ffi::c_int; +pub type __kernel_old_uid_t = ::core::ffi::c_ushort; +pub type __kernel_old_gid_t = ::core::ffi::c_ushort; +pub type __kernel_old_dev_t = ::core::ffi::c_ulong; +pub type __kernel_long_t = ::core::ffi::c_long; +pub type __kernel_ulong_t = ::core::ffi::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = ::core::ffi::c_uint; +pub type __kernel_pid_t = ::core::ffi::c_int; +pub type __kernel_ipc_pid_t = ::core::ffi::c_int; +pub type __kernel_uid_t = ::core::ffi::c_uint; +pub type __kernel_gid_t = ::core::ffi::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = ::core::ffi::c_int; +pub type __kernel_uid32_t = ::core::ffi::c_uint; +pub type __kernel_gid32_t = ::core::ffi::c_uint; +pub type __kernel_size_t = __kernel_ulong_t; +pub type __kernel_ssize_t = __kernel_long_t; +pub type __kernel_ptrdiff_t = __kernel_long_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fsid_t { + pub val: [::core::ffi::c_int; 2usize], +} +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = ::core::ffi::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = ::core::ffi::c_int; +pub type __kernel_clockid_t = ::core::ffi::c_int; +pub type __kernel_caddr_t = *mut ::core::ffi::c_char; +pub type __kernel_uid16_t = ::core::ffi::c_ushort; +pub type __kernel_gid16_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct linger { pub l_onoff: ::core::ffi::c_int, pub l_linger: ::core::ffi::c_int, @@ -7604,13 +7679,6 @@ impl Default for ip_opts { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct ip_mreqn { - pub imr_multiaddr: in_addr, - pub imr_address: in_addr, - pub imr_ifindex: ::core::ffi::c_int, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] pub struct in_pktinfo { pub ipi_ifindex: ::core::ffi::c_int, pub ipi_spec_dst: in_addr, @@ -7642,8 +7710,10 @@ pub mod _bindgen_ty_5 { pub const IPPROTO_SCTP: Type = 132; pub const IPPROTO_UDPLITE: Type = 136; pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; pub const IPPROTO_RAW: Type = 255; - pub const IPPROTO_MAX: Type = 256; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; } pub mod _bindgen_ty_6 { pub type Type = ::core::ffi::c_uint; @@ -7749,6 +7819,13 @@ pub struct ip_mreq { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, @@ -18854,6 +18931,7 @@ impl Default for siginfo_t { pub mod _bindgen_ty_10 { pub type Type = ::core::ffi::c_int; pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; pub const SI_TKILL: Type = -6; pub const SI_SIGIO: Type = -5; pub const SI_ASYNCIO: Type = -4; @@ -18873,6 +18951,7 @@ pub mod _bindgen_ty_11 { pub const ILL_PRVREG: Type = 6; pub const ILL_COPROC: Type = 7; pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; } pub mod _bindgen_ty_12 { pub type Type = ::core::ffi::c_uint; @@ -18884,6 +18963,8 @@ pub mod _bindgen_ty_12 { pub const FPE_FLTRES: Type = 6; pub const FPE_FLTINV: Type = 7; pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; } pub mod _bindgen_ty_13 { pub type Type = ::core::ffi::c_uint; @@ -18891,6 +18972,11 @@ pub mod _bindgen_ty_13 { pub const SEGV_ACCERR: Type = 2; pub const SEGV_BNDERR: Type = 3; pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; } pub mod _bindgen_ty_14 { pub type Type = ::core::ffi::c_uint; @@ -24913,6 +24999,117 @@ pub type ExplainOneQuery_hook_type = ::core::option::Option< >; pub type explain_get_index_name_hook_type = ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut OverrideSearchPath, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_object_relabel_type = ::core::option::Option< unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), >; @@ -26530,100 +26727,6 @@ pub mod BackslashQuoteType { pub const BACKSLASH_QUOTE_ON: Type = 1; pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; } -pub mod PlanCacheMode { - pub type Type = ::core::ffi::c_uint; - pub const PLAN_CACHE_MODE_AUTO: Type = 0; - pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; - pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::core::ffi::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::core::ffi::c_char, - pub commandTag: CommandTag::Type, - pub param_types: *mut Oid, - pub num_params: ::core::ffi::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::core::ffi::c_void, - pub cursor_options: ::core::ffi::c_int, - pub fixed_result: bool, - pub resultDesc: TupleDesc, - pub context: MemoryContext, - pub query_list: *mut List, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub search_path: *mut OverrideSearchPath, - pub query_context: MemoryContext, - pub rewriteRoleId: Oid, - pub rewriteRowSecurity: bool, - pub dependsOnRLS: bool, - pub gplan: *mut CachedPlan, - pub is_oneshot: bool, - pub is_complete: bool, - pub is_saved: bool, - pub is_valid: bool, - pub generation: ::core::ffi::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: int64, - pub num_generic_plans: int64, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::core::ffi::c_int, - pub stmt_list: *mut List, - pub is_oneshot: bool, - pub is_saved: bool, - pub is_valid: bool, - pub planRoleId: Oid, - pub dependsOnRole: bool, - pub saved_xmin: TransactionId, - pub generation: ::core::ffi::c_int, - pub refcount: ::core::ffi::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::core::ffi::c_int, - pub expr: *mut Node, - pub is_valid: bool, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub context: MemoryContext, - pub node: dlist_node, -} -impl Default for CachedExpression { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} pub mod PortalStrategy { pub type Type = ::core::ffi::c_uint; pub const PORTAL_ONE_SELECT: Type = 0; @@ -33185,8 +33288,8 @@ extern "C" { __newfd: ::core::ffi::c_int, __new: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; - pub fn tmpfile() -> *mut FILE; pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fopen( @@ -33405,15 +33508,13 @@ extern "C" { pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn perror(__s: *const ::core::ffi::c_char); - pub static mut sys_nerr: ::core::ffi::c_int; - pub static sys_errlist: [*const ::core::ffi::c_char; 0usize]; pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn popen( __command: *const ::core::ffi::c_char, __modes: *const ::core::ffi::c_char, ) -> *mut FILE; - pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; pub fn flockfile(__stream: *mut FILE); pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; @@ -33552,6 +33653,9 @@ extern "C" { __param: *mut ::core::ffi::c_ushort, __buffer: *mut drand48_data, ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn calloc( __nmemb: ::core::ffi::c_ulong, @@ -33562,6 +33666,11 @@ extern "C" { __size: ::core::ffi::c_ulong, ) -> *mut ::core::ffi::c_void; pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; pub fn posix_memalign( @@ -33734,6 +33843,11 @@ extern "C" { __s2: *const ::core::ffi::c_void, __n: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; pub fn memchr( __s: *const ::core::ffi::c_void, __c: ::core::ffi::c_int, @@ -35675,7 +35789,6 @@ extern "C" { pub fn tzset(); pub static mut daylight: ::core::ffi::c_int; pub static mut timezone: ::core::ffi::c_long; - pub fn stime(__when: *const time_t) -> ::core::ffi::c_int; pub fn timegm(__tp: *mut tm) -> time_t; pub fn timelocal(__tp: *mut tm) -> time_t; pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; @@ -36267,9 +36380,9 @@ extern "C" { name: *const ::core::ffi::c_char, ) -> EphemeralNamedRelation; pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; - pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn readdir(__dirp: *mut DIR) -> *mut dirent; pub fn readdir_r( __dirp: *mut DIR, @@ -37469,8 +37582,6 @@ extern "C" { ) -> ::core::ffi::c_int; pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) -> ::core::ffi::c_int; - pub static _sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub static sys_siglist: [*const ::core::ffi::c_char; 65usize]; pub fn siginterrupt( __sig: ::core::ffi::c_int, __interrupt: ::core::ffi::c_int, @@ -39819,6 +39930,34 @@ extern "C" { pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; pub static mut CurrentResourceOwner: ResourceOwner; pub static mut CurTransactionResourceOwner: ResourceOwner; pub static mut TopTransactionResourceOwner: ResourceOwner; @@ -41249,6 +41388,127 @@ extern "C" { labeled: bool, es: *mut ExplainState, ); + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; pub fn GetSecurityLabel( @@ -42015,58 +42275,6 @@ extern "C" { pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; - pub static mut plan_cache_mode: ::core::ffi::c_int; - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::core::ffi::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::core::ffi::c_void, - cursor_options: ::core::ffi::c_int, - fixed_result: bool, - ); - pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); - pub fn DropCachedPlan(plansource: *mut CachedPlanSource); - pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); - pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; - pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; - pub fn CachedPlanGetTargetList( - plansource: *mut CachedPlanSource, - queryEnv: *mut QueryEnvironment, - ) -> *mut List; - pub fn GetCachedPlan( - plansource: *mut CachedPlanSource, - boundParams: ParamListInfo, - owner: ResourceOwner, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); - pub fn CachedPlanAllowsSimpleValidityCheck( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn CachedPlanIsSimplyValid( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; - pub fn FreeCachedExpression(cexpr: *mut CachedExpression); pub fn EnablePortalManager(); pub fn PreCommit_Portals(isPrepare: bool) -> bool; pub fn AtAbort_Portals(); @@ -44436,6 +44644,11 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; pub static mut Transform_null_equals: bool; pub fn transformExpr( pstate: *mut ParseState, @@ -44575,6 +44788,179 @@ extern "C" { rtree: *mut Node, location: ::core::ffi::c_int, ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + joinalias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; pub fn LookupTypeName( pstate: *mut ParseState, typeName: *const TypeName, @@ -57550,12 +57936,6 @@ pub const dsm_op_DSM_OP_ATTACH: u32 = 1; pub const dsm_op_DSM_OP_DETACH: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] pub const dsm_op_DSM_OP_DESTROY: u32 = 3; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_ALL")] -pub const idtype_t_P_ALL: u32 = 0; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PID")] -pub const idtype_t_P_PID: u32 = 1; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PGID")] -pub const idtype_t_P_PGID: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] pub const jbvType_jbvNull: u32 = 0; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] diff --git a/vendor/pg15_aarch64_debian/pg_config/pg_config.txt b/vendor/pg15_aarch64_debian/pg_config/pg_config.txt index 9bb404b4f..09679ec30 100644 --- a/vendor/pg15_aarch64_debian/pg_config/pg_config.txt +++ b/vendor/pg15_aarch64_debian/pg_config/pg_config.txt @@ -11,13 +11,13 @@ MANDIR = /usr/share/postgresql/15/man SHAREDIR = /usr/share/postgresql/15 SYSCONFDIR = /etc/postgresql-common PGXS = /usr/lib/postgresql/15/lib/pgxs/src/makefiles/pgxs.mk -CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/15/man' '--docdir=/usr/share/doc/postgresql-doc-15' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/15' '--bindir=/usr/lib/postgresql/15/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 15.8-1.pgdg100+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-13' 'CLANG=/usr/bin/clang-13' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/15/man' '--docdir=/usr/share/doc/postgresql-doc-15' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/15' '--bindir=/usr/lib/postgresql/15/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 15.8-1.pgdg120+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-zstd' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' CC = gcc CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security +CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -moutline-atomics -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security CFLAGS_SL = -fPIC -LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-13/lib -Wl,--as-needed +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed LDFLAGS_EX = LDFLAGS_SL = -LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lpthread -lrt -ldl -lm -VERSION = PostgreSQL 15.8 (Debian 15.8-1.pgdg100+1) +LIBS = -lpgcommon -lpgport -lselinux -lzstd -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 15.8 (Debian 15.8-1.pgdg120+1) diff --git a/vendor/pg15_aarch64_debian/pgrx_binding/pg15_raw_bindings.rs b/vendor/pg15_aarch64_debian/pgrx_binding/pg15_raw_bindings.rs index b0ef05a65..ee49af3c5 100644 --- a/vendor/pg15_aarch64_debian/pgrx_binding/pg15_raw_bindings.rs +++ b/vendor/pg15_aarch64_debian/pgrx_binding/pg15_raw_bindings.rs @@ -1,4 +1,4 @@ -/* automatically generated by rust-bindgen 0.69.4 */ +/* automatically generated by rust-bindgen 0.70.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] @@ -180,12 +180,12 @@ pub const PG_MINORVERSION_NUM: u32 = 8; pub const PG_USE_STDBOOL: u32 = 1; #[allow(unsafe_code)] pub const PG_VERSION: &::core::ffi::CStr = unsafe { - ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"15.8 (Debian 15.8-1.pgdg100+1)\0") + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"15.8 (Debian 15.8-1.pgdg120+1)\0") }; pub const PG_VERSION_NUM: u32 = 150008; #[allow(unsafe_code)] pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { - :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 15.8 (Debian 15.8-1.pgdg100+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit\0") + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 15.8 (Debian 15.8-1.pgdg120+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") }; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; @@ -206,6 +206,7 @@ pub const USE_PAM: u32 = 1; pub const USE_SYSTEMD: u32 = 1; pub const USE_SYSV_SHARED_MEMORY: u32 = 1; pub const USE_UNNAMED_POSIX_SEMAPHORES: u32 = 1; +pub const USE_ZSTD: u32 = 1; pub const XLOG_BLCKSZ: u32 = 8192; pub const DEFAULT_XLOG_SEG_SIZE: u32 = 16777216; pub const NAMEDATALEN: u32 = 64; @@ -235,6 +236,7 @@ pub const DEFAULT_EVENT_SOURCE: &::core::ffi::CStr = pub const PG_CACHE_LINE_SIZE: u32 = 128; pub const TRACE_SORT: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; @@ -248,28 +250,37 @@ pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 28; +pub const __GLIBC_MINOR__: u32 = 36; pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; pub const _____fpos_t_defined: u32 = 1; pub const ____mbstate_t_defined: u32 = 1; pub const _____fpos64_t_defined: u32 = 1; @@ -304,7 +315,6 @@ pub const WNOWAIT: u32 = 16777216; pub const __WNOTHREAD: u32 = 536870912; pub const __WALL: u32 = 1073741824; pub const __WCLONE: u32 = 2147483648; -pub const __ENUM_IDTYPE_T: u32 = 1; pub const __W_CONTINUED: u32 = 65535; pub const __WCOREFLAG: u32 = 128; pub const __ldiv_t_defined: u32 = 1; @@ -339,11 +349,6 @@ pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __PTHREAD_MUTEX_LOCK_ELISION: u32 = 0; -pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND: u32 = 0; -pub const __PTHREAD_MUTEX_USE_UNION: u32 = 0; -pub const __PTHREAD_RWLOCK_ELISION_EXTRA: u32 = 0; -pub const __PTHREAD_SPINS: u32 = 0; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; @@ -556,9 +561,9 @@ pub const LC_MEASUREMENT_MASK: u32 = 2048; pub const LC_IDENTIFICATION_MASK: u32 = 4096; pub const LC_ALL_MASK: u32 = 8127; pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; -pub const __bool_true_false_are_defined: u32 = 1; #[allow(unsafe_code)] pub const INT64_FORMAT: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; @@ -594,7 +599,7 @@ pub const PGINVALID_SOCKET: i32 = -1; #[allow(unsafe_code)] pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked( - b"postgres (PostgreSQL) 15.8 (Debian 15.8-1.pgdg100+1)\n\0", + b"postgres (PostgreSQL) 15.8 (Debian 15.8-1.pgdg120+1)\n\0", ) }; #[allow(unsafe_code)] @@ -618,6 +623,7 @@ pub const __MATH_DECLARE_LDOUBLE: u32 = 1; pub const MATH_ERRNO: u32 = 1; pub const MATH_ERREXCEPT: u32 = 2; pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; pub const DEBUG5: u32 = 10; pub const DEBUG4: u32 = 11; pub const DEBUG3: u32 = 12; @@ -772,10 +778,6 @@ pub const AT_SYMLINK_NOFOLLOW: u32 = 256; pub const AT_REMOVEDIR: u32 = 512; pub const AT_SYMLINK_FOLLOW: u32 = 1024; pub const AT_EACCESS: u32 = 512; -pub const _STAT_VER_KERNEL: u32 = 0; -pub const _STAT_VER_LINUX: u32 = 0; -pub const _STAT_VER: u32 = 0; -pub const _MKNOD_VER_LINUX: u32 = 0; pub const __S_IFMT: u32 = 61440; pub const __S_IFDIR: u32 = 16384; pub const __S_IFCHR: u32 = 8192; @@ -1499,33 +1501,33 @@ pub const SIGHUP: u32 = 1; pub const SIGQUIT: u32 = 3; pub const SIGTRAP: u32 = 5; pub const SIGKILL: u32 = 9; -pub const SIGBUS: u32 = 10; -pub const SIGSYS: u32 = 12; pub const SIGPIPE: u32 = 13; pub const SIGALRM: u32 = 14; -pub const SIGURG: u32 = 16; -pub const SIGSTOP: u32 = 17; -pub const SIGTSTP: u32 = 18; -pub const SIGCONT: u32 = 19; -pub const SIGCHLD: u32 = 20; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; pub const SIGTTIN: u32 = 21; pub const SIGTTOU: u32 = 22; -pub const SIGPOLL: u32 = 23; -pub const SIGXCPU: u32 = 24; +pub const SIGPOLL: u32 = 29; pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; pub const SIGVTALRM: u32 = 26; pub const SIGPROF: u32 = 27; -pub const SIGUSR1: u32 = 30; -pub const SIGUSR2: u32 = 31; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; pub const SIGWINCH: u32 = 28; -pub const SIGIO: u32 = 23; -pub const SIGIOT: u32 = 6; -pub const SIGCLD: u32 = 20; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; pub const __SIGRTMIN: u32 = 32; -pub const __SIGRTMAX: u32 = 32; -pub const _NSIG: u32 = 33; -pub const SIGSTKFLT: u32 = 16; -pub const SIGPWR: u32 = 30; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; pub const __sig_atomic_t_defined: u32 = 1; pub const __siginfo_t_defined: u32 = 1; pub const __SI_MAX_SIZE: u32 = 128; @@ -1534,7 +1536,7 @@ pub const __SI_HAVE_SIGSYS: u32 = 1; pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; pub const __sigevent_t_defined: u32 = 1; pub const __SIGEV_MAX_SIZE: u32 = 64; -pub const NSIG: u32 = 33; +pub const NSIG: u32 = 65; pub const SA_NOCLDSTOP: u32 = 1; pub const SA_NOCLDWAIT: u32 = 2; pub const SA_SIGINFO: u32 = 4; @@ -1554,6 +1556,16 @@ pub const FPSIMD_MAGIC: u32 = 1179680769; pub const ESR_MAGIC: u32 = 1163088385; pub const EXTRA_MAGIC: u32 = 1163416577; pub const SVE_MAGIC: u32 = 1398162689; +pub const SVE_SIG_FLAG_SM: u32 = 1; +pub const ZA_MAGIC: u32 = 1412850501; +pub const __SVE_VQ_BYTES: u32 = 16; +pub const __SVE_VQ_MIN: u32 = 1; +pub const __SVE_VQ_MAX: u32 = 512; +pub const __SVE_VL_MIN: u32 = 16; +pub const __SVE_VL_MAX: u32 = 8192; +pub const __SVE_NUM_ZREGS: u32 = 32; +pub const __SVE_NUM_PREGS: u32 = 16; +pub const __SVE_ZREGS_OFFSET: u32 = 0; pub const SVE_VQ_BYTES: u32 = 16; pub const SVE_VQ_MIN: u32 = 1; pub const SVE_VQ_MAX: u32 = 512; @@ -1639,7 +1651,9 @@ pub const PF_VSOCK: u32 = 40; pub const PF_KCM: u32 = 41; pub const PF_QIPCRTR: u32 = 42; pub const PF_SMC: u32 = 43; -pub const PF_MAX: u32 = 44; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; pub const AF_UNSPEC: u32 = 0; pub const AF_LOCAL: u32 = 1; pub const AF_UNIX: u32 = 1; @@ -1687,7 +1701,9 @@ pub const AF_VSOCK: u32 = 40; pub const AF_KCM: u32 = 41; pub const AF_QIPCRTR: u32 = 42; pub const AF_SMC: u32 = 43; -pub const AF_MAX: u32 = 44; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; pub const SOL_RAW: u32 = 255; pub const SOL_DECNET: u32 = 261; pub const SOL_X25: u32 = 262; @@ -1711,15 +1727,19 @@ pub const SOL_ALG: u32 = 279; pub const SOL_NFC: u32 = 280; pub const SOL_KCM: u32 = 281; pub const SOL_TLS: u32 = 282; -pub const SOMAXCONN: u32 = 128; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; pub const _SS_SIZE: u32 = 128; pub const FIOSETOWN: u32 = 35073; pub const SIOCSPGRP: u32 = 35074; pub const FIOGETOWN: u32 = 35075; pub const SIOCGPGRP: u32 = 35076; pub const SIOCATMARK: u32 = 35077; -pub const SIOCGSTAMP: u32 = 35078; -pub const SIOCGSTAMPNS: u32 = 35079; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; pub const SOL_SOCKET: u32 = 1; pub const SO_DEBUG: u32 = 1; pub const SO_REUSEADDR: u32 = 2; @@ -1742,8 +1762,8 @@ pub const SO_PASSCRED: u32 = 16; pub const SO_PEERCRED: u32 = 17; pub const SO_RCVLOWAT: u32 = 18; pub const SO_SNDLOWAT: u32 = 19; -pub const SO_RCVTIMEO: u32 = 20; -pub const SO_SNDTIMEO: u32 = 21; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; pub const SO_SECURITY_AUTHENTICATION: u32 = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; @@ -1752,16 +1772,10 @@ pub const SO_ATTACH_FILTER: u32 = 26; pub const SO_DETACH_FILTER: u32 = 27; pub const SO_GET_FILTER: u32 = 26; pub const SO_PEERNAME: u32 = 28; -pub const SO_TIMESTAMP: u32 = 29; -pub const SCM_TIMESTAMP: u32 = 29; pub const SO_ACCEPTCONN: u32 = 30; pub const SO_PEERSEC: u32 = 31; pub const SO_PASSSEC: u32 = 34; -pub const SO_TIMESTAMPNS: u32 = 35; -pub const SCM_TIMESTAMPNS: u32 = 35; pub const SO_MARK: u32 = 36; -pub const SO_TIMESTAMPING: u32 = 37; -pub const SCM_TIMESTAMPING: u32 = 37; pub const SO_PROTOCOL: u32 = 38; pub const SO_DOMAIN: u32 = 39; pub const SO_RXQ_OVFL: u32 = 40; @@ -1789,6 +1803,31 @@ pub const SO_PEERGROUPS: u32 = 59; pub const SO_ZEROCOPY: u32 = 60; pub const SO_TXTIME: u32 = 61; pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; pub const __osockaddr_defined: u32 = 1; pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; pub const IP_OPTIONS: u32 = 4; @@ -1839,6 +1878,7 @@ pub const IP_NODEFRAG: u32 = 22; pub const IP_CHECKSUM: u32 = 23; pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; pub const IP_PMTUDISC_DONT: u32 = 0; pub const IP_PMTUDISC_WANT: u32 = 1; pub const IP_PMTUDISC_DO: u32 = 2; @@ -1872,6 +1912,9 @@ pub const IPV6_RECVERR: u32 = 25; pub const IPV6_V6ONLY: u32 = 26; pub const IPV6_JOIN_ANYCAST: u32 = 27; pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; pub const IPV6_IPSEC_POLICY: u32 = 34; pub const IPV6_XFRM_POLICY: u32 = 35; pub const IPV6_HDRINCL: u32 = 36; @@ -2364,6 +2407,10 @@ pub const InvalidLocalTransactionId: u32 = 0; pub const MAX_LOCKMODES: u32 = 10; pub const DEFAULT_LOCKMETHOD: u32 = 1; pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; pub const PG_CONTROL_VERSION: u32 = 1300; pub const MOCK_AUTH_NONCE_LEN: u32 = 32; pub const XLOG_CHECKPOINT_SHUTDOWN: u32 = 0; @@ -2931,6 +2978,9 @@ pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; pub const AT_REWRITE_ACCESS_METHOD: u32 = 8; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const XLOG_TBLSPC_CREATE: u32 = 0; pub const XLOG_TBLSPC_DROP: u32 = 16; pub const TRIGGER_EVENT_INSERT: u32 = 0; @@ -3052,9 +3102,6 @@ pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; -pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; -pub const CACHEDPLAN_MAGIC: u32 = 953717834; -pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const SPI_ERROR_CONNECT: i32 = -1; pub const SPI_ERROR_COPY: i32 = -2; pub const SPI_ERROR_OPUNKNOWN: i32 = -3; @@ -6760,7 +6807,6 @@ pub const RANGESTRAT_CONTAINED_BY: u32 = 8; pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; pub const RANGESTRAT_EQ: u32 = 18; pub type pg_int64 = ::core::ffi::c_long; -pub type va_list = [u64; 4usize]; pub type __gnuc_va_list = [u64; 4usize]; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; @@ -6808,6 +6854,7 @@ pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; @@ -6950,20 +6997,15 @@ impl Default for _IO_FILE { } } } +pub type va_list = __gnuc_va_list; pub type off_t = __off_t; pub type fpos_t = __fpos_t; -pub type wchar_t = ::core::ffi::c_uint; -pub mod idtype_t { - pub type Type = ::core::ffi::c_uint; - pub const P_ALL: Type = 0; - pub const P_PID: Type = 1; - pub const P_PGID: Type = 2; -} pub type _Float128 = u128; pub type _Float32 = f32; pub type _Float64 = f64; pub type _Float32x = f64; pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct div_t { @@ -7008,10 +7050,10 @@ pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; -pub type u_int8_t = ::core::ffi::c_uchar; -pub type u_int16_t = ::core::ffi::c_ushort; -pub type u_int32_t = ::core::ffi::c_uint; -pub type u_int64_t = ::core::ffi::c_ulong; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -7044,19 +7086,25 @@ pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::core::ffi::c_uint, - pub __writers: ::core::ffi::c_uint, - pub __wrphase_futex: ::core::ffi::c_uint, - pub __writers_futex: ::core::ffi::c_uint, - pub __pad3: ::core::ffi::c_uint, - pub __pad4: ::core::ffi::c_uint, - pub __cur_writer: ::core::ffi::c_int, - pub __shared: ::core::ffi::c_int, - pub __pad1: ::core::ffi::c_ulong, - pub __pad2: ::core::ffi::c_ulong, - pub __flags: ::core::ffi::c_uint, +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -7076,6 +7124,21 @@ impl Default for __pthread_internal_list { pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, @@ -7095,29 +7158,32 @@ impl Default for __pthread_mutex_s { } } #[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __pad1: ::core::ffi::c_ulong, + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::core::ffi::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_1 { +impl Default for __pthread_cond_s { fn default() -> Self { let mut s = ::core::mem::MaybeUninit::::uninit(); unsafe { @@ -7126,35 +7192,12 @@ impl Default for __pthread_cond_s__bindgen_ty_1 { } } } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::core::ffi::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, -} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_2 { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -impl Default for __pthread_cond_s { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } +pub struct __once_flag { + pub __data: ::core::ffi::c_int, } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] @@ -18779,6 +18822,7 @@ impl Default for siginfo_t { pub mod _bindgen_ty_4 { pub type Type = ::core::ffi::c_int; pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; pub const SI_TKILL: Type = -6; pub const SI_SIGIO: Type = -5; pub const SI_ASYNCIO: Type = -4; @@ -18798,6 +18842,7 @@ pub mod _bindgen_ty_5 { pub const ILL_PRVREG: Type = 6; pub const ILL_COPROC: Type = 7; pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; } pub mod _bindgen_ty_6 { pub type Type = ::core::ffi::c_uint; @@ -18809,6 +18854,8 @@ pub mod _bindgen_ty_6 { pub const FPE_FLTRES: Type = 6; pub const FPE_FLTINV: Type = 7; pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; } pub mod _bindgen_ty_7 { pub type Type = ::core::ffi::c_uint; @@ -18816,6 +18863,11 @@ pub mod _bindgen_ty_7 { pub const SEGV_ACCERR: Type = 2; pub const SEGV_BNDERR: Type = 3; pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; } pub mod _bindgen_ty_8 { pub type Type = ::core::ffi::c_uint; @@ -18982,6 +19034,7 @@ pub struct __kernel_fsid_t { } pub type __kernel_off_t = __kernel_long_t; pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; pub type __kernel_time_t = __kernel_long_t; pub type __kernel_time64_t = ::core::ffi::c_longlong; pub type __kernel_clock_t = __kernel_long_t; @@ -19052,6 +19105,14 @@ pub struct extra_context { #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct sve_context { + pub head: _aarch64_ctx, + pub vl: __u16, + pub flags: __u16, + pub __reserved: [__u16; 2usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct za_context { pub head: _aarch64_ctx, pub vl: __u16, pub __reserved: [__u16; 3usize], @@ -19078,7 +19139,6 @@ pub struct timezone { pub tz_minuteswest: ::core::ffi::c_int, pub tz_dsttime: ::core::ffi::c_int, } -pub type __timezone_ptr_t = *mut timezone; pub mod __itimer_which { pub type Type = ::core::ffi::c_uint; pub const ITIMER_REAL: Type = 0; @@ -19111,6 +19171,8 @@ pub struct user_fpsimd_struct { pub type elf_greg_t = __uint64_t; pub type elf_gregset_t = [elf_greg_t; 34usize]; pub type elf_fpregset_t = user_fpsimd_struct; +pub type __pr_uid_t = ::core::ffi::c_uint; +pub type __pr_gid_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct elf_siginfo { @@ -19153,8 +19215,8 @@ pub struct elf_prpsinfo { pub pr_zomb: ::core::ffi::c_char, pub pr_nice: ::core::ffi::c_char, pub pr_flag: ::core::ffi::c_ulong, - pub pr_uid: ::core::ffi::c_uint, - pub pr_gid: ::core::ffi::c_uint, + pub pr_uid: __pr_uid_t, + pub pr_gid: __pr_gid_t, pub pr_pid: ::core::ffi::c_int, pub pr_ppid: ::core::ffi::c_int, pub pr_pgrp: ::core::ffi::c_int, @@ -19172,8 +19234,10 @@ impl Default for elf_prpsinfo { } } pub type psaddr_t = *mut ::core::ffi::c_void; -pub type prgregset_t = elf_gregset_t; -pub type prfpregset_t = elf_fpregset_t; +pub type __prgregset_t = elf_gregset_t; +pub type __prfpregset_t = elf_fpregset_t; +pub type prgregset_t = __prgregset_t; +pub type prfpregset_t = __prfpregset_t; pub type lwpid_t = __pid_t; pub type prstatus_t = elf_prstatus; pub type prpsinfo_t = elf_prpsinfo; @@ -19492,13 +19556,6 @@ impl Default for ip_opts { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct ip_mreqn { - pub imr_multiaddr: in_addr, - pub imr_address: in_addr, - pub imr_ifindex: ::core::ffi::c_int, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] pub struct in_pktinfo { pub ipi_ifindex: ::core::ffi::c_int, pub ipi_spec_dst: in_addr, @@ -19530,8 +19587,10 @@ pub mod _bindgen_ty_16 { pub const IPPROTO_SCTP: Type = 132; pub const IPPROTO_UDPLITE: Type = 136; pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; pub const IPPROTO_RAW: Type = 255; - pub const IPPROTO_MAX: Type = 256; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; } pub mod _bindgen_ty_17 { pub type Type = ::core::ffi::c_uint; @@ -19637,6 +19696,13 @@ pub struct ip_mreq { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, @@ -25060,6 +25126,117 @@ pub type ExplainOneQuery_hook_type = ::core::option::Option< >; pub type explain_get_index_name_hook_type = ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut OverrideSearchPath, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_object_relabel_type = ::core::option::Option< unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), >; @@ -26597,100 +26774,6 @@ pub mod BackslashQuoteType { pub const BACKSLASH_QUOTE_ON: Type = 1; pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; } -pub mod PlanCacheMode { - pub type Type = ::core::ffi::c_uint; - pub const PLAN_CACHE_MODE_AUTO: Type = 0; - pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; - pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::core::ffi::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::core::ffi::c_char, - pub commandTag: CommandTag::Type, - pub param_types: *mut Oid, - pub num_params: ::core::ffi::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::core::ffi::c_void, - pub cursor_options: ::core::ffi::c_int, - pub fixed_result: bool, - pub resultDesc: TupleDesc, - pub context: MemoryContext, - pub query_list: *mut List, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub search_path: *mut OverrideSearchPath, - pub query_context: MemoryContext, - pub rewriteRoleId: Oid, - pub rewriteRowSecurity: bool, - pub dependsOnRLS: bool, - pub gplan: *mut CachedPlan, - pub is_oneshot: bool, - pub is_complete: bool, - pub is_saved: bool, - pub is_valid: bool, - pub generation: ::core::ffi::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: int64, - pub num_generic_plans: int64, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::core::ffi::c_int, - pub stmt_list: *mut List, - pub is_oneshot: bool, - pub is_saved: bool, - pub is_valid: bool, - pub planRoleId: Oid, - pub dependsOnRole: bool, - pub saved_xmin: TransactionId, - pub generation: ::core::ffi::c_int, - pub refcount: ::core::ffi::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::core::ffi::c_int, - pub expr: *mut Node, - pub is_valid: bool, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub context: MemoryContext, - pub node: dlist_node, -} -impl Default for CachedExpression { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} pub mod PortalStrategy { pub type Type = ::core::ffi::c_uint; pub const PORTAL_ONE_SELECT: Type = 0; @@ -33392,8 +33475,8 @@ extern "C" { __newfd: ::core::ffi::c_int, __new: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; - pub fn tmpfile() -> *mut FILE; pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fopen( @@ -33610,15 +33693,13 @@ extern "C" { pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn perror(__s: *const ::core::ffi::c_char); - pub static mut sys_nerr: ::core::ffi::c_int; - pub static sys_errlist: [*const ::core::ffi::c_char; 0usize]; pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn popen( __command: *const ::core::ffi::c_char, __modes: *const ::core::ffi::c_char, ) -> *mut FILE; - pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; pub fn flockfile(__stream: *mut FILE); pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; @@ -33757,6 +33838,9 @@ extern "C" { __param: *mut ::core::ffi::c_ushort, __buffer: *mut drand48_data, ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn calloc( __nmemb: ::core::ffi::c_ulong, @@ -33767,6 +33851,11 @@ extern "C" { __size: ::core::ffi::c_ulong, ) -> *mut ::core::ffi::c_void; pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; pub fn posix_memalign( @@ -33939,6 +34028,11 @@ extern "C" { __s2: *const ::core::ffi::c_void, __n: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; pub fn memchr( __s: *const ::core::ffi::c_void, __c: ::core::ffi::c_int, @@ -35497,7 +35591,6 @@ extern "C" { pub fn tzset(); pub static mut daylight: ::core::ffi::c_int; pub static mut timezone: ::core::ffi::c_long; - pub fn stime(__when: *const time_t) -> ::core::ffi::c_int; pub fn timegm(__tp: *mut tm) -> time_t; pub fn timelocal(__tp: *mut tm) -> time_t; pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; @@ -36093,9 +36186,9 @@ extern "C" { name: *const ::core::ffi::c_char, ) -> EphemeralNamedRelation; pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; - pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn readdir(__dirp: *mut DIR) -> *mut dirent; pub fn readdir_r( __dirp: *mut DIR, @@ -37310,9 +37403,7 @@ extern "C" { ) -> ::core::ffi::c_int; pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) -> ::core::ffi::c_int; - pub static _sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub static sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub fn gettimeofday(__tv: *mut timeval, __tz: __timezone_ptr_t) -> ::core::ffi::c_int; + pub fn gettimeofday(__tv: *mut timeval, __tz: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; pub fn settimeofday(__tv: *const timeval, __tz: *const timezone) -> ::core::ffi::c_int; pub fn adjtime(__delta: *const timeval, __olddelta: *mut timeval) -> ::core::ffi::c_int; pub fn getitimer(__which: __itimer_which_t, __value: *mut itimerval) -> ::core::ffi::c_int; @@ -40129,6 +40220,34 @@ extern "C" { pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; pub static mut recoveryTargetInclusive: bool; pub static mut recoveryTargetAction: ::core::ffi::c_int; pub static mut recovery_min_apply_delay: ::core::ffi::c_int; @@ -41678,6 +41797,127 @@ extern "C" { labeled: bool, es: *mut ExplainState, ); + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; pub fn GetSecurityLabel( @@ -42523,58 +42763,6 @@ extern "C" { pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; - pub static mut plan_cache_mode: ::core::ffi::c_int; - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::core::ffi::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::core::ffi::c_void, - cursor_options: ::core::ffi::c_int, - fixed_result: bool, - ); - pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); - pub fn DropCachedPlan(plansource: *mut CachedPlanSource); - pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); - pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; - pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; - pub fn CachedPlanGetTargetList( - plansource: *mut CachedPlanSource, - queryEnv: *mut QueryEnvironment, - ) -> *mut List; - pub fn GetCachedPlan( - plansource: *mut CachedPlanSource, - boundParams: ParamListInfo, - owner: ResourceOwner, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); - pub fn CachedPlanAllowsSimpleValidityCheck( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn CachedPlanIsSimplyValid( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; - pub fn FreeCachedExpression(cexpr: *mut CachedExpression); pub fn EnablePortalManager(); pub fn PreCommit_Portals(isPrepare: bool) -> bool; pub fn AtAbort_Portals(); @@ -44966,6 +45154,11 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; pub static mut Transform_null_equals: bool; pub fn transformExpr( pstate: *mut ParseState, @@ -45105,6 +45298,180 @@ extern "C" { rtree: *mut Node, location: ::core::ffi::c_int, ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + joinalias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + require_col_privs: bool, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; pub fn LookupTypeName( pstate: *mut ParseState, typeName: *const TypeName, @@ -58355,12 +58722,6 @@ pub const dsm_op_DSM_OP_ATTACH: u32 = 1; pub const dsm_op_DSM_OP_DETACH: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] pub const dsm_op_DSM_OP_DESTROY: u32 = 3; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_ALL")] -pub const idtype_t_P_ALL: u32 = 0; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PID")] -pub const idtype_t_P_PID: u32 = 1; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PGID")] -pub const idtype_t_P_PGID: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] pub const jbvType_jbvNull: u32 = 0; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] diff --git a/vendor/pg15_x86_64_debian/pg_config/pg_config.txt b/vendor/pg15_x86_64_debian/pg_config/pg_config.txt index 9692d40a3..237116ada 100644 --- a/vendor/pg15_x86_64_debian/pg_config/pg_config.txt +++ b/vendor/pg15_x86_64_debian/pg_config/pg_config.txt @@ -11,13 +11,13 @@ MANDIR = /usr/share/postgresql/15/man SHAREDIR = /usr/share/postgresql/15 SYSCONFDIR = /etc/postgresql-common PGXS = /usr/lib/postgresql/15/lib/pgxs/src/makefiles/pgxs.mk -CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/15/man' '--docdir=/usr/share/doc/postgresql-doc-15' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/15' '--bindir=/usr/lib/postgresql/15/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 15.8-1.pgdg100+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-13' 'CLANG=/usr/bin/clang-13' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/15/man' '--docdir=/usr/share/doc/postgresql-doc-15' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/15' '--bindir=/usr/lib/postgresql/15/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 15.8-1.pgdg120+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-zstd' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' CC = gcc CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer CFLAGS_SL = -fPIC -LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-13/lib -Wl,--as-needed +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed LDFLAGS_EX = LDFLAGS_SL = -LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lpthread -lrt -ldl -lm -VERSION = PostgreSQL 15.8 (Debian 15.8-1.pgdg100+1) +LIBS = -lpgcommon -lpgport -lselinux -lzstd -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 15.8 (Debian 15.8-1.pgdg120+1) diff --git a/vendor/pg15_x86_64_debian/pgrx_binding/pg15_raw_bindings.rs b/vendor/pg15_x86_64_debian/pgrx_binding/pg15_raw_bindings.rs index 66341cc87..e4b72e6ca 100644 --- a/vendor/pg15_x86_64_debian/pgrx_binding/pg15_raw_bindings.rs +++ b/vendor/pg15_x86_64_debian/pgrx_binding/pg15_raw_bindings.rs @@ -1,4 +1,4 @@ -/* automatically generated by rust-bindgen 0.69.4 */ +/* automatically generated by rust-bindgen 0.70.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] @@ -180,12 +180,12 @@ pub const PG_MINORVERSION_NUM: u32 = 8; pub const PG_USE_STDBOOL: u32 = 1; #[allow(unsafe_code)] pub const PG_VERSION: &::core::ffi::CStr = unsafe { - ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"15.8 (Debian 15.8-1.pgdg100+1)\0") + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"15.8 (Debian 15.8-1.pgdg120+1)\0") }; pub const PG_VERSION_NUM: u32 = 150008; #[allow(unsafe_code)] pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { - :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 15.8 (Debian 15.8-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit\0") + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 15.8 (Debian 15.8-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") }; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; @@ -206,6 +206,7 @@ pub const USE_SSE42_CRC32C_WITH_RUNTIME_CHECK: u32 = 1; pub const USE_SYSTEMD: u32 = 1; pub const USE_SYSV_SHARED_MEMORY: u32 = 1; pub const USE_UNNAMED_POSIX_SEMAPHORES: u32 = 1; +pub const USE_ZSTD: u32 = 1; pub const XLOG_BLCKSZ: u32 = 8192; pub const DEFAULT_XLOG_SEG_SIZE: u32 = 16777216; pub const NAMEDATALEN: u32 = 64; @@ -235,6 +236,7 @@ pub const DEFAULT_EVENT_SOURCE: &::core::ffi::CStr = pub const PG_CACHE_LINE_SIZE: u32 = 128; pub const TRACE_SORT: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; @@ -248,29 +250,39 @@ pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; +pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 28; +pub const __GLIBC_MINOR__: u32 = 36; pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; +pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; pub const _____fpos_t_defined: u32 = 1; pub const ____mbstate_t_defined: u32 = 1; pub const _____fpos64_t_defined: u32 = 1; @@ -305,7 +317,6 @@ pub const WNOWAIT: u32 = 16777216; pub const __WNOTHREAD: u32 = 536870912; pub const __WALL: u32 = 1073741824; pub const __WCLONE: u32 = 2147483648; -pub const __ENUM_IDTYPE_T: u32 = 1; pub const __W_CONTINUED: u32 = 65535; pub const __WCOREFLAG: u32 = 128; pub const __ldiv_t_defined: u32 = 1; @@ -327,9 +338,6 @@ pub const LITTLE_ENDIAN: u32 = 1234; pub const BIG_ENDIAN: u32 = 4321; pub const PDP_ENDIAN: u32 = 3412; pub const BYTE_ORDER: u32 = 1234; -#[allow(unsafe_code)] -pub const __FD_ZERO_STOS: &::core::ffi::CStr = - unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"stosq\0") }; pub const __sigset_t_defined: u32 = 1; pub const __timeval_defined: u32 = 1; pub const _STRUCT_TIMESPEC: u32 = 1; @@ -343,10 +351,6 @@ pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const __PTHREAD_MUTEX_LOCK_ELISION: u32 = 1; -pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND: u32 = 0; -pub const __PTHREAD_MUTEX_USE_UNION: u32 = 0; -pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED: u32 = 1; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; @@ -559,9 +563,9 @@ pub const LC_MEASUREMENT_MASK: u32 = 2048; pub const LC_IDENTIFICATION_MASK: u32 = 4096; pub const LC_ALL_MASK: u32 = 8127; pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; -pub const __bool_true_false_are_defined: u32 = 1; #[allow(unsafe_code)] pub const INT64_FORMAT: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; @@ -597,7 +601,7 @@ pub const PGINVALID_SOCKET: i32 = -1; #[allow(unsafe_code)] pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked( - b"postgres (PostgreSQL) 15.8 (Debian 15.8-1.pgdg100+1)\n\0", + b"postgres (PostgreSQL) 15.8 (Debian 15.8-1.pgdg120+1)\n\0", ) }; #[allow(unsafe_code)] @@ -619,6 +623,7 @@ pub const __MATH_DECLARE_LDOUBLE: u32 = 1; pub const MATH_ERRNO: u32 = 1; pub const MATH_ERREXCEPT: u32 = 2; pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; pub const DEBUG5: u32 = 10; pub const DEBUG4: u32 = 11; pub const DEBUG3: u32 = 12; @@ -773,10 +778,6 @@ pub const AT_SYMLINK_NOFOLLOW: u32 = 256; pub const AT_REMOVEDIR: u32 = 512; pub const AT_SYMLINK_FOLLOW: u32 = 1024; pub const AT_EACCESS: u32 = 512; -pub const _STAT_VER_KERNEL: u32 = 0; -pub const _STAT_VER_LINUX: u32 = 1; -pub const _MKNOD_VER_LINUX: u32 = 0; -pub const _STAT_VER: u32 = 1; pub const __S_IFMT: u32 = 61440; pub const __S_IFDIR: u32 = 16384; pub const __S_IFCHR: u32 = 8192; @@ -1500,33 +1501,33 @@ pub const SIGHUP: u32 = 1; pub const SIGQUIT: u32 = 3; pub const SIGTRAP: u32 = 5; pub const SIGKILL: u32 = 9; -pub const SIGBUS: u32 = 10; -pub const SIGSYS: u32 = 12; pub const SIGPIPE: u32 = 13; pub const SIGALRM: u32 = 14; -pub const SIGURG: u32 = 16; -pub const SIGSTOP: u32 = 17; -pub const SIGTSTP: u32 = 18; -pub const SIGCONT: u32 = 19; -pub const SIGCHLD: u32 = 20; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; pub const SIGTTIN: u32 = 21; pub const SIGTTOU: u32 = 22; -pub const SIGPOLL: u32 = 23; -pub const SIGXCPU: u32 = 24; +pub const SIGPOLL: u32 = 29; pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; pub const SIGVTALRM: u32 = 26; pub const SIGPROF: u32 = 27; -pub const SIGUSR1: u32 = 30; -pub const SIGUSR2: u32 = 31; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; pub const SIGWINCH: u32 = 28; -pub const SIGIO: u32 = 23; -pub const SIGIOT: u32 = 6; -pub const SIGCLD: u32 = 20; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; pub const __SIGRTMIN: u32 = 32; -pub const __SIGRTMAX: u32 = 32; -pub const _NSIG: u32 = 33; -pub const SIGSTKFLT: u32 = 16; -pub const SIGPWR: u32 = 30; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; pub const __sig_atomic_t_defined: u32 = 1; pub const __siginfo_t_defined: u32 = 1; pub const __SI_MAX_SIZE: u32 = 128; @@ -1535,7 +1536,7 @@ pub const __SI_HAVE_SIGSYS: u32 = 1; pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; pub const __sigevent_t_defined: u32 = 1; pub const __SIGEV_MAX_SIZE: u32 = 64; -pub const NSIG: u32 = 33; +pub const NSIG: u32 = 65; pub const SA_NOCLDSTOP: u32 = 1; pub const SA_NOCLDWAIT: u32 = 2; pub const SA_SIGINFO: u32 = 4; @@ -1631,7 +1632,9 @@ pub const PF_VSOCK: u32 = 40; pub const PF_KCM: u32 = 41; pub const PF_QIPCRTR: u32 = 42; pub const PF_SMC: u32 = 43; -pub const PF_MAX: u32 = 44; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; pub const AF_UNSPEC: u32 = 0; pub const AF_LOCAL: u32 = 1; pub const AF_UNIX: u32 = 1; @@ -1679,7 +1682,9 @@ pub const AF_VSOCK: u32 = 40; pub const AF_KCM: u32 = 41; pub const AF_QIPCRTR: u32 = 42; pub const AF_SMC: u32 = 43; -pub const AF_MAX: u32 = 44; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; pub const SOL_RAW: u32 = 255; pub const SOL_DECNET: u32 = 261; pub const SOL_X25: u32 = 262; @@ -1703,15 +1708,20 @@ pub const SOL_ALG: u32 = 279; pub const SOL_NFC: u32 = 280; pub const SOL_KCM: u32 = 281; pub const SOL_TLS: u32 = 282; -pub const SOMAXCONN: u32 = 128; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; pub const _SS_SIZE: u32 = 128; +pub const __BITS_PER_LONG: u32 = 64; pub const FIOSETOWN: u32 = 35073; pub const SIOCSPGRP: u32 = 35074; pub const FIOGETOWN: u32 = 35075; pub const SIOCGPGRP: u32 = 35076; pub const SIOCATMARK: u32 = 35077; -pub const SIOCGSTAMP: u32 = 35078; -pub const SIOCGSTAMPNS: u32 = 35079; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; pub const SOL_SOCKET: u32 = 1; pub const SO_DEBUG: u32 = 1; pub const SO_REUSEADDR: u32 = 2; @@ -1734,8 +1744,8 @@ pub const SO_PASSCRED: u32 = 16; pub const SO_PEERCRED: u32 = 17; pub const SO_RCVLOWAT: u32 = 18; pub const SO_SNDLOWAT: u32 = 19; -pub const SO_RCVTIMEO: u32 = 20; -pub const SO_SNDTIMEO: u32 = 21; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; pub const SO_SECURITY_AUTHENTICATION: u32 = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; @@ -1744,16 +1754,10 @@ pub const SO_ATTACH_FILTER: u32 = 26; pub const SO_DETACH_FILTER: u32 = 27; pub const SO_GET_FILTER: u32 = 26; pub const SO_PEERNAME: u32 = 28; -pub const SO_TIMESTAMP: u32 = 29; -pub const SCM_TIMESTAMP: u32 = 29; pub const SO_ACCEPTCONN: u32 = 30; pub const SO_PEERSEC: u32 = 31; pub const SO_PASSSEC: u32 = 34; -pub const SO_TIMESTAMPNS: u32 = 35; -pub const SCM_TIMESTAMPNS: u32 = 35; pub const SO_MARK: u32 = 36; -pub const SO_TIMESTAMPING: u32 = 37; -pub const SCM_TIMESTAMPING: u32 = 37; pub const SO_PROTOCOL: u32 = 38; pub const SO_DOMAIN: u32 = 39; pub const SO_RXQ_OVFL: u32 = 40; @@ -1781,6 +1785,31 @@ pub const SO_PEERGROUPS: u32 = 59; pub const SO_ZEROCOPY: u32 = 60; pub const SO_TXTIME: u32 = 61; pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; pub const __osockaddr_defined: u32 = 1; pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; pub const IP_OPTIONS: u32 = 4; @@ -1831,6 +1860,7 @@ pub const IP_NODEFRAG: u32 = 22; pub const IP_CHECKSUM: u32 = 23; pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; pub const IP_PMTUDISC_DONT: u32 = 0; pub const IP_PMTUDISC_WANT: u32 = 1; pub const IP_PMTUDISC_DO: u32 = 2; @@ -1864,6 +1894,9 @@ pub const IPV6_RECVERR: u32 = 25; pub const IPV6_V6ONLY: u32 = 26; pub const IPV6_JOIN_ANYCAST: u32 = 27; pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; pub const IPV6_IPSEC_POLICY: u32 = 34; pub const IPV6_XFRM_POLICY: u32 = 35; pub const IPV6_HDRINCL: u32 = 36; @@ -2356,6 +2389,10 @@ pub const InvalidLocalTransactionId: u32 = 0; pub const MAX_LOCKMODES: u32 = 10; pub const DEFAULT_LOCKMETHOD: u32 = 1; pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; pub const PG_CONTROL_VERSION: u32 = 1300; pub const MOCK_AUTH_NONCE_LEN: u32 = 32; pub const XLOG_CHECKPOINT_SHUTDOWN: u32 = 0; @@ -2923,6 +2960,9 @@ pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; pub const AT_REWRITE_ACCESS_METHOD: u32 = 8; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const XLOG_TBLSPC_CREATE: u32 = 0; pub const XLOG_TBLSPC_DROP: u32 = 16; pub const TRIGGER_EVENT_INSERT: u32 = 0; @@ -3044,9 +3084,6 @@ pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; -pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; -pub const CACHEDPLAN_MAGIC: u32 = 953717834; -pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const SPI_ERROR_CONNECT: i32 = -1; pub const SPI_ERROR_COPY: i32 = -2; pub const SPI_ERROR_OPUNKNOWN: i32 = -3; @@ -6752,7 +6789,6 @@ pub const RANGESTRAT_CONTAINED_BY: u32 = 8; pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; pub const RANGESTRAT_EQ: u32 = 18; pub type pg_int64 = ::core::ffi::c_long; -pub type va_list = __builtin_va_list; pub type __gnuc_va_list = __builtin_va_list; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; @@ -6800,6 +6836,7 @@ pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; @@ -6942,19 +6979,14 @@ impl Default for _IO_FILE { } } } +pub type va_list = __gnuc_va_list; pub type off_t = __off_t; pub type fpos_t = __fpos_t; -pub type wchar_t = ::core::ffi::c_int; -pub mod idtype_t { - pub type Type = ::core::ffi::c_uint; - pub const P_ALL: Type = 0; - pub const P_PID: Type = 1; - pub const P_PGID: Type = 2; -} pub type _Float32 = f32; pub type _Float64 = f64; pub type _Float32x = f64; pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_int; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct div_t { @@ -6999,10 +7031,10 @@ pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; -pub type u_int8_t = ::core::ffi::c_uchar; -pub type u_int16_t = ::core::ffi::c_ushort; -pub type u_int32_t = ::core::ffi::c_uint; -pub type u_int64_t = ::core::ffi::c_ulong; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -7035,20 +7067,25 @@ pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::core::ffi::c_uint, - pub __writers: ::core::ffi::c_uint, - pub __wrphase_futex: ::core::ffi::c_uint, - pub __writers_futex: ::core::ffi::c_uint, - pub __pad3: ::core::ffi::c_uint, - pub __pad4: ::core::ffi::c_uint, - pub __cur_writer: ::core::ffi::c_int, - pub __shared: ::core::ffi::c_int, - pub __rwelision: ::core::ffi::c_schar, - pub __pad1: [::core::ffi::c_uchar; 7usize], - pub __pad2: ::core::ffi::c_ulong, - pub __flags: ::core::ffi::c_uint, +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -7068,6 +7105,21 @@ impl Default for __pthread_internal_list { pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, @@ -7088,29 +7140,33 @@ impl Default for __pthread_mutex_s { } } #[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __rwelision: ::core::ffi::c_schar, + pub __pad1: [::core::ffi::c_uchar; 7usize], + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::core::ffi::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_1 { +impl Default for __pthread_cond_s { fn default() -> Self { let mut s = ::core::mem::MaybeUninit::::uninit(); unsafe { @@ -7119,35 +7175,12 @@ impl Default for __pthread_cond_s__bindgen_ty_1 { } } } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::core::ffi::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, -} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_2 { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -impl Default for __pthread_cond_s { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } +pub struct __once_flag { + pub __data: ::core::ffi::c_int, } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] @@ -18771,6 +18804,7 @@ impl Default for siginfo_t { pub mod _bindgen_ty_4 { pub type Type = ::core::ffi::c_int; pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; pub const SI_TKILL: Type = -6; pub const SI_SIGIO: Type = -5; pub const SI_ASYNCIO: Type = -4; @@ -18790,6 +18824,7 @@ pub mod _bindgen_ty_5 { pub const ILL_PRVREG: Type = 6; pub const ILL_COPROC: Type = 7; pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; } pub mod _bindgen_ty_6 { pub type Type = ::core::ffi::c_uint; @@ -18801,6 +18836,8 @@ pub mod _bindgen_ty_6 { pub const FPE_FLTRES: Type = 6; pub const FPE_FLTINV: Type = 7; pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; } pub mod _bindgen_ty_7 { pub type Type = ::core::ffi::c_uint; @@ -18808,6 +18845,11 @@ pub mod _bindgen_ty_7 { pub const SEGV_ACCERR: Type = 2; pub const SEGV_BNDERR: Type = 3; pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; } pub mod _bindgen_ty_8 { pub type Type = ::core::ffi::c_uint; @@ -19381,6 +19423,49 @@ pub mod _bindgen_ty_14 { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fd_set { + pub fds_bits: [::core::ffi::c_ulong; 16usize], +} +pub type __kernel_sighandler_t = + ::core::option::Option; +pub type __kernel_key_t = ::core::ffi::c_int; +pub type __kernel_mqd_t = ::core::ffi::c_int; +pub type __kernel_old_uid_t = ::core::ffi::c_ushort; +pub type __kernel_old_gid_t = ::core::ffi::c_ushort; +pub type __kernel_old_dev_t = ::core::ffi::c_ulong; +pub type __kernel_long_t = ::core::ffi::c_long; +pub type __kernel_ulong_t = ::core::ffi::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = ::core::ffi::c_uint; +pub type __kernel_pid_t = ::core::ffi::c_int; +pub type __kernel_ipc_pid_t = ::core::ffi::c_int; +pub type __kernel_uid_t = ::core::ffi::c_uint; +pub type __kernel_gid_t = ::core::ffi::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = ::core::ffi::c_int; +pub type __kernel_uid32_t = ::core::ffi::c_uint; +pub type __kernel_gid32_t = ::core::ffi::c_uint; +pub type __kernel_size_t = __kernel_ulong_t; +pub type __kernel_ssize_t = __kernel_long_t; +pub type __kernel_ptrdiff_t = __kernel_long_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fsid_t { + pub val: [::core::ffi::c_int; 2usize], +} +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = ::core::ffi::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = ::core::ffi::c_int; +pub type __kernel_clockid_t = ::core::ffi::c_int; +pub type __kernel_caddr_t = *mut ::core::ffi::c_char; +pub type __kernel_uid16_t = ::core::ffi::c_ushort; +pub type __kernel_gid16_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct linger { pub l_onoff: ::core::ffi::c_int, pub l_linger: ::core::ffi::c_int, @@ -19420,13 +19505,6 @@ impl Default for ip_opts { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct ip_mreqn { - pub imr_multiaddr: in_addr, - pub imr_address: in_addr, - pub imr_ifindex: ::core::ffi::c_int, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] pub struct in_pktinfo { pub ipi_ifindex: ::core::ffi::c_int, pub ipi_spec_dst: in_addr, @@ -19458,8 +19536,10 @@ pub mod _bindgen_ty_16 { pub const IPPROTO_SCTP: Type = 132; pub const IPPROTO_UDPLITE: Type = 136; pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; pub const IPPROTO_RAW: Type = 255; - pub const IPPROTO_MAX: Type = 256; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; } pub mod _bindgen_ty_17 { pub type Type = ::core::ffi::c_uint; @@ -19565,6 +19645,13 @@ pub struct ip_mreq { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, @@ -24988,6 +25075,117 @@ pub type ExplainOneQuery_hook_type = ::core::option::Option< >; pub type explain_get_index_name_hook_type = ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut OverrideSearchPath, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_object_relabel_type = ::core::option::Option< unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), >; @@ -26525,100 +26723,6 @@ pub mod BackslashQuoteType { pub const BACKSLASH_QUOTE_ON: Type = 1; pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; } -pub mod PlanCacheMode { - pub type Type = ::core::ffi::c_uint; - pub const PLAN_CACHE_MODE_AUTO: Type = 0; - pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; - pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::core::ffi::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::core::ffi::c_char, - pub commandTag: CommandTag::Type, - pub param_types: *mut Oid, - pub num_params: ::core::ffi::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::core::ffi::c_void, - pub cursor_options: ::core::ffi::c_int, - pub fixed_result: bool, - pub resultDesc: TupleDesc, - pub context: MemoryContext, - pub query_list: *mut List, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub search_path: *mut OverrideSearchPath, - pub query_context: MemoryContext, - pub rewriteRoleId: Oid, - pub rewriteRowSecurity: bool, - pub dependsOnRLS: bool, - pub gplan: *mut CachedPlan, - pub is_oneshot: bool, - pub is_complete: bool, - pub is_saved: bool, - pub is_valid: bool, - pub generation: ::core::ffi::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: int64, - pub num_generic_plans: int64, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::core::ffi::c_int, - pub stmt_list: *mut List, - pub is_oneshot: bool, - pub is_saved: bool, - pub is_valid: bool, - pub planRoleId: Oid, - pub dependsOnRole: bool, - pub saved_xmin: TransactionId, - pub generation: ::core::ffi::c_int, - pub refcount: ::core::ffi::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::core::ffi::c_int, - pub expr: *mut Node, - pub is_valid: bool, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub context: MemoryContext, - pub node: dlist_node, -} -impl Default for CachedExpression { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} pub mod PortalStrategy { pub type Type = ::core::ffi::c_uint; pub const PORTAL_ONE_SELECT: Type = 0; @@ -33337,8 +33441,8 @@ extern "C" { __newfd: ::core::ffi::c_int, __new: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; - pub fn tmpfile() -> *mut FILE; pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fopen( @@ -33557,15 +33661,13 @@ extern "C" { pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn perror(__s: *const ::core::ffi::c_char); - pub static mut sys_nerr: ::core::ffi::c_int; - pub static sys_errlist: [*const ::core::ffi::c_char; 0usize]; pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn popen( __command: *const ::core::ffi::c_char, __modes: *const ::core::ffi::c_char, ) -> *mut FILE; - pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; pub fn flockfile(__stream: *mut FILE); pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; @@ -33704,6 +33806,9 @@ extern "C" { __param: *mut ::core::ffi::c_ushort, __buffer: *mut drand48_data, ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn calloc( __nmemb: ::core::ffi::c_ulong, @@ -33714,6 +33819,11 @@ extern "C" { __size: ::core::ffi::c_ulong, ) -> *mut ::core::ffi::c_void; pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; pub fn posix_memalign( @@ -33886,6 +33996,11 @@ extern "C" { __s2: *const ::core::ffi::c_void, __n: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; pub fn memchr( __s: *const ::core::ffi::c_void, __c: ::core::ffi::c_int, @@ -35444,7 +35559,6 @@ extern "C" { pub fn tzset(); pub static mut daylight: ::core::ffi::c_int; pub static mut timezone: ::core::ffi::c_long; - pub fn stime(__when: *const time_t) -> ::core::ffi::c_int; pub fn timegm(__tp: *mut tm) -> time_t; pub fn timelocal(__tp: *mut tm) -> time_t; pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; @@ -36040,9 +36154,9 @@ extern "C" { name: *const ::core::ffi::c_char, ) -> EphemeralNamedRelation; pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; - pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn readdir(__dirp: *mut DIR) -> *mut dirent; pub fn readdir_r( __dirp: *mut DIR, @@ -37259,8 +37373,6 @@ extern "C" { ) -> ::core::ffi::c_int; pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) -> ::core::ffi::c_int; - pub static _sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub static sys_siglist: [*const ::core::ffi::c_char; 65usize]; pub fn siginterrupt( __sig: ::core::ffi::c_int, __interrupt: ::core::ffi::c_int, @@ -40065,6 +40177,34 @@ extern "C" { pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; pub static mut recoveryTargetInclusive: bool; pub static mut recoveryTargetAction: ::core::ffi::c_int; pub static mut recovery_min_apply_delay: ::core::ffi::c_int; @@ -41614,6 +41754,127 @@ extern "C" { labeled: bool, es: *mut ExplainState, ); + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; pub fn GetSecurityLabel( @@ -42459,58 +42720,6 @@ extern "C" { pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; - pub static mut plan_cache_mode: ::core::ffi::c_int; - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::core::ffi::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::core::ffi::c_void, - cursor_options: ::core::ffi::c_int, - fixed_result: bool, - ); - pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); - pub fn DropCachedPlan(plansource: *mut CachedPlanSource); - pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); - pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; - pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; - pub fn CachedPlanGetTargetList( - plansource: *mut CachedPlanSource, - queryEnv: *mut QueryEnvironment, - ) -> *mut List; - pub fn GetCachedPlan( - plansource: *mut CachedPlanSource, - boundParams: ParamListInfo, - owner: ResourceOwner, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); - pub fn CachedPlanAllowsSimpleValidityCheck( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn CachedPlanIsSimplyValid( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; - pub fn FreeCachedExpression(cexpr: *mut CachedExpression); pub fn EnablePortalManager(); pub fn PreCommit_Portals(isPrepare: bool) -> bool; pub fn AtAbort_Portals(); @@ -44902,6 +45111,11 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; pub static mut Transform_null_equals: bool; pub fn transformExpr( pstate: *mut ParseState, @@ -45041,6 +45255,180 @@ extern "C" { rtree: *mut Node, location: ::core::ffi::c_int, ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + joinalias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + require_col_privs: bool, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; pub fn LookupTypeName( pstate: *mut ParseState, typeName: *const TypeName, @@ -58276,12 +58664,6 @@ pub const dsm_op_DSM_OP_ATTACH: u32 = 1; pub const dsm_op_DSM_OP_DETACH: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] pub const dsm_op_DSM_OP_DESTROY: u32 = 3; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_ALL")] -pub const idtype_t_P_ALL: u32 = 0; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PID")] -pub const idtype_t_P_PID: u32 = 1; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PGID")] -pub const idtype_t_P_PGID: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] pub const jbvType_jbvNull: u32 = 0; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] diff --git a/vendor/pg16_aarch64_debian/pg_config/pg_config.txt b/vendor/pg16_aarch64_debian/pg_config/pg_config.txt index c47b83a68..1f0787083 100644 --- a/vendor/pg16_aarch64_debian/pg_config/pg_config.txt +++ b/vendor/pg16_aarch64_debian/pg_config/pg_config.txt @@ -11,13 +11,13 @@ MANDIR = /usr/share/postgresql/16/man SHAREDIR = /usr/share/postgresql/16 SYSCONFDIR = /etc/postgresql-common PGXS = /usr/lib/postgresql/16/lib/pgxs/src/makefiles/pgxs.mk -CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/16/man' '--docdir=/usr/share/doc/postgresql-doc-16' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/16' '--bindir=/usr/lib/postgresql/16/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 16.4-1.pgdg100+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-13' 'CLANG=/usr/bin/clang-13' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/16/man' '--docdir=/usr/share/doc/postgresql-doc-16' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/16' '--bindir=/usr/lib/postgresql/16/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 16.4-1.pgdg120+2)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-zstd' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' CC = gcc CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security +CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -moutline-atomics -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security CFLAGS_SL = -fPIC -LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-13/lib -Wl,--as-needed +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed LDFLAGS_EX = LDFLAGS_SL = -LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lpthread -lrt -ldl -lm -VERSION = PostgreSQL 16.4 (Debian 16.4-1.pgdg100+1) +LIBS = -lpgcommon -lpgport -lselinux -lzstd -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 16.4 (Debian 16.4-1.pgdg120+2) diff --git a/vendor/pg16_aarch64_debian/pgrx_binding/pg16_raw_bindings.rs b/vendor/pg16_aarch64_debian/pgrx_binding/pg16_raw_bindings.rs index 0b9681348..66f853c28 100644 --- a/vendor/pg16_aarch64_debian/pgrx_binding/pg16_raw_bindings.rs +++ b/vendor/pg16_aarch64_debian/pgrx_binding/pg16_raw_bindings.rs @@ -1,4 +1,4 @@ -/* automatically generated by rust-bindgen 0.69.4 */ +/* automatically generated by rust-bindgen 0.70.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] @@ -180,12 +180,12 @@ pub const PG_MINORVERSION_NUM: u32 = 4; pub const PG_USE_STDBOOL: u32 = 1; #[allow(unsafe_code)] pub const PG_VERSION: &::core::ffi::CStr = unsafe { - ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"16.4 (Debian 16.4-1.pgdg100+1)\0") + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"16.4 (Debian 16.4-1.pgdg120+2)\0") }; pub const PG_VERSION_NUM: u32 = 160004; #[allow(unsafe_code)] pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { - :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 16.4 (Debian 16.4-1.pgdg100+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit\0") + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 16.4 (Debian 16.4-1.pgdg120+2) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") }; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; @@ -206,6 +206,7 @@ pub const USE_PAM: u32 = 1; pub const USE_SYSTEMD: u32 = 1; pub const USE_SYSV_SHARED_MEMORY: u32 = 1; pub const USE_UNNAMED_POSIX_SEMAPHORES: u32 = 1; +pub const USE_ZSTD: u32 = 1; pub const XLOG_BLCKSZ: u32 = 8192; pub const DEFAULT_XLOG_SEG_SIZE: u32 = 16777216; pub const NAMEDATALEN: u32 = 64; @@ -235,6 +236,7 @@ pub const PG_CACHE_LINE_SIZE: u32 = 128; pub const PG_IO_ALIGN_SIZE: u32 = 4096; pub const TRACE_SORT: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; @@ -248,28 +250,37 @@ pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 28; +pub const __GLIBC_MINOR__: u32 = 36; pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; pub const _____fpos_t_defined: u32 = 1; pub const ____mbstate_t_defined: u32 = 1; pub const _____fpos64_t_defined: u32 = 1; @@ -304,7 +315,6 @@ pub const WNOWAIT: u32 = 16777216; pub const __WNOTHREAD: u32 = 536870912; pub const __WALL: u32 = 1073741824; pub const __WCLONE: u32 = 2147483648; -pub const __ENUM_IDTYPE_T: u32 = 1; pub const __W_CONTINUED: u32 = 65535; pub const __WCOREFLAG: u32 = 128; pub const __ldiv_t_defined: u32 = 1; @@ -339,11 +349,6 @@ pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __PTHREAD_MUTEX_LOCK_ELISION: u32 = 0; -pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND: u32 = 0; -pub const __PTHREAD_MUTEX_USE_UNION: u32 = 0; -pub const __PTHREAD_RWLOCK_ELISION_EXTRA: u32 = 0; -pub const __PTHREAD_SPINS: u32 = 0; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; @@ -556,9 +561,9 @@ pub const LC_MEASUREMENT_MASK: u32 = 2048; pub const LC_IDENTIFICATION_MASK: u32 = 4096; pub const LC_ALL_MASK: u32 = 8127; pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; -pub const __bool_true_false_are_defined: u32 = 1; #[allow(unsafe_code)] pub const INT64_FORMAT: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; @@ -594,7 +599,7 @@ pub const PGINVALID_SOCKET: i32 = -1; #[allow(unsafe_code)] pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked( - b"postgres (PostgreSQL) 16.4 (Debian 16.4-1.pgdg100+1)\n\0", + b"postgres (PostgreSQL) 16.4 (Debian 16.4-1.pgdg120+2)\n\0", ) }; #[allow(unsafe_code)] @@ -618,6 +623,7 @@ pub const __MATH_DECLARE_LDOUBLE: u32 = 1; pub const MATH_ERRNO: u32 = 1; pub const MATH_ERREXCEPT: u32 = 2; pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; pub const DEBUG5: u32 = 10; pub const DEBUG4: u32 = 11; pub const DEBUG3: u32 = 12; @@ -769,10 +775,6 @@ pub const AT_SYMLINK_NOFOLLOW: u32 = 256; pub const AT_REMOVEDIR: u32 = 512; pub const AT_SYMLINK_FOLLOW: u32 = 1024; pub const AT_EACCESS: u32 = 512; -pub const _STAT_VER_KERNEL: u32 = 0; -pub const _STAT_VER_LINUX: u32 = 0; -pub const _STAT_VER: u32 = 0; -pub const _MKNOD_VER_LINUX: u32 = 0; pub const __S_IFMT: u32 = 61440; pub const __S_IFDIR: u32 = 16384; pub const __S_IFCHR: u32 = 8192; @@ -1499,33 +1501,33 @@ pub const SIGHUP: u32 = 1; pub const SIGQUIT: u32 = 3; pub const SIGTRAP: u32 = 5; pub const SIGKILL: u32 = 9; -pub const SIGBUS: u32 = 10; -pub const SIGSYS: u32 = 12; pub const SIGPIPE: u32 = 13; pub const SIGALRM: u32 = 14; -pub const SIGURG: u32 = 16; -pub const SIGSTOP: u32 = 17; -pub const SIGTSTP: u32 = 18; -pub const SIGCONT: u32 = 19; -pub const SIGCHLD: u32 = 20; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; pub const SIGTTIN: u32 = 21; pub const SIGTTOU: u32 = 22; -pub const SIGPOLL: u32 = 23; -pub const SIGXCPU: u32 = 24; +pub const SIGPOLL: u32 = 29; pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; pub const SIGVTALRM: u32 = 26; pub const SIGPROF: u32 = 27; -pub const SIGUSR1: u32 = 30; -pub const SIGUSR2: u32 = 31; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; pub const SIGWINCH: u32 = 28; -pub const SIGIO: u32 = 23; -pub const SIGIOT: u32 = 6; -pub const SIGCLD: u32 = 20; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; pub const __SIGRTMIN: u32 = 32; -pub const __SIGRTMAX: u32 = 32; -pub const _NSIG: u32 = 33; -pub const SIGSTKFLT: u32 = 16; -pub const SIGPWR: u32 = 30; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; pub const __sig_atomic_t_defined: u32 = 1; pub const __siginfo_t_defined: u32 = 1; pub const __SI_MAX_SIZE: u32 = 128; @@ -1534,7 +1536,7 @@ pub const __SI_HAVE_SIGSYS: u32 = 1; pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; pub const __sigevent_t_defined: u32 = 1; pub const __SIGEV_MAX_SIZE: u32 = 64; -pub const NSIG: u32 = 33; +pub const NSIG: u32 = 65; pub const SA_NOCLDSTOP: u32 = 1; pub const SA_NOCLDWAIT: u32 = 2; pub const SA_SIGINFO: u32 = 4; @@ -1554,6 +1556,16 @@ pub const FPSIMD_MAGIC: u32 = 1179680769; pub const ESR_MAGIC: u32 = 1163088385; pub const EXTRA_MAGIC: u32 = 1163416577; pub const SVE_MAGIC: u32 = 1398162689; +pub const SVE_SIG_FLAG_SM: u32 = 1; +pub const ZA_MAGIC: u32 = 1412850501; +pub const __SVE_VQ_BYTES: u32 = 16; +pub const __SVE_VQ_MIN: u32 = 1; +pub const __SVE_VQ_MAX: u32 = 512; +pub const __SVE_VL_MIN: u32 = 16; +pub const __SVE_VL_MAX: u32 = 8192; +pub const __SVE_NUM_ZREGS: u32 = 32; +pub const __SVE_NUM_PREGS: u32 = 16; +pub const __SVE_ZREGS_OFFSET: u32 = 0; pub const SVE_VQ_BYTES: u32 = 16; pub const SVE_VQ_MIN: u32 = 1; pub const SVE_VQ_MAX: u32 = 512; @@ -1641,7 +1653,9 @@ pub const PF_VSOCK: u32 = 40; pub const PF_KCM: u32 = 41; pub const PF_QIPCRTR: u32 = 42; pub const PF_SMC: u32 = 43; -pub const PF_MAX: u32 = 44; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; pub const AF_UNSPEC: u32 = 0; pub const AF_LOCAL: u32 = 1; pub const AF_UNIX: u32 = 1; @@ -1689,7 +1703,9 @@ pub const AF_VSOCK: u32 = 40; pub const AF_KCM: u32 = 41; pub const AF_QIPCRTR: u32 = 42; pub const AF_SMC: u32 = 43; -pub const AF_MAX: u32 = 44; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; pub const SOL_RAW: u32 = 255; pub const SOL_DECNET: u32 = 261; pub const SOL_X25: u32 = 262; @@ -1713,15 +1729,19 @@ pub const SOL_ALG: u32 = 279; pub const SOL_NFC: u32 = 280; pub const SOL_KCM: u32 = 281; pub const SOL_TLS: u32 = 282; -pub const SOMAXCONN: u32 = 128; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; pub const _SS_SIZE: u32 = 128; pub const FIOSETOWN: u32 = 35073; pub const SIOCSPGRP: u32 = 35074; pub const FIOGETOWN: u32 = 35075; pub const SIOCGPGRP: u32 = 35076; pub const SIOCATMARK: u32 = 35077; -pub const SIOCGSTAMP: u32 = 35078; -pub const SIOCGSTAMPNS: u32 = 35079; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; pub const SOL_SOCKET: u32 = 1; pub const SO_DEBUG: u32 = 1; pub const SO_REUSEADDR: u32 = 2; @@ -1744,8 +1764,8 @@ pub const SO_PASSCRED: u32 = 16; pub const SO_PEERCRED: u32 = 17; pub const SO_RCVLOWAT: u32 = 18; pub const SO_SNDLOWAT: u32 = 19; -pub const SO_RCVTIMEO: u32 = 20; -pub const SO_SNDTIMEO: u32 = 21; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; pub const SO_SECURITY_AUTHENTICATION: u32 = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; @@ -1754,16 +1774,10 @@ pub const SO_ATTACH_FILTER: u32 = 26; pub const SO_DETACH_FILTER: u32 = 27; pub const SO_GET_FILTER: u32 = 26; pub const SO_PEERNAME: u32 = 28; -pub const SO_TIMESTAMP: u32 = 29; -pub const SCM_TIMESTAMP: u32 = 29; pub const SO_ACCEPTCONN: u32 = 30; pub const SO_PEERSEC: u32 = 31; pub const SO_PASSSEC: u32 = 34; -pub const SO_TIMESTAMPNS: u32 = 35; -pub const SCM_TIMESTAMPNS: u32 = 35; pub const SO_MARK: u32 = 36; -pub const SO_TIMESTAMPING: u32 = 37; -pub const SCM_TIMESTAMPING: u32 = 37; pub const SO_PROTOCOL: u32 = 38; pub const SO_DOMAIN: u32 = 39; pub const SO_RXQ_OVFL: u32 = 40; @@ -1791,6 +1805,31 @@ pub const SO_PEERGROUPS: u32 = 59; pub const SO_ZEROCOPY: u32 = 60; pub const SO_TXTIME: u32 = 61; pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; pub const __osockaddr_defined: u32 = 1; pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; pub const IP_OPTIONS: u32 = 4; @@ -1841,6 +1880,7 @@ pub const IP_NODEFRAG: u32 = 22; pub const IP_CHECKSUM: u32 = 23; pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; pub const IP_PMTUDISC_DONT: u32 = 0; pub const IP_PMTUDISC_WANT: u32 = 1; pub const IP_PMTUDISC_DO: u32 = 2; @@ -1874,6 +1914,9 @@ pub const IPV6_RECVERR: u32 = 25; pub const IPV6_V6ONLY: u32 = 26; pub const IPV6_JOIN_ANYCAST: u32 = 27; pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; pub const IPV6_IPSEC_POLICY: u32 = 34; pub const IPV6_XFRM_POLICY: u32 = 35; pub const IPV6_HDRINCL: u32 = 36; @@ -2334,6 +2377,12 @@ pub const InvalidLocalTransactionId: u32 = 0; pub const MAX_LOCKMODES: u32 = 10; pub const DEFAULT_LOCKMETHOD: u32 = 1; pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; +pub const VISIBILITYMAP_XLOG_CATALOG_REL: u32 = 4; +pub const VISIBILITYMAP_XLOG_VALID_BITS: u32 = 7; pub const PG_CONTROL_VERSION: u32 = 1300; pub const MOCK_AUTH_NONCE_LEN: u32 = 32; pub const XLOG_CHECKPOINT_SHUTDOWN: u32 = 0; @@ -2910,6 +2959,9 @@ pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; pub const AT_REWRITE_ACCESS_METHOD: u32 = 8; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const XLOG_TBLSPC_CREATE: u32 = 0; pub const XLOG_TBLSPC_DROP: u32 = 16; pub const TRIGGER_EVENT_INSERT: u32 = 0; @@ -3065,9 +3117,6 @@ pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; -pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; -pub const CACHEDPLAN_MAGIC: u32 = 953717834; -pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const SPI_ERROR_CONNECT: i32 = -1; pub const SPI_ERROR_COPY: i32 = -2; pub const SPI_ERROR_OPUNKNOWN: i32 = -3; @@ -6832,7 +6881,6 @@ pub const RANGESTRAT_CONTAINED_BY: u32 = 8; pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; pub const RANGESTRAT_EQ: u32 = 18; pub type pg_int64 = ::core::ffi::c_long; -pub type va_list = [u64; 4usize]; pub type __gnuc_va_list = [u64; 4usize]; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; @@ -6880,6 +6928,7 @@ pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; @@ -7022,20 +7071,15 @@ impl Default for _IO_FILE { } } } +pub type va_list = __gnuc_va_list; pub type off_t = __off_t; pub type fpos_t = __fpos_t; -pub type wchar_t = ::core::ffi::c_uint; -pub mod idtype_t { - pub type Type = ::core::ffi::c_uint; - pub const P_ALL: Type = 0; - pub const P_PID: Type = 1; - pub const P_PGID: Type = 2; -} pub type _Float128 = u128; pub type _Float32 = f32; pub type _Float64 = f64; pub type _Float32x = f64; pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct div_t { @@ -7080,10 +7124,10 @@ pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; -pub type u_int8_t = ::core::ffi::c_uchar; -pub type u_int16_t = ::core::ffi::c_ushort; -pub type u_int32_t = ::core::ffi::c_uint; -pub type u_int64_t = ::core::ffi::c_ulong; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -7116,19 +7160,25 @@ pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::core::ffi::c_uint, - pub __writers: ::core::ffi::c_uint, - pub __wrphase_futex: ::core::ffi::c_uint, - pub __writers_futex: ::core::ffi::c_uint, - pub __pad3: ::core::ffi::c_uint, - pub __pad4: ::core::ffi::c_uint, - pub __cur_writer: ::core::ffi::c_int, - pub __shared: ::core::ffi::c_int, - pub __pad1: ::core::ffi::c_ulong, - pub __pad2: ::core::ffi::c_ulong, - pub __flags: ::core::ffi::c_uint, +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -7148,6 +7198,21 @@ impl Default for __pthread_internal_list { pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, @@ -7167,29 +7232,32 @@ impl Default for __pthread_mutex_s { } } #[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __pad1: ::core::ffi::c_ulong, + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::core::ffi::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_1 { +impl Default for __pthread_cond_s { fn default() -> Self { let mut s = ::core::mem::MaybeUninit::::uninit(); unsafe { @@ -7198,35 +7266,12 @@ impl Default for __pthread_cond_s__bindgen_ty_1 { } } } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::core::ffi::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, -} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_2 { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -impl Default for __pthread_cond_s { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } +pub struct __once_flag { + pub __data: ::core::ffi::c_int, } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] @@ -19279,6 +19324,7 @@ impl Default for siginfo_t { pub mod _bindgen_ty_4 { pub type Type = ::core::ffi::c_int; pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; pub const SI_TKILL: Type = -6; pub const SI_SIGIO: Type = -5; pub const SI_ASYNCIO: Type = -4; @@ -19298,6 +19344,7 @@ pub mod _bindgen_ty_5 { pub const ILL_PRVREG: Type = 6; pub const ILL_COPROC: Type = 7; pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; } pub mod _bindgen_ty_6 { pub type Type = ::core::ffi::c_uint; @@ -19309,6 +19356,8 @@ pub mod _bindgen_ty_6 { pub const FPE_FLTRES: Type = 6; pub const FPE_FLTINV: Type = 7; pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; } pub mod _bindgen_ty_7 { pub type Type = ::core::ffi::c_uint; @@ -19316,6 +19365,11 @@ pub mod _bindgen_ty_7 { pub const SEGV_ACCERR: Type = 2; pub const SEGV_BNDERR: Type = 3; pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; } pub mod _bindgen_ty_8 { pub type Type = ::core::ffi::c_uint; @@ -19482,6 +19536,7 @@ pub struct __kernel_fsid_t { } pub type __kernel_off_t = __kernel_long_t; pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; pub type __kernel_time_t = __kernel_long_t; pub type __kernel_time64_t = ::core::ffi::c_longlong; pub type __kernel_clock_t = __kernel_long_t; @@ -19552,6 +19607,14 @@ pub struct extra_context { #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct sve_context { + pub head: _aarch64_ctx, + pub vl: __u16, + pub flags: __u16, + pub __reserved: [__u16; 2usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct za_context { pub head: _aarch64_ctx, pub vl: __u16, pub __reserved: [__u16; 3usize], @@ -19578,7 +19641,6 @@ pub struct timezone { pub tz_minuteswest: ::core::ffi::c_int, pub tz_dsttime: ::core::ffi::c_int, } -pub type __timezone_ptr_t = *mut timezone; pub mod __itimer_which { pub type Type = ::core::ffi::c_uint; pub const ITIMER_REAL: Type = 0; @@ -19611,6 +19673,8 @@ pub struct user_fpsimd_struct { pub type elf_greg_t = __uint64_t; pub type elf_gregset_t = [elf_greg_t; 34usize]; pub type elf_fpregset_t = user_fpsimd_struct; +pub type __pr_uid_t = ::core::ffi::c_uint; +pub type __pr_gid_t = ::core::ffi::c_uint; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct elf_siginfo { @@ -19653,8 +19717,8 @@ pub struct elf_prpsinfo { pub pr_zomb: ::core::ffi::c_char, pub pr_nice: ::core::ffi::c_char, pub pr_flag: ::core::ffi::c_ulong, - pub pr_uid: ::core::ffi::c_uint, - pub pr_gid: ::core::ffi::c_uint, + pub pr_uid: __pr_uid_t, + pub pr_gid: __pr_gid_t, pub pr_pid: ::core::ffi::c_int, pub pr_ppid: ::core::ffi::c_int, pub pr_pgrp: ::core::ffi::c_int, @@ -19672,8 +19736,10 @@ impl Default for elf_prpsinfo { } } pub type psaddr_t = *mut ::core::ffi::c_void; -pub type prgregset_t = elf_gregset_t; -pub type prfpregset_t = elf_fpregset_t; +pub type __prgregset_t = elf_gregset_t; +pub type __prfpregset_t = elf_fpregset_t; +pub type prgregset_t = __prgregset_t; +pub type prfpregset_t = __prfpregset_t; pub type lwpid_t = __pid_t; pub type prstatus_t = elf_prstatus; pub type prpsinfo_t = elf_prpsinfo; @@ -19991,13 +20057,6 @@ impl Default for ip_opts { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct ip_mreqn { - pub imr_multiaddr: in_addr, - pub imr_address: in_addr, - pub imr_ifindex: ::core::ffi::c_int, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] pub struct in_pktinfo { pub ipi_ifindex: ::core::ffi::c_int, pub ipi_spec_dst: in_addr, @@ -20029,8 +20088,10 @@ pub mod _bindgen_ty_16 { pub const IPPROTO_SCTP: Type = 132; pub const IPPROTO_UDPLITE: Type = 136; pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; pub const IPPROTO_RAW: Type = 255; - pub const IPPROTO_MAX: Type = 256; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; } pub mod _bindgen_ty_17 { pub type Type = ::core::ffi::c_uint; @@ -20136,6 +20197,13 @@ pub struct ip_mreq { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, @@ -25536,6 +25604,117 @@ pub type ExplainOneQuery_hook_type = ::core::option::Option< >; pub type explain_get_index_name_hook_type = ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut OverrideSearchPath, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_object_relabel_type = ::core::option::Option< unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), >; @@ -27291,100 +27470,6 @@ pub mod BackslashQuoteType { pub const BACKSLASH_QUOTE_ON: Type = 1; pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; } -pub mod PlanCacheMode { - pub type Type = ::core::ffi::c_uint; - pub const PLAN_CACHE_MODE_AUTO: Type = 0; - pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; - pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::core::ffi::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::core::ffi::c_char, - pub commandTag: CommandTag::Type, - pub param_types: *mut Oid, - pub num_params: ::core::ffi::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::core::ffi::c_void, - pub cursor_options: ::core::ffi::c_int, - pub fixed_result: bool, - pub resultDesc: TupleDesc, - pub context: MemoryContext, - pub query_list: *mut List, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub search_path: *mut OverrideSearchPath, - pub query_context: MemoryContext, - pub rewriteRoleId: Oid, - pub rewriteRowSecurity: bool, - pub dependsOnRLS: bool, - pub gplan: *mut CachedPlan, - pub is_oneshot: bool, - pub is_complete: bool, - pub is_saved: bool, - pub is_valid: bool, - pub generation: ::core::ffi::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: int64, - pub num_generic_plans: int64, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::core::ffi::c_int, - pub stmt_list: *mut List, - pub is_oneshot: bool, - pub is_saved: bool, - pub is_valid: bool, - pub planRoleId: Oid, - pub dependsOnRole: bool, - pub saved_xmin: TransactionId, - pub generation: ::core::ffi::c_int, - pub refcount: ::core::ffi::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::core::ffi::c_int, - pub expr: *mut Node, - pub is_valid: bool, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub context: MemoryContext, - pub node: dlist_node, -} -impl Default for CachedExpression { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} pub mod PortalStrategy { pub type Type = ::core::ffi::c_uint; pub const PORTAL_ONE_SELECT: Type = 0; @@ -34254,8 +34339,8 @@ extern "C" { __newfd: ::core::ffi::c_int, __new: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; - pub fn tmpfile() -> *mut FILE; pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fopen( @@ -34472,15 +34557,13 @@ extern "C" { pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn perror(__s: *const ::core::ffi::c_char); - pub static mut sys_nerr: ::core::ffi::c_int; - pub static sys_errlist: [*const ::core::ffi::c_char; 0usize]; pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn popen( __command: *const ::core::ffi::c_char, __modes: *const ::core::ffi::c_char, ) -> *mut FILE; - pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; pub fn flockfile(__stream: *mut FILE); pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; @@ -34619,6 +34702,9 @@ extern "C" { __param: *mut ::core::ffi::c_ushort, __buffer: *mut drand48_data, ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn calloc( __nmemb: ::core::ffi::c_ulong, @@ -34629,6 +34715,11 @@ extern "C" { __size: ::core::ffi::c_ulong, ) -> *mut ::core::ffi::c_void; pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; pub fn posix_memalign( @@ -34801,6 +34892,11 @@ extern "C" { __s2: *const ::core::ffi::c_void, __n: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; pub fn memchr( __s: *const ::core::ffi::c_void, __c: ::core::ffi::c_int, @@ -36424,7 +36520,6 @@ extern "C" { pub fn tzset(); pub static mut daylight: ::core::ffi::c_int; pub static mut timezone: ::core::ffi::c_long; - pub fn stime(__when: *const time_t) -> ::core::ffi::c_int; pub fn timegm(__tp: *mut tm) -> time_t; pub fn timelocal(__tp: *mut tm) -> time_t; pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; @@ -37034,9 +37129,9 @@ extern "C" { name: *const ::core::ffi::c_char, ) -> EphemeralNamedRelation; pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; - pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn readdir(__dirp: *mut DIR) -> *mut dirent; pub fn readdir_r( __dirp: *mut DIR, @@ -37680,7 +37775,6 @@ extern "C" { pub fn MemoryContextDeleteChildren(context: MemoryContext); pub fn MemoryContextSetIdentifier(context: MemoryContext, id: *const ::core::ffi::c_char); pub fn MemoryContextSetParent(context: MemoryContext, new_parent: MemoryContext); - pub fn GetMemoryChunkContext(pointer: *mut ::core::ffi::c_void) -> MemoryContext; pub fn GetMemoryChunkSpace(pointer: *mut ::core::ffi::c_void) -> Size; pub fn MemoryContextGetParent(context: MemoryContext) -> MemoryContext; pub fn MemoryContextIsEmpty(context: MemoryContext) -> bool; @@ -38310,9 +38404,7 @@ extern "C" { ) -> ::core::ffi::c_int; pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) -> ::core::ffi::c_int; - pub static _sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub static sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub fn gettimeofday(__tv: *mut timeval, __tz: __timezone_ptr_t) -> ::core::ffi::c_int; + pub fn gettimeofday(__tv: *mut timeval, __tz: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; pub fn settimeofday(__tv: *const timeval, __tz: *const timezone) -> ::core::ffi::c_int; pub fn adjtime(__delta: *const timeval, __olddelta: *mut timeval) -> ::core::ffi::c_int; pub fn getitimer(__which: __itimer_which_t, __value: *mut itimerval) -> ::core::ffi::c_int; @@ -40633,6 +40725,34 @@ extern "C" { pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; pub static mut recoveryTargetInclusive: bool; pub static mut recoveryTargetAction: ::core::ffi::c_int; pub static mut recovery_min_apply_delay: ::core::ffi::c_int; @@ -42397,6 +42517,128 @@ extern "C" { labeled: bool, es: *mut ExplainState, ); + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_extension_schema(ext_oid: Oid) -> Oid; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; pub fn GetSecurityLabel( @@ -43493,58 +43735,6 @@ extern "C" { pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; - pub static mut plan_cache_mode: ::core::ffi::c_int; - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::core::ffi::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::core::ffi::c_void, - cursor_options: ::core::ffi::c_int, - fixed_result: bool, - ); - pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); - pub fn DropCachedPlan(plansource: *mut CachedPlanSource); - pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); - pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; - pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; - pub fn CachedPlanGetTargetList( - plansource: *mut CachedPlanSource, - queryEnv: *mut QueryEnvironment, - ) -> *mut List; - pub fn GetCachedPlan( - plansource: *mut CachedPlanSource, - boundParams: ParamListInfo, - owner: ResourceOwner, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); - pub fn CachedPlanAllowsSimpleValidityCheck( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn CachedPlanIsSimplyValid( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; - pub fn FreeCachedExpression(cexpr: *mut CachedExpression); pub fn EnablePortalManager(); pub fn PreCommit_Portals(isPrepare: bool) -> bool; pub fn AtAbort_Portals(); @@ -46010,6 +46200,11 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; pub static mut Transform_null_equals: bool; pub fn transformExpr( pstate: *mut ParseState, @@ -46149,6 +46344,190 @@ extern "C" { rtree: *mut Node, location: ::core::ffi::c_int, ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markNullableIfNeeded(pstate: *mut ParseState, var: *mut Var); + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + join_using_alias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRTEPermissionInfo( + rteperminfos: *mut *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn getRTEPermissionInfo( + rteperminfos: *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + require_col_privs: bool, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; pub fn LookupTypeName( pstate: *mut ParseState, typeName: *const TypeName, @@ -59832,12 +60211,6 @@ pub const dsm_op_DSM_OP_ATTACH: u32 = 1; pub const dsm_op_DSM_OP_DETACH: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] pub const dsm_op_DSM_OP_DESTROY: u32 = 3; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_ALL")] -pub const idtype_t_P_ALL: u32 = 0; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PID")] -pub const idtype_t_P_PID: u32 = 1; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PGID")] -pub const idtype_t_P_PGID: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] pub const jbvType_jbvNull: u32 = 0; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] diff --git a/vendor/pg16_x86_64_debian/pg_config/pg_config.txt b/vendor/pg16_x86_64_debian/pg_config/pg_config.txt index e6c66294a..baed86128 100644 --- a/vendor/pg16_x86_64_debian/pg_config/pg_config.txt +++ b/vendor/pg16_x86_64_debian/pg_config/pg_config.txt @@ -11,13 +11,13 @@ MANDIR = /usr/share/postgresql/16/man SHAREDIR = /usr/share/postgresql/16 SYSCONFDIR = /etc/postgresql-common PGXS = /usr/lib/postgresql/16/lib/pgxs/src/makefiles/pgxs.mk -CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/16/man' '--docdir=/usr/share/doc/postgresql-doc-16' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/16' '--bindir=/usr/lib/postgresql/16/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 16.4-1.pgdg100+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-13' 'CLANG=/usr/bin/clang-13' '--with-lz4' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/16/man' '--docdir=/usr/share/doc/postgresql-doc-16' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/16' '--bindir=/usr/lib/postgresql/16/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 16.4-1.pgdg120+2)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-zstd' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' CC = gcc CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer CFLAGS_SL = -fPIC -LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-13/lib -Wl,--as-needed +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed LDFLAGS_EX = LDFLAGS_SL = -LIBS = -lpgcommon -lpgport -lselinux -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lpthread -lrt -ldl -lm -VERSION = PostgreSQL 16.4 (Debian 16.4-1.pgdg100+1) +LIBS = -lpgcommon -lpgport -lselinux -lzstd -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 16.4 (Debian 16.4-1.pgdg120+2) diff --git a/vendor/pg16_x86_64_debian/pgrx_binding/pg16_raw_bindings.rs b/vendor/pg16_x86_64_debian/pgrx_binding/pg16_raw_bindings.rs index a194749fb..92b1511a8 100644 --- a/vendor/pg16_x86_64_debian/pgrx_binding/pg16_raw_bindings.rs +++ b/vendor/pg16_x86_64_debian/pgrx_binding/pg16_raw_bindings.rs @@ -1,4 +1,4 @@ -/* automatically generated by rust-bindgen 0.69.4 */ +/* automatically generated by rust-bindgen 0.70.1 */ #[repr(C)] #[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] @@ -180,12 +180,12 @@ pub const PG_MINORVERSION_NUM: u32 = 4; pub const PG_USE_STDBOOL: u32 = 1; #[allow(unsafe_code)] pub const PG_VERSION: &::core::ffi::CStr = unsafe { - ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"16.4 (Debian 16.4-1.pgdg100+1)\0") + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"16.4 (Debian 16.4-1.pgdg120+2)\0") }; pub const PG_VERSION_NUM: u32 = 160004; #[allow(unsafe_code)] pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { - :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 16.4 (Debian 16.4-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit\0") + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 16.4 (Debian 16.4-1.pgdg120+2) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") }; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; @@ -206,6 +206,7 @@ pub const USE_SSE42_CRC32C_WITH_RUNTIME_CHECK: u32 = 1; pub const USE_SYSTEMD: u32 = 1; pub const USE_SYSV_SHARED_MEMORY: u32 = 1; pub const USE_UNNAMED_POSIX_SEMAPHORES: u32 = 1; +pub const USE_ZSTD: u32 = 1; pub const XLOG_BLCKSZ: u32 = 8192; pub const DEFAULT_XLOG_SEG_SIZE: u32 = 16777216; pub const NAMEDATALEN: u32 = 64; @@ -235,6 +236,7 @@ pub const PG_CACHE_LINE_SIZE: u32 = 128; pub const PG_IO_ALIGN_SIZE: u32 = 4096; pub const TRACE_SORT: u32 = 1; pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; pub const __USE_ISOC11: u32 = 1; pub const __USE_ISOC99: u32 = 1; pub const __USE_ISOC95: u32 = 1; @@ -248,29 +250,39 @@ pub const __USE_POSIX199506: u32 = 1; pub const __USE_XOPEN2K: u32 = 1; pub const __USE_XOPEN2K8: u32 = 1; pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; +pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __TIMESIZE: u32 = 64; pub const __USE_MISC: u32 = 1; pub const __USE_ATFILE: u32 = 1; pub const __USE_FORTIFY_LEVEL: u32 = 0; pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; pub const __STDC_ISO_10646__: u32 = 201706; pub const __GNU_LIBRARY__: u32 = 6; pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 28; +pub const __GLIBC_MINOR__: u32 = 36; pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; pub const __GLIBC_USE_LIB_EXT2: u32 = 0; pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; pub const __INO_T_MATCHES_INO64_T: u32 = 1; pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; +pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; pub const _____fpos_t_defined: u32 = 1; pub const ____mbstate_t_defined: u32 = 1; pub const _____fpos64_t_defined: u32 = 1; @@ -305,7 +317,6 @@ pub const WNOWAIT: u32 = 16777216; pub const __WNOTHREAD: u32 = 536870912; pub const __WALL: u32 = 1073741824; pub const __WCLONE: u32 = 2147483648; -pub const __ENUM_IDTYPE_T: u32 = 1; pub const __W_CONTINUED: u32 = 65535; pub const __WCOREFLAG: u32 = 128; pub const __ldiv_t_defined: u32 = 1; @@ -327,9 +338,6 @@ pub const LITTLE_ENDIAN: u32 = 1234; pub const BIG_ENDIAN: u32 = 4321; pub const PDP_ENDIAN: u32 = 3412; pub const BYTE_ORDER: u32 = 1234; -#[allow(unsafe_code)] -pub const __FD_ZERO_STOS: &::core::ffi::CStr = - unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"stosq\0") }; pub const __sigset_t_defined: u32 = 1; pub const __timeval_defined: u32 = 1; pub const _STRUCT_TIMESPEC: u32 = 1; @@ -343,10 +351,6 @@ pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const __PTHREAD_MUTEX_LOCK_ELISION: u32 = 1; -pub const __PTHREAD_MUTEX_NUSERS_AFTER_KIND: u32 = 0; -pub const __PTHREAD_MUTEX_USE_UNION: u32 = 0; -pub const __PTHREAD_RWLOCK_INT_FLAGS_SHARED: u32 = 1; pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; @@ -559,9 +563,9 @@ pub const LC_MEASUREMENT_MASK: u32 = 2048; pub const LC_IDENTIFICATION_MASK: u32 = 4096; pub const LC_ALL_MASK: u32 = 8127; pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; pub const true_: u32 = 1; pub const false_: u32 = 0; -pub const __bool_true_false_are_defined: u32 = 1; #[allow(unsafe_code)] pub const INT64_FORMAT: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; @@ -597,7 +601,7 @@ pub const PGINVALID_SOCKET: i32 = -1; #[allow(unsafe_code)] pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked( - b"postgres (PostgreSQL) 16.4 (Debian 16.4-1.pgdg100+1)\n\0", + b"postgres (PostgreSQL) 16.4 (Debian 16.4-1.pgdg120+2)\n\0", ) }; #[allow(unsafe_code)] @@ -619,6 +623,7 @@ pub const __MATH_DECLARE_LDOUBLE: u32 = 1; pub const MATH_ERRNO: u32 = 1; pub const MATH_ERREXCEPT: u32 = 2; pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; pub const DEBUG5: u32 = 10; pub const DEBUG4: u32 = 11; pub const DEBUG3: u32 = 12; @@ -770,10 +775,6 @@ pub const AT_SYMLINK_NOFOLLOW: u32 = 256; pub const AT_REMOVEDIR: u32 = 512; pub const AT_SYMLINK_FOLLOW: u32 = 1024; pub const AT_EACCESS: u32 = 512; -pub const _STAT_VER_KERNEL: u32 = 0; -pub const _STAT_VER_LINUX: u32 = 1; -pub const _MKNOD_VER_LINUX: u32 = 0; -pub const _STAT_VER: u32 = 1; pub const __S_IFMT: u32 = 61440; pub const __S_IFDIR: u32 = 16384; pub const __S_IFCHR: u32 = 8192; @@ -1500,33 +1501,33 @@ pub const SIGHUP: u32 = 1; pub const SIGQUIT: u32 = 3; pub const SIGTRAP: u32 = 5; pub const SIGKILL: u32 = 9; -pub const SIGBUS: u32 = 10; -pub const SIGSYS: u32 = 12; pub const SIGPIPE: u32 = 13; pub const SIGALRM: u32 = 14; -pub const SIGURG: u32 = 16; -pub const SIGSTOP: u32 = 17; -pub const SIGTSTP: u32 = 18; -pub const SIGCONT: u32 = 19; -pub const SIGCHLD: u32 = 20; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; pub const SIGTTIN: u32 = 21; pub const SIGTTOU: u32 = 22; -pub const SIGPOLL: u32 = 23; -pub const SIGXCPU: u32 = 24; +pub const SIGPOLL: u32 = 29; pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; pub const SIGVTALRM: u32 = 26; pub const SIGPROF: u32 = 27; -pub const SIGUSR1: u32 = 30; -pub const SIGUSR2: u32 = 31; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; pub const SIGWINCH: u32 = 28; -pub const SIGIO: u32 = 23; -pub const SIGIOT: u32 = 6; -pub const SIGCLD: u32 = 20; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; pub const __SIGRTMIN: u32 = 32; -pub const __SIGRTMAX: u32 = 32; -pub const _NSIG: u32 = 33; -pub const SIGSTKFLT: u32 = 16; -pub const SIGPWR: u32 = 30; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; pub const __sig_atomic_t_defined: u32 = 1; pub const __siginfo_t_defined: u32 = 1; pub const __SI_MAX_SIZE: u32 = 128; @@ -1535,7 +1536,7 @@ pub const __SI_HAVE_SIGSYS: u32 = 1; pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; pub const __sigevent_t_defined: u32 = 1; pub const __SIGEV_MAX_SIZE: u32 = 64; -pub const NSIG: u32 = 33; +pub const NSIG: u32 = 65; pub const SA_NOCLDSTOP: u32 = 1; pub const SA_NOCLDWAIT: u32 = 2; pub const SA_SIGINFO: u32 = 4; @@ -1633,7 +1634,9 @@ pub const PF_VSOCK: u32 = 40; pub const PF_KCM: u32 = 41; pub const PF_QIPCRTR: u32 = 42; pub const PF_SMC: u32 = 43; -pub const PF_MAX: u32 = 44; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; pub const AF_UNSPEC: u32 = 0; pub const AF_LOCAL: u32 = 1; pub const AF_UNIX: u32 = 1; @@ -1681,7 +1684,9 @@ pub const AF_VSOCK: u32 = 40; pub const AF_KCM: u32 = 41; pub const AF_QIPCRTR: u32 = 42; pub const AF_SMC: u32 = 43; -pub const AF_MAX: u32 = 44; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; pub const SOL_RAW: u32 = 255; pub const SOL_DECNET: u32 = 261; pub const SOL_X25: u32 = 262; @@ -1705,15 +1710,20 @@ pub const SOL_ALG: u32 = 279; pub const SOL_NFC: u32 = 280; pub const SOL_KCM: u32 = 281; pub const SOL_TLS: u32 = 282; -pub const SOMAXCONN: u32 = 128; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; pub const _SS_SIZE: u32 = 128; +pub const __BITS_PER_LONG: u32 = 64; pub const FIOSETOWN: u32 = 35073; pub const SIOCSPGRP: u32 = 35074; pub const FIOGETOWN: u32 = 35075; pub const SIOCGPGRP: u32 = 35076; pub const SIOCATMARK: u32 = 35077; -pub const SIOCGSTAMP: u32 = 35078; -pub const SIOCGSTAMPNS: u32 = 35079; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; pub const SOL_SOCKET: u32 = 1; pub const SO_DEBUG: u32 = 1; pub const SO_REUSEADDR: u32 = 2; @@ -1736,8 +1746,8 @@ pub const SO_PASSCRED: u32 = 16; pub const SO_PEERCRED: u32 = 17; pub const SO_RCVLOWAT: u32 = 18; pub const SO_SNDLOWAT: u32 = 19; -pub const SO_RCVTIMEO: u32 = 20; -pub const SO_SNDTIMEO: u32 = 21; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; pub const SO_SECURITY_AUTHENTICATION: u32 = 22; pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; @@ -1746,16 +1756,10 @@ pub const SO_ATTACH_FILTER: u32 = 26; pub const SO_DETACH_FILTER: u32 = 27; pub const SO_GET_FILTER: u32 = 26; pub const SO_PEERNAME: u32 = 28; -pub const SO_TIMESTAMP: u32 = 29; -pub const SCM_TIMESTAMP: u32 = 29; pub const SO_ACCEPTCONN: u32 = 30; pub const SO_PEERSEC: u32 = 31; pub const SO_PASSSEC: u32 = 34; -pub const SO_TIMESTAMPNS: u32 = 35; -pub const SCM_TIMESTAMPNS: u32 = 35; pub const SO_MARK: u32 = 36; -pub const SO_TIMESTAMPING: u32 = 37; -pub const SCM_TIMESTAMPING: u32 = 37; pub const SO_PROTOCOL: u32 = 38; pub const SO_DOMAIN: u32 = 39; pub const SO_RXQ_OVFL: u32 = 40; @@ -1783,6 +1787,31 @@ pub const SO_PEERGROUPS: u32 = 59; pub const SO_ZEROCOPY: u32 = 60; pub const SO_TXTIME: u32 = 61; pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; pub const __osockaddr_defined: u32 = 1; pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; pub const IP_OPTIONS: u32 = 4; @@ -1833,6 +1862,7 @@ pub const IP_NODEFRAG: u32 = 22; pub const IP_CHECKSUM: u32 = 23; pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; pub const IP_PMTUDISC_DONT: u32 = 0; pub const IP_PMTUDISC_WANT: u32 = 1; pub const IP_PMTUDISC_DO: u32 = 2; @@ -1866,6 +1896,9 @@ pub const IPV6_RECVERR: u32 = 25; pub const IPV6_V6ONLY: u32 = 26; pub const IPV6_JOIN_ANYCAST: u32 = 27; pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; pub const IPV6_IPSEC_POLICY: u32 = 34; pub const IPV6_XFRM_POLICY: u32 = 35; pub const IPV6_HDRINCL: u32 = 36; @@ -2326,6 +2359,12 @@ pub const InvalidLocalTransactionId: u32 = 0; pub const MAX_LOCKMODES: u32 = 10; pub const DEFAULT_LOCKMETHOD: u32 = 1; pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; +pub const VISIBILITYMAP_XLOG_CATALOG_REL: u32 = 4; +pub const VISIBILITYMAP_XLOG_VALID_BITS: u32 = 7; pub const PG_CONTROL_VERSION: u32 = 1300; pub const MOCK_AUTH_NONCE_LEN: u32 = 32; pub const XLOG_CHECKPOINT_SHUTDOWN: u32 = 0; @@ -2902,6 +2941,9 @@ pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; pub const AT_REWRITE_ACCESS_METHOD: u32 = 8; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const XLOG_TBLSPC_CREATE: u32 = 0; pub const XLOG_TBLSPC_DROP: u32 = 16; pub const TRIGGER_EVENT_INSERT: u32 = 0; @@ -3057,9 +3099,6 @@ pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; -pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; -pub const CACHEDPLAN_MAGIC: u32 = 953717834; -pub const CACHEDEXPR_MAGIC: u32 = 838275847; pub const SPI_ERROR_CONNECT: i32 = -1; pub const SPI_ERROR_COPY: i32 = -2; pub const SPI_ERROR_OPUNKNOWN: i32 = -3; @@ -6824,7 +6863,6 @@ pub const RANGESTRAT_CONTAINED_BY: u32 = 8; pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; pub const RANGESTRAT_EQ: u32 = 18; pub type pg_int64 = ::core::ffi::c_long; -pub type va_list = __builtin_va_list; pub type __gnuc_va_list = __builtin_va_list; pub type __u_char = ::core::ffi::c_uchar; pub type __u_short = ::core::ffi::c_ushort; @@ -6872,6 +6910,7 @@ pub type __id_t = ::core::ffi::c_uint; pub type __time_t = ::core::ffi::c_long; pub type __useconds_t = ::core::ffi::c_uint; pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; pub type __daddr_t = ::core::ffi::c_int; pub type __key_t = ::core::ffi::c_int; pub type __clockid_t = ::core::ffi::c_int; @@ -7014,19 +7053,14 @@ impl Default for _IO_FILE { } } } +pub type va_list = __gnuc_va_list; pub type off_t = __off_t; pub type fpos_t = __fpos_t; -pub type wchar_t = ::core::ffi::c_int; -pub mod idtype_t { - pub type Type = ::core::ffi::c_uint; - pub const P_ALL: Type = 0; - pub const P_PID: Type = 1; - pub const P_PGID: Type = 2; -} pub type _Float32 = f32; pub type _Float64 = f64; pub type _Float32x = f64; pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_int; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] pub struct div_t { @@ -7071,10 +7105,10 @@ pub type timer_t = __timer_t; pub type ulong = ::core::ffi::c_ulong; pub type ushort = ::core::ffi::c_ushort; pub type uint = ::core::ffi::c_uint; -pub type u_int8_t = ::core::ffi::c_uchar; -pub type u_int16_t = ::core::ffi::c_ushort; -pub type u_int32_t = ::core::ffi::c_uint; -pub type u_int64_t = ::core::ffi::c_ulong; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; pub type register_t = ::core::ffi::c_long; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] @@ -7107,20 +7141,25 @@ pub type blkcnt_t = __blkcnt_t; pub type fsblkcnt_t = __fsblkcnt_t; pub type fsfilcnt_t = __fsfilcnt_t; #[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::core::ffi::c_uint, - pub __writers: ::core::ffi::c_uint, - pub __wrphase_futex: ::core::ffi::c_uint, - pub __writers_futex: ::core::ffi::c_uint, - pub __pad3: ::core::ffi::c_uint, - pub __pad4: ::core::ffi::c_uint, - pub __cur_writer: ::core::ffi::c_int, - pub __shared: ::core::ffi::c_int, - pub __rwelision: ::core::ffi::c_schar, - pub __pad1: [::core::ffi::c_uchar; 7usize], - pub __pad2: ::core::ffi::c_ulong, - pub __flags: ::core::ffi::c_uint, +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } } #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -7140,6 +7179,21 @@ impl Default for __pthread_internal_list { pub type __pthread_list_t = __pthread_internal_list; #[repr(C)] #[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] pub struct __pthread_mutex_s { pub __lock: ::core::ffi::c_int, pub __count: ::core::ffi::c_uint, @@ -7160,29 +7214,33 @@ impl Default for __pthread_mutex_s { } } #[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __rwelision: ::core::ffi::c_schar, + pub __pad1: [::core::ffi::c_uchar; 7usize], + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] #[derive(Copy, Clone)] pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, pub __g_refs: [::core::ffi::c_uint; 2usize], pub __g_size: [::core::ffi::c_uint; 2usize], pub __g1_orig_size: ::core::ffi::c_uint, pub __wrefs: ::core::ffi::c_uint, pub __g_signals: [::core::ffi::c_uint; 2usize], } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::core::ffi::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_1 { +impl Default for __pthread_cond_s { fn default() -> Self { let mut s = ::core::mem::MaybeUninit::::uninit(); unsafe { @@ -7191,35 +7249,12 @@ impl Default for __pthread_cond_s__bindgen_ty_1 { } } } -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::core::ffi::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, -} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::core::ffi::c_uint, - pub __high: ::core::ffi::c_uint, -} -impl Default for __pthread_cond_s__bindgen_ty_2 { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -impl Default for __pthread_cond_s { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } +pub struct __once_flag { + pub __data: ::core::ffi::c_int, } pub type pthread_t = ::core::ffi::c_ulong; #[repr(C)] @@ -19271,6 +19306,7 @@ impl Default for siginfo_t { pub mod _bindgen_ty_4 { pub type Type = ::core::ffi::c_int; pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; pub const SI_TKILL: Type = -6; pub const SI_SIGIO: Type = -5; pub const SI_ASYNCIO: Type = -4; @@ -19290,6 +19326,7 @@ pub mod _bindgen_ty_5 { pub const ILL_PRVREG: Type = 6; pub const ILL_COPROC: Type = 7; pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; } pub mod _bindgen_ty_6 { pub type Type = ::core::ffi::c_uint; @@ -19301,6 +19338,8 @@ pub mod _bindgen_ty_6 { pub const FPE_FLTRES: Type = 6; pub const FPE_FLTINV: Type = 7; pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; } pub mod _bindgen_ty_7 { pub type Type = ::core::ffi::c_uint; @@ -19308,6 +19347,11 @@ pub mod _bindgen_ty_7 { pub const SEGV_ACCERR: Type = 2; pub const SEGV_BNDERR: Type = 3; pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; } pub mod _bindgen_ty_8 { pub type Type = ::core::ffi::c_uint; @@ -19865,6 +19909,49 @@ pub mod _bindgen_ty_14 { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fd_set { + pub fds_bits: [::core::ffi::c_ulong; 16usize], +} +pub type __kernel_sighandler_t = + ::core::option::Option; +pub type __kernel_key_t = ::core::ffi::c_int; +pub type __kernel_mqd_t = ::core::ffi::c_int; +pub type __kernel_old_uid_t = ::core::ffi::c_ushort; +pub type __kernel_old_gid_t = ::core::ffi::c_ushort; +pub type __kernel_old_dev_t = ::core::ffi::c_ulong; +pub type __kernel_long_t = ::core::ffi::c_long; +pub type __kernel_ulong_t = ::core::ffi::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = ::core::ffi::c_uint; +pub type __kernel_pid_t = ::core::ffi::c_int; +pub type __kernel_ipc_pid_t = ::core::ffi::c_int; +pub type __kernel_uid_t = ::core::ffi::c_uint; +pub type __kernel_gid_t = ::core::ffi::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = ::core::ffi::c_int; +pub type __kernel_uid32_t = ::core::ffi::c_uint; +pub type __kernel_gid32_t = ::core::ffi::c_uint; +pub type __kernel_size_t = __kernel_ulong_t; +pub type __kernel_ssize_t = __kernel_long_t; +pub type __kernel_ptrdiff_t = __kernel_long_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fsid_t { + pub val: [::core::ffi::c_int; 2usize], +} +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = ::core::ffi::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = ::core::ffi::c_int; +pub type __kernel_clockid_t = ::core::ffi::c_int; +pub type __kernel_caddr_t = *mut ::core::ffi::c_char; +pub type __kernel_uid16_t = ::core::ffi::c_ushort; +pub type __kernel_gid16_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct linger { pub l_onoff: ::core::ffi::c_int, pub l_linger: ::core::ffi::c_int, @@ -19919,13 +20006,6 @@ impl Default for ip_opts { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] -pub struct ip_mreqn { - pub imr_multiaddr: in_addr, - pub imr_address: in_addr, - pub imr_ifindex: ::core::ffi::c_int, -} -#[repr(C)] -#[derive(Debug, Default, Copy, Clone)] pub struct in_pktinfo { pub ipi_ifindex: ::core::ffi::c_int, pub ipi_spec_dst: in_addr, @@ -19957,8 +20037,10 @@ pub mod _bindgen_ty_16 { pub const IPPROTO_SCTP: Type = 132; pub const IPPROTO_UDPLITE: Type = 136; pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; pub const IPPROTO_RAW: Type = 255; - pub const IPPROTO_MAX: Type = 256; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; } pub mod _bindgen_ty_17 { pub type Type = ::core::ffi::c_uint; @@ -20064,6 +20146,13 @@ pub struct ip_mreq { } #[repr(C)] #[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] pub struct ip_mreq_source { pub imr_multiaddr: in_addr, pub imr_interface: in_addr, @@ -25464,6 +25553,117 @@ pub type ExplainOneQuery_hook_type = ::core::option::Option< >; pub type explain_get_index_name_hook_type = ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut OverrideSearchPath, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_object_relabel_type = ::core::option::Option< unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), >; @@ -27219,100 +27419,6 @@ pub mod BackslashQuoteType { pub const BACKSLASH_QUOTE_ON: Type = 1; pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; } -pub mod PlanCacheMode { - pub type Type = ::core::ffi::c_uint; - pub const PLAN_CACHE_MODE_AUTO: Type = 0; - pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; - pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::core::ffi::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::core::ffi::c_char, - pub commandTag: CommandTag::Type, - pub param_types: *mut Oid, - pub num_params: ::core::ffi::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::core::ffi::c_void, - pub cursor_options: ::core::ffi::c_int, - pub fixed_result: bool, - pub resultDesc: TupleDesc, - pub context: MemoryContext, - pub query_list: *mut List, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub search_path: *mut OverrideSearchPath, - pub query_context: MemoryContext, - pub rewriteRoleId: Oid, - pub rewriteRowSecurity: bool, - pub dependsOnRLS: bool, - pub gplan: *mut CachedPlan, - pub is_oneshot: bool, - pub is_complete: bool, - pub is_saved: bool, - pub is_valid: bool, - pub generation: ::core::ffi::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: int64, - pub num_generic_plans: int64, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::core::ffi::c_int, - pub stmt_list: *mut List, - pub is_oneshot: bool, - pub is_saved: bool, - pub is_valid: bool, - pub planRoleId: Oid, - pub dependsOnRole: bool, - pub saved_xmin: TransactionId, - pub generation: ::core::ffi::c_int, - pub refcount: ::core::ffi::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::core::ffi::c_int, - pub expr: *mut Node, - pub is_valid: bool, - pub relationOids: *mut List, - pub invalItems: *mut List, - pub context: MemoryContext, - pub node: dlist_node, -} -impl Default for CachedExpression { - fn default() -> Self { - let mut s = ::core::mem::MaybeUninit::::uninit(); - unsafe { - ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} pub mod PortalStrategy { pub type Type = ::core::ffi::c_uint; pub const PORTAL_ONE_SELECT: Type = 0; @@ -34199,8 +34305,8 @@ extern "C" { __newfd: ::core::ffi::c_int, __new: *const ::core::ffi::c_char, ) -> ::core::ffi::c_int; - pub fn tmpfile() -> *mut FILE; pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fopen( @@ -34419,15 +34525,13 @@ extern "C" { pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn perror(__s: *const ::core::ffi::c_char); - pub static mut sys_nerr: ::core::ffi::c_int; - pub static sys_errlist: [*const ::core::ffi::c_char; 0usize]; pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn popen( __command: *const ::core::ffi::c_char, __modes: *const ::core::ffi::c_char, ) -> *mut FILE; - pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; pub fn flockfile(__stream: *mut FILE); pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; @@ -34566,6 +34670,9 @@ extern "C" { __param: *mut ::core::ffi::c_ushort, __buffer: *mut drand48_data, ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn calloc( __nmemb: ::core::ffi::c_ulong, @@ -34576,6 +34683,11 @@ extern "C" { __size: ::core::ffi::c_ulong, ) -> *mut ::core::ffi::c_void; pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; pub fn posix_memalign( @@ -34748,6 +34860,11 @@ extern "C" { __s2: *const ::core::ffi::c_void, __n: ::core::ffi::c_ulong, ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; pub fn memchr( __s: *const ::core::ffi::c_void, __c: ::core::ffi::c_int, @@ -36371,7 +36488,6 @@ extern "C" { pub fn tzset(); pub static mut daylight: ::core::ffi::c_int; pub static mut timezone: ::core::ffi::c_long; - pub fn stime(__when: *const time_t) -> ::core::ffi::c_int; pub fn timegm(__tp: *mut tm) -> time_t; pub fn timelocal(__tp: *mut tm) -> time_t; pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; @@ -36981,9 +37097,9 @@ extern "C" { name: *const ::core::ffi::c_char, ) -> EphemeralNamedRelation; pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; - pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; pub fn readdir(__dirp: *mut DIR) -> *mut dirent; pub fn readdir_r( __dirp: *mut DIR, @@ -37629,7 +37745,6 @@ extern "C" { pub fn MemoryContextDeleteChildren(context: MemoryContext); pub fn MemoryContextSetIdentifier(context: MemoryContext, id: *const ::core::ffi::c_char); pub fn MemoryContextSetParent(context: MemoryContext, new_parent: MemoryContext); - pub fn GetMemoryChunkContext(pointer: *mut ::core::ffi::c_void) -> MemoryContext; pub fn GetMemoryChunkSpace(pointer: *mut ::core::ffi::c_void) -> Size; pub fn MemoryContextGetParent(context: MemoryContext) -> MemoryContext; pub fn MemoryContextIsEmpty(context: MemoryContext) -> bool; @@ -38259,8 +38374,6 @@ extern "C" { ) -> ::core::ffi::c_int; pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) -> ::core::ffi::c_int; - pub static _sys_siglist: [*const ::core::ffi::c_char; 65usize]; - pub static sys_siglist: [*const ::core::ffi::c_char; 65usize]; pub fn siginterrupt( __sig: ::core::ffi::c_int, __interrupt: ::core::ffi::c_int, @@ -40569,6 +40682,34 @@ extern "C" { pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; pub static mut recoveryTargetInclusive: bool; pub static mut recoveryTargetAction: ::core::ffi::c_int; pub static mut recovery_min_apply_delay: ::core::ffi::c_int; @@ -42333,6 +42474,128 @@ extern "C" { labeled: bool, es: *mut ExplainState, ); + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_extension_schema(ext_oid: Oid) -> Oid; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; pub fn GetSecurityLabel( @@ -43429,58 +43692,6 @@ extern "C" { pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; - pub static mut plan_cache_mode: ::core::ffi::c_int; - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::core::ffi::c_char, - commandTag: CommandTag::Type, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::core::ffi::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::core::ffi::c_void, - cursor_options: ::core::ffi::c_int, - fixed_result: bool, - ); - pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); - pub fn DropCachedPlan(plansource: *mut CachedPlanSource); - pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); - pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; - pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; - pub fn CachedPlanGetTargetList( - plansource: *mut CachedPlanSource, - queryEnv: *mut QueryEnvironment, - ) -> *mut List; - pub fn GetCachedPlan( - plansource: *mut CachedPlanSource, - boundParams: ParamListInfo, - owner: ResourceOwner, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); - pub fn CachedPlanAllowsSimpleValidityCheck( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn CachedPlanIsSimplyValid( - plansource: *mut CachedPlanSource, - plan: *mut CachedPlan, - owner: ResourceOwner, - ) -> bool; - pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; - pub fn FreeCachedExpression(cexpr: *mut CachedExpression); pub fn EnablePortalManager(); pub fn PreCommit_Portals(isPrepare: bool) -> bool; pub fn AtAbort_Portals(); @@ -45946,6 +46157,11 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; pub static mut Transform_null_equals: bool; pub fn transformExpr( pstate: *mut ParseState, @@ -46085,6 +46301,190 @@ extern "C" { rtree: *mut Node, location: ::core::ffi::c_int, ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markNullableIfNeeded(pstate: *mut ParseState, var: *mut Var); + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + join_using_alias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRTEPermissionInfo( + rteperminfos: *mut *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn getRTEPermissionInfo( + rteperminfos: *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + require_col_privs: bool, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; pub fn LookupTypeName( pstate: *mut ParseState, typeName: *const TypeName, @@ -59753,12 +60153,6 @@ pub const dsm_op_DSM_OP_ATTACH: u32 = 1; pub const dsm_op_DSM_OP_DETACH: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] pub const dsm_op_DSM_OP_DESTROY: u32 = 3; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_ALL")] -pub const idtype_t_P_ALL: u32 = 0; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PID")] -pub const idtype_t_P_PID: u32 = 1; -#[deprecated(since = "0.12.0", note = "you want pg_sys::idtype_t::P_PGID")] -pub const idtype_t_P_PGID: u32 = 2; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] pub const jbvType_jbvNull: u32 = 0; #[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] diff --git a/vendor/pg17_aarch64_debian/pg_config/pg_config b/vendor/pg17_aarch64_debian/pg_config/pg_config new file mode 100755 index 000000000..9239a70ee --- /dev/null +++ b/vendor/pg17_aarch64_debian/pg_config/pg_config @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +$(dirname "$0")/../../../tools/pg_config.sh "$@" < $(dirname "$0")/pg_config.txt diff --git a/vendor/pg17_aarch64_debian/pg_config/pg_config.txt b/vendor/pg17_aarch64_debian/pg_config/pg_config.txt new file mode 100644 index 000000000..aa0af9af3 --- /dev/null +++ b/vendor/pg17_aarch64_debian/pg_config/pg_config.txt @@ -0,0 +1,23 @@ +BINDIR = /usr/lib/postgresql/17/bin +DOCDIR = /usr/share/doc/postgresql-doc-17 +HTMLDIR = /usr/share/doc/postgresql-doc-17 +INCLUDEDIR = /usr/include/postgresql +PKGINCLUDEDIR = /usr/include/postgresql +INCLUDEDIR-SERVER = /usr/include/postgresql/17/server +LIBDIR = /usr/lib/aarch64-linux-gnu +PKGLIBDIR = /usr/lib/postgresql/17/lib +LOCALEDIR = /usr/share/locale +MANDIR = /usr/share/postgresql/17/man +SHAREDIR = /usr/share/postgresql/17 +SYSCONFDIR = /etc/postgresql-common +PGXS = /usr/lib/postgresql/17/lib/pgxs/src/makefiles/pgxs.mk +CONFIGURE = '--build=aarch64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/aarch64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/17/man' '--docdir=/usr/share/doc/postgresql-doc-17' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/17' '--bindir=/usr/lib/postgresql/17/bin' '--libdir=/usr/lib/aarch64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 17.0-1.pgdg120+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-zstd' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=aarch64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CC = gcc +CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 +CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -moutline-atomics -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security +CFLAGS_SL = -fPIC +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed +LDFLAGS_EX = +LDFLAGS_SL = +LIBS = -lpgcommon -lpgport -lselinux -lzstd -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 17.0 (Debian 17.0-1.pgdg120+1) diff --git a/vendor/pg17_aarch64_debian/pgrx_binding/pg17_raw_bindings.rs b/vendor/pg17_aarch64_debian/pgrx_binding/pg17_raw_bindings.rs new file mode 100644 index 000000000..85c8152fd --- /dev/null +++ b/vendor/pg17_aarch64_debian/pgrx_binding/pg17_raw_bindings.rs @@ -0,0 +1,62609 @@ +/* automatically generated by rust-bindgen 0.70.1 */ + +#[repr(C)] +#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] +pub struct __BindgenBitfieldUnit { + storage: Storage, +} +impl __BindgenBitfieldUnit { + #[inline] + pub const fn new(storage: Storage) -> Self { + Self { storage } + } +} +impl __BindgenBitfieldUnit +where + Storage: AsRef<[u8]> + AsMut<[u8]>, +{ + #[inline] + pub fn get_bit(&self, index: usize) -> bool { + debug_assert!(index / 8 < self.storage.as_ref().len()); + let byte_index = index / 8; + let byte = self.storage.as_ref()[byte_index]; + let bit_index = if cfg!(target_endian = "big") { + 7 - (index % 8) + } else { + index % 8 + }; + let mask = 1 << bit_index; + byte & mask == mask + } + #[inline] + pub fn set_bit(&mut self, index: usize, val: bool) { + debug_assert!(index / 8 < self.storage.as_ref().len()); + let byte_index = index / 8; + let byte = &mut self.storage.as_mut()[byte_index]; + let bit_index = if cfg!(target_endian = "big") { + 7 - (index % 8) + } else { + index % 8 + }; + let mask = 1 << bit_index; + if val { + *byte |= mask; + } else { + *byte &= !mask; + } + } + #[inline] + pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 { + debug_assert!(bit_width <= 64); + debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); + debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); + let mut val = 0; + for i in 0..(bit_width as usize) { + if self.get_bit(i + bit_offset) { + let index = if cfg!(target_endian = "big") { + bit_width as usize - 1 - i + } else { + i + }; + val |= 1 << index; + } + } + val + } + #[inline] + pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) { + debug_assert!(bit_width <= 64); + debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); + debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); + for i in 0..(bit_width as usize) { + let mask = 1 << i; + let val_bit_is_set = val & mask == mask; + let index = if cfg!(target_endian = "big") { + bit_width as usize - 1 - i + } else { + i + }; + self.set_bit(index + bit_offset, val_bit_is_set); + } + } +} +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +impl __IncompleteArrayField { + #[inline] + pub const fn new() -> Self { + __IncompleteArrayField(::core::marker::PhantomData, []) + } + #[inline] + pub fn as_ptr(&self) -> *const T { + self as *const _ as *const T + } + #[inline] + pub fn as_mut_ptr(&mut self) -> *mut T { + self as *mut _ as *mut T + } + #[inline] + pub unsafe fn as_slice(&self, len: usize) -> &[T] { + unsafe { ::core::slice::from_raw_parts(self.as_ptr(), len) } + } + #[inline] + pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { + unsafe { ::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) } + } +} +impl ::core::fmt::Debug for __IncompleteArrayField { + fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + fmt.write_str("__IncompleteArrayField") + } +} +pub const PG_DIAG_SEVERITY: u8 = 83u8; +pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; +pub const PG_DIAG_SQLSTATE: u8 = 67u8; +pub const PG_DIAG_MESSAGE_PRIMARY: u8 = 77u8; +pub const PG_DIAG_MESSAGE_DETAIL: u8 = 68u8; +pub const PG_DIAG_MESSAGE_HINT: u8 = 72u8; +pub const PG_DIAG_STATEMENT_POSITION: u8 = 80u8; +pub const PG_DIAG_INTERNAL_POSITION: u8 = 112u8; +pub const PG_DIAG_INTERNAL_QUERY: u8 = 113u8; +pub const PG_DIAG_CONTEXT: u8 = 87u8; +pub const PG_DIAG_SCHEMA_NAME: u8 = 115u8; +pub const PG_DIAG_TABLE_NAME: u8 = 116u8; +pub const PG_DIAG_COLUMN_NAME: u8 = 99u8; +pub const PG_DIAG_DATATYPE_NAME: u8 = 100u8; +pub const PG_DIAG_CONSTRAINT_NAME: u8 = 110u8; +pub const PG_DIAG_SOURCE_FILE: u8 = 70u8; +pub const PG_DIAG_SOURCE_LINE: u8 = 76u8; +pub const PG_DIAG_SOURCE_FUNCTION: u8 = 82u8; +pub const ALIGNOF_DOUBLE: u32 = 8; +pub const ALIGNOF_INT: u32 = 4; +pub const ALIGNOF_LONG: u32 = 8; +pub const ALIGNOF_PG_INT128_TYPE: u32 = 16; +pub const ALIGNOF_SHORT: u32 = 2; +pub const BLCKSZ: u32 = 8192; +pub const DEF_PGPORT: u32 = 5432; +#[allow(unsafe_code)] +pub const DEF_PGPORT_STR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"5432\0") }; +#[allow(unsafe_code)] +pub const DLSUFFIX: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b".so\0") }; +pub const ENABLE_GSS: u32 = 1; +pub const ENABLE_NLS: u32 = 1; +#[allow(unsafe_code)] +pub const INT64_MODIFIER: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"l\0") }; +pub const MAXIMUM_ALIGNOF: u32 = 8; +pub const MEMSET_LOOP_LIMIT: u32 = 1024; +pub const OPENSSL_API_COMPAT: u32 = 268443648; +#[allow(unsafe_code)] +pub const PACKAGE_BUGREPORT: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pgsql-bugs@lists.postgresql.org\0") +}; +#[allow(unsafe_code)] +pub const PACKAGE_NAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_STRING: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL 17.0\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_TARNAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgresql\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_URL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"https://www.postgresql.org/\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_VERSION: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"17.0\0") }; +#[allow(unsafe_code)] +pub const PG_KRB_SRVNAM: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgres\0") }; +#[allow(unsafe_code)] +pub const PG_MAJORVERSION: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"17\0") }; +pub const PG_MAJORVERSION_NUM: u32 = 17; +pub const PG_MINORVERSION_NUM: u32 = 0; +pub const PG_USE_STDBOOL: u32 = 1; +#[allow(unsafe_code)] +pub const PG_VERSION: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"17.0 (Debian 17.0-1.pgdg120+1)\0") +}; +pub const PG_VERSION_NUM: u32 = 170000; +#[allow(unsafe_code)] +pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 17.0 (Debian 17.0-1.pgdg120+1) on aarch64-unknown-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") +}; +pub const RELSEG_SIZE: u32 = 131072; +pub const SIZEOF_BOOL: u32 = 1; +pub const SIZEOF_LONG: u32 = 8; +pub const SIZEOF_OFF_T: u32 = 8; +pub const SIZEOF_SIZE_T: u32 = 8; +pub const SIZEOF_VOID_P: u32 = 8; +pub const STDC_HEADERS: u32 = 1; +pub const USE_ARMV8_CRC32C_WITH_RUNTIME_CHECK: u32 = 1; +pub const USE_ICU: u32 = 1; +pub const USE_LDAP: u32 = 1; +pub const USE_LIBXML: u32 = 1; +pub const USE_LIBXSLT: u32 = 1; +pub const USE_LLVM: u32 = 1; +pub const USE_LZ4: u32 = 1; +pub const USE_OPENSSL: u32 = 1; +pub const USE_PAM: u32 = 1; +pub const USE_SYSTEMD: u32 = 1; +pub const USE_SYSV_SHARED_MEMORY: u32 = 1; +pub const USE_UNNAMED_POSIX_SEMAPHORES: u32 = 1; +pub const USE_ZSTD: u32 = 1; +pub const XLOG_BLCKSZ: u32 = 8192; +pub const DEFAULT_XLOG_SEG_SIZE: u32 = 16777216; +pub const NAMEDATALEN: u32 = 64; +pub const FUNC_MAX_ARGS: u32 = 100; +#[allow(unsafe_code)] +pub const FMGR_ABI_EXTRA: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL\0") }; +pub const INDEX_MAX_KEYS: u32 = 32; +pub const PARTITION_MAX_KEYS: u32 = 32; +pub const USE_FLOAT8_BYVAL: u32 = 1; +pub const NUM_SPINLOCK_SEMAPHORES: u32 = 128; +pub const NUM_ATOMICS_SEMAPHORES: u32 = 64; +pub const MAXPGPATH: u32 = 1024; +pub const BITS_PER_BYTE: u32 = 8; +pub const ALIGNOF_BUFFER: u32 = 32; +pub const DEFAULT_BACKEND_FLUSH_AFTER: u32 = 0; +pub const DEFAULT_BGWRITER_FLUSH_AFTER: u32 = 64; +pub const DEFAULT_CHECKPOINT_FLUSH_AFTER: u32 = 32; +pub const WRITEBACK_MAX_PENDING_FLUSHES: u32 = 256; +#[allow(unsafe_code)] +pub const DEFAULT_PGSOCKET_DIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/var/run/postgresql\0") }; +#[allow(unsafe_code)] +pub const DEFAULT_EVENT_SOURCE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL\0") }; +pub const PG_CACHE_LINE_SIZE: u32 = 128; +pub const PG_IO_ALIGN_SIZE: u32 = 4096; +pub const TRACE_SORT: u32 = 1; +pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; +pub const __USE_ISOC11: u32 = 1; +pub const __USE_ISOC99: u32 = 1; +pub const __USE_ISOC95: u32 = 1; +pub const __USE_POSIX_IMPLICITLY: u32 = 1; +pub const _POSIX_SOURCE: u32 = 1; +pub const _POSIX_C_SOURCE: u32 = 200809; +pub const __USE_POSIX: u32 = 1; +pub const __USE_POSIX2: u32 = 1; +pub const __USE_POSIX199309: u32 = 1; +pub const __USE_POSIX199506: u32 = 1; +pub const __USE_XOPEN2K: u32 = 1; +pub const __USE_XOPEN2K8: u32 = 1; +pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 0; +pub const __TIMESIZE: u32 = 64; +pub const __USE_MISC: u32 = 1; +pub const __USE_ATFILE: u32 = 1; +pub const __USE_FORTIFY_LEVEL: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; +pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; +pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; +pub const __STDC_ISO_10646__: u32 = 201706; +pub const __GNU_LIBRARY__: u32 = 6; +pub const __GLIBC__: u32 = 2; +pub const __GLIBC_MINOR__: u32 = 36; +pub const __glibc_c99_flexarr_available: u32 = 1; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; +pub const __GLIBC_USE_LIB_EXT2: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; +pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; +pub const __INO_T_MATCHES_INO64_T: u32 = 1; +pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; +pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; +pub const _____fpos_t_defined: u32 = 1; +pub const ____mbstate_t_defined: u32 = 1; +pub const _____fpos64_t_defined: u32 = 1; +pub const ____FILE_defined: u32 = 1; +pub const __FILE_defined: u32 = 1; +pub const __struct_FILE_defined: u32 = 1; +pub const _IO_EOF_SEEN: u32 = 16; +pub const _IO_ERR_SEEN: u32 = 32; +pub const _IO_USER_LOCK: u32 = 32768; +pub const _IOFBF: u32 = 0; +pub const _IOLBF: u32 = 1; +pub const _IONBF: u32 = 2; +pub const BUFSIZ: u32 = 8192; +pub const EOF: i32 = -1; +pub const SEEK_SET: u32 = 0; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +#[allow(unsafe_code)] +pub const P_tmpdir: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/tmp\0") }; +pub const L_tmpnam: u32 = 20; +pub const TMP_MAX: u32 = 238328; +pub const FILENAME_MAX: u32 = 4096; +pub const L_ctermid: u32 = 9; +pub const FOPEN_MAX: u32 = 16; +pub const WNOHANG: u32 = 1; +pub const WUNTRACED: u32 = 2; +pub const WSTOPPED: u32 = 2; +pub const WEXITED: u32 = 4; +pub const WCONTINUED: u32 = 8; +pub const WNOWAIT: u32 = 16777216; +pub const __WNOTHREAD: u32 = 536870912; +pub const __WALL: u32 = 1073741824; +pub const __WCLONE: u32 = 2147483648; +pub const __W_CONTINUED: u32 = 65535; +pub const __WCOREFLAG: u32 = 128; +pub const __ldiv_t_defined: u32 = 1; +pub const __lldiv_t_defined: u32 = 1; +pub const RAND_MAX: u32 = 2147483647; +pub const EXIT_FAILURE: u32 = 1; +pub const EXIT_SUCCESS: u32 = 0; +pub const __clock_t_defined: u32 = 1; +pub const __clockid_t_defined: u32 = 1; +pub const __time_t_defined: u32 = 1; +pub const __timer_t_defined: u32 = 1; +pub const __BIT_TYPES_DEFINED__: u32 = 1; +pub const __LITTLE_ENDIAN: u32 = 1234; +pub const __BIG_ENDIAN: u32 = 4321; +pub const __PDP_ENDIAN: u32 = 3412; +pub const __BYTE_ORDER: u32 = 1234; +pub const __FLOAT_WORD_ORDER: u32 = 1234; +pub const LITTLE_ENDIAN: u32 = 1234; +pub const BIG_ENDIAN: u32 = 4321; +pub const PDP_ENDIAN: u32 = 3412; +pub const BYTE_ORDER: u32 = 1234; +pub const __sigset_t_defined: u32 = 1; +pub const __timeval_defined: u32 = 1; +pub const _STRUCT_TIMESPEC: u32 = 1; +pub const FD_SETSIZE: u32 = 1024; +pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 64; +pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 48; +pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 8; +pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 8; +pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; +pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; +pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 8; +pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; +pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; +pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; +pub const INT8_MIN: i32 = -128; +pub const INT16_MIN: i32 = -32768; +pub const INT32_MIN: i32 = -2147483648; +pub const INT8_MAX: u32 = 127; +pub const INT16_MAX: u32 = 32767; +pub const INT32_MAX: u32 = 2147483647; +pub const UINT8_MAX: u32 = 255; +pub const UINT16_MAX: u32 = 65535; +pub const UINT32_MAX: u32 = 4294967295; +pub const INT_LEAST8_MIN: i32 = -128; +pub const INT_LEAST16_MIN: i32 = -32768; +pub const INT_LEAST32_MIN: i32 = -2147483648; +pub const INT_LEAST8_MAX: u32 = 127; +pub const INT_LEAST16_MAX: u32 = 32767; +pub const INT_LEAST32_MAX: u32 = 2147483647; +pub const UINT_LEAST8_MAX: u32 = 255; +pub const UINT_LEAST16_MAX: u32 = 65535; +pub const UINT_LEAST32_MAX: u32 = 4294967295; +pub const INT_FAST8_MIN: i32 = -128; +pub const INT_FAST16_MIN: i64 = -9223372036854775808; +pub const INT_FAST32_MIN: i64 = -9223372036854775808; +pub const INT_FAST8_MAX: u32 = 127; +pub const INT_FAST16_MAX: u64 = 9223372036854775807; +pub const INT_FAST32_MAX: u64 = 9223372036854775807; +pub const UINT_FAST8_MAX: u32 = 255; +pub const UINT_FAST16_MAX: i32 = -1; +pub const UINT_FAST32_MAX: i32 = -1; +pub const INTPTR_MIN: i64 = -9223372036854775808; +pub const INTPTR_MAX: u64 = 9223372036854775807; +pub const UINTPTR_MAX: i32 = -1; +pub const PTRDIFF_MIN: i64 = -9223372036854775808; +pub const PTRDIFF_MAX: u64 = 9223372036854775807; +pub const SIG_ATOMIC_MIN: i32 = -2147483648; +pub const SIG_ATOMIC_MAX: u32 = 2147483647; +pub const SIZE_MAX: i32 = -1; +pub const WINT_MIN: u32 = 0; +pub const WINT_MAX: u32 = 4294967295; +pub const EPERM: u32 = 1; +pub const ENOENT: u32 = 2; +pub const ESRCH: u32 = 3; +pub const EINTR: u32 = 4; +pub const EIO: u32 = 5; +pub const ENXIO: u32 = 6; +pub const E2BIG: u32 = 7; +pub const ENOEXEC: u32 = 8; +pub const EBADF: u32 = 9; +pub const ECHILD: u32 = 10; +pub const EAGAIN: u32 = 11; +pub const ENOMEM: u32 = 12; +pub const EACCES: u32 = 13; +pub const EFAULT: u32 = 14; +pub const ENOTBLK: u32 = 15; +pub const EBUSY: u32 = 16; +pub const EEXIST: u32 = 17; +pub const EXDEV: u32 = 18; +pub const ENODEV: u32 = 19; +pub const ENOTDIR: u32 = 20; +pub const EISDIR: u32 = 21; +pub const EINVAL: u32 = 22; +pub const ENFILE: u32 = 23; +pub const EMFILE: u32 = 24; +pub const ENOTTY: u32 = 25; +pub const ETXTBSY: u32 = 26; +pub const EFBIG: u32 = 27; +pub const ENOSPC: u32 = 28; +pub const ESPIPE: u32 = 29; +pub const EROFS: u32 = 30; +pub const EMLINK: u32 = 31; +pub const EPIPE: u32 = 32; +pub const EDOM: u32 = 33; +pub const ERANGE: u32 = 34; +pub const EDEADLK: u32 = 35; +pub const ENAMETOOLONG: u32 = 36; +pub const ENOLCK: u32 = 37; +pub const ENOSYS: u32 = 38; +pub const ENOTEMPTY: u32 = 39; +pub const ELOOP: u32 = 40; +pub const EWOULDBLOCK: u32 = 11; +pub const ENOMSG: u32 = 42; +pub const EIDRM: u32 = 43; +pub const ECHRNG: u32 = 44; +pub const EL2NSYNC: u32 = 45; +pub const EL3HLT: u32 = 46; +pub const EL3RST: u32 = 47; +pub const ELNRNG: u32 = 48; +pub const EUNATCH: u32 = 49; +pub const ENOCSI: u32 = 50; +pub const EL2HLT: u32 = 51; +pub const EBADE: u32 = 52; +pub const EBADR: u32 = 53; +pub const EXFULL: u32 = 54; +pub const ENOANO: u32 = 55; +pub const EBADRQC: u32 = 56; +pub const EBADSLT: u32 = 57; +pub const EDEADLOCK: u32 = 35; +pub const EBFONT: u32 = 59; +pub const ENOSTR: u32 = 60; +pub const ENODATA: u32 = 61; +pub const ETIME: u32 = 62; +pub const ENOSR: u32 = 63; +pub const ENONET: u32 = 64; +pub const ENOPKG: u32 = 65; +pub const EREMOTE: u32 = 66; +pub const ENOLINK: u32 = 67; +pub const EADV: u32 = 68; +pub const ESRMNT: u32 = 69; +pub const ECOMM: u32 = 70; +pub const EPROTO: u32 = 71; +pub const EMULTIHOP: u32 = 72; +pub const EDOTDOT: u32 = 73; +pub const EBADMSG: u32 = 74; +pub const EOVERFLOW: u32 = 75; +pub const ENOTUNIQ: u32 = 76; +pub const EBADFD: u32 = 77; +pub const EREMCHG: u32 = 78; +pub const ELIBACC: u32 = 79; +pub const ELIBBAD: u32 = 80; +pub const ELIBSCN: u32 = 81; +pub const ELIBMAX: u32 = 82; +pub const ELIBEXEC: u32 = 83; +pub const EILSEQ: u32 = 84; +pub const ERESTART: u32 = 85; +pub const ESTRPIPE: u32 = 86; +pub const EUSERS: u32 = 87; +pub const ENOTSOCK: u32 = 88; +pub const EDESTADDRREQ: u32 = 89; +pub const EMSGSIZE: u32 = 90; +pub const EPROTOTYPE: u32 = 91; +pub const ENOPROTOOPT: u32 = 92; +pub const EPROTONOSUPPORT: u32 = 93; +pub const ESOCKTNOSUPPORT: u32 = 94; +pub const EOPNOTSUPP: u32 = 95; +pub const EPFNOSUPPORT: u32 = 96; +pub const EAFNOSUPPORT: u32 = 97; +pub const EADDRINUSE: u32 = 98; +pub const EADDRNOTAVAIL: u32 = 99; +pub const ENETDOWN: u32 = 100; +pub const ENETUNREACH: u32 = 101; +pub const ENETRESET: u32 = 102; +pub const ECONNABORTED: u32 = 103; +pub const ECONNRESET: u32 = 104; +pub const ENOBUFS: u32 = 105; +pub const EISCONN: u32 = 106; +pub const ENOTCONN: u32 = 107; +pub const ESHUTDOWN: u32 = 108; +pub const ETOOMANYREFS: u32 = 109; +pub const ETIMEDOUT: u32 = 110; +pub const ECONNREFUSED: u32 = 111; +pub const EHOSTDOWN: u32 = 112; +pub const EHOSTUNREACH: u32 = 113; +pub const EALREADY: u32 = 114; +pub const EINPROGRESS: u32 = 115; +pub const ESTALE: u32 = 116; +pub const EUCLEAN: u32 = 117; +pub const ENOTNAM: u32 = 118; +pub const ENAVAIL: u32 = 119; +pub const EISNAM: u32 = 120; +pub const EREMOTEIO: u32 = 121; +pub const EDQUOT: u32 = 122; +pub const ENOMEDIUM: u32 = 123; +pub const EMEDIUMTYPE: u32 = 124; +pub const ECANCELED: u32 = 125; +pub const ENOKEY: u32 = 126; +pub const EKEYEXPIRED: u32 = 127; +pub const EKEYREVOKED: u32 = 128; +pub const EKEYREJECTED: u32 = 129; +pub const EOWNERDEAD: u32 = 130; +pub const ENOTRECOVERABLE: u32 = 131; +pub const ERFKILL: u32 = 132; +pub const EHWPOISON: u32 = 133; +pub const ENOTSUP: u32 = 95; +pub const __LC_CTYPE: u32 = 0; +pub const __LC_NUMERIC: u32 = 1; +pub const __LC_TIME: u32 = 2; +pub const __LC_COLLATE: u32 = 3; +pub const __LC_MONETARY: u32 = 4; +pub const __LC_MESSAGES: u32 = 5; +pub const __LC_ALL: u32 = 6; +pub const __LC_PAPER: u32 = 7; +pub const __LC_NAME: u32 = 8; +pub const __LC_ADDRESS: u32 = 9; +pub const __LC_TELEPHONE: u32 = 10; +pub const __LC_MEASUREMENT: u32 = 11; +pub const __LC_IDENTIFICATION: u32 = 12; +pub const LC_CTYPE: u32 = 0; +pub const LC_NUMERIC: u32 = 1; +pub const LC_TIME: u32 = 2; +pub const LC_COLLATE: u32 = 3; +pub const LC_MONETARY: u32 = 4; +pub const LC_MESSAGES: u32 = 5; +pub const LC_ALL: u32 = 6; +pub const LC_PAPER: u32 = 7; +pub const LC_NAME: u32 = 8; +pub const LC_ADDRESS: u32 = 9; +pub const LC_TELEPHONE: u32 = 10; +pub const LC_MEASUREMENT: u32 = 11; +pub const LC_IDENTIFICATION: u32 = 12; +pub const LC_CTYPE_MASK: u32 = 1; +pub const LC_NUMERIC_MASK: u32 = 2; +pub const LC_TIME_MASK: u32 = 4; +pub const LC_COLLATE_MASK: u32 = 8; +pub const LC_MONETARY_MASK: u32 = 16; +pub const LC_MESSAGES_MASK: u32 = 32; +pub const LC_PAPER_MASK: u32 = 128; +pub const LC_NAME_MASK: u32 = 256; +pub const LC_ADDRESS_MASK: u32 = 512; +pub const LC_TELEPHONE_MASK: u32 = 1024; +pub const LC_MEASUREMENT_MASK: u32 = 2048; +pub const LC_IDENTIFICATION_MASK: u32 = 4096; +pub const LC_ALL_MASK: u32 = 8127; +pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; +pub const true_: u32 = 1; +pub const false_: u32 = 0; +#[allow(unsafe_code)] +pub const INT64_FORMAT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; +#[allow(unsafe_code)] +pub const UINT64_FORMAT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%lu\0") }; +pub const PG_INT8_MIN: i32 = -128; +pub const PG_INT8_MAX: u32 = 127; +pub const PG_UINT8_MAX: u32 = 255; +pub const PG_INT16_MIN: i32 = -32768; +pub const PG_INT16_MAX: u32 = 32767; +pub const PG_UINT16_MAX: u32 = 65535; +pub const PG_INT32_MIN: i32 = -2147483648; +pub const PG_INT32_MAX: u32 = 2147483647; +pub const PG_UINT32_MAX: u32 = 4294967295; +pub const FLOAT8PASSBYVAL: u32 = 1; +pub const HIGHBIT: u32 = 128; +pub const ESCAPE_STRING_SYNTAX: u8 = 69u8; +pub const STATUS_OK: u32 = 0; +pub const STATUS_ERROR: i32 = -1; +pub const STATUS_EOF: i32 = -2; +pub const PG_BINARY: u32 = 0; +#[allow(unsafe_code)] +pub const PG_BINARY_A: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"a\0") }; +#[allow(unsafe_code)] +pub const PG_BINARY_R: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"r\0") }; +#[allow(unsafe_code)] +pub const PG_BINARY_W: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"w\0") }; +pub const PGINVALID_SOCKET: i32 = -1; +#[allow(unsafe_code)] +pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked( + b"postgres (PostgreSQL) 17.0 (Debian 17.0-1.pgdg120+1)\n\0", + ) +}; +#[allow(unsafe_code)] +pub const EXE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"\0") }; +#[allow(unsafe_code)] +pub const DEVNULL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/dev/null\0") }; +pub const USE_REPL_SNPRINTF: u32 = 1; +pub const PG_STRERROR_R_BUFLEN: u32 = 256; +pub const PG_IOLBF: u32 = 1; +pub const __FP_LOGB0_IS_MIN: u32 = 0; +pub const __FP_LOGBNAN_IS_MIN: u32 = 0; +pub const FP_ILOGB0: i32 = -2147483647; +pub const FP_ILOGBNAN: u32 = 2147483647; +pub const FP_FAST_FMA: u32 = 1; +pub const FP_FAST_FMAF: u32 = 1; +pub const __MATH_DECLARING_DOUBLE: u32 = 1; +pub const __MATH_DECLARING_FLOATN: u32 = 0; +pub const __MATH_DECLARE_LDOUBLE: u32 = 1; +pub const MATH_ERRNO: u32 = 1; +pub const MATH_ERREXCEPT: u32 = 2; +pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; +pub const DEBUG5: u32 = 10; +pub const DEBUG4: u32 = 11; +pub const DEBUG3: u32 = 12; +pub const DEBUG2: u32 = 13; +pub const DEBUG1: u32 = 14; +pub const LOG: u32 = 15; +pub const LOG_SERVER_ONLY: u32 = 16; +pub const COMMERROR: u32 = 16; +pub const INFO: u32 = 17; +pub const NOTICE: u32 = 18; +pub const WARNING: u32 = 19; +pub const PGWARNING: u32 = 19; +pub const WARNING_CLIENT_ONLY: u32 = 20; +pub const ERROR: u32 = 21; +pub const PGERROR: u32 = 21; +pub const FATAL: u32 = 22; +pub const PANIC: u32 = 23; +pub const LOG_DESTINATION_STDERR: u32 = 1; +pub const LOG_DESTINATION_SYSLOG: u32 = 2; +pub const LOG_DESTINATION_EVENTLOG: u32 = 4; +pub const LOG_DESTINATION_CSVLOG: u32 = 8; +pub const LOG_DESTINATION_JSONLOG: u32 = 16; +pub const MCXT_ALLOC_HUGE: u32 = 1; +pub const MCXT_ALLOC_NO_OOM: u32 = 2; +pub const MCXT_ALLOC_ZERO: u32 = 4; +pub const FIELDNO_NULLABLE_DATUM_DATUM: u32 = 0; +pub const FIELDNO_NULLABLE_DATUM_ISNULL: u32 = 1; +pub const SIZEOF_DATUM: u32 = 8; +pub const InvalidAttrNumber: u32 = 0; +pub const MaxAttrNumber: u32 = 32767; +pub const AttributeRelationId: u32 = 1249; +pub const AttributeRelation_Rowtype_Id: u32 = 75; +pub const AttributeRelidNameIndexId: u32 = 2658; +pub const AttributeRelidNumIndexId: u32 = 2659; +pub const Anum_pg_attribute_attrelid: u32 = 1; +pub const Anum_pg_attribute_attname: u32 = 2; +pub const Anum_pg_attribute_atttypid: u32 = 3; +pub const Anum_pg_attribute_attlen: u32 = 4; +pub const Anum_pg_attribute_attnum: u32 = 5; +pub const Anum_pg_attribute_attcacheoff: u32 = 6; +pub const Anum_pg_attribute_atttypmod: u32 = 7; +pub const Anum_pg_attribute_attndims: u32 = 8; +pub const Anum_pg_attribute_attbyval: u32 = 9; +pub const Anum_pg_attribute_attalign: u32 = 10; +pub const Anum_pg_attribute_attstorage: u32 = 11; +pub const Anum_pg_attribute_attcompression: u32 = 12; +pub const Anum_pg_attribute_attnotnull: u32 = 13; +pub const Anum_pg_attribute_atthasdef: u32 = 14; +pub const Anum_pg_attribute_atthasmissing: u32 = 15; +pub const Anum_pg_attribute_attidentity: u32 = 16; +pub const Anum_pg_attribute_attgenerated: u32 = 17; +pub const Anum_pg_attribute_attisdropped: u32 = 18; +pub const Anum_pg_attribute_attislocal: u32 = 19; +pub const Anum_pg_attribute_attinhcount: u32 = 20; +pub const Anum_pg_attribute_attcollation: u32 = 21; +pub const Anum_pg_attribute_attstattarget: u32 = 22; +pub const Anum_pg_attribute_attacl: u32 = 23; +pub const Anum_pg_attribute_attoptions: u32 = 24; +pub const Anum_pg_attribute_attfdwoptions: u32 = 25; +pub const Anum_pg_attribute_attmissingval: u32 = 26; +pub const Natts_pg_attribute: u32 = 26; +pub const ATTRIBUTE_IDENTITY_ALWAYS: u8 = 97u8; +pub const ATTRIBUTE_IDENTITY_BY_DEFAULT: u8 = 100u8; +pub const ATTRIBUTE_GENERATED_STORED: u8 = 115u8; +pub const AGGSPLITOP_COMBINE: u32 = 1; +pub const AGGSPLITOP_SKIPFINAL: u32 = 2; +pub const AGGSPLITOP_SERIALIZE: u32 = 4; +pub const AGGSPLITOP_DESERIALIZE: u32 = 8; +pub const LP_UNUSED: u32 = 0; +pub const LP_NORMAL: u32 = 1; +pub const LP_REDIRECT: u32 = 2; +pub const LP_DEAD: u32 = 3; +pub const SpecTokenOffsetNumber: u32 = 65534; +pub const MovedPartitionsOffsetNumber: u32 = 65533; +pub const FIELDNO_HEAPTUPLEDATA_DATA: u32 = 3; +pub const __O_DIRECTORY: u32 = 16384; +pub const __O_NOFOLLOW: u32 = 32768; +pub const __O_DIRECT: u32 = 65536; +pub const __O_LARGEFILE: u32 = 0; +pub const F_GETLK64: u32 = 5; +pub const F_SETLK64: u32 = 6; +pub const F_SETLKW64: u32 = 7; +pub const O_ACCMODE: u32 = 3; +pub const O_RDONLY: u32 = 0; +pub const O_WRONLY: u32 = 1; +pub const O_RDWR: u32 = 2; +pub const O_CREAT: u32 = 64; +pub const O_EXCL: u32 = 128; +pub const O_NOCTTY: u32 = 256; +pub const O_TRUNC: u32 = 512; +pub const O_APPEND: u32 = 1024; +pub const O_NONBLOCK: u32 = 2048; +pub const O_NDELAY: u32 = 2048; +pub const O_SYNC: u32 = 1052672; +pub const O_FSYNC: u32 = 1052672; +pub const O_ASYNC: u32 = 8192; +pub const __O_CLOEXEC: u32 = 524288; +pub const __O_NOATIME: u32 = 262144; +pub const __O_PATH: u32 = 2097152; +pub const __O_DSYNC: u32 = 4096; +pub const __O_TMPFILE: u32 = 4210688; +pub const F_GETLK: u32 = 5; +pub const F_SETLK: u32 = 6; +pub const F_SETLKW: u32 = 7; +pub const O_DIRECTORY: u32 = 16384; +pub const O_NOFOLLOW: u32 = 32768; +pub const O_CLOEXEC: u32 = 524288; +pub const O_DSYNC: u32 = 4096; +pub const O_RSYNC: u32 = 1052672; +pub const F_DUPFD: u32 = 0; +pub const F_GETFD: u32 = 1; +pub const F_SETFD: u32 = 2; +pub const F_GETFL: u32 = 3; +pub const F_SETFL: u32 = 4; +pub const __F_SETOWN: u32 = 8; +pub const __F_GETOWN: u32 = 9; +pub const F_SETOWN: u32 = 8; +pub const F_GETOWN: u32 = 9; +pub const __F_SETSIG: u32 = 10; +pub const __F_GETSIG: u32 = 11; +pub const __F_SETOWN_EX: u32 = 15; +pub const __F_GETOWN_EX: u32 = 16; +pub const F_DUPFD_CLOEXEC: u32 = 1030; +pub const FD_CLOEXEC: u32 = 1; +pub const F_RDLCK: u32 = 0; +pub const F_WRLCK: u32 = 1; +pub const F_UNLCK: u32 = 2; +pub const F_EXLCK: u32 = 4; +pub const F_SHLCK: u32 = 8; +pub const LOCK_SH: u32 = 1; +pub const LOCK_EX: u32 = 2; +pub const LOCK_NB: u32 = 4; +pub const LOCK_UN: u32 = 8; +pub const FAPPEND: u32 = 1024; +pub const FFSYNC: u32 = 1052672; +pub const FASYNC: u32 = 8192; +pub const FNONBLOCK: u32 = 2048; +pub const FNDELAY: u32 = 2048; +pub const __POSIX_FADV_DONTNEED: u32 = 4; +pub const __POSIX_FADV_NOREUSE: u32 = 5; +pub const POSIX_FADV_NORMAL: u32 = 0; +pub const POSIX_FADV_RANDOM: u32 = 1; +pub const POSIX_FADV_SEQUENTIAL: u32 = 2; +pub const POSIX_FADV_WILLNEED: u32 = 3; +pub const POSIX_FADV_DONTNEED: u32 = 4; +pub const POSIX_FADV_NOREUSE: u32 = 5; +pub const AT_FDCWD: i32 = -100; +pub const AT_SYMLINK_NOFOLLOW: u32 = 256; +pub const AT_REMOVEDIR: u32 = 512; +pub const AT_SYMLINK_FOLLOW: u32 = 1024; +pub const AT_EACCESS: u32 = 512; +pub const __S_IFMT: u32 = 61440; +pub const __S_IFDIR: u32 = 16384; +pub const __S_IFCHR: u32 = 8192; +pub const __S_IFBLK: u32 = 24576; +pub const __S_IFREG: u32 = 32768; +pub const __S_IFIFO: u32 = 4096; +pub const __S_IFLNK: u32 = 40960; +pub const __S_IFSOCK: u32 = 49152; +pub const __S_ISUID: u32 = 2048; +pub const __S_ISGID: u32 = 1024; +pub const __S_ISVTX: u32 = 512; +pub const __S_IREAD: u32 = 256; +pub const __S_IWRITE: u32 = 128; +pub const __S_IEXEC: u32 = 64; +pub const UTIME_NOW: u32 = 1073741823; +pub const UTIME_OMIT: u32 = 1073741822; +pub const S_IFMT: u32 = 61440; +pub const S_IFDIR: u32 = 16384; +pub const S_IFCHR: u32 = 8192; +pub const S_IFBLK: u32 = 24576; +pub const S_IFREG: u32 = 32768; +pub const S_IFIFO: u32 = 4096; +pub const S_IFLNK: u32 = 40960; +pub const S_IFSOCK: u32 = 49152; +pub const S_ISUID: u32 = 2048; +pub const S_ISGID: u32 = 1024; +pub const S_ISVTX: u32 = 512; +pub const S_IRUSR: u32 = 256; +pub const S_IWUSR: u32 = 128; +pub const S_IXUSR: u32 = 64; +pub const S_IRWXU: u32 = 448; +pub const S_IRGRP: u32 = 32; +pub const S_IWGRP: u32 = 16; +pub const S_IXGRP: u32 = 8; +pub const S_IRWXG: u32 = 56; +pub const S_IROTH: u32 = 4; +pub const S_IWOTH: u32 = 2; +pub const S_IXOTH: u32 = 1; +pub const S_IRWXO: u32 = 7; +pub const R_OK: u32 = 4; +pub const W_OK: u32 = 2; +pub const X_OK: u32 = 1; +pub const F_OK: u32 = 0; +pub const F_ULOCK: u32 = 0; +pub const F_LOCK: u32 = 1; +pub const F_TLOCK: u32 = 2; +pub const F_TEST: u32 = 3; +pub const InvalidXLogRecPtr: u32 = 0; +pub const FirstGenbkiObjectId: u32 = 10000; +pub const FirstUnpinnedObjectId: u32 = 12000; +pub const FirstNormalObjectId: u32 = 16384; +pub const TypeRelationId: u32 = 1247; +pub const TypeRelation_Rowtype_Id: u32 = 71; +pub const TypeOidIndexId: u32 = 2703; +pub const TypeNameNspIndexId: u32 = 2704; +pub const Anum_pg_type_oid: u32 = 1; +pub const Anum_pg_type_typname: u32 = 2; +pub const Anum_pg_type_typnamespace: u32 = 3; +pub const Anum_pg_type_typowner: u32 = 4; +pub const Anum_pg_type_typlen: u32 = 5; +pub const Anum_pg_type_typbyval: u32 = 6; +pub const Anum_pg_type_typtype: u32 = 7; +pub const Anum_pg_type_typcategory: u32 = 8; +pub const Anum_pg_type_typispreferred: u32 = 9; +pub const Anum_pg_type_typisdefined: u32 = 10; +pub const Anum_pg_type_typdelim: u32 = 11; +pub const Anum_pg_type_typrelid: u32 = 12; +pub const Anum_pg_type_typsubscript: u32 = 13; +pub const Anum_pg_type_typelem: u32 = 14; +pub const Anum_pg_type_typarray: u32 = 15; +pub const Anum_pg_type_typinput: u32 = 16; +pub const Anum_pg_type_typoutput: u32 = 17; +pub const Anum_pg_type_typreceive: u32 = 18; +pub const Anum_pg_type_typsend: u32 = 19; +pub const Anum_pg_type_typmodin: u32 = 20; +pub const Anum_pg_type_typmodout: u32 = 21; +pub const Anum_pg_type_typanalyze: u32 = 22; +pub const Anum_pg_type_typalign: u32 = 23; +pub const Anum_pg_type_typstorage: u32 = 24; +pub const Anum_pg_type_typnotnull: u32 = 25; +pub const Anum_pg_type_typbasetype: u32 = 26; +pub const Anum_pg_type_typtypmod: u32 = 27; +pub const Anum_pg_type_typndims: u32 = 28; +pub const Anum_pg_type_typcollation: u32 = 29; +pub const Anum_pg_type_typdefaultbin: u32 = 30; +pub const Anum_pg_type_typdefault: u32 = 31; +pub const Anum_pg_type_typacl: u32 = 32; +pub const Natts_pg_type: u32 = 32; +pub const TYPTYPE_BASE: u8 = 98u8; +pub const TYPTYPE_COMPOSITE: u8 = 99u8; +pub const TYPTYPE_DOMAIN: u8 = 100u8; +pub const TYPTYPE_ENUM: u8 = 101u8; +pub const TYPTYPE_MULTIRANGE: u8 = 109u8; +pub const TYPTYPE_PSEUDO: u8 = 112u8; +pub const TYPTYPE_RANGE: u8 = 114u8; +pub const TYPCATEGORY_INVALID: u8 = 0u8; +pub const TYPCATEGORY_ARRAY: u8 = 65u8; +pub const TYPCATEGORY_BOOLEAN: u8 = 66u8; +pub const TYPCATEGORY_COMPOSITE: u8 = 67u8; +pub const TYPCATEGORY_DATETIME: u8 = 68u8; +pub const TYPCATEGORY_ENUM: u8 = 69u8; +pub const TYPCATEGORY_GEOMETRIC: u8 = 71u8; +pub const TYPCATEGORY_NETWORK: u8 = 73u8; +pub const TYPCATEGORY_NUMERIC: u8 = 78u8; +pub const TYPCATEGORY_PSEUDOTYPE: u8 = 80u8; +pub const TYPCATEGORY_RANGE: u8 = 82u8; +pub const TYPCATEGORY_STRING: u8 = 83u8; +pub const TYPCATEGORY_TIMESPAN: u8 = 84u8; +pub const TYPCATEGORY_USER: u8 = 85u8; +pub const TYPCATEGORY_BITSTRING: u8 = 86u8; +pub const TYPCATEGORY_UNKNOWN: u8 = 88u8; +pub const TYPCATEGORY_INTERNAL: u8 = 90u8; +pub const TYPALIGN_CHAR: u8 = 99u8; +pub const TYPALIGN_SHORT: u8 = 115u8; +pub const TYPALIGN_INT: u8 = 105u8; +pub const TYPALIGN_DOUBLE: u8 = 100u8; +pub const TYPSTORAGE_PLAIN: u8 = 112u8; +pub const TYPSTORAGE_EXTERNAL: u8 = 101u8; +pub const TYPSTORAGE_EXTENDED: u8 = 120u8; +pub const TYPSTORAGE_MAIN: u8 = 109u8; +pub const BOOLOID: u32 = 16; +pub const BYTEAOID: u32 = 17; +pub const CHAROID: u32 = 18; +pub const NAMEOID: u32 = 19; +pub const INT8OID: u32 = 20; +pub const INT2OID: u32 = 21; +pub const INT2VECTOROID: u32 = 22; +pub const INT4OID: u32 = 23; +pub const REGPROCOID: u32 = 24; +pub const TEXTOID: u32 = 25; +pub const OIDOID: u32 = 26; +pub const TIDOID: u32 = 27; +pub const XIDOID: u32 = 28; +pub const CIDOID: u32 = 29; +pub const OIDVECTOROID: u32 = 30; +pub const JSONOID: u32 = 114; +pub const XMLOID: u32 = 142; +pub const PG_NODE_TREEOID: u32 = 194; +pub const PG_NDISTINCTOID: u32 = 3361; +pub const PG_DEPENDENCIESOID: u32 = 3402; +pub const PG_MCV_LISTOID: u32 = 5017; +pub const PG_DDL_COMMANDOID: u32 = 32; +pub const XID8OID: u32 = 5069; +pub const POINTOID: u32 = 600; +pub const LSEGOID: u32 = 601; +pub const PATHOID: u32 = 602; +pub const BOXOID: u32 = 603; +pub const POLYGONOID: u32 = 604; +pub const LINEOID: u32 = 628; +pub const FLOAT4OID: u32 = 700; +pub const FLOAT8OID: u32 = 701; +pub const UNKNOWNOID: u32 = 705; +pub const CIRCLEOID: u32 = 718; +pub const MONEYOID: u32 = 790; +pub const MACADDROID: u32 = 829; +pub const INETOID: u32 = 869; +pub const CIDROID: u32 = 650; +pub const MACADDR8OID: u32 = 774; +pub const ACLITEMOID: u32 = 1033; +pub const BPCHAROID: u32 = 1042; +pub const VARCHAROID: u32 = 1043; +pub const DATEOID: u32 = 1082; +pub const TIMEOID: u32 = 1083; +pub const TIMESTAMPOID: u32 = 1114; +pub const TIMESTAMPTZOID: u32 = 1184; +pub const INTERVALOID: u32 = 1186; +pub const TIMETZOID: u32 = 1266; +pub const BITOID: u32 = 1560; +pub const VARBITOID: u32 = 1562; +pub const NUMERICOID: u32 = 1700; +pub const REFCURSOROID: u32 = 1790; +pub const REGPROCEDUREOID: u32 = 2202; +pub const REGOPEROID: u32 = 2203; +pub const REGOPERATOROID: u32 = 2204; +pub const REGCLASSOID: u32 = 2205; +pub const REGCOLLATIONOID: u32 = 4191; +pub const REGTYPEOID: u32 = 2206; +pub const REGROLEOID: u32 = 4096; +pub const REGNAMESPACEOID: u32 = 4089; +pub const UUIDOID: u32 = 2950; +pub const PG_LSNOID: u32 = 3220; +pub const TSVECTOROID: u32 = 3614; +pub const GTSVECTOROID: u32 = 3642; +pub const TSQUERYOID: u32 = 3615; +pub const REGCONFIGOID: u32 = 3734; +pub const REGDICTIONARYOID: u32 = 3769; +pub const JSONBOID: u32 = 3802; +pub const JSONPATHOID: u32 = 4072; +pub const TXID_SNAPSHOTOID: u32 = 2970; +pub const PG_SNAPSHOTOID: u32 = 5038; +pub const INT4RANGEOID: u32 = 3904; +pub const NUMRANGEOID: u32 = 3906; +pub const TSRANGEOID: u32 = 3908; +pub const TSTZRANGEOID: u32 = 3910; +pub const DATERANGEOID: u32 = 3912; +pub const INT8RANGEOID: u32 = 3926; +pub const INT4MULTIRANGEOID: u32 = 4451; +pub const NUMMULTIRANGEOID: u32 = 4532; +pub const TSMULTIRANGEOID: u32 = 4533; +pub const TSTZMULTIRANGEOID: u32 = 4534; +pub const DATEMULTIRANGEOID: u32 = 4535; +pub const INT8MULTIRANGEOID: u32 = 4536; +pub const RECORDOID: u32 = 2249; +pub const RECORDARRAYOID: u32 = 2287; +pub const CSTRINGOID: u32 = 2275; +pub const ANYOID: u32 = 2276; +pub const ANYARRAYOID: u32 = 2277; +pub const VOIDOID: u32 = 2278; +pub const TRIGGEROID: u32 = 2279; +pub const EVENT_TRIGGEROID: u32 = 3838; +pub const LANGUAGE_HANDLEROID: u32 = 2280; +pub const INTERNALOID: u32 = 2281; +pub const ANYELEMENTOID: u32 = 2283; +pub const ANYNONARRAYOID: u32 = 2776; +pub const ANYENUMOID: u32 = 3500; +pub const FDW_HANDLEROID: u32 = 3115; +pub const INDEX_AM_HANDLEROID: u32 = 325; +pub const TSM_HANDLEROID: u32 = 3310; +pub const TABLE_AM_HANDLEROID: u32 = 269; +pub const ANYRANGEOID: u32 = 3831; +pub const ANYCOMPATIBLEOID: u32 = 5077; +pub const ANYCOMPATIBLEARRAYOID: u32 = 5078; +pub const ANYCOMPATIBLENONARRAYOID: u32 = 5079; +pub const ANYCOMPATIBLERANGEOID: u32 = 5080; +pub const ANYMULTIRANGEOID: u32 = 4537; +pub const ANYCOMPATIBLEMULTIRANGEOID: u32 = 4538; +pub const PG_BRIN_BLOOM_SUMMARYOID: u32 = 4600; +pub const PG_BRIN_MINMAX_MULTI_SUMMARYOID: u32 = 4601; +pub const BOOLARRAYOID: u32 = 1000; +pub const BYTEAARRAYOID: u32 = 1001; +pub const CHARARRAYOID: u32 = 1002; +pub const NAMEARRAYOID: u32 = 1003; +pub const INT8ARRAYOID: u32 = 1016; +pub const INT2ARRAYOID: u32 = 1005; +pub const INT2VECTORARRAYOID: u32 = 1006; +pub const INT4ARRAYOID: u32 = 1007; +pub const REGPROCARRAYOID: u32 = 1008; +pub const TEXTARRAYOID: u32 = 1009; +pub const OIDARRAYOID: u32 = 1028; +pub const TIDARRAYOID: u32 = 1010; +pub const XIDARRAYOID: u32 = 1011; +pub const CIDARRAYOID: u32 = 1012; +pub const OIDVECTORARRAYOID: u32 = 1013; +pub const PG_TYPEARRAYOID: u32 = 210; +pub const PG_ATTRIBUTEARRAYOID: u32 = 270; +pub const PG_PROCARRAYOID: u32 = 272; +pub const PG_CLASSARRAYOID: u32 = 273; +pub const JSONARRAYOID: u32 = 199; +pub const XMLARRAYOID: u32 = 143; +pub const XID8ARRAYOID: u32 = 271; +pub const POINTARRAYOID: u32 = 1017; +pub const LSEGARRAYOID: u32 = 1018; +pub const PATHARRAYOID: u32 = 1019; +pub const BOXARRAYOID: u32 = 1020; +pub const POLYGONARRAYOID: u32 = 1027; +pub const LINEARRAYOID: u32 = 629; +pub const FLOAT4ARRAYOID: u32 = 1021; +pub const FLOAT8ARRAYOID: u32 = 1022; +pub const CIRCLEARRAYOID: u32 = 719; +pub const MONEYARRAYOID: u32 = 791; +pub const MACADDRARRAYOID: u32 = 1040; +pub const INETARRAYOID: u32 = 1041; +pub const CIDRARRAYOID: u32 = 651; +pub const MACADDR8ARRAYOID: u32 = 775; +pub const ACLITEMARRAYOID: u32 = 1034; +pub const BPCHARARRAYOID: u32 = 1014; +pub const VARCHARARRAYOID: u32 = 1015; +pub const DATEARRAYOID: u32 = 1182; +pub const TIMEARRAYOID: u32 = 1183; +pub const TIMESTAMPARRAYOID: u32 = 1115; +pub const TIMESTAMPTZARRAYOID: u32 = 1185; +pub const INTERVALARRAYOID: u32 = 1187; +pub const TIMETZARRAYOID: u32 = 1270; +pub const BITARRAYOID: u32 = 1561; +pub const VARBITARRAYOID: u32 = 1563; +pub const NUMERICARRAYOID: u32 = 1231; +pub const REFCURSORARRAYOID: u32 = 2201; +pub const REGPROCEDUREARRAYOID: u32 = 2207; +pub const REGOPERARRAYOID: u32 = 2208; +pub const REGOPERATORARRAYOID: u32 = 2209; +pub const REGCLASSARRAYOID: u32 = 2210; +pub const REGCOLLATIONARRAYOID: u32 = 4192; +pub const REGTYPEARRAYOID: u32 = 2211; +pub const REGROLEARRAYOID: u32 = 4097; +pub const REGNAMESPACEARRAYOID: u32 = 4090; +pub const UUIDARRAYOID: u32 = 2951; +pub const PG_LSNARRAYOID: u32 = 3221; +pub const TSVECTORARRAYOID: u32 = 3643; +pub const GTSVECTORARRAYOID: u32 = 3644; +pub const TSQUERYARRAYOID: u32 = 3645; +pub const REGCONFIGARRAYOID: u32 = 3735; +pub const REGDICTIONARYARRAYOID: u32 = 3770; +pub const JSONBARRAYOID: u32 = 3807; +pub const JSONPATHARRAYOID: u32 = 4073; +pub const TXID_SNAPSHOTARRAYOID: u32 = 2949; +pub const PG_SNAPSHOTARRAYOID: u32 = 5039; +pub const INT4RANGEARRAYOID: u32 = 3905; +pub const NUMRANGEARRAYOID: u32 = 3907; +pub const TSRANGEARRAYOID: u32 = 3909; +pub const TSTZRANGEARRAYOID: u32 = 3911; +pub const DATERANGEARRAYOID: u32 = 3913; +pub const INT8RANGEARRAYOID: u32 = 3927; +pub const INT4MULTIRANGEARRAYOID: u32 = 6150; +pub const NUMMULTIRANGEARRAYOID: u32 = 6151; +pub const TSMULTIRANGEARRAYOID: u32 = 6152; +pub const TSTZMULTIRANGEARRAYOID: u32 = 6153; +pub const DATEMULTIRANGEARRAYOID: u32 = 6155; +pub const INT8MULTIRANGEARRAYOID: u32 = 6157; +pub const CSTRINGARRAYOID: u32 = 1263; +pub const PD_HAS_FREE_LINES: u32 = 1; +pub const PD_PAGE_FULL: u32 = 2; +pub const PD_ALL_VISIBLE: u32 = 4; +pub const PD_VALID_FLAG_BITS: u32 = 7; +pub const PG_PAGE_LAYOUT_VERSION: u32 = 4; +pub const PG_DATA_CHECKSUM_VERSION: u32 = 1; +pub const PAI_OVERWRITE: u32 = 1; +pub const PAI_IS_HEAP: u32 = 2; +pub const PIV_LOG_WARNING: u32 = 1; +pub const PIV_REPORT_STAT: u32 = 2; +pub const VARLENA_EXTSIZE_BITS: u32 = 30; +pub const VARLENA_EXTSIZE_MASK: u32 = 1073741823; +pub const VARATT_SHORT_MAX: u32 = 127; +pub const MaxTupleAttributeNumber: u32 = 1664; +pub const MaxHeapAttributeNumber: u32 = 1600; +pub const FIELDNO_HEAPTUPLEHEADERDATA_INFOMASK2: u32 = 2; +pub const FIELDNO_HEAPTUPLEHEADERDATA_INFOMASK: u32 = 3; +pub const FIELDNO_HEAPTUPLEHEADERDATA_HOFF: u32 = 4; +pub const FIELDNO_HEAPTUPLEHEADERDATA_BITS: u32 = 5; +pub const HEAP_HASNULL: u32 = 1; +pub const HEAP_HASVARWIDTH: u32 = 2; +pub const HEAP_HASEXTERNAL: u32 = 4; +pub const HEAP_HASOID_OLD: u32 = 8; +pub const HEAP_XMAX_KEYSHR_LOCK: u32 = 16; +pub const HEAP_COMBOCID: u32 = 32; +pub const HEAP_XMAX_EXCL_LOCK: u32 = 64; +pub const HEAP_XMAX_LOCK_ONLY: u32 = 128; +pub const HEAP_XMAX_SHR_LOCK: u32 = 80; +pub const HEAP_LOCK_MASK: u32 = 80; +pub const HEAP_XMIN_COMMITTED: u32 = 256; +pub const HEAP_XMIN_INVALID: u32 = 512; +pub const HEAP_XMIN_FROZEN: u32 = 768; +pub const HEAP_XMAX_COMMITTED: u32 = 1024; +pub const HEAP_XMAX_INVALID: u32 = 2048; +pub const HEAP_XMAX_IS_MULTI: u32 = 4096; +pub const HEAP_UPDATED: u32 = 8192; +pub const HEAP_MOVED_OFF: u32 = 16384; +pub const HEAP_MOVED_IN: u32 = 32768; +pub const HEAP_MOVED: u32 = 49152; +pub const HEAP_XACT_MASK: u32 = 65520; +pub const HEAP_XMAX_BITS: u32 = 7376; +pub const HEAP_NATTS_MASK: u32 = 2047; +pub const HEAP_KEYS_UPDATED: u32 = 8192; +pub const HEAP_HOT_UPDATED: u32 = 16384; +pub const HEAP_ONLY_TUPLE: u32 = 32768; +pub const HEAP2_XACT_MASK: u32 = 57344; +pub const HEAP_TUPLE_HAS_MATCH: u32 = 32768; +pub const MaxAttrSize: u32 = 10485760; +pub const SelfItemPointerAttributeNumber: i32 = -1; +pub const MinTransactionIdAttributeNumber: i32 = -2; +pub const MinCommandIdAttributeNumber: i32 = -3; +pub const MaxTransactionIdAttributeNumber: i32 = -4; +pub const MaxCommandIdAttributeNumber: i32 = -5; +pub const TableOidAttributeNumber: i32 = -6; +pub const FirstLowInvalidHeapAttributeNumber: i32 = -7; +pub const InvalidBuffer: u32 = 0; +pub const TTS_FLAG_EMPTY: u32 = 2; +pub const TTS_FLAG_SHOULDFREE: u32 = 4; +pub const TTS_FLAG_SLOW: u32 = 8; +pub const TTS_FLAG_FIXED: u32 = 16; +pub const FIELDNO_TUPLETABLESLOT_FLAGS: u32 = 1; +pub const FIELDNO_TUPLETABLESLOT_NVALID: u32 = 2; +pub const FIELDNO_TUPLETABLESLOT_TUPLEDESCRIPTOR: u32 = 4; +pub const FIELDNO_TUPLETABLESLOT_VALUES: u32 = 5; +pub const FIELDNO_TUPLETABLESLOT_ISNULL: u32 = 6; +pub const FIELDNO_HEAPTUPLETABLESLOT_TUPLE: u32 = 1; +pub const FIELDNO_HEAPTUPLETABLESLOT_OFF: u32 = 2; +pub const FIELDNO_MINIMALTUPLETABLESLOT_TUPLE: u32 = 1; +pub const FIELDNO_MINIMALTUPLETABLESLOT_OFF: u32 = 4; +pub const BITS_PER_BITMAPWORD: u32 = 64; +pub const CLOCK_REALTIME: u32 = 0; +pub const CLOCK_MONOTONIC: u32 = 1; +pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2; +pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3; +pub const CLOCK_MONOTONIC_RAW: u32 = 4; +pub const CLOCK_REALTIME_COARSE: u32 = 5; +pub const CLOCK_MONOTONIC_COARSE: u32 = 6; +pub const CLOCK_BOOTTIME: u32 = 7; +pub const CLOCK_REALTIME_ALARM: u32 = 8; +pub const CLOCK_BOOTTIME_ALARM: u32 = 9; +pub const CLOCK_TAI: u32 = 11; +pub const TIMER_ABSTIME: u32 = 1; +pub const __struct_tm_defined: u32 = 1; +pub const __itimerspec_defined: u32 = 1; +pub const TIME_UTC: u32 = 1; +pub const PG_INSTR_CLOCK: u32 = 1; +pub const FIELDNO_FUNCTIONCALLINFODATA_ISNULL: u32 = 4; +pub const FIELDNO_FUNCTIONCALLINFODATA_ARGS: u32 = 6; +#[allow(unsafe_code)] +pub const PG_MAGIC_FUNCTION_NAME_STRING: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"Pg_magic_func\0") }; +pub const AGG_CONTEXT_AGGREGATE: u32 = 1; +pub const AGG_CONTEXT_WINDOW: u32 = 2; +pub const PARAM_FLAG_CONST: u32 = 1; +pub const BTLessStrategyNumber: u32 = 1; +pub const BTLessEqualStrategyNumber: u32 = 2; +pub const BTEqualStrategyNumber: u32 = 3; +pub const BTGreaterEqualStrategyNumber: u32 = 4; +pub const BTGreaterStrategyNumber: u32 = 5; +pub const BTMaxStrategyNumber: u32 = 5; +pub const HTEqualStrategyNumber: u32 = 1; +pub const HTMaxStrategyNumber: u32 = 1; +pub const RTLeftStrategyNumber: u32 = 1; +pub const RTOverLeftStrategyNumber: u32 = 2; +pub const RTOverlapStrategyNumber: u32 = 3; +pub const RTOverRightStrategyNumber: u32 = 4; +pub const RTRightStrategyNumber: u32 = 5; +pub const RTSameStrategyNumber: u32 = 6; +pub const RTContainsStrategyNumber: u32 = 7; +pub const RTContainedByStrategyNumber: u32 = 8; +pub const RTOverBelowStrategyNumber: u32 = 9; +pub const RTBelowStrategyNumber: u32 = 10; +pub const RTAboveStrategyNumber: u32 = 11; +pub const RTOverAboveStrategyNumber: u32 = 12; +pub const RTOldContainsStrategyNumber: u32 = 13; +pub const RTOldContainedByStrategyNumber: u32 = 14; +pub const RTKNNSearchStrategyNumber: u32 = 15; +pub const RTContainsElemStrategyNumber: u32 = 16; +pub const RTAdjacentStrategyNumber: u32 = 17; +pub const RTEqualStrategyNumber: u32 = 18; +pub const RTNotEqualStrategyNumber: u32 = 19; +pub const RTLessStrategyNumber: u32 = 20; +pub const RTLessEqualStrategyNumber: u32 = 21; +pub const RTGreaterStrategyNumber: u32 = 22; +pub const RTGreaterEqualStrategyNumber: u32 = 23; +pub const RTSubStrategyNumber: u32 = 24; +pub const RTSubEqualStrategyNumber: u32 = 25; +pub const RTSuperStrategyNumber: u32 = 26; +pub const RTSuperEqualStrategyNumber: u32 = 27; +pub const RTPrefixStrategyNumber: u32 = 28; +pub const RTOldBelowStrategyNumber: u32 = 29; +pub const RTOldAboveStrategyNumber: u32 = 30; +pub const RTMaxStrategyNumber: u32 = 30; +pub const CATALOG_VERSION_NO: u32 = 202406281; +pub const OIDCHARS: u32 = 10; +pub const FORKNAMECHARS: u32 = 4; +pub const INNER_VAR: i32 = -1; +pub const OUTER_VAR: i32 = -2; +pub const INDEX_VAR: i32 = -3; +pub const ROWID_VAR: i32 = -4; +pub const PRS2_OLD_VARNO: u32 = 1; +pub const PRS2_NEW_VARNO: u32 = 2; +pub const _LIBC_LIMITS_H_: u32 = 1; +pub const MB_LEN_MAX: u32 = 16; +pub const _BITS_POSIX1_LIM_H: u32 = 1; +pub const _POSIX_AIO_LISTIO_MAX: u32 = 2; +pub const _POSIX_AIO_MAX: u32 = 1; +pub const _POSIX_ARG_MAX: u32 = 4096; +pub const _POSIX_CHILD_MAX: u32 = 25; +pub const _POSIX_DELAYTIMER_MAX: u32 = 32; +pub const _POSIX_HOST_NAME_MAX: u32 = 255; +pub const _POSIX_LINK_MAX: u32 = 8; +pub const _POSIX_LOGIN_NAME_MAX: u32 = 9; +pub const _POSIX_MAX_CANON: u32 = 255; +pub const _POSIX_MAX_INPUT: u32 = 255; +pub const _POSIX_MQ_OPEN_MAX: u32 = 8; +pub const _POSIX_MQ_PRIO_MAX: u32 = 32; +pub const _POSIX_NAME_MAX: u32 = 14; +pub const _POSIX_NGROUPS_MAX: u32 = 8; +pub const _POSIX_OPEN_MAX: u32 = 20; +pub const _POSIX_PATH_MAX: u32 = 256; +pub const _POSIX_PIPE_BUF: u32 = 512; +pub const _POSIX_RE_DUP_MAX: u32 = 255; +pub const _POSIX_RTSIG_MAX: u32 = 8; +pub const _POSIX_SEM_NSEMS_MAX: u32 = 256; +pub const _POSIX_SEM_VALUE_MAX: u32 = 32767; +pub const _POSIX_SIGQUEUE_MAX: u32 = 32; +pub const _POSIX_SSIZE_MAX: u32 = 32767; +pub const _POSIX_STREAM_MAX: u32 = 8; +pub const _POSIX_SYMLINK_MAX: u32 = 255; +pub const _POSIX_SYMLOOP_MAX: u32 = 8; +pub const _POSIX_TIMER_MAX: u32 = 32; +pub const _POSIX_TTY_NAME_MAX: u32 = 9; +pub const _POSIX_TZNAME_MAX: u32 = 6; +pub const _POSIX_CLOCKRES_MIN: u32 = 20000000; +pub const NR_OPEN: u32 = 1024; +pub const NGROUPS_MAX: u32 = 65536; +pub const ARG_MAX: u32 = 131072; +pub const LINK_MAX: u32 = 127; +pub const MAX_CANON: u32 = 255; +pub const MAX_INPUT: u32 = 255; +pub const NAME_MAX: u32 = 255; +pub const PATH_MAX: u32 = 4096; +pub const PIPE_BUF: u32 = 4096; +pub const XATTR_NAME_MAX: u32 = 255; +pub const XATTR_SIZE_MAX: u32 = 65536; +pub const XATTR_LIST_MAX: u32 = 65536; +pub const RTSIG_MAX: u32 = 32; +pub const _POSIX_THREAD_KEYS_MAX: u32 = 128; +pub const PTHREAD_KEYS_MAX: u32 = 1024; +pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS: u32 = 4; +pub const PTHREAD_DESTRUCTOR_ITERATIONS: u32 = 4; +pub const _POSIX_THREAD_THREADS_MAX: u32 = 64; +pub const AIO_PRIO_DELTA_MAX: u32 = 20; +pub const PTHREAD_STACK_MIN: u32 = 131072; +pub const DELAYTIMER_MAX: u32 = 2147483647; +pub const TTY_NAME_MAX: u32 = 32; +pub const LOGIN_NAME_MAX: u32 = 256; +pub const HOST_NAME_MAX: u32 = 64; +pub const MQ_PRIO_MAX: u32 = 32768; +pub const SEM_VALUE_MAX: u32 = 2147483647; +pub const _BITS_POSIX2_LIM_H: u32 = 1; +pub const _POSIX2_BC_BASE_MAX: u32 = 99; +pub const _POSIX2_BC_DIM_MAX: u32 = 2048; +pub const _POSIX2_BC_SCALE_MAX: u32 = 99; +pub const _POSIX2_BC_STRING_MAX: u32 = 1000; +pub const _POSIX2_COLL_WEIGHTS_MAX: u32 = 2; +pub const _POSIX2_EXPR_NEST_MAX: u32 = 32; +pub const _POSIX2_LINE_MAX: u32 = 2048; +pub const _POSIX2_RE_DUP_MAX: u32 = 255; +pub const _POSIX2_CHARCLASS_NAME_MAX: u32 = 14; +pub const BC_BASE_MAX: u32 = 99; +pub const BC_DIM_MAX: u32 = 2048; +pub const BC_SCALE_MAX: u32 = 99; +pub const BC_STRING_MAX: u32 = 1000; +pub const COLL_WEIGHTS_MAX: u32 = 255; +pub const EXPR_NEST_MAX: u32 = 32; +pub const LINE_MAX: u32 = 2048; +pub const CHARCLASS_NAME_MAX: u32 = 2048; +pub const RE_DUP_MAX: u32 = 32767; +pub const CHAR_MIN: u32 = 0; +pub const DSM_IMPL_POSIX: u32 = 1; +pub const DSM_IMPL_SYSV: u32 = 2; +pub const DSM_IMPL_WINDOWS: u32 = 3; +pub const DSM_IMPL_MMAP: u32 = 4; +pub const DEFAULT_DYNAMIC_SHARED_MEMORY_TYPE: u32 = 1; +#[allow(unsafe_code)] +pub const PG_DYNSHMEM_DIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_dynshmem\0") }; +#[allow(unsafe_code)] +pub const PG_DYNSHMEM_MMAP_FILE_PREFIX: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"mmap.\0") }; +pub const DSM_CREATE_NULL_IF_MAXSEGMENTS: u32 = 1; +pub const SIZEOF_DSA_POINTER: u32 = 8; +#[allow(unsafe_code)] +pub const DSA_POINTER_FORMAT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%016lx\0") }; +pub const DSA_ALLOC_HUGE: u32 = 1; +pub const DSA_ALLOC_NO_OOM: u32 = 2; +pub const DSA_ALLOC_ZERO: u32 = 4; +pub const DSA_OFFSET_WIDTH: u32 = 40; +pub const INVALID_PROC_NUMBER: i32 = -1; +pub const DEFAULT_SPINS_PER_DELAY: u32 = 100; +pub const HASH_PARTITION: u32 = 1; +pub const HASH_SEGMENT: u32 = 2; +pub const HASH_DIRSIZE: u32 = 4; +pub const HASH_ELEM: u32 = 8; +pub const HASH_STRINGS: u32 = 16; +pub const HASH_BLOBS: u32 = 32; +pub const HASH_FUNCTION: u32 = 64; +pub const HASH_COMPARE: u32 = 128; +pub const HASH_KEYCOPY: u32 = 256; +pub const HASH_ALLOC: u32 = 512; +pub const HASH_CONTEXT: u32 = 1024; +pub const HASH_SHARED_MEM: u32 = 2048; +pub const HASH_ATTACH: u32 = 4096; +pub const HASH_FIXED_SIZE: u32 = 8192; +pub const NO_MAX_DSIZE: i32 = -1; +pub const __iovec_defined: u32 = 1; +pub const __IOV_MAX: u32 = 1024; +pub const UIO_MAXIOV: u32 = 1024; +pub const _POSIX_VERSION: u32 = 200809; +pub const __POSIX2_THIS_VERSION: u32 = 200809; +pub const _POSIX2_VERSION: u32 = 200809; +pub const _POSIX2_C_VERSION: u32 = 200809; +pub const _POSIX2_C_BIND: u32 = 200809; +pub const _POSIX2_C_DEV: u32 = 200809; +pub const _POSIX2_SW_DEV: u32 = 200809; +pub const _POSIX2_LOCALEDEF: u32 = 200809; +pub const _XOPEN_VERSION: u32 = 700; +pub const _XOPEN_XCU_VERSION: u32 = 4; +pub const _XOPEN_XPG2: u32 = 1; +pub const _XOPEN_XPG3: u32 = 1; +pub const _XOPEN_XPG4: u32 = 1; +pub const _XOPEN_UNIX: u32 = 1; +pub const _XOPEN_ENH_I18N: u32 = 1; +pub const _XOPEN_LEGACY: u32 = 1; +pub const _POSIX_JOB_CONTROL: u32 = 1; +pub const _POSIX_SAVED_IDS: u32 = 1; +pub const _POSIX_PRIORITY_SCHEDULING: u32 = 200809; +pub const _POSIX_SYNCHRONIZED_IO: u32 = 200809; +pub const _POSIX_FSYNC: u32 = 200809; +pub const _POSIX_MAPPED_FILES: u32 = 200809; +pub const _POSIX_MEMLOCK: u32 = 200809; +pub const _POSIX_MEMLOCK_RANGE: u32 = 200809; +pub const _POSIX_MEMORY_PROTECTION: u32 = 200809; +pub const _POSIX_CHOWN_RESTRICTED: u32 = 0; +pub const _POSIX_VDISABLE: u8 = 0u8; +pub const _POSIX_NO_TRUNC: u32 = 1; +pub const _XOPEN_REALTIME: u32 = 1; +pub const _XOPEN_REALTIME_THREADS: u32 = 1; +pub const _XOPEN_SHM: u32 = 1; +pub const _POSIX_THREADS: u32 = 200809; +pub const _POSIX_REENTRANT_FUNCTIONS: u32 = 1; +pub const _POSIX_THREAD_SAFE_FUNCTIONS: u32 = 200809; +pub const _POSIX_THREAD_PRIORITY_SCHEDULING: u32 = 200809; +pub const _POSIX_THREAD_ATTR_STACKSIZE: u32 = 200809; +pub const _POSIX_THREAD_ATTR_STACKADDR: u32 = 200809; +pub const _POSIX_THREAD_PRIO_INHERIT: u32 = 200809; +pub const _POSIX_THREAD_PRIO_PROTECT: u32 = 200809; +pub const _POSIX_THREAD_ROBUST_PRIO_INHERIT: u32 = 200809; +pub const _POSIX_THREAD_ROBUST_PRIO_PROTECT: i32 = -1; +pub const _POSIX_SEMAPHORES: u32 = 200809; +pub const _POSIX_REALTIME_SIGNALS: u32 = 200809; +pub const _POSIX_ASYNCHRONOUS_IO: u32 = 200809; +pub const _POSIX_ASYNC_IO: u32 = 1; +pub const _LFS_ASYNCHRONOUS_IO: u32 = 1; +pub const _POSIX_PRIORITIZED_IO: u32 = 200809; +pub const _LFS64_ASYNCHRONOUS_IO: u32 = 1; +pub const _LFS_LARGEFILE: u32 = 1; +pub const _LFS64_LARGEFILE: u32 = 1; +pub const _LFS64_STDIO: u32 = 1; +pub const _POSIX_SHARED_MEMORY_OBJECTS: u32 = 200809; +pub const _POSIX_CPUTIME: u32 = 0; +pub const _POSIX_THREAD_CPUTIME: u32 = 0; +pub const _POSIX_REGEXP: u32 = 1; +pub const _POSIX_READER_WRITER_LOCKS: u32 = 200809; +pub const _POSIX_SHELL: u32 = 1; +pub const _POSIX_TIMEOUTS: u32 = 200809; +pub const _POSIX_SPIN_LOCKS: u32 = 200809; +pub const _POSIX_SPAWN: u32 = 200809; +pub const _POSIX_TIMERS: u32 = 200809; +pub const _POSIX_BARRIERS: u32 = 200809; +pub const _POSIX_MESSAGE_PASSING: u32 = 200809; +pub const _POSIX_THREAD_PROCESS_SHARED: u32 = 200809; +pub const _POSIX_MONOTONIC_CLOCK: u32 = 0; +pub const _POSIX_CLOCK_SELECTION: u32 = 200809; +pub const _POSIX_ADVISORY_INFO: u32 = 200809; +pub const _POSIX_IPV6: u32 = 200809; +pub const _POSIX_RAW_SOCKETS: u32 = 200809; +pub const _POSIX2_CHAR_TERM: u32 = 200809; +pub const _POSIX_SPORADIC_SERVER: i32 = -1; +pub const _POSIX_THREAD_SPORADIC_SERVER: i32 = -1; +pub const _POSIX_TRACE: i32 = -1; +pub const _POSIX_TRACE_EVENT_FILTER: i32 = -1; +pub const _POSIX_TRACE_INHERIT: i32 = -1; +pub const _POSIX_TRACE_LOG: i32 = -1; +pub const _POSIX_TYPED_MEMORY_OBJECTS: i32 = -1; +pub const _POSIX_V7_ILP32_OFF32: i32 = -1; +pub const _POSIX_V7_ILP32_OFFBIG: i32 = -1; +pub const _POSIX_V6_ILP32_OFF32: i32 = -1; +pub const _POSIX_V6_ILP32_OFFBIG: i32 = -1; +pub const _XBS5_ILP32_OFF32: i32 = -1; +pub const _XBS5_ILP32_OFFBIG: i32 = -1; +pub const _POSIX_V7_LPBIG_OFFBIG: i32 = -1; +pub const _POSIX_V6_LPBIG_OFFBIG: i32 = -1; +pub const _XBS5_LPBIG_OFFBIG: i32 = -1; +pub const _POSIX_V7_LP64_OFF64: u32 = 1; +pub const _POSIX_V6_LP64_OFF64: u32 = 1; +pub const _XBS5_LP64_OFF64: u32 = 1; +pub const STDIN_FILENO: u32 = 0; +pub const STDOUT_FILENO: u32 = 1; +pub const STDERR_FILENO: u32 = 2; +pub const L_SET: u32 = 0; +pub const L_INCR: u32 = 1; +pub const L_XTND: u32 = 2; +pub const IOV_MAX: u32 = 16; +pub const _DIRENT_MATCHES_DIRENT64: u32 = 1; +pub const MAXNAMLEN: u32 = 255; +pub const IO_DIRECT_DATA: u32 = 1; +pub const IO_DIRECT_WAL: u32 = 2; +pub const IO_DIRECT_WAL_INIT: u32 = 4; +pub const PG_O_DIRECT: u32 = 0; +pub const SHARED_TUPLESTORE_SINGLE_PASS: u32 = 1; +pub const MAX_TIMESTAMP_PRECISION: u32 = 6; +pub const MAX_INTERVAL_PRECISION: u32 = 6; +pub const TS_PREC_INV: f64 = 1000000.0; +pub const DAYS_PER_YEAR: f64 = 365.25; +pub const MONTHS_PER_YEAR: u32 = 12; +pub const DAYS_PER_MONTH: u32 = 30; +pub const DAYS_PER_WEEK: u32 = 7; +pub const HOURS_PER_DAY: u32 = 24; +pub const SECS_PER_YEAR: u32 = 31557600; +pub const SECS_PER_DAY: u32 = 86400; +pub const SECS_PER_HOUR: u32 = 3600; +pub const SECS_PER_MINUTE: u32 = 60; +pub const MINS_PER_HOUR: u32 = 60; +pub const MAX_TZDISP_HOUR: u32 = 15; +pub const TZDISP_LIMIT: u32 = 57600; +pub const JULIAN_MINYEAR: i32 = -4713; +pub const JULIAN_MINMONTH: u32 = 11; +pub const JULIAN_MINDAY: u32 = 24; +pub const JULIAN_MAXYEAR: u32 = 5874898; +pub const JULIAN_MAXMONTH: u32 = 6; +pub const JULIAN_MAXDAY: u32 = 3; +pub const UNIX_EPOCH_JDATE: u32 = 2440588; +pub const POSTGRES_EPOCH_JDATE: u32 = 2451545; +pub const DATETIME_MIN_JULIAN: u32 = 0; +pub const DATE_END_JULIAN: u32 = 2147483494; +pub const TIMESTAMP_END_JULIAN: u32 = 109203528; +#[allow(unsafe_code)] +pub const RELCACHE_INIT_FILENAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_internal.init\0") }; +pub const SK_ISNULL: u32 = 1; +pub const SK_UNARY: u32 = 2; +pub const SK_ROW_HEADER: u32 = 4; +pub const SK_ROW_MEMBER: u32 = 8; +pub const SK_ROW_END: u32 = 16; +pub const SK_SEARCHARRAY: u32 = 32; +pub const SK_SEARCHNULL: u32 = 64; +pub const SK_SEARCHNOTNULL: u32 = 128; +pub const SK_ORDER_BY: u32 = 256; +pub const NoLock: u32 = 0; +pub const AccessShareLock: u32 = 1; +pub const RowShareLock: u32 = 2; +pub const RowExclusiveLock: u32 = 3; +pub const ShareUpdateExclusiveLock: u32 = 4; +pub const ShareLock: u32 = 5; +pub const ShareRowExclusiveLock: u32 = 6; +pub const ExclusiveLock: u32 = 7; +pub const AccessExclusiveLock: u32 = 8; +pub const MaxLockMode: u32 = 8; +pub const TYPECACHE_EQ_OPR: u32 = 1; +pub const TYPECACHE_LT_OPR: u32 = 2; +pub const TYPECACHE_GT_OPR: u32 = 4; +pub const TYPECACHE_CMP_PROC: u32 = 8; +pub const TYPECACHE_HASH_PROC: u32 = 16; +pub const TYPECACHE_EQ_OPR_FINFO: u32 = 32; +pub const TYPECACHE_CMP_PROC_FINFO: u32 = 64; +pub const TYPECACHE_HASH_PROC_FINFO: u32 = 128; +pub const TYPECACHE_TUPDESC: u32 = 256; +pub const TYPECACHE_BTREE_OPFAMILY: u32 = 512; +pub const TYPECACHE_HASH_OPFAMILY: u32 = 1024; +pub const TYPECACHE_RANGE_INFO: u32 = 2048; +pub const TYPECACHE_DOMAIN_BASE_INFO: u32 = 4096; +pub const TYPECACHE_DOMAIN_CONSTR_INFO: u32 = 8192; +pub const TYPECACHE_HASH_EXTENDED_PROC: u32 = 16384; +pub const TYPECACHE_HASH_EXTENDED_PROC_FINFO: u32 = 32768; +pub const TYPECACHE_MULTIRANGE_INFO: u32 = 65536; +pub const BRIN_PROCNUM_OPCINFO: u32 = 1; +pub const BRIN_PROCNUM_ADDVALUE: u32 = 2; +pub const BRIN_PROCNUM_CONSISTENT: u32 = 3; +pub const BRIN_PROCNUM_UNION: u32 = 4; +pub const BRIN_MANDATORY_NPROCS: u32 = 4; +pub const BRIN_PROCNUM_OPTIONS: u32 = 5; +pub const BRIN_FIRST_OPTIONAL_PROCNUM: u32 = 11; +pub const BRIN_LAST_OPTIONAL_PROCNUM: u32 = 15; +pub const BRIN_OFFSET_MASK: u32 = 31; +pub const BRIN_EMPTY_RANGE_MASK: u32 = 32; +pub const BRIN_PLACEHOLDER_MASK: u32 = 64; +pub const BRIN_NULLS_MASK: u32 = 128; +pub const INDEX_SIZE_MASK: u32 = 8191; +pub const INDEX_AM_RESERVED_BIT: u32 = 8192; +pub const INDEX_VAR_MASK: u32 = 16384; +pub const INDEX_NULL_MASK: u32 = 32768; +pub const NUM_TUPLESORTMETHODS: u32 = 4; +pub const TUPLESORT_NONE: u32 = 0; +pub const TUPLESORT_RANDOMACCESS: u32 = 1; +pub const TUPLESORT_ALLOWBOUNDED: u32 = 2; +pub const EEO_FLAG_IS_QUAL: u32 = 1; +pub const FIELDNO_EXPRSTATE_RESNULL: u32 = 2; +pub const FIELDNO_EXPRSTATE_RESVALUE: u32 = 3; +pub const FIELDNO_EXPRSTATE_RESULTSLOT: u32 = 4; +pub const FIELDNO_EXPRSTATE_PARENT: u32 = 11; +pub const FIELDNO_EXPRCONTEXT_SCANTUPLE: u32 = 1; +pub const FIELDNO_EXPRCONTEXT_INNERTUPLE: u32 = 2; +pub const FIELDNO_EXPRCONTEXT_OUTERTUPLE: u32 = 3; +pub const FIELDNO_EXPRCONTEXT_AGGVALUES: u32 = 8; +pub const FIELDNO_EXPRCONTEXT_AGGNULLS: u32 = 9; +pub const FIELDNO_EXPRCONTEXT_CASEDATUM: u32 = 10; +pub const FIELDNO_EXPRCONTEXT_CASENULL: u32 = 11; +pub const FIELDNO_EXPRCONTEXT_DOMAINDATUM: u32 = 12; +pub const FIELDNO_EXPRCONTEXT_DOMAINNULL: u32 = 13; +pub const MERGE_INSERT: u32 = 1; +pub const MERGE_UPDATE: u32 = 2; +pub const MERGE_DELETE: u32 = 4; +pub const FIELDNO_AGGSTATE_CURAGGCONTEXT: u32 = 14; +pub const FIELDNO_AGGSTATE_CURPERTRANS: u32 = 16; +pub const FIELDNO_AGGSTATE_CURRENT_SET: u32 = 20; +pub const FIELDNO_AGGSTATE_ALL_PERGROUPS: u32 = 53; +pub const COMPLETION_TAG_BUFSIZE: u32 = 64; +pub const ACL_INSERT: u32 = 1; +pub const ACL_SELECT: u32 = 2; +pub const ACL_UPDATE: u32 = 4; +pub const ACL_DELETE: u32 = 8; +pub const ACL_TRUNCATE: u32 = 16; +pub const ACL_REFERENCES: u32 = 32; +pub const ACL_TRIGGER: u32 = 64; +pub const ACL_EXECUTE: u32 = 128; +pub const ACL_USAGE: u32 = 256; +pub const ACL_CREATE: u32 = 512; +pub const ACL_CREATE_TEMP: u32 = 1024; +pub const ACL_CONNECT: u32 = 2048; +pub const ACL_SET: u32 = 4096; +pub const ACL_ALTER_SYSTEM: u32 = 8192; +pub const ACL_MAINTAIN: u32 = 16384; +pub const N_ACL_RIGHTS: u32 = 15; +pub const ACL_NO_RIGHTS: u32 = 0; +pub const ACL_SELECT_FOR_UPDATE: u32 = 4; +pub const FRAMEOPTION_NONDEFAULT: u32 = 1; +pub const FRAMEOPTION_RANGE: u32 = 2; +pub const FRAMEOPTION_ROWS: u32 = 4; +pub const FRAMEOPTION_GROUPS: u32 = 8; +pub const FRAMEOPTION_BETWEEN: u32 = 16; +pub const FRAMEOPTION_START_UNBOUNDED_PRECEDING: u32 = 32; +pub const FRAMEOPTION_END_UNBOUNDED_PRECEDING: u32 = 64; +pub const FRAMEOPTION_START_UNBOUNDED_FOLLOWING: u32 = 128; +pub const FRAMEOPTION_END_UNBOUNDED_FOLLOWING: u32 = 256; +pub const FRAMEOPTION_START_CURRENT_ROW: u32 = 512; +pub const FRAMEOPTION_END_CURRENT_ROW: u32 = 1024; +pub const FRAMEOPTION_START_OFFSET_PRECEDING: u32 = 2048; +pub const FRAMEOPTION_END_OFFSET_PRECEDING: u32 = 4096; +pub const FRAMEOPTION_START_OFFSET_FOLLOWING: u32 = 8192; +pub const FRAMEOPTION_END_OFFSET_FOLLOWING: u32 = 16384; +pub const FRAMEOPTION_EXCLUDE_CURRENT_ROW: u32 = 32768; +pub const FRAMEOPTION_EXCLUDE_GROUP: u32 = 65536; +pub const FRAMEOPTION_EXCLUDE_TIES: u32 = 131072; +pub const FRAMEOPTION_START_OFFSET: u32 = 10240; +pub const FRAMEOPTION_END_OFFSET: u32 = 20480; +pub const FRAMEOPTION_EXCLUSION: u32 = 229376; +pub const FRAMEOPTION_DEFAULTS: u32 = 1058; +pub const FKCONSTR_ACTION_NOACTION: u8 = 97u8; +pub const FKCONSTR_ACTION_RESTRICT: u8 = 114u8; +pub const FKCONSTR_ACTION_CASCADE: u8 = 99u8; +pub const FKCONSTR_ACTION_SETNULL: u8 = 110u8; +pub const FKCONSTR_ACTION_SETDEFAULT: u8 = 100u8; +pub const FKCONSTR_MATCH_FULL: u8 = 102u8; +pub const FKCONSTR_MATCH_PARTIAL: u8 = 112u8; +pub const FKCONSTR_MATCH_SIMPLE: u8 = 115u8; +pub const OPCLASS_ITEM_OPERATOR: u32 = 1; +pub const OPCLASS_ITEM_FUNCTION: u32 = 2; +pub const OPCLASS_ITEM_STORAGETYPE: u32 = 3; +pub const CURSOR_OPT_BINARY: u32 = 1; +pub const CURSOR_OPT_SCROLL: u32 = 2; +pub const CURSOR_OPT_NO_SCROLL: u32 = 4; +pub const CURSOR_OPT_INSENSITIVE: u32 = 8; +pub const CURSOR_OPT_ASENSITIVE: u32 = 16; +pub const CURSOR_OPT_HOLD: u32 = 32; +pub const CURSOR_OPT_FAST_PLAN: u32 = 256; +pub const CURSOR_OPT_GENERIC_PLAN: u32 = 512; +pub const CURSOR_OPT_CUSTOM_PLAN: u32 = 1024; +pub const CURSOR_OPT_PARALLEL_OK: u32 = 2048; +pub const MaxAllocHugeSize: u32 = 0; +pub const InvalidAllocSize: i32 = -1; +pub const ALLOCSET_DEFAULT_MINSIZE: u32 = 0; +pub const ALLOCSET_DEFAULT_INITSIZE: u32 = 8192; +pub const ALLOCSET_DEFAULT_MAXSIZE: u32 = 8388608; +pub const ALLOCSET_SMALL_MINSIZE: u32 = 0; +pub const ALLOCSET_SMALL_INITSIZE: u32 = 1024; +pub const ALLOCSET_SMALL_MAXSIZE: u32 = 8192; +pub const ALLOCSET_SEPARATE_THRESHOLD: u32 = 8192; +pub const SLAB_DEFAULT_BLOCK_SIZE: u32 = 8192; +pub const SLAB_LARGE_BLOCK_SIZE: u32 = 8388608; +pub const EXEC_FLAG_EXPLAIN_ONLY: u32 = 1; +pub const EXEC_FLAG_EXPLAIN_GENERIC: u32 = 2; +pub const EXEC_FLAG_REWIND: u32 = 4; +pub const EXEC_FLAG_BACKWARD: u32 = 8; +pub const EXEC_FLAG_MARK: u32 = 16; +pub const EXEC_FLAG_SKIP_TRIGGERS: u32 = 32; +pub const EXEC_FLAG_WITH_NO_DATA: u32 = 64; +pub const MAT_SRF_USE_EXPECTED_DESC: u32 = 1; +pub const MAT_SRF_BLESS: u32 = 2; +pub const SIGINT: u32 = 2; +pub const SIGILL: u32 = 4; +pub const SIGABRT: u32 = 6; +pub const SIGFPE: u32 = 8; +pub const SIGSEGV: u32 = 11; +pub const SIGTERM: u32 = 15; +pub const SIGHUP: u32 = 1; +pub const SIGQUIT: u32 = 3; +pub const SIGTRAP: u32 = 5; +pub const SIGKILL: u32 = 9; +pub const SIGPIPE: u32 = 13; +pub const SIGALRM: u32 = 14; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; +pub const SIGTTIN: u32 = 21; +pub const SIGTTOU: u32 = 22; +pub const SIGPOLL: u32 = 29; +pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; +pub const SIGVTALRM: u32 = 26; +pub const SIGPROF: u32 = 27; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; +pub const SIGWINCH: u32 = 28; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; +pub const __SIGRTMIN: u32 = 32; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; +pub const __sig_atomic_t_defined: u32 = 1; +pub const __siginfo_t_defined: u32 = 1; +pub const __SI_MAX_SIZE: u32 = 128; +pub const __SI_ERRNO_THEN_CODE: u32 = 1; +pub const __SI_HAVE_SIGSYS: u32 = 1; +pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; +pub const __sigevent_t_defined: u32 = 1; +pub const __SIGEV_MAX_SIZE: u32 = 64; +pub const NSIG: u32 = 65; +pub const SA_NOCLDSTOP: u32 = 1; +pub const SA_NOCLDWAIT: u32 = 2; +pub const SA_SIGINFO: u32 = 4; +pub const SA_ONSTACK: u32 = 134217728; +pub const SA_RESTART: u32 = 268435456; +pub const SA_NODEFER: u32 = 1073741824; +pub const SA_RESETHAND: u32 = 2147483648; +pub const SA_INTERRUPT: u32 = 536870912; +pub const SA_NOMASK: u32 = 1073741824; +pub const SA_ONESHOT: u32 = 2147483648; +pub const SA_STACK: u32 = 134217728; +pub const SIG_BLOCK: u32 = 0; +pub const SIG_UNBLOCK: u32 = 1; +pub const SIG_SETMASK: u32 = 2; +pub const __BITS_PER_LONG: u32 = 64; +pub const FPSIMD_MAGIC: u32 = 1179680769; +pub const ESR_MAGIC: u32 = 1163088385; +pub const EXTRA_MAGIC: u32 = 1163416577; +pub const SVE_MAGIC: u32 = 1398162689; +pub const SVE_SIG_FLAG_SM: u32 = 1; +pub const ZA_MAGIC: u32 = 1412850501; +pub const __SVE_VQ_BYTES: u32 = 16; +pub const __SVE_VQ_MIN: u32 = 1; +pub const __SVE_VQ_MAX: u32 = 512; +pub const __SVE_VL_MIN: u32 = 16; +pub const __SVE_VL_MAX: u32 = 8192; +pub const __SVE_NUM_ZREGS: u32 = 32; +pub const __SVE_NUM_PREGS: u32 = 16; +pub const __SVE_ZREGS_OFFSET: u32 = 0; +pub const SVE_VQ_BYTES: u32 = 16; +pub const SVE_VQ_MIN: u32 = 1; +pub const SVE_VQ_MAX: u32 = 512; +pub const SVE_VL_MIN: u32 = 16; +pub const SVE_VL_MAX: u32 = 8192; +pub const SVE_NUM_ZREGS: u32 = 32; +pub const SVE_NUM_PREGS: u32 = 16; +pub const __stack_t_defined: u32 = 1; +pub const ELF_PRARGSZ: u32 = 80; +pub const MINSIGSTKSZ: u32 = 5120; +pub const SIGSTKSZ: u32 = 16384; +pub const __sigstack_defined: u32 = 1; +pub const TZ_STRLEN_MAX: u32 = 255; +pub const InvalidPid: i32 = -1; +pub const USE_POSTGRES_DATES: u32 = 0; +pub const USE_ISO_DATES: u32 = 1; +pub const USE_SQL_DATES: u32 = 2; +pub const USE_GERMAN_DATES: u32 = 3; +pub const USE_XSD_DATES: u32 = 4; +pub const DATEORDER_YMD: u32 = 0; +pub const DATEORDER_DMY: u32 = 1; +pub const DATEORDER_MDY: u32 = 2; +pub const INTSTYLE_POSTGRES: u32 = 0; +pub const INTSTYLE_POSTGRES_VERBOSE: u32 = 1; +pub const INTSTYLE_SQL_STANDARD: u32 = 2; +pub const INTSTYLE_ISO_8601: u32 = 3; +pub const MAXTZLEN: u32 = 10; +pub const MIN_BAS_VAC_RING_SIZE_KB: u32 = 128; +pub const MAX_BAS_VAC_RING_SIZE_KB: u32 = 16777216; +pub const SECURITY_LOCAL_USERID_CHANGE: u32 = 1; +pub const SECURITY_RESTRICTED_OPERATION: u32 = 2; +pub const SECURITY_NOFORCE_RLS: u32 = 4; +pub const INIT_PG_LOAD_SESSION_LIBS: u32 = 1; +pub const INIT_PG_OVERRIDE_ALLOW_CONNS: u32 = 2; +pub const INIT_PG_OVERRIDE_ROLE_LOGIN: u32 = 4; +pub const MIN_XFN_CHARS: u32 = 16; +pub const MAX_XFN_CHARS: u32 = 40; +#[allow(unsafe_code)] +pub const VALID_XFN_CHARS: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"0123456789ABCDEF.history.backup.partial\0") +}; +pub const PGSTAT_NUM_PROGRESS_PARAM: u32 = 20; +pub const PF_UNSPEC: u32 = 0; +pub const PF_LOCAL: u32 = 1; +pub const PF_UNIX: u32 = 1; +pub const PF_FILE: u32 = 1; +pub const PF_INET: u32 = 2; +pub const PF_AX25: u32 = 3; +pub const PF_IPX: u32 = 4; +pub const PF_APPLETALK: u32 = 5; +pub const PF_NETROM: u32 = 6; +pub const PF_BRIDGE: u32 = 7; +pub const PF_ATMPVC: u32 = 8; +pub const PF_X25: u32 = 9; +pub const PF_INET6: u32 = 10; +pub const PF_ROSE: u32 = 11; +pub const PF_DECnet: u32 = 12; +pub const PF_NETBEUI: u32 = 13; +pub const PF_SECURITY: u32 = 14; +pub const PF_KEY: u32 = 15; +pub const PF_NETLINK: u32 = 16; +pub const PF_ROUTE: u32 = 16; +pub const PF_PACKET: u32 = 17; +pub const PF_ASH: u32 = 18; +pub const PF_ECONET: u32 = 19; +pub const PF_ATMSVC: u32 = 20; +pub const PF_RDS: u32 = 21; +pub const PF_SNA: u32 = 22; +pub const PF_IRDA: u32 = 23; +pub const PF_PPPOX: u32 = 24; +pub const PF_WANPIPE: u32 = 25; +pub const PF_LLC: u32 = 26; +pub const PF_IB: u32 = 27; +pub const PF_MPLS: u32 = 28; +pub const PF_CAN: u32 = 29; +pub const PF_TIPC: u32 = 30; +pub const PF_BLUETOOTH: u32 = 31; +pub const PF_IUCV: u32 = 32; +pub const PF_RXRPC: u32 = 33; +pub const PF_ISDN: u32 = 34; +pub const PF_PHONET: u32 = 35; +pub const PF_IEEE802154: u32 = 36; +pub const PF_CAIF: u32 = 37; +pub const PF_ALG: u32 = 38; +pub const PF_NFC: u32 = 39; +pub const PF_VSOCK: u32 = 40; +pub const PF_KCM: u32 = 41; +pub const PF_QIPCRTR: u32 = 42; +pub const PF_SMC: u32 = 43; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; +pub const AF_UNSPEC: u32 = 0; +pub const AF_LOCAL: u32 = 1; +pub const AF_UNIX: u32 = 1; +pub const AF_FILE: u32 = 1; +pub const AF_INET: u32 = 2; +pub const AF_AX25: u32 = 3; +pub const AF_IPX: u32 = 4; +pub const AF_APPLETALK: u32 = 5; +pub const AF_NETROM: u32 = 6; +pub const AF_BRIDGE: u32 = 7; +pub const AF_ATMPVC: u32 = 8; +pub const AF_X25: u32 = 9; +pub const AF_INET6: u32 = 10; +pub const AF_ROSE: u32 = 11; +pub const AF_DECnet: u32 = 12; +pub const AF_NETBEUI: u32 = 13; +pub const AF_SECURITY: u32 = 14; +pub const AF_KEY: u32 = 15; +pub const AF_NETLINK: u32 = 16; +pub const AF_ROUTE: u32 = 16; +pub const AF_PACKET: u32 = 17; +pub const AF_ASH: u32 = 18; +pub const AF_ECONET: u32 = 19; +pub const AF_ATMSVC: u32 = 20; +pub const AF_RDS: u32 = 21; +pub const AF_SNA: u32 = 22; +pub const AF_IRDA: u32 = 23; +pub const AF_PPPOX: u32 = 24; +pub const AF_WANPIPE: u32 = 25; +pub const AF_LLC: u32 = 26; +pub const AF_IB: u32 = 27; +pub const AF_MPLS: u32 = 28; +pub const AF_CAN: u32 = 29; +pub const AF_TIPC: u32 = 30; +pub const AF_BLUETOOTH: u32 = 31; +pub const AF_IUCV: u32 = 32; +pub const AF_RXRPC: u32 = 33; +pub const AF_ISDN: u32 = 34; +pub const AF_PHONET: u32 = 35; +pub const AF_IEEE802154: u32 = 36; +pub const AF_CAIF: u32 = 37; +pub const AF_ALG: u32 = 38; +pub const AF_NFC: u32 = 39; +pub const AF_VSOCK: u32 = 40; +pub const AF_KCM: u32 = 41; +pub const AF_QIPCRTR: u32 = 42; +pub const AF_SMC: u32 = 43; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; +pub const SOL_RAW: u32 = 255; +pub const SOL_DECNET: u32 = 261; +pub const SOL_X25: u32 = 262; +pub const SOL_PACKET: u32 = 263; +pub const SOL_ATM: u32 = 264; +pub const SOL_AAL: u32 = 265; +pub const SOL_IRDA: u32 = 266; +pub const SOL_NETBEUI: u32 = 267; +pub const SOL_LLC: u32 = 268; +pub const SOL_DCCP: u32 = 269; +pub const SOL_NETLINK: u32 = 270; +pub const SOL_TIPC: u32 = 271; +pub const SOL_RXRPC: u32 = 272; +pub const SOL_PPPOL2TP: u32 = 273; +pub const SOL_BLUETOOTH: u32 = 274; +pub const SOL_PNPIPE: u32 = 275; +pub const SOL_RDS: u32 = 276; +pub const SOL_IUCV: u32 = 277; +pub const SOL_CAIF: u32 = 278; +pub const SOL_ALG: u32 = 279; +pub const SOL_NFC: u32 = 280; +pub const SOL_KCM: u32 = 281; +pub const SOL_TLS: u32 = 282; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; +pub const _SS_SIZE: u32 = 128; +pub const FIOSETOWN: u32 = 35073; +pub const SIOCSPGRP: u32 = 35074; +pub const FIOGETOWN: u32 = 35075; +pub const SIOCGPGRP: u32 = 35076; +pub const SIOCATMARK: u32 = 35077; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; +pub const SOL_SOCKET: u32 = 1; +pub const SO_DEBUG: u32 = 1; +pub const SO_REUSEADDR: u32 = 2; +pub const SO_TYPE: u32 = 3; +pub const SO_ERROR: u32 = 4; +pub const SO_DONTROUTE: u32 = 5; +pub const SO_BROADCAST: u32 = 6; +pub const SO_SNDBUF: u32 = 7; +pub const SO_RCVBUF: u32 = 8; +pub const SO_SNDBUFFORCE: u32 = 32; +pub const SO_RCVBUFFORCE: u32 = 33; +pub const SO_KEEPALIVE: u32 = 9; +pub const SO_OOBINLINE: u32 = 10; +pub const SO_NO_CHECK: u32 = 11; +pub const SO_PRIORITY: u32 = 12; +pub const SO_LINGER: u32 = 13; +pub const SO_BSDCOMPAT: u32 = 14; +pub const SO_REUSEPORT: u32 = 15; +pub const SO_PASSCRED: u32 = 16; +pub const SO_PEERCRED: u32 = 17; +pub const SO_RCVLOWAT: u32 = 18; +pub const SO_SNDLOWAT: u32 = 19; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; +pub const SO_SECURITY_AUTHENTICATION: u32 = 22; +pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; +pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; +pub const SO_BINDTODEVICE: u32 = 25; +pub const SO_ATTACH_FILTER: u32 = 26; +pub const SO_DETACH_FILTER: u32 = 27; +pub const SO_GET_FILTER: u32 = 26; +pub const SO_PEERNAME: u32 = 28; +pub const SO_ACCEPTCONN: u32 = 30; +pub const SO_PEERSEC: u32 = 31; +pub const SO_PASSSEC: u32 = 34; +pub const SO_MARK: u32 = 36; +pub const SO_PROTOCOL: u32 = 38; +pub const SO_DOMAIN: u32 = 39; +pub const SO_RXQ_OVFL: u32 = 40; +pub const SO_WIFI_STATUS: u32 = 41; +pub const SCM_WIFI_STATUS: u32 = 41; +pub const SO_PEEK_OFF: u32 = 42; +pub const SO_NOFCS: u32 = 43; +pub const SO_LOCK_FILTER: u32 = 44; +pub const SO_SELECT_ERR_QUEUE: u32 = 45; +pub const SO_BUSY_POLL: u32 = 46; +pub const SO_MAX_PACING_RATE: u32 = 47; +pub const SO_BPF_EXTENSIONS: u32 = 48; +pub const SO_INCOMING_CPU: u32 = 49; +pub const SO_ATTACH_BPF: u32 = 50; +pub const SO_DETACH_BPF: u32 = 27; +pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51; +pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52; +pub const SO_CNX_ADVICE: u32 = 53; +pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54; +pub const SO_MEMINFO: u32 = 55; +pub const SO_INCOMING_NAPI_ID: u32 = 56; +pub const SO_COOKIE: u32 = 57; +pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58; +pub const SO_PEERGROUPS: u32 = 59; +pub const SO_ZEROCOPY: u32 = 60; +pub const SO_TXTIME: u32 = 61; +pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; +pub const __osockaddr_defined: u32 = 1; +pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; +pub const IP_OPTIONS: u32 = 4; +pub const IP_HDRINCL: u32 = 3; +pub const IP_TOS: u32 = 1; +pub const IP_TTL: u32 = 2; +pub const IP_RECVOPTS: u32 = 6; +pub const IP_RETOPTS: u32 = 7; +pub const IP_MULTICAST_IF: u32 = 32; +pub const IP_MULTICAST_TTL: u32 = 33; +pub const IP_MULTICAST_LOOP: u32 = 34; +pub const IP_ADD_MEMBERSHIP: u32 = 35; +pub const IP_DROP_MEMBERSHIP: u32 = 36; +pub const IP_UNBLOCK_SOURCE: u32 = 37; +pub const IP_BLOCK_SOURCE: u32 = 38; +pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39; +pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40; +pub const IP_MSFILTER: u32 = 41; +pub const MCAST_JOIN_GROUP: u32 = 42; +pub const MCAST_BLOCK_SOURCE: u32 = 43; +pub const MCAST_UNBLOCK_SOURCE: u32 = 44; +pub const MCAST_LEAVE_GROUP: u32 = 45; +pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46; +pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47; +pub const MCAST_MSFILTER: u32 = 48; +pub const IP_MULTICAST_ALL: u32 = 49; +pub const IP_UNICAST_IF: u32 = 50; +pub const MCAST_EXCLUDE: u32 = 0; +pub const MCAST_INCLUDE: u32 = 1; +pub const IP_ROUTER_ALERT: u32 = 5; +pub const IP_PKTINFO: u32 = 8; +pub const IP_PKTOPTIONS: u32 = 9; +pub const IP_PMTUDISC: u32 = 10; +pub const IP_MTU_DISCOVER: u32 = 10; +pub const IP_RECVERR: u32 = 11; +pub const IP_RECVTTL: u32 = 12; +pub const IP_RECVTOS: u32 = 13; +pub const IP_MTU: u32 = 14; +pub const IP_FREEBIND: u32 = 15; +pub const IP_IPSEC_POLICY: u32 = 16; +pub const IP_XFRM_POLICY: u32 = 17; +pub const IP_PASSSEC: u32 = 18; +pub const IP_TRANSPARENT: u32 = 19; +pub const IP_ORIGDSTADDR: u32 = 20; +pub const IP_RECVORIGDSTADDR: u32 = 20; +pub const IP_MINTTL: u32 = 21; +pub const IP_NODEFRAG: u32 = 22; +pub const IP_CHECKSUM: u32 = 23; +pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; +pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; +pub const IP_PMTUDISC_DONT: u32 = 0; +pub const IP_PMTUDISC_WANT: u32 = 1; +pub const IP_PMTUDISC_DO: u32 = 2; +pub const IP_PMTUDISC_PROBE: u32 = 3; +pub const IP_PMTUDISC_INTERFACE: u32 = 4; +pub const IP_PMTUDISC_OMIT: u32 = 5; +pub const SOL_IP: u32 = 0; +pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; +pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; +pub const IP_MAX_MEMBERSHIPS: u32 = 20; +pub const IPV6_ADDRFORM: u32 = 1; +pub const IPV6_2292PKTINFO: u32 = 2; +pub const IPV6_2292HOPOPTS: u32 = 3; +pub const IPV6_2292DSTOPTS: u32 = 4; +pub const IPV6_2292RTHDR: u32 = 5; +pub const IPV6_2292PKTOPTIONS: u32 = 6; +pub const IPV6_CHECKSUM: u32 = 7; +pub const IPV6_2292HOPLIMIT: u32 = 8; +pub const IPV6_NEXTHOP: u32 = 9; +pub const IPV6_AUTHHDR: u32 = 10; +pub const IPV6_UNICAST_HOPS: u32 = 16; +pub const IPV6_MULTICAST_IF: u32 = 17; +pub const IPV6_MULTICAST_HOPS: u32 = 18; +pub const IPV6_MULTICAST_LOOP: u32 = 19; +pub const IPV6_JOIN_GROUP: u32 = 20; +pub const IPV6_LEAVE_GROUP: u32 = 21; +pub const IPV6_ROUTER_ALERT: u32 = 22; +pub const IPV6_MTU_DISCOVER: u32 = 23; +pub const IPV6_MTU: u32 = 24; +pub const IPV6_RECVERR: u32 = 25; +pub const IPV6_V6ONLY: u32 = 26; +pub const IPV6_JOIN_ANYCAST: u32 = 27; +pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; +pub const IPV6_IPSEC_POLICY: u32 = 34; +pub const IPV6_XFRM_POLICY: u32 = 35; +pub const IPV6_HDRINCL: u32 = 36; +pub const IPV6_RECVPKTINFO: u32 = 49; +pub const IPV6_PKTINFO: u32 = 50; +pub const IPV6_RECVHOPLIMIT: u32 = 51; +pub const IPV6_HOPLIMIT: u32 = 52; +pub const IPV6_RECVHOPOPTS: u32 = 53; +pub const IPV6_HOPOPTS: u32 = 54; +pub const IPV6_RTHDRDSTOPTS: u32 = 55; +pub const IPV6_RECVRTHDR: u32 = 56; +pub const IPV6_RTHDR: u32 = 57; +pub const IPV6_RECVDSTOPTS: u32 = 58; +pub const IPV6_DSTOPTS: u32 = 59; +pub const IPV6_RECVPATHMTU: u32 = 60; +pub const IPV6_PATHMTU: u32 = 61; +pub const IPV6_DONTFRAG: u32 = 62; +pub const IPV6_RECVTCLASS: u32 = 66; +pub const IPV6_TCLASS: u32 = 67; +pub const IPV6_AUTOFLOWLABEL: u32 = 70; +pub const IPV6_ADDR_PREFERENCES: u32 = 72; +pub const IPV6_MINHOPCOUNT: u32 = 73; +pub const IPV6_ORIGDSTADDR: u32 = 74; +pub const IPV6_RECVORIGDSTADDR: u32 = 74; +pub const IPV6_TRANSPARENT: u32 = 75; +pub const IPV6_UNICAST_IF: u32 = 76; +pub const IPV6_RECVFRAGSIZE: u32 = 77; +pub const IPV6_FREEBIND: u32 = 78; +pub const IPV6_ADD_MEMBERSHIP: u32 = 20; +pub const IPV6_DROP_MEMBERSHIP: u32 = 21; +pub const IPV6_RXHOPOPTS: u32 = 54; +pub const IPV6_RXDSTOPTS: u32 = 59; +pub const IPV6_PMTUDISC_DONT: u32 = 0; +pub const IPV6_PMTUDISC_WANT: u32 = 1; +pub const IPV6_PMTUDISC_DO: u32 = 2; +pub const IPV6_PMTUDISC_PROBE: u32 = 3; +pub const IPV6_PMTUDISC_INTERFACE: u32 = 4; +pub const IPV6_PMTUDISC_OMIT: u32 = 5; +pub const SOL_IPV6: u32 = 41; +pub const SOL_ICMPV6: u32 = 58; +pub const IPV6_RTHDR_LOOSE: u32 = 0; +pub const IPV6_RTHDR_STRICT: u32 = 1; +pub const IPV6_RTHDR_TYPE_0: u32 = 0; +pub const IN_CLASSA_NET: u32 = 4278190080; +pub const IN_CLASSA_NSHIFT: u32 = 24; +pub const IN_CLASSA_HOST: u32 = 16777215; +pub const IN_CLASSA_MAX: u32 = 128; +pub const IN_CLASSB_NET: u32 = 4294901760; +pub const IN_CLASSB_NSHIFT: u32 = 16; +pub const IN_CLASSB_HOST: u32 = 65535; +pub const IN_CLASSB_MAX: u32 = 65536; +pub const IN_CLASSC_NET: u32 = 4294967040; +pub const IN_CLASSC_NSHIFT: u32 = 8; +pub const IN_CLASSC_HOST: u32 = 255; +pub const IN_LOOPBACKNET: u32 = 127; +pub const INET_ADDRSTRLEN: u32 = 16; +pub const INET6_ADDRSTRLEN: u32 = 46; +#[allow(unsafe_code)] +pub const _PATH_HEQUIV: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/hosts.equiv\0") }; +#[allow(unsafe_code)] +pub const _PATH_HOSTS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/hosts\0") }; +#[allow(unsafe_code)] +pub const _PATH_NETWORKS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/networks\0") }; +#[allow(unsafe_code)] +pub const _PATH_NSSWITCH_CONF: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/nsswitch.conf\0") }; +#[allow(unsafe_code)] +pub const _PATH_PROTOCOLS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/protocols\0") }; +#[allow(unsafe_code)] +pub const _PATH_SERVICES: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/services\0") }; +pub const HOST_NOT_FOUND: u32 = 1; +pub const TRY_AGAIN: u32 = 2; +pub const NO_RECOVERY: u32 = 3; +pub const NO_DATA: u32 = 4; +pub const NETDB_INTERNAL: i32 = -1; +pub const NETDB_SUCCESS: u32 = 0; +pub const NO_ADDRESS: u32 = 4; +pub const AI_PASSIVE: u32 = 1; +pub const AI_CANONNAME: u32 = 2; +pub const AI_NUMERICHOST: u32 = 4; +pub const AI_V4MAPPED: u32 = 8; +pub const AI_ALL: u32 = 16; +pub const AI_ADDRCONFIG: u32 = 32; +pub const AI_NUMERICSERV: u32 = 1024; +pub const EAI_BADFLAGS: i32 = -1; +pub const EAI_NONAME: i32 = -2; +pub const EAI_AGAIN: i32 = -3; +pub const EAI_FAIL: i32 = -4; +pub const EAI_FAMILY: i32 = -6; +pub const EAI_SOCKTYPE: i32 = -7; +pub const EAI_SERVICE: i32 = -8; +pub const EAI_MEMORY: i32 = -10; +pub const EAI_SYSTEM: i32 = -11; +pub const EAI_OVERFLOW: i32 = -12; +pub const NI_MAXHOST: u32 = 1025; +pub const NI_MAXSERV: u32 = 32; +pub const NI_NUMERICHOST: u32 = 1; +pub const NI_NUMERICSERV: u32 = 2; +pub const NI_NOFQDN: u32 = 4; +pub const NI_NAMEREQD: u32 = 8; +pub const NI_DGRAM: u32 = 16; +pub const PqMsg_Bind: u8 = 66u8; +pub const PqMsg_Close: u8 = 67u8; +pub const PqMsg_Describe: u8 = 68u8; +pub const PqMsg_Execute: u8 = 69u8; +pub const PqMsg_FunctionCall: u8 = 70u8; +pub const PqMsg_Flush: u8 = 72u8; +pub const PqMsg_Parse: u8 = 80u8; +pub const PqMsg_Query: u8 = 81u8; +pub const PqMsg_Sync: u8 = 83u8; +pub const PqMsg_Terminate: u8 = 88u8; +pub const PqMsg_CopyFail: u8 = 102u8; +pub const PqMsg_GSSResponse: u8 = 112u8; +pub const PqMsg_PasswordMessage: u8 = 112u8; +pub const PqMsg_SASLInitialResponse: u8 = 112u8; +pub const PqMsg_SASLResponse: u8 = 112u8; +pub const PqMsg_ParseComplete: u8 = 49u8; +pub const PqMsg_BindComplete: u8 = 50u8; +pub const PqMsg_CloseComplete: u8 = 51u8; +pub const PqMsg_NotificationResponse: u8 = 65u8; +pub const PqMsg_CommandComplete: u8 = 67u8; +pub const PqMsg_DataRow: u8 = 68u8; +pub const PqMsg_ErrorResponse: u8 = 69u8; +pub const PqMsg_CopyInResponse: u8 = 71u8; +pub const PqMsg_CopyOutResponse: u8 = 72u8; +pub const PqMsg_EmptyQueryResponse: u8 = 73u8; +pub const PqMsg_BackendKeyData: u8 = 75u8; +pub const PqMsg_NoticeResponse: u8 = 78u8; +pub const PqMsg_AuthenticationRequest: u8 = 82u8; +pub const PqMsg_ParameterStatus: u8 = 83u8; +pub const PqMsg_RowDescription: u8 = 84u8; +pub const PqMsg_FunctionCallResponse: u8 = 86u8; +pub const PqMsg_CopyBothResponse: u8 = 87u8; +pub const PqMsg_ReadyForQuery: u8 = 90u8; +pub const PqMsg_NoData: u8 = 110u8; +pub const PqMsg_PortalSuspended: u8 = 115u8; +pub const PqMsg_ParameterDescription: u8 = 116u8; +pub const PqMsg_NegotiateProtocolVersion: u8 = 118u8; +pub const PqMsg_CopyDone: u8 = 99u8; +pub const PqMsg_CopyData: u8 = 100u8; +pub const PqMsg_Progress: u8 = 80u8; +pub const AUTH_REQ_OK: u32 = 0; +pub const AUTH_REQ_KRB4: u32 = 1; +pub const AUTH_REQ_KRB5: u32 = 2; +pub const AUTH_REQ_PASSWORD: u32 = 3; +pub const AUTH_REQ_CRYPT: u32 = 4; +pub const AUTH_REQ_MD5: u32 = 5; +pub const AUTH_REQ_GSS: u32 = 7; +pub const AUTH_REQ_GSS_CONT: u32 = 8; +pub const AUTH_REQ_SSPI: u32 = 9; +pub const AUTH_REQ_SASL: u32 = 10; +pub const AUTH_REQ_SASL_CONT: u32 = 11; +pub const AUTH_REQ_SASL_FIN: u32 = 12; +pub const AUTH_REQ_MAX: u32 = 12; +pub const MAX_STARTUP_PACKET_LENGTH: u32 = 10000; +#[allow(unsafe_code)] +pub const PG_ALPN_PROTOCOL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgresql\0") }; +pub const PG_WAIT_LWLOCK: u32 = 16777216; +pub const PG_WAIT_LOCK: u32 = 50331648; +pub const PG_WAIT_BUFFERPIN: u32 = 67108864; +pub const PG_WAIT_ACTIVITY: u32 = 83886080; +pub const PG_WAIT_CLIENT: u32 = 100663296; +pub const PG_WAIT_EXTENSION: u32 = 117440512; +pub const PG_WAIT_IPC: u32 = 134217728; +pub const PG_WAIT_TIMEOUT: u32 = 150994944; +pub const PG_WAIT_IO: u32 = 167772160; +pub const PG_WAIT_INJECTIONPOINT: u32 = 184549376; +#[allow(unsafe_code)] +pub const PGSTAT_STAT_PERMANENT_DIRECTORY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat\0") }; +#[allow(unsafe_code)] +pub const PGSTAT_STAT_PERMANENT_FILENAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat/pgstat.stat\0") }; +#[allow(unsafe_code)] +pub const PGSTAT_STAT_PERMANENT_TMPFILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat/pgstat.tmp\0") }; +#[allow(unsafe_code)] +pub const PG_STAT_TMP_DIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat_tmp\0") }; +pub const PGSTAT_FILE_FORMAT_ID: u32 = 27638956; +pub const CHECKPOINT_IS_SHUTDOWN: u32 = 1; +pub const CHECKPOINT_END_OF_RECOVERY: u32 = 2; +pub const CHECKPOINT_IMMEDIATE: u32 = 4; +pub const CHECKPOINT_FORCE: u32 = 8; +pub const CHECKPOINT_FLUSH_ALL: u32 = 16; +pub const CHECKPOINT_WAIT: u32 = 32; +pub const CHECKPOINT_REQUESTED: u32 = 64; +pub const CHECKPOINT_CAUSE_XLOG: u32 = 128; +pub const CHECKPOINT_CAUSE_TIME: u32 = 256; +pub const XLOG_INCLUDE_ORIGIN: u32 = 1; +pub const XLOG_MARK_UNIMPORTANT: u32 = 2; +#[allow(unsafe_code)] +pub const RECOVERY_SIGNAL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"recovery.signal\0") }; +#[allow(unsafe_code)] +pub const STANDBY_SIGNAL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"standby.signal\0") }; +#[allow(unsafe_code)] +pub const BACKUP_LABEL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"backup_label\0") }; +#[allow(unsafe_code)] +pub const BACKUP_LABEL_OLD: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"backup_label.old\0") }; +#[allow(unsafe_code)] +pub const TABLESPACE_MAP: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"tablespace_map\0") }; +#[allow(unsafe_code)] +pub const TABLESPACE_MAP_OLD: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"tablespace_map.old\0") }; +#[allow(unsafe_code)] +pub const PROMOTE_SIGNAL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"promote\0") }; +pub const RM_MAX_ID: u32 = 255; +pub const RM_MIN_CUSTOM_ID: u32 = 128; +pub const RM_MAX_CUSTOM_ID: u32 = 255; +pub const RM_N_IDS: u32 = 256; +pub const RM_N_CUSTOM_IDS: u32 = 128; +pub const RM_EXPERIMENTAL_ID: u32 = 128; +pub const XLR_INFO_MASK: u32 = 15; +pub const XLR_RMGR_INFO_MASK: u32 = 240; +pub const XLogRecordMaxSize: u32 = 1069547520; +pub const XLR_SPECIAL_REL_UPDATE: u32 = 1; +pub const XLR_CHECK_CONSISTENCY: u32 = 2; +pub const BKPIMAGE_HAS_HOLE: u32 = 1; +pub const BKPIMAGE_APPLY: u32 = 2; +pub const BKPIMAGE_COMPRESS_PGLZ: u32 = 4; +pub const BKPIMAGE_COMPRESS_LZ4: u32 = 8; +pub const BKPIMAGE_COMPRESS_ZSTD: u32 = 16; +pub const BKPBLOCK_FORK_MASK: u32 = 15; +pub const BKPBLOCK_FLAG_MASK: u32 = 240; +pub const BKPBLOCK_HAS_IMAGE: u32 = 16; +pub const BKPBLOCK_HAS_DATA: u32 = 32; +pub const BKPBLOCK_WILL_INIT: u32 = 64; +pub const BKPBLOCK_SAME_REL: u32 = 128; +pub const XLR_MAX_BLOCK_ID: u32 = 32; +pub const XLR_BLOCK_ID_DATA_SHORT: u32 = 255; +pub const XLR_BLOCK_ID_DATA_LONG: u32 = 254; +pub const XLR_BLOCK_ID_ORIGIN: u32 = 253; +pub const XLR_BLOCK_ID_TOPLEVEL_XID: u32 = 252; +pub const XLR_NORMAL_MAX_BLOCK_ID: u32 = 4; +pub const XLR_NORMAL_RDATAS: u32 = 20; +pub const REGBUF_FORCE_IMAGE: u32 = 1; +pub const REGBUF_NO_IMAGE: u32 = 2; +pub const REGBUF_WILL_INIT: u32 = 6; +pub const REGBUF_STANDARD: u32 = 8; +pub const REGBUF_KEEP_DATA: u32 = 16; +pub const REGBUF_NO_CHANGE: u32 = 32; +pub const RelationRelationId: u32 = 1259; +pub const RelationRelation_Rowtype_Id: u32 = 83; +pub const ClassOidIndexId: u32 = 2662; +pub const ClassNameNspIndexId: u32 = 2663; +pub const ClassTblspcRelfilenodeIndexId: u32 = 3455; +pub const Anum_pg_class_oid: u32 = 1; +pub const Anum_pg_class_relname: u32 = 2; +pub const Anum_pg_class_relnamespace: u32 = 3; +pub const Anum_pg_class_reltype: u32 = 4; +pub const Anum_pg_class_reloftype: u32 = 5; +pub const Anum_pg_class_relowner: u32 = 6; +pub const Anum_pg_class_relam: u32 = 7; +pub const Anum_pg_class_relfilenode: u32 = 8; +pub const Anum_pg_class_reltablespace: u32 = 9; +pub const Anum_pg_class_relpages: u32 = 10; +pub const Anum_pg_class_reltuples: u32 = 11; +pub const Anum_pg_class_relallvisible: u32 = 12; +pub const Anum_pg_class_reltoastrelid: u32 = 13; +pub const Anum_pg_class_relhasindex: u32 = 14; +pub const Anum_pg_class_relisshared: u32 = 15; +pub const Anum_pg_class_relpersistence: u32 = 16; +pub const Anum_pg_class_relkind: u32 = 17; +pub const Anum_pg_class_relnatts: u32 = 18; +pub const Anum_pg_class_relchecks: u32 = 19; +pub const Anum_pg_class_relhasrules: u32 = 20; +pub const Anum_pg_class_relhastriggers: u32 = 21; +pub const Anum_pg_class_relhassubclass: u32 = 22; +pub const Anum_pg_class_relrowsecurity: u32 = 23; +pub const Anum_pg_class_relforcerowsecurity: u32 = 24; +pub const Anum_pg_class_relispopulated: u32 = 25; +pub const Anum_pg_class_relreplident: u32 = 26; +pub const Anum_pg_class_relispartition: u32 = 27; +pub const Anum_pg_class_relrewrite: u32 = 28; +pub const Anum_pg_class_relfrozenxid: u32 = 29; +pub const Anum_pg_class_relminmxid: u32 = 30; +pub const Anum_pg_class_relacl: u32 = 31; +pub const Anum_pg_class_reloptions: u32 = 32; +pub const Anum_pg_class_relpartbound: u32 = 33; +pub const Natts_pg_class: u32 = 33; +pub const RELKIND_RELATION: u8 = 114u8; +pub const RELKIND_INDEX: u8 = 105u8; +pub const RELKIND_SEQUENCE: u8 = 83u8; +pub const RELKIND_TOASTVALUE: u8 = 116u8; +pub const RELKIND_VIEW: u8 = 118u8; +pub const RELKIND_MATVIEW: u8 = 109u8; +pub const RELKIND_COMPOSITE_TYPE: u8 = 99u8; +pub const RELKIND_FOREIGN_TABLE: u8 = 102u8; +pub const RELKIND_PARTITIONED_TABLE: u8 = 112u8; +pub const RELKIND_PARTITIONED_INDEX: u8 = 73u8; +pub const RELPERSISTENCE_PERMANENT: u8 = 112u8; +pub const RELPERSISTENCE_UNLOGGED: u8 = 117u8; +pub const RELPERSISTENCE_TEMP: u8 = 116u8; +pub const REPLICA_IDENTITY_DEFAULT: u8 = 100u8; +pub const REPLICA_IDENTITY_NOTHING: u8 = 110u8; +pub const REPLICA_IDENTITY_FULL: u8 = 102u8; +pub const REPLICA_IDENTITY_INDEX: u8 = 105u8; +pub const IndexRelationId: u32 = 2610; +pub const IndexIndrelidIndexId: u32 = 2678; +pub const IndexRelidIndexId: u32 = 2679; +pub const Anum_pg_index_indexrelid: u32 = 1; +pub const Anum_pg_index_indrelid: u32 = 2; +pub const Anum_pg_index_indnatts: u32 = 3; +pub const Anum_pg_index_indnkeyatts: u32 = 4; +pub const Anum_pg_index_indisunique: u32 = 5; +pub const Anum_pg_index_indnullsnotdistinct: u32 = 6; +pub const Anum_pg_index_indisprimary: u32 = 7; +pub const Anum_pg_index_indisexclusion: u32 = 8; +pub const Anum_pg_index_indimmediate: u32 = 9; +pub const Anum_pg_index_indisclustered: u32 = 10; +pub const Anum_pg_index_indisvalid: u32 = 11; +pub const Anum_pg_index_indcheckxmin: u32 = 12; +pub const Anum_pg_index_indisready: u32 = 13; +pub const Anum_pg_index_indislive: u32 = 14; +pub const Anum_pg_index_indisreplident: u32 = 15; +pub const Anum_pg_index_indkey: u32 = 16; +pub const Anum_pg_index_indcollation: u32 = 17; +pub const Anum_pg_index_indclass: u32 = 18; +pub const Anum_pg_index_indoption: u32 = 19; +pub const Anum_pg_index_indexprs: u32 = 20; +pub const Anum_pg_index_indpred: u32 = 21; +pub const Natts_pg_index: u32 = 21; +pub const INDOPTION_DESC: u32 = 1; +pub const INDOPTION_NULLS_FIRST: u32 = 2; +pub const PublicationRelationId: u32 = 6104; +pub const PublicationObjectIndexId: u32 = 6110; +pub const PublicationNameIndexId: u32 = 6111; +pub const Anum_pg_publication_oid: u32 = 1; +pub const Anum_pg_publication_pubname: u32 = 2; +pub const Anum_pg_publication_pubowner: u32 = 3; +pub const Anum_pg_publication_puballtables: u32 = 4; +pub const Anum_pg_publication_pubinsert: u32 = 5; +pub const Anum_pg_publication_pubupdate: u32 = 6; +pub const Anum_pg_publication_pubdelete: u32 = 7; +pub const Anum_pg_publication_pubtruncate: u32 = 8; +pub const Anum_pg_publication_pubviaroot: u32 = 9; +pub const Natts_pg_publication: u32 = 9; +pub const HEAP_MIN_FILLFACTOR: u32 = 10; +pub const HEAP_DEFAULT_FILLFACTOR: u32 = 100; +pub const MAX_GENERIC_XLOG_PAGES: u32 = 4; +pub const GENERIC_XLOG_FULL_IMAGE: u32 = 1; +pub const GIN_COMPARE_PROC: u32 = 1; +pub const GIN_EXTRACTVALUE_PROC: u32 = 2; +pub const GIN_EXTRACTQUERY_PROC: u32 = 3; +pub const GIN_CONSISTENT_PROC: u32 = 4; +pub const GIN_COMPARE_PARTIAL_PROC: u32 = 5; +pub const GIN_TRICONSISTENT_PROC: u32 = 6; +pub const GIN_OPTIONS_PROC: u32 = 7; +pub const GINNProcs: u32 = 7; +pub const GIN_SEARCH_MODE_DEFAULT: u32 = 0; +pub const GIN_SEARCH_MODE_INCLUDE_EMPTY: u32 = 1; +pub const GIN_SEARCH_MODE_ALL: u32 = 2; +pub const GIN_SEARCH_MODE_EVERYTHING: u32 = 3; +pub const GIN_FALSE: u32 = 0; +pub const GIN_TRUE: u32 = 1; +pub const GIN_MAYBE: u32 = 2; +pub const GIST_CONSISTENT_PROC: u32 = 1; +pub const GIST_UNION_PROC: u32 = 2; +pub const GIST_COMPRESS_PROC: u32 = 3; +pub const GIST_DECOMPRESS_PROC: u32 = 4; +pub const GIST_PENALTY_PROC: u32 = 5; +pub const GIST_PICKSPLIT_PROC: u32 = 6; +pub const GIST_EQUAL_PROC: u32 = 7; +pub const GIST_DISTANCE_PROC: u32 = 8; +pub const GIST_FETCH_PROC: u32 = 9; +pub const GIST_OPTIONS_PROC: u32 = 10; +pub const GIST_SORTSUPPORT_PROC: u32 = 11; +pub const GISTNProcs: u32 = 11; +pub const F_LEAF: u32 = 1; +pub const F_DELETED: u32 = 2; +pub const F_TUPLES_DELETED: u32 = 4; +pub const F_FOLLOW_RIGHT: u32 = 8; +pub const F_HAS_GARBAGE: u32 = 16; +pub const GIST_PAGE_ID: u32 = 65409; +pub const SHAREDINVALCATALOG_ID: i32 = -1; +pub const SHAREDINVALRELCACHE_ID: i32 = -2; +pub const SHAREDINVALSMGR_ID: i32 = -3; +pub const SHAREDINVALRELMAP_ID: i32 = -4; +pub const SHAREDINVALSNAPSHOT_ID: i32 = -5; +pub const GIDSIZE: u32 = 200; +pub const XACT_READ_UNCOMMITTED: u32 = 0; +pub const XACT_READ_COMMITTED: u32 = 1; +pub const XACT_REPEATABLE_READ: u32 = 2; +pub const XACT_SERIALIZABLE: u32 = 3; +pub const XACT_FLAGS_ACCESSEDTEMPNAMESPACE: u32 = 1; +pub const XACT_FLAGS_ACQUIREDACCESSEXCLUSIVELOCK: u32 = 2; +pub const XACT_FLAGS_NEEDIMMEDIATECOMMIT: u32 = 4; +pub const XACT_FLAGS_PIPELINING: u32 = 8; +pub const XLOG_XACT_COMMIT: u32 = 0; +pub const XLOG_XACT_PREPARE: u32 = 16; +pub const XLOG_XACT_ABORT: u32 = 32; +pub const XLOG_XACT_COMMIT_PREPARED: u32 = 48; +pub const XLOG_XACT_ABORT_PREPARED: u32 = 64; +pub const XLOG_XACT_ASSIGNMENT: u32 = 80; +pub const XLOG_XACT_INVALIDATIONS: u32 = 96; +pub const XLOG_XACT_OPMASK: u32 = 112; +pub const XLOG_XACT_HAS_INFO: u32 = 128; +pub const XACT_XINFO_HAS_DBINFO: u32 = 1; +pub const XACT_XINFO_HAS_SUBXACTS: u32 = 2; +pub const XACT_XINFO_HAS_RELFILELOCATORS: u32 = 4; +pub const XACT_XINFO_HAS_INVALS: u32 = 8; +pub const XACT_XINFO_HAS_TWOPHASE: u32 = 16; +pub const XACT_XINFO_HAS_ORIGIN: u32 = 32; +pub const XACT_XINFO_HAS_AE_LOCKS: u32 = 64; +pub const XACT_XINFO_HAS_GID: u32 = 128; +pub const XACT_XINFO_HAS_DROPPED_STATS: u32 = 256; +pub const XACT_COMPLETION_APPLY_FEEDBACK: u32 = 536870912; +pub const XACT_COMPLETION_UPDATE_RELCACHE_FILE: u32 = 1073741824; +pub const XACT_COMPLETION_FORCE_SYNC_COMMIT: u32 = 2147483648; +pub const RELEASE_PRIO_BUFFER_IOS: u32 = 100; +pub const RELEASE_PRIO_BUFFER_PINS: u32 = 200; +pub const RELEASE_PRIO_RELCACHE_REFS: u32 = 300; +pub const RELEASE_PRIO_DSMS: u32 = 400; +pub const RELEASE_PRIO_JIT_CONTEXTS: u32 = 500; +pub const RELEASE_PRIO_CRYPTOHASH_CONTEXTS: u32 = 600; +pub const RELEASE_PRIO_HMAC_CONTEXTS: u32 = 700; +pub const RELEASE_PRIO_CATCACHE_REFS: u32 = 100; +pub const RELEASE_PRIO_CATCACHE_LIST_REFS: u32 = 200; +pub const RELEASE_PRIO_PLANCACHE_REFS: u32 = 300; +pub const RELEASE_PRIO_TUPDESC_REFS: u32 = 400; +pub const RELEASE_PRIO_SNAPSHOT_REFS: u32 = 500; +pub const RELEASE_PRIO_FILES: u32 = 600; +pub const RELEASE_PRIO_WAITEVENTSETS: u32 = 700; +pub const RELEASE_PRIO_FIRST: u32 = 1; +pub const RELEASE_PRIO_LAST: u32 = 4294967295; +pub const READ_BUFFERS_ZERO_ON_ERROR: u32 = 1; +pub const READ_BUFFERS_ISSUE_ADVICE: u32 = 2; +pub const DEFAULT_EFFECTIVE_IO_CONCURRENCY: u32 = 1; +pub const DEFAULT_MAINTENANCE_IO_CONCURRENCY: u32 = 10; +pub const MAX_IO_CONCURRENCY: u32 = 1000; +pub const BUFFER_LOCK_UNLOCK: u32 = 0; +pub const BUFFER_LOCK_SHARE: u32 = 1; +pub const BUFFER_LOCK_EXCLUSIVE: u32 = 2; +pub const READ_STREAM_DEFAULT: u32 = 0; +pub const READ_STREAM_MAINTENANCE: u32 = 1; +pub const READ_STREAM_SEQUENTIAL: u32 = 2; +pub const READ_STREAM_FULL: u32 = 4; +#[allow(unsafe_code)] +pub const DEFAULT_TABLE_ACCESS_METHOD: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"heap\0") }; +pub const TABLE_INSERT_SKIP_FSM: u32 = 2; +pub const TABLE_INSERT_FROZEN: u32 = 4; +pub const TABLE_INSERT_NO_LOGICAL: u32 = 8; +pub const TUPLE_LOCK_FLAG_LOCK_UPDATE_IN_PROGRESS: u32 = 1; +pub const TUPLE_LOCK_FLAG_FIND_LAST_VERSION: u32 = 2; +pub const SHMEM_INDEX_KEYSIZE: u32 = 48; +pub const SHMEM_INDEX_SIZE: u32 = 64; +pub const HEAP_INSERT_SKIP_FSM: u32 = 2; +pub const HEAP_INSERT_FROZEN: u32 = 4; +pub const HEAP_INSERT_NO_LOGICAL: u32 = 8; +pub const HEAP_INSERT_SPECULATIVE: u32 = 16; +pub const HEAP_PAGE_PRUNE_MARK_UNUSED_NOW: u32 = 1; +pub const HEAP_PAGE_PRUNE_FREEZE: u32 = 2; +pub const HEAP_FREEZE_CHECK_XMIN_COMMITTED: u32 = 1; +pub const HEAP_FREEZE_CHECK_XMAX_ABORTED: u32 = 2; +pub const XLOG_MULTIXACT_ZERO_OFF_PAGE: u32 = 0; +pub const XLOG_MULTIXACT_ZERO_MEM_PAGE: u32 = 16; +pub const XLOG_MULTIXACT_CREATE_ID: u32 = 32; +pub const XLOG_MULTIXACT_TRUNCATE_ID: u32 = 48; +pub const NUM_INDIVIDUAL_LWLOCKS: u32 = 53; +pub const LWLOCK_PADDED_SIZE: u32 = 128; +pub const NUM_BUFFER_PARTITIONS: u32 = 128; +pub const LOG2_NUM_LOCK_PARTITIONS: u32 = 4; +pub const NUM_LOCK_PARTITIONS: u32 = 16; +pub const LOG2_NUM_PREDICATELOCK_PARTITIONS: u32 = 4; +pub const NUM_PREDICATELOCK_PARTITIONS: u32 = 16; +pub const BUFFER_MAPPING_LWLOCK_OFFSET: u32 = 53; +pub const LOCK_MANAGER_LWLOCK_OFFSET: u32 = 181; +pub const PREDICATELOCK_MANAGER_LWLOCK_OFFSET: u32 = 197; +pub const NUM_FIXED_LWLOCKS: u32 = 213; +pub const INTERVAL_FULL_RANGE: u32 = 32767; +pub const INTERVAL_RANGE_MASK: u32 = 32767; +pub const INTERVAL_FULL_PRECISION: u32 = 65535; +pub const INTERVAL_PRECISION_MASK: u32 = 65535; +pub const InvalidLocalTransactionId: u32 = 0; +pub const MAX_LOCKMODES: u32 = 10; +pub const DEFAULT_LOCKMETHOD: u32 = 1; +pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; +pub const VISIBILITYMAP_XLOG_CATALOG_REL: u32 = 4; +pub const VISIBILITYMAP_XLOG_VALID_BITS: u32 = 7; +pub const XLOG_PAGE_MAGIC: u32 = 53526; +pub const XLP_FIRST_IS_CONTRECORD: u32 = 1; +pub const XLP_LONG_HEADER: u32 = 2; +pub const XLP_BKP_REMOVABLE: u32 = 4; +pub const XLP_FIRST_IS_OVERWRITE_CONTRECORD: u32 = 8; +pub const XLP_ALL_FLAGS: u32 = 15; +pub const WalSegMinSize: u32 = 1048576; +pub const WalSegMaxSize: u32 = 1073741824; +pub const DEFAULT_MIN_WAL_SEGS: u32 = 5; +pub const DEFAULT_MAX_WAL_SEGS: u32 = 64; +#[allow(unsafe_code)] +pub const XLOGDIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_wal\0") }; +#[allow(unsafe_code)] +pub const XLOG_CONTROL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"global/pg_control\0") }; +pub const MAXFNAMELEN: u32 = 64; +pub const XLOG_FNAME_LEN: u32 = 24; +pub const PG_CONTROL_VERSION: u32 = 1700; +pub const MOCK_AUTH_NONCE_LEN: u32 = 32; +pub const XLOG_CHECKPOINT_SHUTDOWN: u32 = 0; +pub const XLOG_CHECKPOINT_ONLINE: u32 = 16; +pub const XLOG_NOOP: u32 = 32; +pub const XLOG_NEXTOID: u32 = 48; +pub const XLOG_SWITCH: u32 = 64; +pub const XLOG_BACKUP_END: u32 = 80; +pub const XLOG_PARAMETER_CHANGE: u32 = 96; +pub const XLOG_RESTORE_POINT: u32 = 112; +pub const XLOG_FPW_CHANGE: u32 = 128; +pub const XLOG_END_OF_RECOVERY: u32 = 144; +pub const XLOG_FPI_FOR_HINT: u32 = 160; +pub const XLOG_FPI: u32 = 176; +pub const XLOG_OVERWRITE_CONTRECORD: u32 = 208; +pub const XLOG_CHECKPOINT_REDO: u32 = 224; +pub const FLOATFORMAT_VALUE: f64 = 1234567.0; +pub const PG_CONTROL_MAX_SAFE_SIZE: u32 = 512; +pub const PG_CONTROL_FILE_SIZE: u32 = 8192; +pub const PERFORM_DELETION_INTERNAL: u32 = 1; +pub const PERFORM_DELETION_CONCURRENTLY: u32 = 2; +pub const PERFORM_DELETION_QUIETLY: u32 = 4; +pub const PERFORM_DELETION_SKIP_ORIGINAL: u32 = 8; +pub const PERFORM_DELETION_SKIP_EXTENSIONS: u32 = 16; +pub const PERFORM_DELETION_CONCURRENT_LOCK: u32 = 32; +#[allow(unsafe_code)] +pub const DEFAULT_INDEX_TYPE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"btree\0") }; +pub const REINDEXOPT_VERBOSE: u32 = 1; +pub const REINDEXOPT_REPORT_PROGRESS: u32 = 2; +pub const REINDEXOPT_MISSING_OK: u32 = 4; +pub const REINDEXOPT_CONCURRENTLY: u32 = 8; +pub const INDEX_CREATE_IS_PRIMARY: u32 = 1; +pub const INDEX_CREATE_ADD_CONSTRAINT: u32 = 2; +pub const INDEX_CREATE_SKIP_BUILD: u32 = 4; +pub const INDEX_CREATE_CONCURRENT: u32 = 8; +pub const INDEX_CREATE_IF_NOT_EXISTS: u32 = 16; +pub const INDEX_CREATE_PARTITIONED: u32 = 32; +pub const INDEX_CREATE_INVALID: u32 = 64; +pub const INDEX_CONSTR_CREATE_MARK_AS_PRIMARY: u32 = 1; +pub const INDEX_CONSTR_CREATE_DEFERRABLE: u32 = 2; +pub const INDEX_CONSTR_CREATE_INIT_DEFERRED: u32 = 4; +pub const INDEX_CONSTR_CREATE_UPDATE_INDEX: u32 = 8; +pub const INDEX_CONSTR_CREATE_REMOVE_OLD_DEPS: u32 = 16; +pub const REINDEX_REL_PROCESS_TOAST: u32 = 1; +pub const REINDEX_REL_SUPPRESS_INDEX_USE: u32 = 2; +pub const REINDEX_REL_CHECK_CONSTRAINTS: u32 = 4; +pub const REINDEX_REL_FORCE_INDEXES_UNLOGGED: u32 = 8; +pub const REINDEX_REL_FORCE_INDEXES_PERMANENT: u32 = 16; +pub const MAX_CATALOG_MULTI_INSERT_BYTES: u32 = 65535; +pub const AccessMethodRelationId: u32 = 2601; +pub const AmNameIndexId: u32 = 2651; +pub const AmOidIndexId: u32 = 2652; +pub const Anum_pg_am_oid: u32 = 1; +pub const Anum_pg_am_amname: u32 = 2; +pub const Anum_pg_am_amhandler: u32 = 3; +pub const Anum_pg_am_amtype: u32 = 4; +pub const Natts_pg_am: u32 = 4; +pub const AMTYPE_INDEX: u8 = 105u8; +pub const AMTYPE_TABLE: u8 = 116u8; +pub const HEAP_TABLE_AM_OID: u32 = 2; +pub const BTREE_AM_OID: u32 = 403; +pub const HASH_AM_OID: u32 = 405; +pub const GIST_AM_OID: u32 = 783; +pub const GIN_AM_OID: u32 = 2742; +pub const SPGIST_AM_OID: u32 = 4000; +pub const BRIN_AM_OID: u32 = 3580; +pub const AccessMethodOperatorRelationId: u32 = 2602; +pub const AccessMethodStrategyIndexId: u32 = 2653; +pub const AccessMethodOperatorIndexId: u32 = 2654; +pub const AccessMethodOperatorOidIndexId: u32 = 2756; +pub const Anum_pg_amop_oid: u32 = 1; +pub const Anum_pg_amop_amopfamily: u32 = 2; +pub const Anum_pg_amop_amoplefttype: u32 = 3; +pub const Anum_pg_amop_amoprighttype: u32 = 4; +pub const Anum_pg_amop_amopstrategy: u32 = 5; +pub const Anum_pg_amop_amoppurpose: u32 = 6; +pub const Anum_pg_amop_amopopr: u32 = 7; +pub const Anum_pg_amop_amopmethod: u32 = 8; +pub const Anum_pg_amop_amopsortfamily: u32 = 9; +pub const Natts_pg_amop: u32 = 9; +pub const AMOP_SEARCH: u8 = 115u8; +pub const AMOP_ORDER: u8 = 111u8; +pub const AccessMethodProcedureRelationId: u32 = 2603; +pub const AccessMethodProcedureIndexId: u32 = 2655; +pub const AccessMethodProcedureOidIndexId: u32 = 2757; +pub const Anum_pg_amproc_oid: u32 = 1; +pub const Anum_pg_amproc_amprocfamily: u32 = 2; +pub const Anum_pg_amproc_amproclefttype: u32 = 3; +pub const Anum_pg_amproc_amprocrighttype: u32 = 4; +pub const Anum_pg_amproc_amprocnum: u32 = 5; +pub const Anum_pg_amproc_amproc: u32 = 6; +pub const Natts_pg_amproc: u32 = 6; +pub const AuthIdRelationId: u32 = 1260; +pub const AuthIdRelation_Rowtype_Id: u32 = 2842; +pub const PgAuthidToastTable: u32 = 4175; +pub const PgAuthidToastIndex: u32 = 4176; +pub const AuthIdRolnameIndexId: u32 = 2676; +pub const AuthIdOidIndexId: u32 = 2677; +pub const Anum_pg_authid_oid: u32 = 1; +pub const Anum_pg_authid_rolname: u32 = 2; +pub const Anum_pg_authid_rolsuper: u32 = 3; +pub const Anum_pg_authid_rolinherit: u32 = 4; +pub const Anum_pg_authid_rolcreaterole: u32 = 5; +pub const Anum_pg_authid_rolcreatedb: u32 = 6; +pub const Anum_pg_authid_rolcanlogin: u32 = 7; +pub const Anum_pg_authid_rolreplication: u32 = 8; +pub const Anum_pg_authid_rolbypassrls: u32 = 9; +pub const Anum_pg_authid_rolconnlimit: u32 = 10; +pub const Anum_pg_authid_rolpassword: u32 = 11; +pub const Anum_pg_authid_rolvaliduntil: u32 = 12; +pub const Natts_pg_authid: u32 = 12; +pub const BOOTSTRAP_SUPERUSERID: u32 = 10; +pub const ROLE_PG_DATABASE_OWNER: u32 = 6171; +pub const ROLE_PG_READ_ALL_DATA: u32 = 6181; +pub const ROLE_PG_WRITE_ALL_DATA: u32 = 6182; +pub const ROLE_PG_MONITOR: u32 = 3373; +pub const ROLE_PG_READ_ALL_SETTINGS: u32 = 3374; +pub const ROLE_PG_READ_ALL_STATS: u32 = 3375; +pub const ROLE_PG_STAT_SCAN_TABLES: u32 = 3377; +pub const ROLE_PG_READ_SERVER_FILES: u32 = 4569; +pub const ROLE_PG_WRITE_SERVER_FILES: u32 = 4570; +pub const ROLE_PG_EXECUTE_SERVER_PROGRAM: u32 = 4571; +pub const ROLE_PG_SIGNAL_BACKEND: u32 = 4200; +pub const ROLE_PG_CHECKPOINT: u32 = 4544; +pub const ROLE_PG_MAINTAIN: u32 = 6337; +pub const ROLE_PG_USE_RESERVED_CONNECTIONS: u32 = 4550; +pub const ROLE_PG_CREATE_SUBSCRIPTION: u32 = 6304; +pub const CollationRelationId: u32 = 3456; +pub const CollationNameEncNspIndexId: u32 = 3164; +pub const CollationOidIndexId: u32 = 3085; +pub const Anum_pg_collation_oid: u32 = 1; +pub const Anum_pg_collation_collname: u32 = 2; +pub const Anum_pg_collation_collnamespace: u32 = 3; +pub const Anum_pg_collation_collowner: u32 = 4; +pub const Anum_pg_collation_collprovider: u32 = 5; +pub const Anum_pg_collation_collisdeterministic: u32 = 6; +pub const Anum_pg_collation_collencoding: u32 = 7; +pub const Anum_pg_collation_collcollate: u32 = 8; +pub const Anum_pg_collation_collctype: u32 = 9; +pub const Anum_pg_collation_colllocale: u32 = 10; +pub const Anum_pg_collation_collicurules: u32 = 11; +pub const Anum_pg_collation_collversion: u32 = 12; +pub const Natts_pg_collation: u32 = 12; +pub const COLLPROVIDER_DEFAULT: u8 = 100u8; +pub const COLLPROVIDER_BUILTIN: u8 = 98u8; +pub const COLLPROVIDER_ICU: u8 = 105u8; +pub const COLLPROVIDER_LIBC: u8 = 99u8; +pub const DEFAULT_COLLATION_OID: u32 = 100; +pub const C_COLLATION_OID: u32 = 950; +pub const POSIX_COLLATION_OID: u32 = 951; +pub const DatabaseRelationId: u32 = 1262; +pub const DatabaseRelation_Rowtype_Id: u32 = 1248; +pub const PgDatabaseToastTable: u32 = 4177; +pub const PgDatabaseToastIndex: u32 = 4178; +pub const DatabaseNameIndexId: u32 = 2671; +pub const DatabaseOidIndexId: u32 = 2672; +pub const Template0DbOid: u32 = 4; +pub const PostgresDbOid: u32 = 5; +pub const Anum_pg_database_oid: u32 = 1; +pub const Anum_pg_database_datname: u32 = 2; +pub const Anum_pg_database_datdba: u32 = 3; +pub const Anum_pg_database_encoding: u32 = 4; +pub const Anum_pg_database_datlocprovider: u32 = 5; +pub const Anum_pg_database_datistemplate: u32 = 6; +pub const Anum_pg_database_datallowconn: u32 = 7; +pub const Anum_pg_database_dathasloginevt: u32 = 8; +pub const Anum_pg_database_datconnlimit: u32 = 9; +pub const Anum_pg_database_datfrozenxid: u32 = 10; +pub const Anum_pg_database_datminmxid: u32 = 11; +pub const Anum_pg_database_dattablespace: u32 = 12; +pub const Anum_pg_database_datcollate: u32 = 13; +pub const Anum_pg_database_datctype: u32 = 14; +pub const Anum_pg_database_datlocale: u32 = 15; +pub const Anum_pg_database_daticurules: u32 = 16; +pub const Anum_pg_database_datcollversion: u32 = 17; +pub const Anum_pg_database_datacl: u32 = 18; +pub const Natts_pg_database: u32 = 18; +pub const Template1DbOid: u32 = 1; +pub const DATCONNLIMIT_UNLIMITED: i32 = -1; +pub const DATCONNLIMIT_INVALID_DB: i32 = -2; +pub const EnumRelationId: u32 = 3501; +pub const EnumOidIndexId: u32 = 3502; +pub const EnumTypIdLabelIndexId: u32 = 3503; +pub const EnumTypIdSortOrderIndexId: u32 = 3534; +pub const Anum_pg_enum_oid: u32 = 1; +pub const Anum_pg_enum_enumtypid: u32 = 2; +pub const Anum_pg_enum_enumsortorder: u32 = 3; +pub const Anum_pg_enum_enumlabel: u32 = 4; +pub const Natts_pg_enum: u32 = 4; +pub const ExtensionRelationId: u32 = 3079; +pub const ExtensionOidIndexId: u32 = 3080; +pub const ExtensionNameIndexId: u32 = 3081; +pub const Anum_pg_extension_oid: u32 = 1; +pub const Anum_pg_extension_extname: u32 = 2; +pub const Anum_pg_extension_extowner: u32 = 3; +pub const Anum_pg_extension_extnamespace: u32 = 4; +pub const Anum_pg_extension_extrelocatable: u32 = 5; +pub const Anum_pg_extension_extversion: u32 = 6; +pub const Anum_pg_extension_extconfig: u32 = 7; +pub const Anum_pg_extension_extcondition: u32 = 8; +pub const Natts_pg_extension: u32 = 8; +pub const ForeignDataWrapperRelationId: u32 = 2328; +pub const ForeignDataWrapperOidIndexId: u32 = 112; +pub const ForeignDataWrapperNameIndexId: u32 = 548; +pub const Anum_pg_foreign_data_wrapper_oid: u32 = 1; +pub const Anum_pg_foreign_data_wrapper_fdwname: u32 = 2; +pub const Anum_pg_foreign_data_wrapper_fdwowner: u32 = 3; +pub const Anum_pg_foreign_data_wrapper_fdwhandler: u32 = 4; +pub const Anum_pg_foreign_data_wrapper_fdwvalidator: u32 = 5; +pub const Anum_pg_foreign_data_wrapper_fdwacl: u32 = 6; +pub const Anum_pg_foreign_data_wrapper_fdwoptions: u32 = 7; +pub const Natts_pg_foreign_data_wrapper: u32 = 7; +pub const ForeignServerRelationId: u32 = 1417; +pub const ForeignServerOidIndexId: u32 = 113; +pub const ForeignServerNameIndexId: u32 = 549; +pub const Anum_pg_foreign_server_oid: u32 = 1; +pub const Anum_pg_foreign_server_srvname: u32 = 2; +pub const Anum_pg_foreign_server_srvowner: u32 = 3; +pub const Anum_pg_foreign_server_srvfdw: u32 = 4; +pub const Anum_pg_foreign_server_srvtype: u32 = 5; +pub const Anum_pg_foreign_server_srvversion: u32 = 6; +pub const Anum_pg_foreign_server_srvacl: u32 = 7; +pub const Anum_pg_foreign_server_srvoptions: u32 = 8; +pub const Natts_pg_foreign_server: u32 = 8; +pub const ForeignTableRelationId: u32 = 3118; +pub const ForeignTableRelidIndexId: u32 = 3119; +pub const Anum_pg_foreign_table_ftrelid: u32 = 1; +pub const Anum_pg_foreign_table_ftserver: u32 = 2; +pub const Anum_pg_foreign_table_ftoptions: u32 = 3; +pub const Natts_pg_foreign_table: u32 = 3; +pub const OperatorRelationId: u32 = 2617; +pub const OperatorOidIndexId: u32 = 2688; +pub const OperatorNameNspIndexId: u32 = 2689; +pub const Anum_pg_operator_oid: u32 = 1; +pub const Anum_pg_operator_oprname: u32 = 2; +pub const Anum_pg_operator_oprnamespace: u32 = 3; +pub const Anum_pg_operator_oprowner: u32 = 4; +pub const Anum_pg_operator_oprkind: u32 = 5; +pub const Anum_pg_operator_oprcanmerge: u32 = 6; +pub const Anum_pg_operator_oprcanhash: u32 = 7; +pub const Anum_pg_operator_oprleft: u32 = 8; +pub const Anum_pg_operator_oprright: u32 = 9; +pub const Anum_pg_operator_oprresult: u32 = 10; +pub const Anum_pg_operator_oprcom: u32 = 11; +pub const Anum_pg_operator_oprnegate: u32 = 12; +pub const Anum_pg_operator_oprcode: u32 = 13; +pub const Anum_pg_operator_oprrest: u32 = 14; +pub const Anum_pg_operator_oprjoin: u32 = 15; +pub const Natts_pg_operator: u32 = 15; +pub const BooleanNotEqualOperator: u32 = 85; +pub const BooleanEqualOperator: u32 = 91; +pub const Int4EqualOperator: u32 = 96; +pub const Int4LessOperator: u32 = 97; +pub const TextEqualOperator: u32 = 98; +pub const TextPrefixOperator: u32 = 3877; +pub const NameEqualTextOperator: u32 = 254; +pub const NameLessTextOperator: u32 = 255; +pub const NameGreaterEqualTextOperator: u32 = 257; +pub const TIDEqualOperator: u32 = 387; +pub const TIDLessOperator: u32 = 2799; +pub const TIDGreaterOperator: u32 = 2800; +pub const TIDLessEqOperator: u32 = 2801; +pub const TIDGreaterEqOperator: u32 = 2802; +pub const Int8LessOperator: u32 = 412; +pub const OID_NAME_REGEXEQ_OP: u32 = 639; +pub const OID_TEXT_REGEXEQ_OP: u32 = 641; +pub const TextLessOperator: u32 = 664; +pub const TextGreaterEqualOperator: u32 = 667; +pub const Float8LessOperator: u32 = 672; +pub const BpcharEqualOperator: u32 = 1054; +pub const OID_BPCHAR_REGEXEQ_OP: u32 = 1055; +pub const BpcharLessOperator: u32 = 1058; +pub const BpcharGreaterEqualOperator: u32 = 1061; +pub const ARRAY_EQ_OP: u32 = 1070; +pub const ARRAY_LT_OP: u32 = 1072; +pub const ARRAY_GT_OP: u32 = 1073; +pub const OID_NAME_LIKE_OP: u32 = 1207; +pub const OID_TEXT_LIKE_OP: u32 = 1209; +pub const OID_BPCHAR_LIKE_OP: u32 = 1211; +pub const OID_NAME_ICREGEXEQ_OP: u32 = 1226; +pub const OID_TEXT_ICREGEXEQ_OP: u32 = 1228; +pub const OID_BPCHAR_ICREGEXEQ_OP: u32 = 1234; +pub const OID_INET_SUB_OP: u32 = 931; +pub const OID_INET_SUBEQ_OP: u32 = 932; +pub const OID_INET_SUP_OP: u32 = 933; +pub const OID_INET_SUPEQ_OP: u32 = 934; +pub const OID_INET_OVERLAP_OP: u32 = 3552; +pub const OID_NAME_ICLIKE_OP: u32 = 1625; +pub const OID_TEXT_ICLIKE_OP: u32 = 1627; +pub const OID_BPCHAR_ICLIKE_OP: u32 = 1629; +pub const ByteaEqualOperator: u32 = 1955; +pub const ByteaLessOperator: u32 = 1957; +pub const ByteaGreaterEqualOperator: u32 = 1960; +pub const OID_BYTEA_LIKE_OP: u32 = 2016; +pub const TextPatternLessOperator: u32 = 2314; +pub const TextPatternGreaterEqualOperator: u32 = 2317; +pub const BpcharPatternLessOperator: u32 = 2326; +pub const BpcharPatternGreaterEqualOperator: u32 = 2329; +pub const OID_ARRAY_OVERLAP_OP: u32 = 2750; +pub const OID_ARRAY_CONTAINS_OP: u32 = 2751; +pub const OID_ARRAY_CONTAINED_OP: u32 = 2752; +pub const RECORD_EQ_OP: u32 = 2988; +pub const RECORD_LT_OP: u32 = 2990; +pub const RECORD_GT_OP: u32 = 2991; +pub const OID_RANGE_LESS_OP: u32 = 3884; +pub const OID_RANGE_LESS_EQUAL_OP: u32 = 3885; +pub const OID_RANGE_GREATER_EQUAL_OP: u32 = 3886; +pub const OID_RANGE_GREATER_OP: u32 = 3887; +pub const OID_RANGE_OVERLAP_OP: u32 = 3888; +pub const OID_RANGE_CONTAINS_ELEM_OP: u32 = 3889; +pub const OID_RANGE_CONTAINS_OP: u32 = 3890; +pub const OID_RANGE_ELEM_CONTAINED_OP: u32 = 3891; +pub const OID_RANGE_CONTAINED_OP: u32 = 3892; +pub const OID_RANGE_LEFT_OP: u32 = 3893; +pub const OID_RANGE_RIGHT_OP: u32 = 3894; +pub const OID_RANGE_OVERLAPS_LEFT_OP: u32 = 3895; +pub const OID_RANGE_OVERLAPS_RIGHT_OP: u32 = 3896; +pub const OID_MULTIRANGE_LESS_OP: u32 = 2862; +pub const OID_MULTIRANGE_LESS_EQUAL_OP: u32 = 2863; +pub const OID_MULTIRANGE_GREATER_EQUAL_OP: u32 = 2864; +pub const OID_MULTIRANGE_GREATER_OP: u32 = 2865; +pub const OID_RANGE_OVERLAPS_MULTIRANGE_OP: u32 = 2866; +pub const OID_MULTIRANGE_OVERLAPS_RANGE_OP: u32 = 2867; +pub const OID_MULTIRANGE_OVERLAPS_MULTIRANGE_OP: u32 = 2868; +pub const OID_MULTIRANGE_CONTAINS_ELEM_OP: u32 = 2869; +pub const OID_MULTIRANGE_CONTAINS_RANGE_OP: u32 = 2870; +pub const OID_MULTIRANGE_CONTAINS_MULTIRANGE_OP: u32 = 2871; +pub const OID_MULTIRANGE_ELEM_CONTAINED_OP: u32 = 2872; +pub const OID_MULTIRANGE_RANGE_CONTAINED_OP: u32 = 2873; +pub const OID_MULTIRANGE_MULTIRANGE_CONTAINED_OP: u32 = 2874; +pub const OID_RANGE_CONTAINS_MULTIRANGE_OP: u32 = 4539; +pub const OID_RANGE_MULTIRANGE_CONTAINED_OP: u32 = 4540; +pub const OID_RANGE_OVERLAPS_LEFT_MULTIRANGE_OP: u32 = 2875; +pub const OID_MULTIRANGE_OVERLAPS_LEFT_RANGE_OP: u32 = 2876; +pub const OID_MULTIRANGE_OVERLAPS_LEFT_MULTIRANGE_OP: u32 = 2877; +pub const OID_RANGE_OVERLAPS_RIGHT_MULTIRANGE_OP: u32 = 3585; +pub const OID_MULTIRANGE_OVERLAPS_RIGHT_RANGE_OP: u32 = 4035; +pub const OID_MULTIRANGE_OVERLAPS_RIGHT_MULTIRANGE_OP: u32 = 4142; +pub const OID_RANGE_ADJACENT_MULTIRANGE_OP: u32 = 4179; +pub const OID_MULTIRANGE_ADJACENT_RANGE_OP: u32 = 4180; +pub const OID_MULTIRANGE_ADJACENT_MULTIRANGE_OP: u32 = 4198; +pub const OID_RANGE_LEFT_MULTIRANGE_OP: u32 = 4395; +pub const OID_MULTIRANGE_LEFT_RANGE_OP: u32 = 4396; +pub const OID_MULTIRANGE_LEFT_MULTIRANGE_OP: u32 = 4397; +pub const OID_RANGE_RIGHT_MULTIRANGE_OP: u32 = 4398; +pub const OID_MULTIRANGE_RIGHT_RANGE_OP: u32 = 4399; +pub const OID_MULTIRANGE_RIGHT_MULTIRANGE_OP: u32 = 4400; +pub const OperatorClassRelationId: u32 = 2616; +pub const OpclassAmNameNspIndexId: u32 = 2686; +pub const OpclassOidIndexId: u32 = 2687; +pub const Anum_pg_opclass_oid: u32 = 1; +pub const Anum_pg_opclass_opcmethod: u32 = 2; +pub const Anum_pg_opclass_opcname: u32 = 3; +pub const Anum_pg_opclass_opcnamespace: u32 = 4; +pub const Anum_pg_opclass_opcowner: u32 = 5; +pub const Anum_pg_opclass_opcfamily: u32 = 6; +pub const Anum_pg_opclass_opcintype: u32 = 7; +pub const Anum_pg_opclass_opcdefault: u32 = 8; +pub const Anum_pg_opclass_opckeytype: u32 = 9; +pub const Natts_pg_opclass: u32 = 9; +pub const DATE_BTREE_OPS_OID: u32 = 3122; +pub const FLOAT8_BTREE_OPS_OID: u32 = 3123; +pub const INT2_BTREE_OPS_OID: u32 = 1979; +pub const INT4_BTREE_OPS_OID: u32 = 1978; +pub const INT8_BTREE_OPS_OID: u32 = 3124; +pub const NUMERIC_BTREE_OPS_OID: u32 = 3125; +pub const OID_BTREE_OPS_OID: u32 = 1981; +pub const TEXT_BTREE_OPS_OID: u32 = 3126; +pub const TIMESTAMPTZ_BTREE_OPS_OID: u32 = 3127; +pub const TIMESTAMP_BTREE_OPS_OID: u32 = 3128; +pub const TEXT_BTREE_PATTERN_OPS_OID: u32 = 4217; +pub const VARCHAR_BTREE_PATTERN_OPS_OID: u32 = 4218; +pub const BPCHAR_BTREE_PATTERN_OPS_OID: u32 = 4219; +pub const OperatorFamilyRelationId: u32 = 2753; +pub const OpfamilyAmNameNspIndexId: u32 = 2754; +pub const OpfamilyOidIndexId: u32 = 2755; +pub const Anum_pg_opfamily_oid: u32 = 1; +pub const Anum_pg_opfamily_opfmethod: u32 = 2; +pub const Anum_pg_opfamily_opfname: u32 = 3; +pub const Anum_pg_opfamily_opfnamespace: u32 = 4; +pub const Anum_pg_opfamily_opfowner: u32 = 5; +pub const Natts_pg_opfamily: u32 = 5; +pub const BOOL_BTREE_FAM_OID: u32 = 424; +pub const BPCHAR_BTREE_FAM_OID: u32 = 426; +pub const BYTEA_BTREE_FAM_OID: u32 = 428; +pub const NETWORK_BTREE_FAM_OID: u32 = 1974; +pub const INTEGER_BTREE_FAM_OID: u32 = 1976; +pub const INTERVAL_BTREE_FAM_OID: u32 = 1982; +pub const OID_BTREE_FAM_OID: u32 = 1989; +pub const TEXT_BTREE_FAM_OID: u32 = 1994; +pub const TEXT_PATTERN_BTREE_FAM_OID: u32 = 2095; +pub const BPCHAR_PATTERN_BTREE_FAM_OID: u32 = 2097; +pub const BOOL_HASH_FAM_OID: u32 = 2222; +pub const TEXT_SPGIST_FAM_OID: u32 = 4017; +pub const ProcedureRelationId: u32 = 1255; +pub const ProcedureRelation_Rowtype_Id: u32 = 81; +pub const ProcedureOidIndexId: u32 = 2690; +pub const ProcedureNameArgsNspIndexId: u32 = 2691; +pub const Anum_pg_proc_oid: u32 = 1; +pub const Anum_pg_proc_proname: u32 = 2; +pub const Anum_pg_proc_pronamespace: u32 = 3; +pub const Anum_pg_proc_proowner: u32 = 4; +pub const Anum_pg_proc_prolang: u32 = 5; +pub const Anum_pg_proc_procost: u32 = 6; +pub const Anum_pg_proc_prorows: u32 = 7; +pub const Anum_pg_proc_provariadic: u32 = 8; +pub const Anum_pg_proc_prosupport: u32 = 9; +pub const Anum_pg_proc_prokind: u32 = 10; +pub const Anum_pg_proc_prosecdef: u32 = 11; +pub const Anum_pg_proc_proleakproof: u32 = 12; +pub const Anum_pg_proc_proisstrict: u32 = 13; +pub const Anum_pg_proc_proretset: u32 = 14; +pub const Anum_pg_proc_provolatile: u32 = 15; +pub const Anum_pg_proc_proparallel: u32 = 16; +pub const Anum_pg_proc_pronargs: u32 = 17; +pub const Anum_pg_proc_pronargdefaults: u32 = 18; +pub const Anum_pg_proc_prorettype: u32 = 19; +pub const Anum_pg_proc_proargtypes: u32 = 20; +pub const Anum_pg_proc_proallargtypes: u32 = 21; +pub const Anum_pg_proc_proargmodes: u32 = 22; +pub const Anum_pg_proc_proargnames: u32 = 23; +pub const Anum_pg_proc_proargdefaults: u32 = 24; +pub const Anum_pg_proc_protrftypes: u32 = 25; +pub const Anum_pg_proc_prosrc: u32 = 26; +pub const Anum_pg_proc_probin: u32 = 27; +pub const Anum_pg_proc_prosqlbody: u32 = 28; +pub const Anum_pg_proc_proconfig: u32 = 29; +pub const Anum_pg_proc_proacl: u32 = 30; +pub const Natts_pg_proc: u32 = 30; +pub const PROKIND_FUNCTION: u8 = 102u8; +pub const PROKIND_AGGREGATE: u8 = 97u8; +pub const PROKIND_WINDOW: u8 = 119u8; +pub const PROKIND_PROCEDURE: u8 = 112u8; +pub const PROVOLATILE_IMMUTABLE: u8 = 105u8; +pub const PROVOLATILE_STABLE: u8 = 115u8; +pub const PROVOLATILE_VOLATILE: u8 = 118u8; +pub const PROPARALLEL_SAFE: u8 = 115u8; +pub const PROPARALLEL_RESTRICTED: u8 = 114u8; +pub const PROPARALLEL_UNSAFE: u8 = 117u8; +pub const PROARGMODE_IN: u8 = 105u8; +pub const PROARGMODE_OUT: u8 = 111u8; +pub const PROARGMODE_INOUT: u8 = 98u8; +pub const PROARGMODE_VARIADIC: u8 = 118u8; +pub const PROARGMODE_TABLE: u8 = 116u8; +pub const NamespaceRelationId: u32 = 2615; +pub const NamespaceNameIndexId: u32 = 2684; +pub const NamespaceOidIndexId: u32 = 2685; +pub const Anum_pg_namespace_oid: u32 = 1; +pub const Anum_pg_namespace_nspname: u32 = 2; +pub const Anum_pg_namespace_nspowner: u32 = 3; +pub const Anum_pg_namespace_nspacl: u32 = 4; +pub const Natts_pg_namespace: u32 = 4; +pub const PG_CATALOG_NAMESPACE: u32 = 11; +pub const PG_TOAST_NAMESPACE: u32 = 99; +pub const PG_PUBLIC_NAMESPACE: u32 = 2200; +pub const ACL_ID_PUBLIC: u32 = 0; +pub const ACL_MODECHG_ADD: u32 = 1; +pub const ACL_MODECHG_DEL: u32 = 2; +pub const ACL_MODECHG_EQL: u32 = 3; +pub const ACL_INSERT_CHR: u8 = 97u8; +pub const ACL_SELECT_CHR: u8 = 114u8; +pub const ACL_UPDATE_CHR: u8 = 119u8; +pub const ACL_DELETE_CHR: u8 = 100u8; +pub const ACL_TRUNCATE_CHR: u8 = 68u8; +pub const ACL_REFERENCES_CHR: u8 = 120u8; +pub const ACL_TRIGGER_CHR: u8 = 116u8; +pub const ACL_EXECUTE_CHR: u8 = 88u8; +pub const ACL_USAGE_CHR: u8 = 85u8; +pub const ACL_CREATE_CHR: u8 = 67u8; +pub const ACL_CREATE_TEMP_CHR: u8 = 84u8; +pub const ACL_CONNECT_CHR: u8 = 99u8; +pub const ACL_SET_CHR: u8 = 115u8; +pub const ACL_ALTER_SYSTEM_CHR: u8 = 65u8; +pub const ACL_MAINTAIN_CHR: u8 = 109u8; +#[allow(unsafe_code)] +pub const ACL_ALL_RIGHTS_STR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"arwdDxtXUCTcsAm\0") }; +pub const ACL_ALL_RIGHTS_COLUMN: u32 = 39; +pub const ACL_ALL_RIGHTS_RELATION: u32 = 16511; +pub const ACL_ALL_RIGHTS_SEQUENCE: u32 = 262; +pub const ACL_ALL_RIGHTS_DATABASE: u32 = 3584; +pub const ACL_ALL_RIGHTS_FDW: u32 = 256; +pub const ACL_ALL_RIGHTS_FOREIGN_SERVER: u32 = 256; +pub const ACL_ALL_RIGHTS_FUNCTION: u32 = 128; +pub const ACL_ALL_RIGHTS_LANGUAGE: u32 = 256; +pub const ACL_ALL_RIGHTS_LARGEOBJECT: u32 = 6; +pub const ACL_ALL_RIGHTS_PARAMETER_ACL: u32 = 12288; +pub const ACL_ALL_RIGHTS_SCHEMA: u32 = 768; +pub const ACL_ALL_RIGHTS_TABLESPACE: u32 = 512; +pub const ACL_ALL_RIGHTS_TYPE: u32 = 256; +pub const SecLabelRelationId: u32 = 3596; +pub const SecLabelObjectIndexId: u32 = 3597; +pub const Anum_pg_seclabel_objoid: u32 = 1; +pub const Anum_pg_seclabel_classoid: u32 = 2; +pub const Anum_pg_seclabel_objsubid: u32 = 3; +pub const Anum_pg_seclabel_provider: u32 = 4; +pub const Anum_pg_seclabel_label: u32 = 5; +pub const Natts_pg_seclabel: u32 = 5; +pub const TableSpaceRelationId: u32 = 1213; +pub const PgTablespaceToastTable: u32 = 4185; +pub const PgTablespaceToastIndex: u32 = 4186; +pub const TablespaceOidIndexId: u32 = 2697; +pub const TablespaceNameIndexId: u32 = 2698; +pub const Anum_pg_tablespace_oid: u32 = 1; +pub const Anum_pg_tablespace_spcname: u32 = 2; +pub const Anum_pg_tablespace_spcowner: u32 = 3; +pub const Anum_pg_tablespace_spcacl: u32 = 4; +pub const Anum_pg_tablespace_spcoptions: u32 = 5; +pub const Natts_pg_tablespace: u32 = 5; +pub const DEFAULTTABLESPACE_OID: u32 = 1663; +pub const GLOBALTABLESPACE_OID: u32 = 1664; +pub const TriggerRelationId: u32 = 2620; +pub const TriggerConstraintIndexId: u32 = 2699; +pub const TriggerRelidNameIndexId: u32 = 2701; +pub const TriggerOidIndexId: u32 = 2702; +pub const Anum_pg_trigger_oid: u32 = 1; +pub const Anum_pg_trigger_tgrelid: u32 = 2; +pub const Anum_pg_trigger_tgparentid: u32 = 3; +pub const Anum_pg_trigger_tgname: u32 = 4; +pub const Anum_pg_trigger_tgfoid: u32 = 5; +pub const Anum_pg_trigger_tgtype: u32 = 6; +pub const Anum_pg_trigger_tgenabled: u32 = 7; +pub const Anum_pg_trigger_tgisinternal: u32 = 8; +pub const Anum_pg_trigger_tgconstrrelid: u32 = 9; +pub const Anum_pg_trigger_tgconstrindid: u32 = 10; +pub const Anum_pg_trigger_tgconstraint: u32 = 11; +pub const Anum_pg_trigger_tgdeferrable: u32 = 12; +pub const Anum_pg_trigger_tginitdeferred: u32 = 13; +pub const Anum_pg_trigger_tgnargs: u32 = 14; +pub const Anum_pg_trigger_tgattr: u32 = 15; +pub const Anum_pg_trigger_tgargs: u32 = 16; +pub const Anum_pg_trigger_tgqual: u32 = 17; +pub const Anum_pg_trigger_tgoldtable: u32 = 18; +pub const Anum_pg_trigger_tgnewtable: u32 = 19; +pub const Natts_pg_trigger: u32 = 19; +pub const TRIGGER_TYPE_ROW: u32 = 1; +pub const TRIGGER_TYPE_BEFORE: u32 = 2; +pub const TRIGGER_TYPE_INSERT: u32 = 4; +pub const TRIGGER_TYPE_DELETE: u32 = 8; +pub const TRIGGER_TYPE_UPDATE: u32 = 16; +pub const TRIGGER_TYPE_TRUNCATE: u32 = 32; +pub const TRIGGER_TYPE_INSTEAD: u32 = 64; +pub const TRIGGER_TYPE_LEVEL_MASK: u32 = 1; +pub const TRIGGER_TYPE_STATEMENT: u32 = 0; +pub const TRIGGER_TYPE_TIMING_MASK: u32 = 66; +pub const TRIGGER_TYPE_AFTER: u32 = 0; +pub const TRIGGER_TYPE_EVENT_MASK: u32 = 60; +pub const UserMappingRelationId: u32 = 1418; +pub const UserMappingOidIndexId: u32 = 174; +pub const UserMappingUserServerIndexId: u32 = 175; +pub const Anum_pg_user_mapping_oid: u32 = 1; +pub const Anum_pg_user_mapping_umuser: u32 = 2; +pub const Anum_pg_user_mapping_umserver: u32 = 3; +pub const Anum_pg_user_mapping_umoptions: u32 = 4; +pub const Natts_pg_user_mapping: u32 = 4; +pub const EOH_HEADER_MAGIC: i32 = -1; +pub const MAXDIM: u32 = 6; +pub const EA_MAGIC: u32 = 689375833; +pub const EventTriggerRelationId: u32 = 3466; +pub const EventTriggerNameIndexId: u32 = 3467; +pub const EventTriggerOidIndexId: u32 = 3468; +pub const Anum_pg_event_trigger_oid: u32 = 1; +pub const Anum_pg_event_trigger_evtname: u32 = 2; +pub const Anum_pg_event_trigger_evtevent: u32 = 3; +pub const Anum_pg_event_trigger_evtowner: u32 = 4; +pub const Anum_pg_event_trigger_evtfoid: u32 = 5; +pub const Anum_pg_event_trigger_evtenabled: u32 = 6; +pub const Anum_pg_event_trigger_evttags: u32 = 7; +pub const Natts_pg_event_trigger: u32 = 7; +pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; +pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; +pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; +pub const AT_REWRITE_ACCESS_METHOD: u32 = 8; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; +pub const XLOG_TBLSPC_CREATE: u32 = 0; +pub const XLOG_TBLSPC_DROP: u32 = 16; +pub const TRIGGER_EVENT_INSERT: u32 = 0; +pub const TRIGGER_EVENT_DELETE: u32 = 1; +pub const TRIGGER_EVENT_UPDATE: u32 = 2; +pub const TRIGGER_EVENT_TRUNCATE: u32 = 3; +pub const TRIGGER_EVENT_OPMASK: u32 = 3; +pub const TRIGGER_EVENT_ROW: u32 = 4; +pub const TRIGGER_EVENT_BEFORE: u32 = 8; +pub const TRIGGER_EVENT_AFTER: u32 = 0; +pub const TRIGGER_EVENT_INSTEAD: u32 = 16; +pub const TRIGGER_EVENT_TIMINGMASK: u32 = 24; +pub const AFTER_TRIGGER_DEFERRABLE: u32 = 32; +pub const AFTER_TRIGGER_INITDEFERRED: u32 = 64; +pub const SESSION_REPLICATION_ROLE_ORIGIN: u32 = 0; +pub const SESSION_REPLICATION_ROLE_REPLICA: u32 = 1; +pub const SESSION_REPLICATION_ROLE_LOCAL: u32 = 2; +pub const TRIGGER_FIRES_ON_ORIGIN: u8 = 79u8; +pub const TRIGGER_FIRES_ALWAYS: u8 = 65u8; +pub const TRIGGER_FIRES_ON_REPLICA: u8 = 82u8; +pub const TRIGGER_DISABLED: u8 = 68u8; +pub const RI_TRIGGER_PK: u32 = 1; +pub const RI_TRIGGER_FK: u32 = 2; +pub const RI_TRIGGER_NONE: u32 = 0; +#[allow(unsafe_code)] +pub const PG_AUTOCONF_FILENAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgresql.auto.conf\0") }; +pub const GUC_QUALIFIER_SEPARATOR: u8 = 46u8; +pub const GUC_LIST_INPUT: u32 = 1; +pub const GUC_LIST_QUOTE: u32 = 2; +pub const GUC_NO_SHOW_ALL: u32 = 4; +pub const GUC_NO_RESET: u32 = 8; +pub const GUC_NO_RESET_ALL: u32 = 16; +pub const GUC_EXPLAIN: u32 = 32; +pub const GUC_REPORT: u32 = 64; +pub const GUC_NOT_IN_SAMPLE: u32 = 128; +pub const GUC_DISALLOW_IN_FILE: u32 = 256; +pub const GUC_CUSTOM_PLACEHOLDER: u32 = 512; +pub const GUC_SUPERUSER_ONLY: u32 = 1024; +pub const GUC_IS_NAME: u32 = 2048; +pub const GUC_NOT_WHILE_SEC_REST: u32 = 4096; +pub const GUC_DISALLOW_IN_AUTO_FILE: u32 = 8192; +pub const GUC_RUNTIME_COMPUTED: u32 = 16384; +pub const GUC_ALLOW_IN_PARALLEL: u32 = 32768; +pub const GUC_UNIT_KB: u32 = 16777216; +pub const GUC_UNIT_BLOCKS: u32 = 33554432; +pub const GUC_UNIT_XBLOCKS: u32 = 50331648; +pub const GUC_UNIT_MB: u32 = 67108864; +pub const GUC_UNIT_BYTE: u32 = 83886080; +pub const GUC_UNIT_MEMORY: u32 = 251658240; +pub const GUC_UNIT_MS: u32 = 268435456; +pub const GUC_UNIT_S: u32 = 536870912; +pub const GUC_UNIT_MIN: u32 = 805306368; +pub const GUC_UNIT_TIME: u32 = 1879048192; +pub const GUC_UNIT: u32 = 2130706432; +pub const BGWORKER_SHMEM_ACCESS: u32 = 1; +pub const BGWORKER_BACKEND_DATABASE_CONNECTION: u32 = 2; +pub const BGWORKER_CLASS_PARALLEL: u32 = 16; +pub const BGW_DEFAULT_RESTART_INTERVAL: u32 = 60; +pub const BGW_NEVER_RESTART: i32 = -1; +pub const BGW_MAXLEN: u32 = 96; +pub const BGW_EXTRALEN: u32 = 128; +pub const BGWORKER_BYPASS_ALLOWCONN: u32 = 1; +pub const BGWORKER_BYPASS_ROLELOGINCHECK: u32 = 2; +pub const TRANSACTION_STATUS_IN_PROGRESS: u32 = 0; +pub const TRANSACTION_STATUS_COMMITTED: u32 = 1; +pub const TRANSACTION_STATUS_ABORTED: u32 = 2; +pub const TRANSACTION_STATUS_SUB_COMMITTED: u32 = 3; +pub const CLOG_ZEROPAGE: u32 = 0; +pub const CLOG_TRUNCATE: u32 = 16; +pub const WL_LATCH_SET: u32 = 1; +pub const WL_SOCKET_READABLE: u32 = 2; +pub const WL_SOCKET_WRITEABLE: u32 = 4; +pub const WL_TIMEOUT: u32 = 8; +pub const WL_POSTMASTER_DEATH: u32 = 16; +pub const WL_EXIT_ON_PM_DEATH: u32 = 32; +pub const WL_SOCKET_CONNECTED: u32 = 4; +pub const WL_SOCKET_CLOSED: u32 = 128; +pub const WL_SOCKET_ACCEPT: u32 = 2; +pub const WL_SOCKET_MASK: u32 = 134; +pub const PGPROC_MAX_CACHED_SUBXIDS: u32 = 64; +pub const PROC_IS_AUTOVACUUM: u32 = 1; +pub const PROC_IN_VACUUM: u32 = 2; +pub const PROC_IN_SAFE_IC: u32 = 4; +pub const PROC_VACUUM_FOR_WRAPAROUND: u32 = 8; +pub const PROC_IN_LOGICAL_DECODING: u32 = 16; +pub const PROC_AFFECTS_ALL_HORIZONS: u32 = 32; +pub const PROC_VACUUM_STATE_MASK: u32 = 14; +pub const PROC_XMIN_FLAGS: u32 = 6; +pub const FP_LOCK_SLOTS_PER_BACKEND: u32 = 16; +pub const DELAY_CHKPT_START: u32 = 1; +pub const DELAY_CHKPT_COMPLETE: u32 = 2; +pub const NUM_AUXILIARY_PROCS: u32 = 6; +pub const StatisticRelationId: u32 = 2619; +pub const StatisticRelidAttnumInhIndexId: u32 = 2696; +pub const Anum_pg_statistic_starelid: u32 = 1; +pub const Anum_pg_statistic_staattnum: u32 = 2; +pub const Anum_pg_statistic_stainherit: u32 = 3; +pub const Anum_pg_statistic_stanullfrac: u32 = 4; +pub const Anum_pg_statistic_stawidth: u32 = 5; +pub const Anum_pg_statistic_stadistinct: u32 = 6; +pub const Anum_pg_statistic_stakind1: u32 = 7; +pub const Anum_pg_statistic_stakind2: u32 = 8; +pub const Anum_pg_statistic_stakind3: u32 = 9; +pub const Anum_pg_statistic_stakind4: u32 = 10; +pub const Anum_pg_statistic_stakind5: u32 = 11; +pub const Anum_pg_statistic_staop1: u32 = 12; +pub const Anum_pg_statistic_staop2: u32 = 13; +pub const Anum_pg_statistic_staop3: u32 = 14; +pub const Anum_pg_statistic_staop4: u32 = 15; +pub const Anum_pg_statistic_staop5: u32 = 16; +pub const Anum_pg_statistic_stacoll1: u32 = 17; +pub const Anum_pg_statistic_stacoll2: u32 = 18; +pub const Anum_pg_statistic_stacoll3: u32 = 19; +pub const Anum_pg_statistic_stacoll4: u32 = 20; +pub const Anum_pg_statistic_stacoll5: u32 = 21; +pub const Anum_pg_statistic_stanumbers1: u32 = 22; +pub const Anum_pg_statistic_stanumbers2: u32 = 23; +pub const Anum_pg_statistic_stanumbers3: u32 = 24; +pub const Anum_pg_statistic_stanumbers4: u32 = 25; +pub const Anum_pg_statistic_stanumbers5: u32 = 26; +pub const Anum_pg_statistic_stavalues1: u32 = 27; +pub const Anum_pg_statistic_stavalues2: u32 = 28; +pub const Anum_pg_statistic_stavalues3: u32 = 29; +pub const Anum_pg_statistic_stavalues4: u32 = 30; +pub const Anum_pg_statistic_stavalues5: u32 = 31; +pub const Natts_pg_statistic: u32 = 31; +pub const STATISTIC_KIND_MCV: u32 = 1; +pub const STATISTIC_KIND_HISTOGRAM: u32 = 2; +pub const STATISTIC_KIND_CORRELATION: u32 = 3; +pub const STATISTIC_KIND_MCELEM: u32 = 4; +pub const STATISTIC_KIND_DECHIST: u32 = 5; +pub const STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM: u32 = 6; +pub const STATISTIC_KIND_BOUNDS_HISTOGRAM: u32 = 7; +pub const STATISTIC_NUM_SLOTS: u32 = 5; +pub const VACUUM_OPTION_NO_PARALLEL: u32 = 0; +pub const VACUUM_OPTION_PARALLEL_BULKDEL: u32 = 1; +pub const VACUUM_OPTION_PARALLEL_COND_CLEANUP: u32 = 2; +pub const VACUUM_OPTION_PARALLEL_CLEANUP: u32 = 4; +pub const VACUUM_OPTION_MAX_VALID_VALUE: u32 = 7; +pub const VACOPT_VACUUM: u32 = 1; +pub const VACOPT_ANALYZE: u32 = 2; +pub const VACOPT_VERBOSE: u32 = 4; +pub const VACOPT_FREEZE: u32 = 8; +pub const VACOPT_FULL: u32 = 16; +pub const VACOPT_SKIP_LOCKED: u32 = 32; +pub const VACOPT_PROCESS_MAIN: u32 = 64; +pub const VACOPT_PROCESS_TOAST: u32 = 128; +pub const VACOPT_DISABLE_PAGE_SKIPPING: u32 = 256; +pub const VACOPT_SKIP_DATABASE_STATS: u32 = 512; +pub const VACOPT_ONLY_DATABASE_STATS: u32 = 1024; +pub const MAX_STATISTICS_TARGET: u32 = 10000; +pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUE: u32 = 0; +pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; +pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; +pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; +pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; +pub const SPI_ERROR_CONNECT: i32 = -1; +pub const SPI_ERROR_COPY: i32 = -2; +pub const SPI_ERROR_OPUNKNOWN: i32 = -3; +pub const SPI_ERROR_UNCONNECTED: i32 = -4; +pub const SPI_ERROR_CURSOR: i32 = -5; +pub const SPI_ERROR_ARGUMENT: i32 = -6; +pub const SPI_ERROR_PARAM: i32 = -7; +pub const SPI_ERROR_TRANSACTION: i32 = -8; +pub const SPI_ERROR_NOATTRIBUTE: i32 = -9; +pub const SPI_ERROR_NOOUTFUNC: i32 = -10; +pub const SPI_ERROR_TYPUNKNOWN: i32 = -11; +pub const SPI_ERROR_REL_DUPLICATE: i32 = -12; +pub const SPI_ERROR_REL_NOT_FOUND: i32 = -13; +pub const SPI_OK_CONNECT: u32 = 1; +pub const SPI_OK_FINISH: u32 = 2; +pub const SPI_OK_FETCH: u32 = 3; +pub const SPI_OK_UTILITY: u32 = 4; +pub const SPI_OK_SELECT: u32 = 5; +pub const SPI_OK_SELINTO: u32 = 6; +pub const SPI_OK_INSERT: u32 = 7; +pub const SPI_OK_DELETE: u32 = 8; +pub const SPI_OK_UPDATE: u32 = 9; +pub const SPI_OK_CURSOR: u32 = 10; +pub const SPI_OK_INSERT_RETURNING: u32 = 11; +pub const SPI_OK_DELETE_RETURNING: u32 = 12; +pub const SPI_OK_UPDATE_RETURNING: u32 = 13; +pub const SPI_OK_REWRITTEN: u32 = 14; +pub const SPI_OK_REL_REGISTER: u32 = 15; +pub const SPI_OK_REL_UNREGISTER: u32 = 16; +pub const SPI_OK_TD_REGISTER: u32 = 17; +pub const SPI_OK_MERGE: u32 = 18; +pub const SPI_OK_MERGE_RETURNING: u32 = 19; +pub const SPI_OPT_NONATOMIC: u32 = 1; +pub const AMFLAG_HAS_TID_RANGE: u32 = 1; +pub const GROUPING_CAN_USE_SORT: u32 = 1; +pub const GROUPING_CAN_USE_HASH: u32 = 2; +pub const GROUPING_CAN_PARTIAL_AGG: u32 = 4; +pub const FSV_MISSING_OK: u32 = 1; +pub const FDW_MISSING_OK: u32 = 1; +pub const PGJIT_NONE: u32 = 0; +pub const PGJIT_PERFORM: u32 = 1; +pub const PGJIT_OPT3: u32 = 2; +pub const PGJIT_INLINE: u32 = 4; +pub const PGJIT_EXPR: u32 = 8; +pub const PGJIT_DEFORM: u32 = 16; +pub const MAX_MULTIBYTE_CHAR_LEN: u32 = 4; +pub const SS2: u32 = 142; +pub const SS3: u32 = 143; +pub const LC_ISO8859_1: u32 = 129; +pub const LC_ISO8859_2: u32 = 130; +pub const LC_ISO8859_3: u32 = 131; +pub const LC_ISO8859_4: u32 = 132; +pub const LC_TIS620: u32 = 133; +pub const LC_ISO8859_7: u32 = 134; +pub const LC_ISO8859_6: u32 = 135; +pub const LC_ISO8859_8: u32 = 136; +pub const LC_JISX0201K: u32 = 137; +pub const LC_JISX0201R: u32 = 138; +pub const LC_KOI8_R: u32 = 139; +pub const LC_ISO8859_5: u32 = 140; +pub const LC_ISO8859_9: u32 = 141; +pub const LC_ISO8859_15: u32 = 142; +pub const LC_JISX0208_1978: u32 = 144; +pub const LC_GB2312_80: u32 = 145; +pub const LC_JISX0208: u32 = 146; +pub const LC_KS5601: u32 = 147; +pub const LC_JISX0212: u32 = 148; +pub const LC_CNS11643_1: u32 = 149; +pub const LC_CNS11643_2: u32 = 150; +pub const LC_JISX0213_1: u32 = 151; +pub const LC_BIG5_1: u32 = 152; +pub const LC_BIG5_2: u32 = 153; +pub const LCPRV1_A: u32 = 154; +pub const LCPRV1_B: u32 = 155; +pub const LCPRV2_A: u32 = 156; +pub const LCPRV2_B: u32 = 157; +pub const LC_SISHENG: u32 = 160; +pub const LC_IPA: u32 = 161; +pub const LC_VISCII_LOWER: u32 = 162; +pub const LC_VISCII_UPPER: u32 = 163; +pub const LC_ARABIC_DIGIT: u32 = 164; +pub const LC_ARABIC_1_COLUMN: u32 = 165; +pub const LC_ASCII_RIGHT_TO_LEFT: u32 = 166; +pub const LC_LAO: u32 = 167; +pub const LC_ARABIC_2_COLUMN: u32 = 168; +pub const LC_INDIAN_1_COLUMN: u32 = 240; +pub const LC_TIBETAN_1_COLUMN: u32 = 241; +pub const LC_UNICODE_SUBSET_2: u32 = 242; +pub const LC_UNICODE_SUBSET_3: u32 = 243; +pub const LC_UNICODE_SUBSET: u32 = 244; +pub const LC_ETHIOPIC: u32 = 245; +pub const LC_CNS11643_3: u32 = 246; +pub const LC_CNS11643_4: u32 = 247; +pub const LC_CNS11643_5: u32 = 248; +pub const LC_CNS11643_6: u32 = 249; +pub const LC_CNS11643_7: u32 = 250; +pub const LC_INDIAN_2_COLUMN: u32 = 251; +pub const LC_TIBETAN: u32 = 252; +pub const MAX_CONVERSION_GROWTH: u32 = 4; +pub const MAX_CONVERSION_INPUT_LENGTH: u32 = 16; +pub const MAX_UNICODE_EQUIVALENT_STRING: u32 = 16; +pub const EXTNODENAME_MAX_LEN: u32 = 64; +pub const CUSTOMPATH_SUPPORT_BACKWARD_SCAN: u32 = 1; +pub const CUSTOMPATH_SUPPORT_MARK_RESTORE: u32 = 2; +pub const CUSTOMPATH_SUPPORT_PROJECTION: u32 = 4; +pub const QTW_IGNORE_RT_SUBQUERIES: u32 = 1; +pub const QTW_IGNORE_CTE_SUBQUERIES: u32 = 2; +pub const QTW_IGNORE_RC_SUBQUERIES: u32 = 3; +pub const QTW_IGNORE_JOINALIASES: u32 = 4; +pub const QTW_IGNORE_RANGE_TABLE: u32 = 8; +pub const QTW_EXAMINE_RTES_BEFORE: u32 = 16; +pub const QTW_EXAMINE_RTES_AFTER: u32 = 32; +pub const QTW_DONT_COPY_QUERY: u32 = 64; +pub const QTW_EXAMINE_SORTGROUP: u32 = 128; +pub const DEFAULT_SEQ_PAGE_COST: f64 = 1.0; +pub const DEFAULT_RANDOM_PAGE_COST: f64 = 4.0; +pub const DEFAULT_CPU_TUPLE_COST: f64 = 0.01; +pub const DEFAULT_CPU_INDEX_TUPLE_COST: f64 = 0.005; +pub const DEFAULT_CPU_OPERATOR_COST: f64 = 0.0025; +pub const DEFAULT_PARALLEL_TUPLE_COST: f64 = 0.1; +pub const DEFAULT_PARALLEL_SETUP_COST: f64 = 1000.0; +pub const DEFAULT_RECURSIVE_WORKTABLE_FACTOR: f64 = 10.0; +pub const DEFAULT_EFFECTIVE_CACHE_SIZE: u32 = 524288; +pub const PVC_INCLUDE_AGGREGATES: u32 = 1; +pub const PVC_RECURSE_AGGREGATES: u32 = 2; +pub const PVC_INCLUDE_WINDOWFUNCS: u32 = 4; +pub const PVC_RECURSE_WINDOWFUNCS: u32 = 8; +pub const PVC_INCLUDE_PLACEHOLDERS: u32 = 16; +pub const PVC_RECURSE_PLACEHOLDERS: u32 = 32; +pub const DEFAULT_CURSOR_TUPLE_FRACTION: f64 = 0.1; +pub const ER_MAGIC: u32 = 1384727874; +pub const ER_FLAG_FVALUE_VALID: u32 = 1; +pub const ER_FLAG_FVALUE_ALLOCED: u32 = 2; +pub const ER_FLAG_DVALUES_VALID: u32 = 4; +pub const ER_FLAG_DVALUES_ALLOCED: u32 = 8; +pub const ER_FLAG_HAVE_EXTERNAL: u32 = 16; +pub const ER_FLAG_TUPDESC_ALLOCED: u32 = 32; +pub const ER_FLAG_IS_DOMAIN: u32 = 64; +pub const ER_FLAG_IS_DUMMY: u32 = 128; +pub const ER_FLAGS_NON_DATA: u32 = 224; +pub const PLPGSQL_XCHECK_NONE: u32 = 0; +pub const PLPGSQL_XCHECK_SHADOWVAR: u32 = 2; +pub const PLPGSQL_XCHECK_TOOMANYROWS: u32 = 4; +pub const PLPGSQL_XCHECK_STRICTMULTIASSIGNMENT: u32 = 8; +pub const POSTMASTER_FD_WATCH: u32 = 0; +pub const POSTMASTER_FD_OWN: u32 = 1; +pub const MAX_BACKENDS: u32 = 262143; +pub const PIPE_PROTO_IS_LAST: u32 = 1; +pub const PIPE_PROTO_DEST_STDERR: u32 = 16; +pub const PIPE_PROTO_DEST_CSVLOG: u32 = 32; +pub const PIPE_PROTO_DEST_JSONLOG: u32 = 64; +#[allow(unsafe_code)] +pub const LOG_METAINFO_DATAFILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"current_logfiles\0") }; +#[allow(unsafe_code)] +pub const LOG_METAINFO_DATAFILE_TMP: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"current_logfiles.tmp\0") }; +pub const RBTXN_HAS_CATALOG_CHANGES: u32 = 1; +pub const RBTXN_IS_SUBXACT: u32 = 2; +pub const RBTXN_IS_SERIALIZED: u32 = 4; +pub const RBTXN_IS_SERIALIZED_CLEAR: u32 = 8; +pub const RBTXN_IS_STREAMED: u32 = 16; +pub const RBTXN_HAS_PARTIAL_CHANGE: u32 = 32; +pub const RBTXN_PREPARE: u32 = 64; +pub const RBTXN_SKIPPED_PREPARE: u32 = 128; +pub const RBTXN_HAS_STREAMABLE_CHANGE: u32 = 256; +pub const LOGICALREP_PROTO_MIN_VERSION_NUM: u32 = 1; +pub const LOGICALREP_PROTO_VERSION_NUM: u32 = 1; +pub const LOGICALREP_PROTO_STREAM_VERSION_NUM: u32 = 2; +pub const LOGICALREP_PROTO_TWOPHASE_VERSION_NUM: u32 = 3; +pub const LOGICALREP_PROTO_STREAM_PARALLEL_VERSION_NUM: u32 = 4; +pub const LOGICALREP_PROTO_MAX_VERSION_NUM: u32 = 4; +pub const LOGICALREP_COLUMN_NULL: u8 = 110u8; +pub const LOGICALREP_COLUMN_UNCHANGED: u8 = 117u8; +pub const LOGICALREP_COLUMN_TEXT: u8 = 116u8; +pub const LOGICALREP_COLUMN_BINARY: u8 = 98u8; +pub const MAXCONNINFO: u32 = 1024; +pub const XLOG_STANDBY_LOCK: u32 = 0; +pub const XLOG_RUNNING_XACTS: u32 = 16; +pub const XLOG_INVALIDATIONS: u32 = 32; +pub const STACK_DEPTH_SLOP: u32 = 524288; +pub const RESTRICT_RELKIND_VIEW: u32 = 1; +pub const RESTRICT_RELKIND_FOREIGN_TABLE: u32 = 2; +pub const COMMAND_OK_IN_READ_ONLY_TXN: u32 = 1; +pub const COMMAND_OK_IN_PARALLEL_MODE: u32 = 2; +pub const COMMAND_OK_IN_RECOVERY: u32 = 4; +pub const COMMAND_IS_STRICTLY_READ_ONLY: u32 = 7; +pub const COMMAND_IS_NOT_READ_ONLY: u32 = 0; +pub const MAXSTRLEN: u32 = 2047; +pub const MAXSTRPOS: u32 = 1048575; +pub const MAXENTRYPOS: u32 = 16384; +pub const MAXNUMPOS: u32 = 256; +pub const QI_VAL: u32 = 1; +pub const QI_OPR: u32 = 2; +pub const QI_VALSTOP: u32 = 3; +pub const OP_NOT: u32 = 1; +pub const OP_AND: u32 = 2; +pub const OP_OR: u32 = 3; +pub const OP_PHRASE: u32 = 4; +pub const OP_COUNT: u32 = 4; +pub const TSL_ADDPOS: u32 = 1; +pub const TSL_PREFIX: u32 = 2; +pub const TSL_FILTER: u32 = 4; +pub const P_TSV_OPR_IS_DELIM: u32 = 1; +pub const P_TSV_IS_TSQUERY: u32 = 2; +pub const P_TSV_IS_WEB: u32 = 4; +pub const P_TSQ_PLAIN: u32 = 1; +pub const P_TSQ_WEB: u32 = 2; +pub const TS_EXEC_EMPTY: u32 = 0; +pub const TS_EXEC_SKIP_NOT: u32 = 1; +pub const TS_EXEC_PHRASE_NO_POS: u32 = 2; +pub const TSearchStrategyNumber: u32 = 1; +pub const TSearchWithClassStrategyNumber: u32 = 2; +pub const QTN_NEEDFREE: u32 = 1; +pub const QTN_NOCHANGE: u32 = 2; +pub const QTN_WORDFREE: u32 = 4; +pub const MAXINT8LEN: u32 = 20; +pub const FORMAT_TYPE_TYPEMOD_GIVEN: u32 = 1; +pub const FORMAT_TYPE_ALLOW_INVALID: u32 = 2; +pub const FORMAT_TYPE_FORCE_QUALIFY: u32 = 4; +pub const FORMAT_TYPE_INVALID_AS_NULL: u32 = 8; +pub const MAX_TIME_PRECISION: u32 = 6; +#[allow(unsafe_code)] +pub const DAGO: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"ago\0") }; +#[allow(unsafe_code)] +pub const DCURRENT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"current\0") }; +#[allow(unsafe_code)] +pub const EPOCH: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"epoch\0") }; +#[allow(unsafe_code)] +pub const INVALID: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"invalid\0") }; +#[allow(unsafe_code)] +pub const EARLY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-infinity\0") }; +#[allow(unsafe_code)] +pub const LATE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"infinity\0") }; +#[allow(unsafe_code)] +pub const NOW: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"now\0") }; +#[allow(unsafe_code)] +pub const TODAY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"today\0") }; +#[allow(unsafe_code)] +pub const TOMORROW: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"tomorrow\0") }; +#[allow(unsafe_code)] +pub const YESTERDAY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"yesterday\0") }; +#[allow(unsafe_code)] +pub const ZULU: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"zulu\0") }; +#[allow(unsafe_code)] +pub const DMICROSEC: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"usecond\0") }; +#[allow(unsafe_code)] +pub const DMILLISEC: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"msecond\0") }; +#[allow(unsafe_code)] +pub const DSECOND: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"second\0") }; +#[allow(unsafe_code)] +pub const DMINUTE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"minute\0") }; +#[allow(unsafe_code)] +pub const DHOUR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"hour\0") }; +#[allow(unsafe_code)] +pub const DDAY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"day\0") }; +#[allow(unsafe_code)] +pub const DWEEK: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"week\0") }; +#[allow(unsafe_code)] +pub const DMONTH: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"month\0") }; +#[allow(unsafe_code)] +pub const DQUARTER: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"quarter\0") }; +#[allow(unsafe_code)] +pub const DYEAR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"year\0") }; +#[allow(unsafe_code)] +pub const DDECADE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"decade\0") }; +#[allow(unsafe_code)] +pub const DCENTURY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"century\0") }; +#[allow(unsafe_code)] +pub const DMILLENNIUM: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"millennium\0") }; +#[allow(unsafe_code)] +pub const DA_D: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"ad\0") }; +#[allow(unsafe_code)] +pub const DB_C: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"bc\0") }; +#[allow(unsafe_code)] +pub const DTIMEZONE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"timezone\0") }; +pub const AM: u32 = 0; +pub const PM: u32 = 1; +pub const HR24: u32 = 2; +pub const AD: u32 = 0; +pub const BC: u32 = 1; +pub const RESERV: u32 = 0; +pub const MONTH: u32 = 1; +pub const YEAR: u32 = 2; +pub const DAY: u32 = 3; +pub const JULIAN: u32 = 4; +pub const TZ: u32 = 5; +pub const DTZ: u32 = 6; +pub const DYNTZ: u32 = 7; +pub const IGNORE_DTF: u32 = 8; +pub const AMPM: u32 = 9; +pub const HOUR: u32 = 10; +pub const MINUTE: u32 = 11; +pub const SECOND: u32 = 12; +pub const MILLISECOND: u32 = 13; +pub const MICROSECOND: u32 = 14; +pub const DOY: u32 = 15; +pub const DOW: u32 = 16; +pub const UNITS: u32 = 17; +pub const ADBC: u32 = 18; +pub const AGO: u32 = 19; +pub const ABS_BEFORE: u32 = 20; +pub const ABS_AFTER: u32 = 21; +pub const ISODATE: u32 = 22; +pub const ISOTIME: u32 = 23; +pub const WEEK: u32 = 24; +pub const DECADE: u32 = 25; +pub const CENTURY: u32 = 26; +pub const MILLENNIUM: u32 = 27; +pub const DTZMOD: u32 = 28; +pub const UNKNOWN_FIELD: u32 = 31; +pub const DTK_NUMBER: u32 = 0; +pub const DTK_STRING: u32 = 1; +pub const DTK_DATE: u32 = 2; +pub const DTK_TIME: u32 = 3; +pub const DTK_TZ: u32 = 4; +pub const DTK_AGO: u32 = 5; +pub const DTK_SPECIAL: u32 = 6; +pub const DTK_EARLY: u32 = 9; +pub const DTK_LATE: u32 = 10; +pub const DTK_EPOCH: u32 = 11; +pub const DTK_NOW: u32 = 12; +pub const DTK_YESTERDAY: u32 = 13; +pub const DTK_TODAY: u32 = 14; +pub const DTK_TOMORROW: u32 = 15; +pub const DTK_ZULU: u32 = 16; +pub const DTK_DELTA: u32 = 17; +pub const DTK_SECOND: u32 = 18; +pub const DTK_MINUTE: u32 = 19; +pub const DTK_HOUR: u32 = 20; +pub const DTK_DAY: u32 = 21; +pub const DTK_WEEK: u32 = 22; +pub const DTK_MONTH: u32 = 23; +pub const DTK_QUARTER: u32 = 24; +pub const DTK_YEAR: u32 = 25; +pub const DTK_DECADE: u32 = 26; +pub const DTK_CENTURY: u32 = 27; +pub const DTK_MILLENNIUM: u32 = 28; +pub const DTK_MILLISEC: u32 = 29; +pub const DTK_MICROSEC: u32 = 30; +pub const DTK_JULIAN: u32 = 31; +pub const DTK_DOW: u32 = 32; +pub const DTK_DOY: u32 = 33; +pub const DTK_TZ_HOUR: u32 = 34; +pub const DTK_TZ_MINUTE: u32 = 35; +pub const DTK_ISOYEAR: u32 = 36; +pub const DTK_ISODOW: u32 = 37; +pub const MAXDATELEN: u32 = 128; +pub const MAXDATEFIELDS: u32 = 25; +pub const TOKMAXLEN: u32 = 10; +pub const DTERR_BAD_FORMAT: i32 = -1; +pub const DTERR_FIELD_OVERFLOW: i32 = -2; +pub const DTERR_MD_FIELD_OVERFLOW: i32 = -3; +pub const DTERR_INTERVAL_OVERFLOW: i32 = -4; +pub const DTERR_TZDISP_OVERFLOW: i32 = -5; +pub const DTERR_BAD_TIMEZONE: i32 = -6; +pub const DTERR_BAD_ZONE_ABBREV: i32 = -7; +pub const TZNAME_FIXED_OFFSET: u32 = 0; +pub const TZNAME_DYNTZ: u32 = 1; +pub const TZNAME_ZONE: u32 = 2; +pub const RADIANS_PER_DEGREE: f64 = 0.017453292519943295; +pub const F_HEAP_TABLEAM_HANDLER: u32 = 3; +pub const F_BYTEAOUT: u32 = 31; +pub const F_CHAROUT: u32 = 33; +pub const F_NAMEIN: u32 = 34; +pub const F_NAMEOUT: u32 = 35; +pub const F_INT2IN: u32 = 38; +pub const F_INT2OUT: u32 = 39; +pub const F_INT2VECTORIN: u32 = 40; +pub const F_INT2VECTOROUT: u32 = 41; +pub const F_INT4IN: u32 = 42; +pub const F_INT4OUT: u32 = 43; +pub const F_REGPROCIN: u32 = 44; +pub const F_REGPROCOUT: u32 = 45; +pub const F_TEXTIN: u32 = 46; +pub const F_TEXTOUT: u32 = 47; +pub const F_TIDIN: u32 = 48; +pub const F_TIDOUT: u32 = 49; +pub const F_XIDIN: u32 = 50; +pub const F_XIDOUT: u32 = 51; +pub const F_CIDIN: u32 = 52; +pub const F_CIDOUT: u32 = 53; +pub const F_OIDVECTORIN: u32 = 54; +pub const F_OIDVECTOROUT: u32 = 55; +pub const F_BOOLLT: u32 = 56; +pub const F_BOOLGT: u32 = 57; +pub const F_BOOLEQ: u32 = 60; +pub const F_CHAREQ: u32 = 61; +pub const F_NAMEEQ: u32 = 62; +pub const F_INT2EQ: u32 = 63; +pub const F_INT2LT: u32 = 64; +pub const F_INT4EQ: u32 = 65; +pub const F_INT4LT: u32 = 66; +pub const F_TEXTEQ: u32 = 67; +pub const F_XIDEQ: u32 = 68; +pub const F_CIDEQ: u32 = 69; +pub const F_CHARNE: u32 = 70; +pub const F_CHARLE: u32 = 72; +pub const F_CHARGT: u32 = 73; +pub const F_CHARGE: u32 = 74; +pub const F_INT4_CHAR: u32 = 77; +pub const F_CHAR_INT4: u32 = 78; +pub const F_NAMEREGEXEQ: u32 = 79; +pub const F_BOOLNE: u32 = 84; +pub const F_PG_DDL_COMMAND_IN: u32 = 86; +pub const F_PG_DDL_COMMAND_OUT: u32 = 87; +pub const F_PG_DDL_COMMAND_RECV: u32 = 88; +pub const F_VERSION: u32 = 89; +pub const F_PG_DDL_COMMAND_SEND: u32 = 90; +pub const F_EQSEL: u32 = 101; +pub const F_NEQSEL: u32 = 102; +pub const F_SCALARLTSEL: u32 = 103; +pub const F_SCALARGTSEL: u32 = 104; +pub const F_EQJOINSEL: u32 = 105; +pub const F_NEQJOINSEL: u32 = 106; +pub const F_SCALARLTJOINSEL: u32 = 107; +pub const F_SCALARGTJOINSEL: u32 = 108; +pub const F_UNKNOWNIN: u32 = 109; +pub const F_UNKNOWNOUT: u32 = 110; +pub const F_BOX_ABOVE_EQ: u32 = 115; +pub const F_BOX_BELOW_EQ: u32 = 116; +pub const F_POINT_IN: u32 = 117; +pub const F_POINT_OUT: u32 = 118; +pub const F_LSEG_IN: u32 = 119; +pub const F_LSEG_OUT: u32 = 120; +pub const F_PATH_IN: u32 = 121; +pub const F_PATH_OUT: u32 = 122; +pub const F_BOX_IN: u32 = 123; +pub const F_BOX_OUT: u32 = 124; +pub const F_BOX_OVERLAP: u32 = 125; +pub const F_BOX_GE: u32 = 126; +pub const F_BOX_GT: u32 = 127; +pub const F_BOX_EQ: u32 = 128; +pub const F_BOX_LT: u32 = 129; +pub const F_BOX_LE: u32 = 130; +pub const F_POINT_ABOVE: u32 = 131; +pub const F_POINT_LEFT: u32 = 132; +pub const F_POINT_RIGHT: u32 = 133; +pub const F_POINT_BELOW: u32 = 134; +pub const F_POINT_EQ: u32 = 135; +pub const F_ON_PB: u32 = 136; +pub const F_ON_PPATH: u32 = 137; +pub const F_BOX_CENTER: u32 = 138; +pub const F_AREASEL: u32 = 139; +pub const F_AREAJOINSEL: u32 = 140; +pub const F_INT4MUL: u32 = 141; +pub const F_INT4NE: u32 = 144; +pub const F_INT2NE: u32 = 145; +pub const F_INT2GT: u32 = 146; +pub const F_INT4GT: u32 = 147; +pub const F_INT2LE: u32 = 148; +pub const F_INT4LE: u32 = 149; +pub const F_INT4GE: u32 = 150; +pub const F_INT2GE: u32 = 151; +pub const F_INT2MUL: u32 = 152; +pub const F_INT2DIV: u32 = 153; +pub const F_INT4DIV: u32 = 154; +pub const F_INT2MOD: u32 = 155; +pub const F_INT4MOD: u32 = 156; +pub const F_TEXTNE: u32 = 157; +pub const F_INT24EQ: u32 = 158; +pub const F_INT42EQ: u32 = 159; +pub const F_INT24LT: u32 = 160; +pub const F_INT42LT: u32 = 161; +pub const F_INT24GT: u32 = 162; +pub const F_INT42GT: u32 = 163; +pub const F_INT24NE: u32 = 164; +pub const F_INT42NE: u32 = 165; +pub const F_INT24LE: u32 = 166; +pub const F_INT42LE: u32 = 167; +pub const F_INT24GE: u32 = 168; +pub const F_INT42GE: u32 = 169; +pub const F_INT24MUL: u32 = 170; +pub const F_INT42MUL: u32 = 171; +pub const F_INT24DIV: u32 = 172; +pub const F_INT42DIV: u32 = 173; +pub const F_INT2PL: u32 = 176; +pub const F_INT4PL: u32 = 177; +pub const F_INT24PL: u32 = 178; +pub const F_INT42PL: u32 = 179; +pub const F_INT2MI: u32 = 180; +pub const F_INT4MI: u32 = 181; +pub const F_INT24MI: u32 = 182; +pub const F_INT42MI: u32 = 183; +pub const F_OIDEQ: u32 = 184; +pub const F_OIDNE: u32 = 185; +pub const F_BOX_SAME: u32 = 186; +pub const F_BOX_CONTAIN: u32 = 187; +pub const F_BOX_LEFT: u32 = 188; +pub const F_BOX_OVERLEFT: u32 = 189; +pub const F_BOX_OVERRIGHT: u32 = 190; +pub const F_BOX_RIGHT: u32 = 191; +pub const F_BOX_CONTAINED: u32 = 192; +pub const F_BOX_CONTAIN_PT: u32 = 193; +pub const F_PG_NODE_TREE_IN: u32 = 195; +pub const F_PG_NODE_TREE_OUT: u32 = 196; +pub const F_PG_NODE_TREE_RECV: u32 = 197; +pub const F_PG_NODE_TREE_SEND: u32 = 198; +pub const F_FLOAT4IN: u32 = 200; +pub const F_FLOAT4OUT: u32 = 201; +pub const F_FLOAT4MUL: u32 = 202; +pub const F_FLOAT4DIV: u32 = 203; +pub const F_FLOAT4PL: u32 = 204; +pub const F_FLOAT4MI: u32 = 205; +pub const F_FLOAT4UM: u32 = 206; +pub const F_FLOAT4ABS: u32 = 207; +pub const F_FLOAT4_ACCUM: u32 = 208; +pub const F_FLOAT4LARGER: u32 = 209; +pub const F_FLOAT4SMALLER: u32 = 211; +pub const F_INT4UM: u32 = 212; +pub const F_INT2UM: u32 = 213; +pub const F_FLOAT8IN: u32 = 214; +pub const F_FLOAT8OUT: u32 = 215; +pub const F_FLOAT8MUL: u32 = 216; +pub const F_FLOAT8DIV: u32 = 217; +pub const F_FLOAT8PL: u32 = 218; +pub const F_FLOAT8MI: u32 = 219; +pub const F_FLOAT8UM: u32 = 220; +pub const F_FLOAT8ABS: u32 = 221; +pub const F_FLOAT8_ACCUM: u32 = 222; +pub const F_FLOAT8LARGER: u32 = 223; +pub const F_FLOAT8SMALLER: u32 = 224; +pub const F_LSEG_CENTER: u32 = 225; +pub const F_POLY_CENTER: u32 = 227; +pub const F_DROUND: u32 = 228; +pub const F_DTRUNC: u32 = 229; +pub const F_DSQRT: u32 = 230; +pub const F_DCBRT: u32 = 231; +pub const F_DPOW: u32 = 232; +pub const F_DEXP: u32 = 233; +pub const F_DLOG1: u32 = 234; +pub const F_FLOAT8_INT2: u32 = 235; +pub const F_FLOAT4_INT2: u32 = 236; +pub const F_INT2_FLOAT8: u32 = 237; +pub const F_INT2_FLOAT4: u32 = 238; +pub const F_LINE_DISTANCE: u32 = 239; +pub const F_NAMEEQTEXT: u32 = 240; +pub const F_NAMELTTEXT: u32 = 241; +pub const F_NAMELETEXT: u32 = 242; +pub const F_NAMEGETEXT: u32 = 243; +pub const F_NAMEGTTEXT: u32 = 244; +pub const F_NAMENETEXT: u32 = 245; +pub const F_BTNAMETEXTCMP: u32 = 246; +pub const F_TEXTEQNAME: u32 = 247; +pub const F_TEXTLTNAME: u32 = 248; +pub const F_TEXTLENAME: u32 = 249; +pub const F_TEXTGENAME: u32 = 250; +pub const F_TEXTGTNAME: u32 = 251; +pub const F_TEXTNENAME: u32 = 252; +pub const F_BTTEXTNAMECMP: u32 = 253; +pub const F_NAMECONCATOID: u32 = 266; +pub const F_TABLE_AM_HANDLER_IN: u32 = 267; +pub const F_TABLE_AM_HANDLER_OUT: u32 = 268; +pub const F_TIMEOFDAY: u32 = 274; +pub const F_PG_NEXTOID: u32 = 275; +pub const F_FLOAT8_COMBINE: u32 = 276; +pub const F_INTER_SL: u32 = 277; +pub const F_INTER_LB: u32 = 278; +pub const F_FLOAT48MUL: u32 = 279; +pub const F_FLOAT48DIV: u32 = 280; +pub const F_FLOAT48PL: u32 = 281; +pub const F_FLOAT48MI: u32 = 282; +pub const F_FLOAT84MUL: u32 = 283; +pub const F_FLOAT84DIV: u32 = 284; +pub const F_FLOAT84PL: u32 = 285; +pub const F_FLOAT84MI: u32 = 286; +pub const F_FLOAT4EQ: u32 = 287; +pub const F_FLOAT4NE: u32 = 288; +pub const F_FLOAT4LT: u32 = 289; +pub const F_FLOAT4LE: u32 = 290; +pub const F_FLOAT4GT: u32 = 291; +pub const F_FLOAT4GE: u32 = 292; +pub const F_FLOAT8EQ: u32 = 293; +pub const F_FLOAT8NE: u32 = 294; +pub const F_FLOAT8LT: u32 = 295; +pub const F_FLOAT8LE: u32 = 296; +pub const F_FLOAT8GT: u32 = 297; +pub const F_FLOAT8GE: u32 = 298; +pub const F_FLOAT48EQ: u32 = 299; +pub const F_FLOAT48NE: u32 = 300; +pub const F_FLOAT48LT: u32 = 301; +pub const F_FLOAT48LE: u32 = 302; +pub const F_FLOAT48GT: u32 = 303; +pub const F_FLOAT48GE: u32 = 304; +pub const F_FLOAT84EQ: u32 = 305; +pub const F_FLOAT84NE: u32 = 306; +pub const F_FLOAT84LT: u32 = 307; +pub const F_FLOAT84LE: u32 = 308; +pub const F_FLOAT84GT: u32 = 309; +pub const F_FLOAT84GE: u32 = 310; +pub const F_FLOAT8_FLOAT4: u32 = 311; +pub const F_FLOAT4_FLOAT8: u32 = 312; +pub const F_INT4_INT2: u32 = 313; +pub const F_INT2_INT4: u32 = 314; +pub const F_PG_JIT_AVAILABLE: u32 = 315; +pub const F_FLOAT8_INT4: u32 = 316; +pub const F_INT4_FLOAT8: u32 = 317; +pub const F_FLOAT4_INT4: u32 = 318; +pub const F_INT4_FLOAT4: u32 = 319; +pub const F_WIDTH_BUCKET_FLOAT8_FLOAT8_FLOAT8_INT4: u32 = 320; +pub const F_JSON_IN: u32 = 321; +pub const F_JSON_OUT: u32 = 322; +pub const F_JSON_RECV: u32 = 323; +pub const F_JSON_SEND: u32 = 324; +pub const F_INDEX_AM_HANDLER_IN: u32 = 326; +pub const F_INDEX_AM_HANDLER_OUT: u32 = 327; +pub const F_HASHMACADDR8: u32 = 328; +pub const F_HASH_ACLITEM: u32 = 329; +pub const F_BTHANDLER: u32 = 330; +pub const F_HASHHANDLER: u32 = 331; +pub const F_GISTHANDLER: u32 = 332; +pub const F_GINHANDLER: u32 = 333; +pub const F_SPGHANDLER: u32 = 334; +pub const F_BRINHANDLER: u32 = 335; +pub const F_SCALARLESEL: u32 = 336; +pub const F_SCALARGESEL: u32 = 337; +pub const F_AMVALIDATE: u32 = 338; +pub const F_POLY_SAME: u32 = 339; +pub const F_POLY_CONTAIN: u32 = 340; +pub const F_POLY_LEFT: u32 = 341; +pub const F_POLY_OVERLEFT: u32 = 342; +pub const F_POLY_OVERRIGHT: u32 = 343; +pub const F_POLY_RIGHT: u32 = 344; +pub const F_POLY_CONTAINED: u32 = 345; +pub const F_POLY_OVERLAP: u32 = 346; +pub const F_POLY_IN: u32 = 347; +pub const F_POLY_OUT: u32 = 348; +pub const F_BTINT2CMP: u32 = 350; +pub const F_BTINT4CMP: u32 = 351; +pub const F_BTFLOAT4CMP: u32 = 354; +pub const F_BTFLOAT8CMP: u32 = 355; +pub const F_BTOIDCMP: u32 = 356; +pub const F_DIST_BP: u32 = 357; +pub const F_BTCHARCMP: u32 = 358; +pub const F_BTNAMECMP: u32 = 359; +pub const F_BTTEXTCMP: u32 = 360; +pub const F_LSEG_DISTANCE: u32 = 361; +pub const F_LSEG_INTERPT: u32 = 362; +pub const F_DIST_PS: u32 = 363; +pub const F_DIST_PB: u32 = 364; +pub const F_DIST_SB: u32 = 365; +pub const F_CLOSE_PS: u32 = 366; +pub const F_CLOSE_PB: u32 = 367; +pub const F_CLOSE_SB: u32 = 368; +pub const F_ON_PS: u32 = 369; +pub const F_PATH_DISTANCE: u32 = 370; +pub const F_DIST_PPATH: u32 = 371; +pub const F_ON_SB: u32 = 372; +pub const F_INTER_SB: u32 = 373; +pub const F_STRING_TO_ARRAY_TEXT_TEXT_TEXT: u32 = 376; +pub const F_CASH_CMP: u32 = 377; +pub const F_ARRAY_APPEND: u32 = 378; +pub const F_ARRAY_PREPEND: u32 = 379; +pub const F_DIST_SP: u32 = 380; +pub const F_DIST_BS: u32 = 381; +pub const F_BTARRAYCMP: u32 = 382; +pub const F_ARRAY_CAT: u32 = 383; +pub const F_ARRAY_TO_STRING_ANYARRAY_TEXT_TEXT: u32 = 384; +pub const F_SCALARLEJOINSEL: u32 = 386; +pub const F_ARRAY_NE: u32 = 390; +pub const F_ARRAY_LT: u32 = 391; +pub const F_ARRAY_GT: u32 = 392; +pub const F_ARRAY_LE: u32 = 393; +pub const F_STRING_TO_ARRAY_TEXT_TEXT: u32 = 394; +pub const F_ARRAY_TO_STRING_ANYARRAY_TEXT: u32 = 395; +pub const F_ARRAY_GE: u32 = 396; +pub const F_SCALARGEJOINSEL: u32 = 398; +pub const F_HASHMACADDR: u32 = 399; +pub const F_HASHTEXT: u32 = 400; +pub const F_TEXT_BPCHAR: u32 = 401; +pub const F_BTOIDVECTORCMP: u32 = 404; +pub const F_TEXT_NAME: u32 = 406; +pub const F_NAME_TEXT: u32 = 407; +pub const F_BPCHAR_NAME: u32 = 408; +pub const F_NAME_BPCHAR: u32 = 409; +pub const F_DIST_PATHP: u32 = 421; +pub const F_HASHINET: u32 = 422; +pub const F_HASHINT4EXTENDED: u32 = 425; +pub const F_HASH_NUMERIC: u32 = 432; +pub const F_MACADDR_IN: u32 = 436; +pub const F_MACADDR_OUT: u32 = 437; +pub const F_NUM_NULLS: u32 = 438; +pub const F_NUM_NONNULLS: u32 = 440; +pub const F_HASHINT2EXTENDED: u32 = 441; +pub const F_HASHINT8EXTENDED: u32 = 442; +pub const F_HASHFLOAT4EXTENDED: u32 = 443; +pub const F_HASHFLOAT8EXTENDED: u32 = 444; +pub const F_HASHOIDEXTENDED: u32 = 445; +pub const F_HASHCHAREXTENDED: u32 = 446; +pub const F_HASHNAMEEXTENDED: u32 = 447; +pub const F_HASHTEXTEXTENDED: u32 = 448; +pub const F_HASHINT2: u32 = 449; +pub const F_HASHINT4: u32 = 450; +pub const F_HASHFLOAT4: u32 = 451; +pub const F_HASHFLOAT8: u32 = 452; +pub const F_HASHOID: u32 = 453; +pub const F_HASHCHAR: u32 = 454; +pub const F_HASHNAME: u32 = 455; +pub const F_HASHVARLENA: u32 = 456; +pub const F_HASHOIDVECTOR: u32 = 457; +pub const F_TEXT_LARGER: u32 = 458; +pub const F_TEXT_SMALLER: u32 = 459; +pub const F_INT8IN: u32 = 460; +pub const F_INT8OUT: u32 = 461; +pub const F_INT8UM: u32 = 462; +pub const F_INT8PL: u32 = 463; +pub const F_INT8MI: u32 = 464; +pub const F_INT8MUL: u32 = 465; +pub const F_INT8DIV: u32 = 466; +pub const F_INT8EQ: u32 = 467; +pub const F_INT8NE: u32 = 468; +pub const F_INT8LT: u32 = 469; +pub const F_INT8GT: u32 = 470; +pub const F_INT8LE: u32 = 471; +pub const F_INT8GE: u32 = 472; +pub const F_INT84EQ: u32 = 474; +pub const F_INT84NE: u32 = 475; +pub const F_INT84LT: u32 = 476; +pub const F_INT84GT: u32 = 477; +pub const F_INT84LE: u32 = 478; +pub const F_INT84GE: u32 = 479; +pub const F_INT4_INT8: u32 = 480; +pub const F_INT8_INT4: u32 = 481; +pub const F_FLOAT8_INT8: u32 = 482; +pub const F_INT8_FLOAT8: u32 = 483; +pub const F_ARRAY_LARGER: u32 = 515; +pub const F_ARRAY_SMALLER: u32 = 516; +pub const F_ABBREV_INET: u32 = 598; +pub const F_ABBREV_CIDR: u32 = 599; +pub const F_SET_MASKLEN_INET_INT4: u32 = 605; +pub const F_OIDVECTORNE: u32 = 619; +pub const F_HASH_ARRAY: u32 = 626; +pub const F_SET_MASKLEN_CIDR_INT4: u32 = 635; +pub const F_PG_INDEXAM_HAS_PROPERTY: u32 = 636; +pub const F_PG_INDEX_HAS_PROPERTY: u32 = 637; +pub const F_PG_INDEX_COLUMN_HAS_PROPERTY: u32 = 638; +pub const F_FLOAT4_INT8: u32 = 652; +pub const F_INT8_FLOAT4: u32 = 653; +pub const F_NAMELT: u32 = 655; +pub const F_NAMELE: u32 = 656; +pub const F_NAMEGT: u32 = 657; +pub const F_NAMEGE: u32 = 658; +pub const F_NAMENE: u32 = 659; +pub const F_BPCHAR_BPCHAR_INT4_BOOL: u32 = 668; +pub const F_VARCHAR_VARCHAR_INT4_BOOL: u32 = 669; +pub const F_PG_INDEXAM_PROGRESS_PHASENAME: u32 = 676; +pub const F_OIDVECTORLT: u32 = 677; +pub const F_OIDVECTORLE: u32 = 678; +pub const F_OIDVECTOREQ: u32 = 679; +pub const F_OIDVECTORGE: u32 = 680; +pub const F_OIDVECTORGT: u32 = 681; +pub const F_NETWORK: u32 = 683; +pub const F_NETMASK: u32 = 696; +pub const F_MASKLEN: u32 = 697; +pub const F_BROADCAST: u32 = 698; +pub const F_HOST: u32 = 699; +pub const F_DIST_LP: u32 = 702; +pub const F_DIST_LS: u32 = 704; +pub const F_GETPGUSERNAME: u32 = 710; +pub const F_FAMILY: u32 = 711; +pub const F_INT2_INT8: u32 = 714; +pub const F_LO_CREATE: u32 = 715; +pub const F_OIDLT: u32 = 716; +pub const F_OIDLE: u32 = 717; +pub const F_OCTET_LENGTH_BYTEA: u32 = 720; +pub const F_GET_BYTE: u32 = 721; +pub const F_SET_BYTE: u32 = 722; +pub const F_GET_BIT_BYTEA_INT8: u32 = 723; +pub const F_SET_BIT_BYTEA_INT8_INT4: u32 = 724; +pub const F_DIST_PL: u32 = 725; +pub const F_DIST_SL: u32 = 727; +pub const F_DIST_CPOLY: u32 = 728; +pub const F_POLY_DISTANCE: u32 = 729; +pub const F_TEXT_INET: u32 = 730; +pub const F_TEXT_LT: u32 = 740; +pub const F_TEXT_LE: u32 = 741; +pub const F_TEXT_GT: u32 = 742; +pub const F_TEXT_GE: u32 = 743; +pub const F_ARRAY_EQ: u32 = 744; +pub const F_CURRENT_USER: u32 = 745; +pub const F_SESSION_USER: u32 = 746; +pub const F_ARRAY_DIMS: u32 = 747; +pub const F_ARRAY_NDIMS: u32 = 748; +pub const F_OVERLAY_BYTEA_BYTEA_INT4_INT4: u32 = 749; +pub const F_ARRAY_IN: u32 = 750; +pub const F_ARRAY_OUT: u32 = 751; +pub const F_OVERLAY_BYTEA_BYTEA_INT4: u32 = 752; +pub const F_TRUNC_MACADDR: u32 = 753; +pub const F_INT8_INT2: u32 = 754; +pub const F_LO_IMPORT_TEXT: u32 = 764; +pub const F_LO_EXPORT: u32 = 765; +pub const F_INT4INC: u32 = 766; +pub const F_LO_IMPORT_TEXT_OID: u32 = 767; +pub const F_INT4LARGER: u32 = 768; +pub const F_INT4SMALLER: u32 = 769; +pub const F_INT2LARGER: u32 = 770; +pub const F_INT2SMALLER: u32 = 771; +pub const F_HASHVARLENAEXTENDED: u32 = 772; +pub const F_HASHOIDVECTOREXTENDED: u32 = 776; +pub const F_HASH_ACLITEM_EXTENDED: u32 = 777; +pub const F_HASHMACADDREXTENDED: u32 = 778; +pub const F_HASHINETEXTENDED: u32 = 779; +pub const F_HASH_NUMERIC_EXTENDED: u32 = 780; +pub const F_HASHMACADDR8EXTENDED: u32 = 781; +pub const F_HASH_ARRAY_EXTENDED: u32 = 782; +pub const F_DIST_POLYC: u32 = 785; +pub const F_PG_CLIENT_ENCODING: u32 = 810; +pub const F_CURRENT_QUERY: u32 = 817; +pub const F_MACADDR_EQ: u32 = 830; +pub const F_MACADDR_LT: u32 = 831; +pub const F_MACADDR_LE: u32 = 832; +pub const F_MACADDR_GT: u32 = 833; +pub const F_MACADDR_GE: u32 = 834; +pub const F_MACADDR_NE: u32 = 835; +pub const F_MACADDR_CMP: u32 = 836; +pub const F_INT82PL: u32 = 837; +pub const F_INT82MI: u32 = 838; +pub const F_INT82MUL: u32 = 839; +pub const F_INT82DIV: u32 = 840; +pub const F_INT28PL: u32 = 841; +pub const F_BTINT8CMP: u32 = 842; +pub const F_CASH_MUL_FLT4: u32 = 846; +pub const F_CASH_DIV_FLT4: u32 = 847; +pub const F_FLT4_MUL_CASH: u32 = 848; +pub const F_POSITION_TEXT_TEXT: u32 = 849; +pub const F_TEXTLIKE: u32 = 850; +pub const F_TEXTNLIKE: u32 = 851; +pub const F_INT48EQ: u32 = 852; +pub const F_INT48NE: u32 = 853; +pub const F_INT48LT: u32 = 854; +pub const F_INT48GT: u32 = 855; +pub const F_INT48LE: u32 = 856; +pub const F_INT48GE: u32 = 857; +pub const F_NAMELIKE: u32 = 858; +pub const F_NAMENLIKE: u32 = 859; +pub const F_BPCHAR_CHAR: u32 = 860; +pub const F_CURRENT_DATABASE: u32 = 861; +pub const F_INT4_MUL_CASH: u32 = 862; +pub const F_INT2_MUL_CASH: u32 = 863; +pub const F_CASH_MUL_INT4: u32 = 864; +pub const F_CASH_DIV_INT4: u32 = 865; +pub const F_CASH_MUL_INT2: u32 = 866; +pub const F_CASH_DIV_INT2: u32 = 867; +pub const F_STRPOS: u32 = 868; +pub const F_LOWER_TEXT: u32 = 870; +pub const F_UPPER_TEXT: u32 = 871; +pub const F_INITCAP: u32 = 872; +pub const F_LPAD_TEXT_INT4_TEXT: u32 = 873; +pub const F_RPAD_TEXT_INT4_TEXT: u32 = 874; +pub const F_LTRIM_TEXT_TEXT: u32 = 875; +pub const F_RTRIM_TEXT_TEXT: u32 = 876; +pub const F_SUBSTR_TEXT_INT4_INT4: u32 = 877; +pub const F_TRANSLATE: u32 = 878; +pub const F_LPAD_TEXT_INT4: u32 = 879; +pub const F_RPAD_TEXT_INT4: u32 = 880; +pub const F_LTRIM_TEXT: u32 = 881; +pub const F_RTRIM_TEXT: u32 = 882; +pub const F_SUBSTR_TEXT_INT4: u32 = 883; +pub const F_BTRIM_TEXT_TEXT: u32 = 884; +pub const F_BTRIM_TEXT: u32 = 885; +pub const F_CASH_IN: u32 = 886; +pub const F_CASH_OUT: u32 = 887; +pub const F_CASH_EQ: u32 = 888; +pub const F_CASH_NE: u32 = 889; +pub const F_CASH_LT: u32 = 890; +pub const F_CASH_LE: u32 = 891; +pub const F_CASH_GT: u32 = 892; +pub const F_CASH_GE: u32 = 893; +pub const F_CASH_PL: u32 = 894; +pub const F_CASH_MI: u32 = 895; +pub const F_CASH_MUL_FLT8: u32 = 896; +pub const F_CASH_DIV_FLT8: u32 = 897; +pub const F_CASHLARGER: u32 = 898; +pub const F_CASHSMALLER: u32 = 899; +pub const F_INET_IN: u32 = 910; +pub const F_INET_OUT: u32 = 911; +pub const F_FLT8_MUL_CASH: u32 = 919; +pub const F_NETWORK_EQ: u32 = 920; +pub const F_NETWORK_LT: u32 = 921; +pub const F_NETWORK_LE: u32 = 922; +pub const F_NETWORK_GT: u32 = 923; +pub const F_NETWORK_GE: u32 = 924; +pub const F_NETWORK_NE: u32 = 925; +pub const F_NETWORK_CMP: u32 = 926; +pub const F_NETWORK_SUB: u32 = 927; +pub const F_NETWORK_SUBEQ: u32 = 928; +pub const F_NETWORK_SUP: u32 = 929; +pub const F_NETWORK_SUPEQ: u32 = 930; +pub const F_CASH_WORDS: u32 = 935; +pub const F_SUBSTRING_TEXT_INT4_INT4: u32 = 936; +pub const F_SUBSTRING_TEXT_INT4: u32 = 937; +pub const F_GENERATE_SERIES_TIMESTAMP_TIMESTAMP_INTERVAL: u32 = 938; +pub const F_GENERATE_SERIES_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL: u32 = 939; +pub const F_MOD_INT2_INT2: u32 = 940; +pub const F_MOD_INT4_INT4: u32 = 941; +pub const F_INT28MI: u32 = 942; +pub const F_INT28MUL: u32 = 943; +pub const F_CHAR_TEXT: u32 = 944; +pub const F_INT8MOD: u32 = 945; +pub const F_TEXT_CHAR: u32 = 946; +pub const F_MOD_INT8_INT8: u32 = 947; +pub const F_INT28DIV: u32 = 948; +pub const F_HASHINT8: u32 = 949; +pub const F_LO_OPEN: u32 = 952; +pub const F_LO_CLOSE: u32 = 953; +pub const F_LOREAD: u32 = 954; +pub const F_LOWRITE: u32 = 955; +pub const F_LO_LSEEK: u32 = 956; +pub const F_LO_CREAT: u32 = 957; +pub const F_LO_TELL: u32 = 958; +pub const F_ON_PL: u32 = 959; +pub const F_ON_SL: u32 = 960; +pub const F_CLOSE_PL: u32 = 961; +pub const F_LO_UNLINK: u32 = 964; +pub const F_HASHBPCHAREXTENDED: u32 = 972; +pub const F_PATH_INTER: u32 = 973; +pub const F_AREA_BOX: u32 = 975; +pub const F_WIDTH: u32 = 976; +pub const F_HEIGHT: u32 = 977; +pub const F_BOX_DISTANCE: u32 = 978; +pub const F_AREA_PATH: u32 = 979; +pub const F_BOX_INTERSECT: u32 = 980; +pub const F_DIAGONAL: u32 = 981; +pub const F_PATH_N_LT: u32 = 982; +pub const F_PATH_N_GT: u32 = 983; +pub const F_PATH_N_EQ: u32 = 984; +pub const F_PATH_N_LE: u32 = 985; +pub const F_PATH_N_GE: u32 = 986; +pub const F_PATH_LENGTH: u32 = 987; +pub const F_POINT_NE: u32 = 988; +pub const F_POINT_VERT: u32 = 989; +pub const F_POINT_HORIZ: u32 = 990; +pub const F_POINT_DISTANCE: u32 = 991; +pub const F_SLOPE: u32 = 992; +pub const F_LSEG_POINT_POINT: u32 = 993; +pub const F_LSEG_INTERSECT: u32 = 994; +pub const F_LSEG_PARALLEL: u32 = 995; +pub const F_LSEG_PERP: u32 = 996; +pub const F_LSEG_VERTICAL: u32 = 997; +pub const F_LSEG_HORIZONTAL: u32 = 998; +pub const F_LSEG_EQ: u32 = 999; +pub const F_LO_TRUNCATE: u32 = 1004; +pub const F_TEXTLIKE_SUPPORT: u32 = 1023; +pub const F_TEXTICREGEXEQ_SUPPORT: u32 = 1024; +pub const F_TEXTICLIKE_SUPPORT: u32 = 1025; +pub const F_TIMEZONE_INTERVAL_TIMESTAMPTZ: u32 = 1026; +pub const F_GIST_POINT_COMPRESS: u32 = 1030; +pub const F_ACLITEMIN: u32 = 1031; +pub const F_ACLITEMOUT: u32 = 1032; +pub const F_ACLINSERT: u32 = 1035; +pub const F_ACLREMOVE: u32 = 1036; +pub const F_ACLCONTAINS: u32 = 1037; +pub const F_GETDATABASEENCODING: u32 = 1039; +pub const F_BPCHARIN: u32 = 1044; +pub const F_BPCHAROUT: u32 = 1045; +pub const F_VARCHARIN: u32 = 1046; +pub const F_VARCHAROUT: u32 = 1047; +pub const F_BPCHAREQ: u32 = 1048; +pub const F_BPCHARLT: u32 = 1049; +pub const F_BPCHARLE: u32 = 1050; +pub const F_BPCHARGT: u32 = 1051; +pub const F_BPCHARGE: u32 = 1052; +pub const F_BPCHARNE: u32 = 1053; +pub const F_ACLITEMEQ: u32 = 1062; +pub const F_BPCHAR_LARGER: u32 = 1063; +pub const F_BPCHAR_SMALLER: u32 = 1064; +pub const F_PG_PREPARED_XACT: u32 = 1065; +pub const F_GENERATE_SERIES_INT4_INT4_INT4: u32 = 1066; +pub const F_GENERATE_SERIES_INT4_INT4: u32 = 1067; +pub const F_GENERATE_SERIES_INT8_INT8_INT8: u32 = 1068; +pub const F_GENERATE_SERIES_INT8_INT8: u32 = 1069; +pub const F_BPCHARCMP: u32 = 1078; +pub const F_REGCLASS: u32 = 1079; +pub const F_HASHBPCHAR: u32 = 1080; +pub const F_FORMAT_TYPE: u32 = 1081; +pub const F_DATE_IN: u32 = 1084; +pub const F_DATE_OUT: u32 = 1085; +pub const F_DATE_EQ: u32 = 1086; +pub const F_DATE_LT: u32 = 1087; +pub const F_DATE_LE: u32 = 1088; +pub const F_DATE_GT: u32 = 1089; +pub const F_DATE_GE: u32 = 1090; +pub const F_DATE_NE: u32 = 1091; +pub const F_DATE_CMP: u32 = 1092; +pub const F_TIME_LT: u32 = 1102; +pub const F_TIME_LE: u32 = 1103; +pub const F_TIME_GT: u32 = 1104; +pub const F_TIME_GE: u32 = 1105; +pub const F_TIME_NE: u32 = 1106; +pub const F_TIME_CMP: u32 = 1107; +pub const F_PG_STAT_GET_WAL: u32 = 1136; +pub const F_PG_GET_WAL_REPLAY_PAUSE_STATE: u32 = 1137; +pub const F_DATE_LARGER: u32 = 1138; +pub const F_DATE_SMALLER: u32 = 1139; +pub const F_DATE_MI: u32 = 1140; +pub const F_DATE_PLI: u32 = 1141; +pub const F_DATE_MII: u32 = 1142; +pub const F_TIME_IN: u32 = 1143; +pub const F_TIME_OUT: u32 = 1144; +pub const F_TIME_EQ: u32 = 1145; +pub const F_CIRCLE_ADD_PT: u32 = 1146; +pub const F_CIRCLE_SUB_PT: u32 = 1147; +pub const F_CIRCLE_MUL_PT: u32 = 1148; +pub const F_CIRCLE_DIV_PT: u32 = 1149; +pub const F_TIMESTAMPTZ_IN: u32 = 1150; +pub const F_TIMESTAMPTZ_OUT: u32 = 1151; +pub const F_TIMESTAMPTZ_EQ: u32 = 1152; +pub const F_TIMESTAMPTZ_NE: u32 = 1153; +pub const F_TIMESTAMPTZ_LT: u32 = 1154; +pub const F_TIMESTAMPTZ_LE: u32 = 1155; +pub const F_TIMESTAMPTZ_GE: u32 = 1156; +pub const F_TIMESTAMPTZ_GT: u32 = 1157; +pub const F_TO_TIMESTAMP_FLOAT8: u32 = 1158; +pub const F_TIMEZONE_TEXT_TIMESTAMPTZ: u32 = 1159; +pub const F_INTERVAL_IN: u32 = 1160; +pub const F_INTERVAL_OUT: u32 = 1161; +pub const F_INTERVAL_EQ: u32 = 1162; +pub const F_INTERVAL_NE: u32 = 1163; +pub const F_INTERVAL_LT: u32 = 1164; +pub const F_INTERVAL_LE: u32 = 1165; +pub const F_INTERVAL_GE: u32 = 1166; +pub const F_INTERVAL_GT: u32 = 1167; +pub const F_INTERVAL_UM: u32 = 1168; +pub const F_INTERVAL_PL: u32 = 1169; +pub const F_INTERVAL_MI: u32 = 1170; +pub const F_DATE_PART_TEXT_TIMESTAMPTZ: u32 = 1171; +pub const F_DATE_PART_TEXT_INTERVAL: u32 = 1172; +pub const F_NETWORK_SUBSET_SUPPORT: u32 = 1173; +pub const F_TIMESTAMPTZ_DATE: u32 = 1174; +pub const F_JUSTIFY_HOURS: u32 = 1175; +pub const F_TIMESTAMPTZ_DATE_TIME: u32 = 1176; +pub const F_JSONB_PATH_EXISTS_TZ: u32 = 1177; +pub const F_DATE_TIMESTAMPTZ: u32 = 1178; +pub const F_JSONB_PATH_QUERY_TZ: u32 = 1179; +pub const F_JSONB_PATH_QUERY_ARRAY_TZ: u32 = 1180; +pub const F_AGE_XID: u32 = 1181; +pub const F_TIMESTAMPTZ_MI: u32 = 1188; +pub const F_TIMESTAMPTZ_PL_INTERVAL: u32 = 1189; +pub const F_TIMESTAMPTZ_MI_INTERVAL: u32 = 1190; +pub const F_GENERATE_SUBSCRIPTS_ANYARRAY_INT4_BOOL: u32 = 1191; +pub const F_GENERATE_SUBSCRIPTS_ANYARRAY_INT4: u32 = 1192; +pub const F_ARRAY_FILL_ANYELEMENT__INT4: u32 = 1193; +pub const F_LOG10_FLOAT8: u32 = 1194; +pub const F_TIMESTAMPTZ_SMALLER: u32 = 1195; +pub const F_TIMESTAMPTZ_LARGER: u32 = 1196; +pub const F_INTERVAL_SMALLER: u32 = 1197; +pub const F_INTERVAL_LARGER: u32 = 1198; +pub const F_AGE_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 1199; +pub const F_INTERVAL_INTERVAL_INT4: u32 = 1200; +pub const F_OBJ_DESCRIPTION_OID_NAME: u32 = 1215; +pub const F_COL_DESCRIPTION: u32 = 1216; +pub const F_DATE_TRUNC_TEXT_TIMESTAMPTZ: u32 = 1217; +pub const F_DATE_TRUNC_TEXT_INTERVAL: u32 = 1218; +pub const F_INT8INC: u32 = 1219; +pub const F_INT8ABS: u32 = 1230; +pub const F_INT8LARGER: u32 = 1236; +pub const F_INT8SMALLER: u32 = 1237; +pub const F_TEXTICREGEXEQ: u32 = 1238; +pub const F_TEXTICREGEXNE: u32 = 1239; +pub const F_NAMEICREGEXEQ: u32 = 1240; +pub const F_NAMEICREGEXNE: u32 = 1241; +pub const F_BOOLIN: u32 = 1242; +pub const F_BOOLOUT: u32 = 1243; +pub const F_BYTEAIN: u32 = 1244; +pub const F_CHARIN: u32 = 1245; +pub const F_CHARLT: u32 = 1246; +pub const F_UNIQUE_KEY_RECHECK: u32 = 1250; +pub const F_INT4ABS: u32 = 1251; +pub const F_NAMEREGEXNE: u32 = 1252; +pub const F_INT2ABS: u32 = 1253; +pub const F_TEXTREGEXEQ: u32 = 1254; +pub const F_TEXTREGEXNE: u32 = 1256; +pub const F_TEXTLEN: u32 = 1257; +pub const F_TEXTCAT: u32 = 1258; +pub const F_PG_CHAR_TO_ENCODING: u32 = 1264; +pub const F_TIDNE: u32 = 1265; +pub const F_CIDR_IN: u32 = 1267; +pub const F_PARSE_IDENT: u32 = 1268; +pub const F_PG_COLUMN_SIZE: u32 = 1269; +pub const F_OVERLAPS_TIMETZ_TIMETZ_TIMETZ_TIMETZ: u32 = 1271; +pub const F_DATETIME_PL: u32 = 1272; +pub const F_DATE_PART_TEXT_TIMETZ: u32 = 1273; +pub const F_INT84PL: u32 = 1274; +pub const F_INT84MI: u32 = 1275; +pub const F_INT84MUL: u32 = 1276; +pub const F_INT84DIV: u32 = 1277; +pub const F_INT48PL: u32 = 1278; +pub const F_INT48MI: u32 = 1279; +pub const F_INT48MUL: u32 = 1280; +pub const F_INT48DIV: u32 = 1281; +pub const F_QUOTE_IDENT: u32 = 1282; +pub const F_QUOTE_LITERAL_TEXT: u32 = 1283; +pub const F_DATE_TRUNC_TEXT_TIMESTAMPTZ_TEXT: u32 = 1284; +pub const F_QUOTE_LITERAL_ANYELEMENT: u32 = 1285; +pub const F_ARRAY_FILL_ANYELEMENT__INT4__INT4: u32 = 1286; +pub const F_OID: u32 = 1287; +pub const F_INT8_OID: u32 = 1288; +pub const F_QUOTE_NULLABLE_TEXT: u32 = 1289; +pub const F_QUOTE_NULLABLE_ANYELEMENT: u32 = 1290; +pub const F_SUPPRESS_REDUNDANT_UPDATES_TRIGGER: u32 = 1291; +pub const F_TIDEQ: u32 = 1292; +pub const F_UNNEST_ANYMULTIRANGE: u32 = 1293; +pub const F_CURRTID2: u32 = 1294; +pub const F_JUSTIFY_DAYS: u32 = 1295; +pub const F_TIMEDATE_PL: u32 = 1296; +pub const F_DATETIMETZ_PL: u32 = 1297; +pub const F_TIMETZDATE_PL: u32 = 1298; +pub const F_NOW: u32 = 1299; +pub const F_POSITIONSEL: u32 = 1300; +pub const F_POSITIONJOINSEL: u32 = 1301; +pub const F_CONTSEL: u32 = 1302; +pub const F_CONTJOINSEL: u32 = 1303; +pub const F_OVERLAPS_TIMESTAMPTZ_TIMESTAMPTZ_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 1304; +pub const F_OVERLAPS_TIMESTAMPTZ_INTERVAL_TIMESTAMPTZ_INTERVAL: u32 = 1305; +pub const F_OVERLAPS_TIMESTAMPTZ_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL: u32 = 1306; +pub const F_OVERLAPS_TIMESTAMPTZ_INTERVAL_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 1307; +pub const F_OVERLAPS_TIME_TIME_TIME_TIME: u32 = 1308; +pub const F_OVERLAPS_TIME_INTERVAL_TIME_INTERVAL: u32 = 1309; +pub const F_OVERLAPS_TIME_TIME_TIME_INTERVAL: u32 = 1310; +pub const F_OVERLAPS_TIME_INTERVAL_TIME_TIME: u32 = 1311; +pub const F_TIMESTAMP_IN: u32 = 1312; +pub const F_TIMESTAMP_OUT: u32 = 1313; +pub const F_TIMESTAMPTZ_CMP: u32 = 1314; +pub const F_INTERVAL_CMP: u32 = 1315; +pub const F_TIME_TIMESTAMP: u32 = 1316; +pub const F_LENGTH_TEXT: u32 = 1317; +pub const F_LENGTH_BPCHAR: u32 = 1318; +pub const F_XIDEQINT4: u32 = 1319; +pub const F_INTERVAL_DIV: u32 = 1326; +pub const F_DLOG10: u32 = 1339; +pub const F_LOG_FLOAT8: u32 = 1340; +pub const F_LN_FLOAT8: u32 = 1341; +pub const F_ROUND_FLOAT8: u32 = 1342; +pub const F_TRUNC_FLOAT8: u32 = 1343; +pub const F_SQRT_FLOAT8: u32 = 1344; +pub const F_CBRT: u32 = 1345; +pub const F_POW_FLOAT8_FLOAT8: u32 = 1346; +pub const F_EXP_FLOAT8: u32 = 1347; +pub const F_OBJ_DESCRIPTION_OID: u32 = 1348; +pub const F_OIDVECTORTYPES: u32 = 1349; +pub const F_TIMETZ_IN: u32 = 1350; +pub const F_TIMETZ_OUT: u32 = 1351; +pub const F_TIMETZ_EQ: u32 = 1352; +pub const F_TIMETZ_NE: u32 = 1353; +pub const F_TIMETZ_LT: u32 = 1354; +pub const F_TIMETZ_LE: u32 = 1355; +pub const F_TIMETZ_GE: u32 = 1356; +pub const F_TIMETZ_GT: u32 = 1357; +pub const F_TIMETZ_CMP: u32 = 1358; +pub const F_TIMESTAMPTZ_DATE_TIMETZ: u32 = 1359; +pub const F_HOSTMASK: u32 = 1362; +pub const F_TEXTREGEXEQ_SUPPORT: u32 = 1364; +pub const F_MAKEACLITEM: u32 = 1365; +pub const F_CHARACTER_LENGTH_BPCHAR: u32 = 1367; +pub const F_POWER_FLOAT8_FLOAT8: u32 = 1368; +pub const F_CHARACTER_LENGTH_TEXT: u32 = 1369; +pub const F_INTERVAL_TIME: u32 = 1370; +pub const F_PG_LOCK_STATUS: u32 = 1371; +pub const F_CHAR_LENGTH_BPCHAR: u32 = 1372; +pub const F_ISFINITE_DATE: u32 = 1373; +pub const F_OCTET_LENGTH_TEXT: u32 = 1374; +pub const F_OCTET_LENGTH_BPCHAR: u32 = 1375; +pub const F_FACTORIAL: u32 = 1376; +pub const F_TIME_LARGER: u32 = 1377; +pub const F_TIME_SMALLER: u32 = 1378; +pub const F_TIMETZ_LARGER: u32 = 1379; +pub const F_TIMETZ_SMALLER: u32 = 1380; +pub const F_CHAR_LENGTH_TEXT: u32 = 1381; +pub const F_DATE_PART_TEXT_DATE: u32 = 1384; +pub const F_DATE_PART_TEXT_TIME: u32 = 1385; +pub const F_AGE_TIMESTAMPTZ: u32 = 1386; +pub const F_PG_GET_CONSTRAINTDEF_OID: u32 = 1387; +pub const F_TIMETZ_TIMESTAMPTZ: u32 = 1388; +pub const F_ISFINITE_TIMESTAMPTZ: u32 = 1389; +pub const F_ISFINITE_INTERVAL: u32 = 1390; +pub const F_PG_STAT_GET_BACKEND_START: u32 = 1391; +pub const F_PG_STAT_GET_BACKEND_CLIENT_ADDR: u32 = 1392; +pub const F_PG_STAT_GET_BACKEND_CLIENT_PORT: u32 = 1393; +pub const F_ABS_FLOAT4: u32 = 1394; +pub const F_ABS_FLOAT8: u32 = 1395; +pub const F_ABS_INT8: u32 = 1396; +pub const F_ABS_INT4: u32 = 1397; +pub const F_ABS_INT2: u32 = 1398; +pub const F_NAME_VARCHAR: u32 = 1400; +pub const F_VARCHAR_NAME: u32 = 1401; +pub const F_CURRENT_SCHEMA: u32 = 1402; +pub const F_CURRENT_SCHEMAS: u32 = 1403; +pub const F_OVERLAY_TEXT_TEXT_INT4_INT4: u32 = 1404; +pub const F_OVERLAY_TEXT_TEXT_INT4: u32 = 1405; +pub const F_ISVERTICAL_POINT_POINT: u32 = 1406; +pub const F_ISHORIZONTAL_POINT_POINT: u32 = 1407; +pub const F_ISPARALLEL_LSEG_LSEG: u32 = 1408; +pub const F_ISPERP_LSEG_LSEG: u32 = 1409; +pub const F_ISVERTICAL_LSEG: u32 = 1410; +pub const F_ISHORIZONTAL_LSEG: u32 = 1411; +pub const F_ISPARALLEL_LINE_LINE: u32 = 1412; +pub const F_ISPERP_LINE_LINE: u32 = 1413; +pub const F_ISVERTICAL_LINE: u32 = 1414; +pub const F_ISHORIZONTAL_LINE: u32 = 1415; +pub const F_POINT_CIRCLE: u32 = 1416; +pub const F_TIME_INTERVAL: u32 = 1419; +pub const F_BOX_POINT_POINT: u32 = 1421; +pub const F_BOX_ADD: u32 = 1422; +pub const F_BOX_SUB: u32 = 1423; +pub const F_BOX_MUL: u32 = 1424; +pub const F_BOX_DIV: u32 = 1425; +pub const F_PATH_CONTAIN_PT: u32 = 1426; +pub const F_CIDR_OUT: u32 = 1427; +pub const F_POLY_CONTAIN_PT: u32 = 1428; +pub const F_PT_CONTAINED_POLY: u32 = 1429; +pub const F_ISCLOSED: u32 = 1430; +pub const F_ISOPEN: u32 = 1431; +pub const F_PATH_NPOINTS: u32 = 1432; +pub const F_PCLOSE: u32 = 1433; +pub const F_POPEN: u32 = 1434; +pub const F_PATH_ADD: u32 = 1435; +pub const F_PATH_ADD_PT: u32 = 1436; +pub const F_PATH_SUB_PT: u32 = 1437; +pub const F_PATH_MUL_PT: u32 = 1438; +pub const F_PATH_DIV_PT: u32 = 1439; +pub const F_POINT_FLOAT8_FLOAT8: u32 = 1440; +pub const F_POINT_ADD: u32 = 1441; +pub const F_POINT_SUB: u32 = 1442; +pub const F_POINT_MUL: u32 = 1443; +pub const F_POINT_DIV: u32 = 1444; +pub const F_POLY_NPOINTS: u32 = 1445; +pub const F_BOX_POLYGON: u32 = 1446; +pub const F_PATH: u32 = 1447; +pub const F_POLYGON_BOX: u32 = 1448; +pub const F_POLYGON_PATH: u32 = 1449; +pub const F_CIRCLE_IN: u32 = 1450; +pub const F_CIRCLE_OUT: u32 = 1451; +pub const F_CIRCLE_SAME: u32 = 1452; +pub const F_CIRCLE_CONTAIN: u32 = 1453; +pub const F_CIRCLE_LEFT: u32 = 1454; +pub const F_CIRCLE_OVERLEFT: u32 = 1455; +pub const F_CIRCLE_OVERRIGHT: u32 = 1456; +pub const F_CIRCLE_RIGHT: u32 = 1457; +pub const F_CIRCLE_CONTAINED: u32 = 1458; +pub const F_CIRCLE_OVERLAP: u32 = 1459; +pub const F_CIRCLE_BELOW: u32 = 1460; +pub const F_CIRCLE_ABOVE: u32 = 1461; +pub const F_CIRCLE_EQ: u32 = 1462; +pub const F_CIRCLE_NE: u32 = 1463; +pub const F_CIRCLE_LT: u32 = 1464; +pub const F_CIRCLE_GT: u32 = 1465; +pub const F_CIRCLE_LE: u32 = 1466; +pub const F_CIRCLE_GE: u32 = 1467; +pub const F_AREA_CIRCLE: u32 = 1468; +pub const F_DIAMETER: u32 = 1469; +pub const F_RADIUS: u32 = 1470; +pub const F_CIRCLE_DISTANCE: u32 = 1471; +pub const F_CIRCLE_CENTER: u32 = 1472; +pub const F_CIRCLE_POINT_FLOAT8: u32 = 1473; +pub const F_CIRCLE_POLYGON: u32 = 1474; +pub const F_POLYGON_INT4_CIRCLE: u32 = 1475; +pub const F_DIST_PC: u32 = 1476; +pub const F_CIRCLE_CONTAIN_PT: u32 = 1477; +pub const F_PT_CONTAINED_CIRCLE: u32 = 1478; +pub const F_CIRCLE_BOX: u32 = 1479; +pub const F_BOX_CIRCLE: u32 = 1480; +pub const F_LOG10_NUMERIC: u32 = 1481; +pub const F_LSEG_NE: u32 = 1482; +pub const F_LSEG_LT: u32 = 1483; +pub const F_LSEG_LE: u32 = 1484; +pub const F_LSEG_GT: u32 = 1485; +pub const F_LSEG_GE: u32 = 1486; +pub const F_LSEG_LENGTH: u32 = 1487; +pub const F_CLOSE_LS: u32 = 1488; +pub const F_CLOSE_LSEG: u32 = 1489; +pub const F_LINE_IN: u32 = 1490; +pub const F_LINE_OUT: u32 = 1491; +pub const F_LINE_EQ: u32 = 1492; +pub const F_LINE: u32 = 1493; +pub const F_LINE_INTERPT: u32 = 1494; +pub const F_LINE_INTERSECT: u32 = 1495; +pub const F_LINE_PARALLEL: u32 = 1496; +pub const F_LINE_PERP: u32 = 1497; +pub const F_LINE_VERTICAL: u32 = 1498; +pub const F_LINE_HORIZONTAL: u32 = 1499; +pub const F_LENGTH_LSEG: u32 = 1530; +pub const F_LENGTH_PATH: u32 = 1531; +pub const F_POINT_LSEG: u32 = 1532; +pub const F_POINT_BOX: u32 = 1534; +pub const F_POINT_POLYGON: u32 = 1540; +pub const F_LSEG_BOX: u32 = 1541; +pub const F_CENTER_BOX: u32 = 1542; +pub const F_CENTER_CIRCLE: u32 = 1543; +pub const F_POLYGON_CIRCLE: u32 = 1544; +pub const F_NPOINTS_PATH: u32 = 1545; +pub const F_NPOINTS_POLYGON: u32 = 1556; +pub const F_BIT_IN: u32 = 1564; +pub const F_BIT_OUT: u32 = 1565; +pub const F_LIKE_TEXT_TEXT: u32 = 1569; +pub const F_NOTLIKE_TEXT_TEXT: u32 = 1570; +pub const F_LIKE_NAME_TEXT: u32 = 1571; +pub const F_NOTLIKE_NAME_TEXT: u32 = 1572; +pub const F_PG_GET_RULEDEF_OID: u32 = 1573; +pub const F_NEXTVAL: u32 = 1574; +pub const F_CURRVAL: u32 = 1575; +pub const F_SETVAL_REGCLASS_INT8: u32 = 1576; +pub const F_VARBIT_IN: u32 = 1579; +pub const F_VARBIT_OUT: u32 = 1580; +pub const F_BITEQ: u32 = 1581; +pub const F_BITNE: u32 = 1582; +pub const F_BITGE: u32 = 1592; +pub const F_BITGT: u32 = 1593; +pub const F_BITLE: u32 = 1594; +pub const F_BITLT: u32 = 1595; +pub const F_BITCMP: u32 = 1596; +pub const F_PG_ENCODING_TO_CHAR: u32 = 1597; +pub const F_RANDOM_: u32 = 1598; +pub const F_SETSEED: u32 = 1599; +pub const F_ASIN: u32 = 1600; +pub const F_ACOS: u32 = 1601; +pub const F_ATAN: u32 = 1602; +pub const F_ATAN2: u32 = 1603; +pub const F_SIN: u32 = 1604; +pub const F_COS: u32 = 1605; +pub const F_TAN: u32 = 1606; +pub const F_COT: u32 = 1607; +pub const F_DEGREES: u32 = 1608; +pub const F_RADIANS: u32 = 1609; +pub const F_PI: u32 = 1610; +pub const F_INTERVAL_MUL: u32 = 1618; +pub const F_PG_TYPEOF: u32 = 1619; +pub const F_ASCII: u32 = 1620; +pub const F_CHR: u32 = 1621; +pub const F_REPEAT: u32 = 1622; +pub const F_SIMILAR_ESCAPE: u32 = 1623; +pub const F_MUL_D_INTERVAL: u32 = 1624; +pub const F_BPCHARLIKE: u32 = 1631; +pub const F_BPCHARNLIKE: u32 = 1632; +pub const F_TEXTICLIKE: u32 = 1633; +pub const F_TEXTICNLIKE: u32 = 1634; +pub const F_NAMEICLIKE: u32 = 1635; +pub const F_NAMEICNLIKE: u32 = 1636; +pub const F_LIKE_ESCAPE_TEXT_TEXT: u32 = 1637; +pub const F_OIDGT: u32 = 1638; +pub const F_OIDGE: u32 = 1639; +pub const F_PG_GET_VIEWDEF_TEXT: u32 = 1640; +pub const F_PG_GET_VIEWDEF_OID: u32 = 1641; +pub const F_PG_GET_USERBYID: u32 = 1642; +pub const F_PG_GET_INDEXDEF_OID: u32 = 1643; +pub const F_RI_FKEY_CHECK_INS: u32 = 1644; +pub const F_RI_FKEY_CHECK_UPD: u32 = 1645; +pub const F_RI_FKEY_CASCADE_DEL: u32 = 1646; +pub const F_RI_FKEY_CASCADE_UPD: u32 = 1647; +pub const F_RI_FKEY_RESTRICT_DEL: u32 = 1648; +pub const F_RI_FKEY_RESTRICT_UPD: u32 = 1649; +pub const F_RI_FKEY_SETNULL_DEL: u32 = 1650; +pub const F_RI_FKEY_SETNULL_UPD: u32 = 1651; +pub const F_RI_FKEY_SETDEFAULT_DEL: u32 = 1652; +pub const F_RI_FKEY_SETDEFAULT_UPD: u32 = 1653; +pub const F_RI_FKEY_NOACTION_DEL: u32 = 1654; +pub const F_RI_FKEY_NOACTION_UPD: u32 = 1655; +pub const F_BPCHARICREGEXEQ: u32 = 1656; +pub const F_BPCHARICREGEXNE: u32 = 1657; +pub const F_BPCHARREGEXEQ: u32 = 1658; +pub const F_BPCHARREGEXNE: u32 = 1659; +pub const F_BPCHARICLIKE: u32 = 1660; +pub const F_BPCHARICNLIKE: u32 = 1661; +pub const F_PG_GET_TRIGGERDEF_OID: u32 = 1662; +pub const F_PG_GET_SERIAL_SEQUENCE: u32 = 1665; +pub const F_VARBITEQ: u32 = 1666; +pub const F_VARBITNE: u32 = 1667; +pub const F_VARBITGE: u32 = 1668; +pub const F_VARBITGT: u32 = 1669; +pub const F_VARBITLE: u32 = 1670; +pub const F_VARBITLT: u32 = 1671; +pub const F_VARBITCMP: u32 = 1672; +pub const F_BITAND: u32 = 1673; +pub const F_BITOR: u32 = 1674; +pub const F_BITXOR: u32 = 1675; +pub const F_BITNOT: u32 = 1676; +pub const F_BITSHIFTLEFT: u32 = 1677; +pub const F_BITSHIFTRIGHT: u32 = 1678; +pub const F_BITCAT: u32 = 1679; +pub const F_SUBSTRING_BIT_INT4_INT4: u32 = 1680; +pub const F_LENGTH_BIT: u32 = 1681; +pub const F_OCTET_LENGTH_BIT: u32 = 1682; +pub const F_BIT_INT4_INT4: u32 = 1683; +pub const F_INT4_BIT: u32 = 1684; +pub const F_BIT_BIT_INT4_BOOL: u32 = 1685; +pub const F_PG_GET_KEYWORDS: u32 = 1686; +pub const F_VARBIT: u32 = 1687; +pub const F_TIME_HASH: u32 = 1688; +pub const F_ACLEXPLODE: u32 = 1689; +pub const F_TIME_MI_TIME: u32 = 1690; +pub const F_BOOLLE: u32 = 1691; +pub const F_BOOLGE: u32 = 1692; +pub const F_BTBOOLCMP: u32 = 1693; +pub const F_TIMETZ_HASH: u32 = 1696; +pub const F_INTERVAL_HASH: u32 = 1697; +pub const F_POSITION_BIT_BIT: u32 = 1698; +pub const F_SUBSTRING_BIT_INT4: u32 = 1699; +pub const F_NUMERIC_IN: u32 = 1701; +pub const F_NUMERIC_OUT: u32 = 1702; +pub const F_NUMERIC_NUMERIC_INT4: u32 = 1703; +pub const F_NUMERIC_ABS: u32 = 1704; +pub const F_ABS_NUMERIC: u32 = 1705; +pub const F_SIGN_NUMERIC: u32 = 1706; +pub const F_ROUND_NUMERIC_INT4: u32 = 1707; +pub const F_ROUND_NUMERIC: u32 = 1708; +pub const F_TRUNC_NUMERIC_INT4: u32 = 1709; +pub const F_TRUNC_NUMERIC: u32 = 1710; +pub const F_CEIL_NUMERIC: u32 = 1711; +pub const F_FLOOR_NUMERIC: u32 = 1712; +pub const F_LENGTH_BYTEA_NAME: u32 = 1713; +pub const F_CONVERT_FROM: u32 = 1714; +pub const F_CIDR: u32 = 1715; +pub const F_PG_GET_EXPR_PG_NODE_TREE_OID: u32 = 1716; +pub const F_CONVERT_TO: u32 = 1717; +pub const F_NUMERIC_EQ: u32 = 1718; +pub const F_NUMERIC_NE: u32 = 1719; +pub const F_NUMERIC_GT: u32 = 1720; +pub const F_NUMERIC_GE: u32 = 1721; +pub const F_NUMERIC_LT: u32 = 1722; +pub const F_NUMERIC_LE: u32 = 1723; +pub const F_NUMERIC_ADD: u32 = 1724; +pub const F_NUMERIC_SUB: u32 = 1725; +pub const F_NUMERIC_MUL: u32 = 1726; +pub const F_NUMERIC_DIV: u32 = 1727; +pub const F_MOD_NUMERIC_NUMERIC: u32 = 1728; +pub const F_NUMERIC_MOD: u32 = 1729; +pub const F_SQRT_NUMERIC: u32 = 1730; +pub const F_NUMERIC_SQRT: u32 = 1731; +pub const F_EXP_NUMERIC: u32 = 1732; +pub const F_NUMERIC_EXP: u32 = 1733; +pub const F_LN_NUMERIC: u32 = 1734; +pub const F_NUMERIC_LN: u32 = 1735; +pub const F_LOG_NUMERIC_NUMERIC: u32 = 1736; +pub const F_NUMERIC_LOG: u32 = 1737; +pub const F_POW_NUMERIC_NUMERIC: u32 = 1738; +pub const F_NUMERIC_POWER: u32 = 1739; +pub const F_NUMERIC_INT4: u32 = 1740; +pub const F_LOG_NUMERIC: u32 = 1741; +pub const F_NUMERIC_FLOAT4: u32 = 1742; +pub const F_NUMERIC_FLOAT8: u32 = 1743; +pub const F_INT4_NUMERIC: u32 = 1744; +pub const F_FLOAT4_NUMERIC: u32 = 1745; +pub const F_FLOAT8_NUMERIC: u32 = 1746; +pub const F_TIME_PL_INTERVAL: u32 = 1747; +pub const F_TIME_MI_INTERVAL: u32 = 1748; +pub const F_TIMETZ_PL_INTERVAL: u32 = 1749; +pub const F_TIMETZ_MI_INTERVAL: u32 = 1750; +pub const F_NUMERIC_INC: u32 = 1764; +pub const F_SETVAL_REGCLASS_INT8_BOOL: u32 = 1765; +pub const F_NUMERIC_SMALLER: u32 = 1766; +pub const F_NUMERIC_LARGER: u32 = 1767; +pub const F_TO_CHAR_INTERVAL_TEXT: u32 = 1768; +pub const F_NUMERIC_CMP: u32 = 1769; +pub const F_TO_CHAR_TIMESTAMPTZ_TEXT: u32 = 1770; +pub const F_NUMERIC_UMINUS: u32 = 1771; +pub const F_TO_CHAR_NUMERIC_TEXT: u32 = 1772; +pub const F_TO_CHAR_INT4_TEXT: u32 = 1773; +pub const F_TO_CHAR_INT8_TEXT: u32 = 1774; +pub const F_TO_CHAR_FLOAT4_TEXT: u32 = 1775; +pub const F_TO_CHAR_FLOAT8_TEXT: u32 = 1776; +pub const F_TO_NUMBER: u32 = 1777; +pub const F_TO_TIMESTAMP_TEXT_TEXT: u32 = 1778; +pub const F_INT8_NUMERIC: u32 = 1779; +pub const F_TO_DATE: u32 = 1780; +pub const F_NUMERIC_INT8: u32 = 1781; +pub const F_NUMERIC_INT2: u32 = 1782; +pub const F_INT2_NUMERIC: u32 = 1783; +pub const F_OIDIN: u32 = 1798; +pub const F_OIDOUT: u32 = 1799; +pub const F_BIT_LENGTH_BYTEA: u32 = 1810; +pub const F_BIT_LENGTH_TEXT: u32 = 1811; +pub const F_BIT_LENGTH_BIT: u32 = 1812; +pub const F_CONVERT: u32 = 1813; +pub const F_ICLIKESEL: u32 = 1814; +pub const F_ICNLIKESEL: u32 = 1815; +pub const F_ICLIKEJOINSEL: u32 = 1816; +pub const F_ICNLIKEJOINSEL: u32 = 1817; +pub const F_REGEXEQSEL: u32 = 1818; +pub const F_LIKESEL: u32 = 1819; +pub const F_ICREGEXEQSEL: u32 = 1820; +pub const F_REGEXNESEL: u32 = 1821; +pub const F_NLIKESEL: u32 = 1822; +pub const F_ICREGEXNESEL: u32 = 1823; +pub const F_REGEXEQJOINSEL: u32 = 1824; +pub const F_LIKEJOINSEL: u32 = 1825; +pub const F_ICREGEXEQJOINSEL: u32 = 1826; +pub const F_REGEXNEJOINSEL: u32 = 1827; +pub const F_NLIKEJOINSEL: u32 = 1828; +pub const F_ICREGEXNEJOINSEL: u32 = 1829; +pub const F_FLOAT8_AVG: u32 = 1830; +pub const F_FLOAT8_VAR_SAMP: u32 = 1831; +pub const F_FLOAT8_STDDEV_SAMP: u32 = 1832; +pub const F_NUMERIC_ACCUM: u32 = 1833; +pub const F_INT2_ACCUM: u32 = 1834; +pub const F_INT4_ACCUM: u32 = 1835; +pub const F_INT8_ACCUM: u32 = 1836; +pub const F_NUMERIC_AVG: u32 = 1837; +pub const F_NUMERIC_VAR_SAMP: u32 = 1838; +pub const F_NUMERIC_STDDEV_SAMP: u32 = 1839; +pub const F_INT2_SUM: u32 = 1840; +pub const F_INT4_SUM: u32 = 1841; +pub const F_INT8_SUM: u32 = 1842; +pub const F_INTERVAL_AVG_ACCUM: u32 = 1843; +pub const F_INTERVAL_AVG: u32 = 1844; +pub const F_TO_ASCII_TEXT: u32 = 1845; +pub const F_TO_ASCII_TEXT_INT4: u32 = 1846; +pub const F_TO_ASCII_TEXT_NAME: u32 = 1847; +pub const F_INTERVAL_PL_TIME: u32 = 1848; +pub const F_INT28EQ: u32 = 1850; +pub const F_INT28NE: u32 = 1851; +pub const F_INT28LT: u32 = 1852; +pub const F_INT28GT: u32 = 1853; +pub const F_INT28LE: u32 = 1854; +pub const F_INT28GE: u32 = 1855; +pub const F_INT82EQ: u32 = 1856; +pub const F_INT82NE: u32 = 1857; +pub const F_INT82LT: u32 = 1858; +pub const F_INT82GT: u32 = 1859; +pub const F_INT82LE: u32 = 1860; +pub const F_INT82GE: u32 = 1861; +pub const F_INT2AND: u32 = 1892; +pub const F_INT2OR: u32 = 1893; +pub const F_INT2XOR: u32 = 1894; +pub const F_INT2NOT: u32 = 1895; +pub const F_INT2SHL: u32 = 1896; +pub const F_INT2SHR: u32 = 1897; +pub const F_INT4AND: u32 = 1898; +pub const F_INT4OR: u32 = 1899; +pub const F_INT4XOR: u32 = 1900; +pub const F_INT4NOT: u32 = 1901; +pub const F_INT4SHL: u32 = 1902; +pub const F_INT4SHR: u32 = 1903; +pub const F_INT8AND: u32 = 1904; +pub const F_INT8OR: u32 = 1905; +pub const F_INT8XOR: u32 = 1906; +pub const F_INT8NOT: u32 = 1907; +pub const F_INT8SHL: u32 = 1908; +pub const F_INT8SHR: u32 = 1909; +pub const F_INT8UP: u32 = 1910; +pub const F_INT2UP: u32 = 1911; +pub const F_INT4UP: u32 = 1912; +pub const F_FLOAT4UP: u32 = 1913; +pub const F_FLOAT8UP: u32 = 1914; +pub const F_NUMERIC_UPLUS: u32 = 1915; +pub const F_HAS_TABLE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 1922; +pub const F_HAS_TABLE_PRIVILEGE_NAME_OID_TEXT: u32 = 1923; +pub const F_HAS_TABLE_PRIVILEGE_OID_TEXT_TEXT: u32 = 1924; +pub const F_HAS_TABLE_PRIVILEGE_OID_OID_TEXT: u32 = 1925; +pub const F_HAS_TABLE_PRIVILEGE_TEXT_TEXT: u32 = 1926; +pub const F_HAS_TABLE_PRIVILEGE_OID_TEXT: u32 = 1927; +pub const F_PG_STAT_GET_NUMSCANS: u32 = 1928; +pub const F_PG_STAT_GET_TUPLES_RETURNED: u32 = 1929; +pub const F_PG_STAT_GET_TUPLES_FETCHED: u32 = 1930; +pub const F_PG_STAT_GET_TUPLES_INSERTED: u32 = 1931; +pub const F_PG_STAT_GET_TUPLES_UPDATED: u32 = 1932; +pub const F_PG_STAT_GET_TUPLES_DELETED: u32 = 1933; +pub const F_PG_STAT_GET_BLOCKS_FETCHED: u32 = 1934; +pub const F_PG_STAT_GET_BLOCKS_HIT: u32 = 1935; +pub const F_PG_STAT_GET_BACKEND_IDSET: u32 = 1936; +pub const F_PG_STAT_GET_BACKEND_PID: u32 = 1937; +pub const F_PG_STAT_GET_BACKEND_DBID: u32 = 1938; +pub const F_PG_STAT_GET_BACKEND_USERID: u32 = 1939; +pub const F_PG_STAT_GET_BACKEND_ACTIVITY: u32 = 1940; +pub const F_PG_STAT_GET_DB_NUMBACKENDS: u32 = 1941; +pub const F_PG_STAT_GET_DB_XACT_COMMIT: u32 = 1942; +pub const F_PG_STAT_GET_DB_XACT_ROLLBACK: u32 = 1943; +pub const F_PG_STAT_GET_DB_BLOCKS_FETCHED: u32 = 1944; +pub const F_PG_STAT_GET_DB_BLOCKS_HIT: u32 = 1945; +pub const F_ENCODE: u32 = 1946; +pub const F_DECODE: u32 = 1947; +pub const F_BYTEAEQ: u32 = 1948; +pub const F_BYTEALT: u32 = 1949; +pub const F_BYTEALE: u32 = 1950; +pub const F_BYTEAGT: u32 = 1951; +pub const F_BYTEAGE: u32 = 1952; +pub const F_BYTEANE: u32 = 1953; +pub const F_BYTEACMP: u32 = 1954; +pub const F_TIMESTAMP_TIMESTAMP_INT4: u32 = 1961; +pub const F_INT2_AVG_ACCUM: u32 = 1962; +pub const F_INT4_AVG_ACCUM: u32 = 1963; +pub const F_INT8_AVG: u32 = 1964; +pub const F_OIDLARGER: u32 = 1965; +pub const F_OIDSMALLER: u32 = 1966; +pub const F_TIMESTAMPTZ_TIMESTAMPTZ_INT4: u32 = 1967; +pub const F_TIME_TIME_INT4: u32 = 1968; +pub const F_TIMETZ_TIMETZ_INT4: u32 = 1969; +pub const F_PG_STAT_GET_TUPLES_HOT_UPDATED: u32 = 1972; +pub const F_DIV: u32 = 1973; +pub const F_NUMERIC_DIV_TRUNC: u32 = 1980; +pub const F_SIMILAR_TO_ESCAPE_TEXT_TEXT: u32 = 1986; +pub const F_SIMILAR_TO_ESCAPE_TEXT: u32 = 1987; +pub const F_SHOBJ_DESCRIPTION: u32 = 1993; +pub const F_TEXTANYCAT: u32 = 2003; +pub const F_ANYTEXTCAT: u32 = 2004; +pub const F_BYTEALIKE: u32 = 2005; +pub const F_BYTEANLIKE: u32 = 2006; +pub const F_LIKE_BYTEA_BYTEA: u32 = 2007; +pub const F_NOTLIKE_BYTEA_BYTEA: u32 = 2008; +pub const F_LIKE_ESCAPE_BYTEA_BYTEA: u32 = 2009; +pub const F_LENGTH_BYTEA: u32 = 2010; +pub const F_BYTEACAT: u32 = 2011; +pub const F_SUBSTRING_BYTEA_INT4_INT4: u32 = 2012; +pub const F_SUBSTRING_BYTEA_INT4: u32 = 2013; +pub const F_POSITION_BYTEA_BYTEA: u32 = 2014; +pub const F_BTRIM_BYTEA_BYTEA: u32 = 2015; +pub const F_TIME_TIMESTAMPTZ: u32 = 2019; +pub const F_DATE_TRUNC_TEXT_TIMESTAMP: u32 = 2020; +pub const F_DATE_PART_TEXT_TIMESTAMP: u32 = 2021; +pub const F_PG_STAT_GET_ACTIVITY: u32 = 2022; +pub const F_JSONB_PATH_QUERY_FIRST_TZ: u32 = 2023; +pub const F_TIMESTAMP_DATE: u32 = 2024; +pub const F_TIMESTAMP_DATE_TIME: u32 = 2025; +pub const F_PG_BACKEND_PID: u32 = 2026; +pub const F_TIMESTAMP_TIMESTAMPTZ: u32 = 2027; +pub const F_TIMESTAMPTZ_TIMESTAMP: u32 = 2028; +pub const F_DATE_TIMESTAMP: u32 = 2029; +pub const F_JSONB_PATH_MATCH_TZ: u32 = 2030; +pub const F_TIMESTAMP_MI: u32 = 2031; +pub const F_TIMESTAMP_PL_INTERVAL: u32 = 2032; +pub const F_TIMESTAMP_MI_INTERVAL: u32 = 2033; +pub const F_PG_CONF_LOAD_TIME: u32 = 2034; +pub const F_TIMESTAMP_SMALLER: u32 = 2035; +pub const F_TIMESTAMP_LARGER: u32 = 2036; +pub const F_TIMEZONE_TEXT_TIMETZ: u32 = 2037; +pub const F_TIMEZONE_INTERVAL_TIMETZ: u32 = 2038; +pub const F_TIMESTAMP_HASH: u32 = 2039; +pub const F_OVERLAPS_TIMESTAMP_TIMESTAMP_TIMESTAMP_TIMESTAMP: u32 = 2041; +pub const F_OVERLAPS_TIMESTAMP_INTERVAL_TIMESTAMP_INTERVAL: u32 = 2042; +pub const F_OVERLAPS_TIMESTAMP_TIMESTAMP_TIMESTAMP_INTERVAL: u32 = 2043; +pub const F_OVERLAPS_TIMESTAMP_INTERVAL_TIMESTAMP_TIMESTAMP: u32 = 2044; +pub const F_TIMESTAMP_CMP: u32 = 2045; +pub const F_TIME_TIMETZ: u32 = 2046; +pub const F_TIMETZ_TIME: u32 = 2047; +pub const F_ISFINITE_TIMESTAMP: u32 = 2048; +pub const F_TO_CHAR_TIMESTAMP_TEXT: u32 = 2049; +pub const F_MAX_ANYARRAY: u32 = 2050; +pub const F_MIN_ANYARRAY: u32 = 2051; +pub const F_TIMESTAMP_EQ: u32 = 2052; +pub const F_TIMESTAMP_NE: u32 = 2053; +pub const F_TIMESTAMP_LT: u32 = 2054; +pub const F_TIMESTAMP_LE: u32 = 2055; +pub const F_TIMESTAMP_GE: u32 = 2056; +pub const F_TIMESTAMP_GT: u32 = 2057; +pub const F_AGE_TIMESTAMP_TIMESTAMP: u32 = 2058; +pub const F_AGE_TIMESTAMP: u32 = 2059; +pub const F_TIMEZONE_TEXT_TIMESTAMP: u32 = 2069; +pub const F_TIMEZONE_INTERVAL_TIMESTAMP: u32 = 2070; +pub const F_DATE_PL_INTERVAL: u32 = 2071; +pub const F_DATE_MI_INTERVAL: u32 = 2072; +pub const F_SUBSTRING_TEXT_TEXT: u32 = 2073; +pub const F_SUBSTRING_TEXT_TEXT_TEXT: u32 = 2074; +pub const F_BIT_INT8_INT4: u32 = 2075; +pub const F_INT8_BIT: u32 = 2076; +pub const F_CURRENT_SETTING_TEXT: u32 = 2077; +pub const F_SET_CONFIG: u32 = 2078; +pub const F_PG_TABLE_IS_VISIBLE: u32 = 2079; +pub const F_PG_TYPE_IS_VISIBLE: u32 = 2080; +pub const F_PG_FUNCTION_IS_VISIBLE: u32 = 2081; +pub const F_PG_OPERATOR_IS_VISIBLE: u32 = 2082; +pub const F_PG_OPCLASS_IS_VISIBLE: u32 = 2083; +pub const F_PG_SHOW_ALL_SETTINGS: u32 = 2084; +pub const F_SUBSTR_BYTEA_INT4_INT4: u32 = 2085; +pub const F_SUBSTR_BYTEA_INT4: u32 = 2086; +pub const F_REPLACE: u32 = 2087; +pub const F_SPLIT_PART: u32 = 2088; +pub const F_TO_HEX_INT4: u32 = 2089; +pub const F_TO_HEX_INT8: u32 = 2090; +pub const F_ARRAY_LOWER: u32 = 2091; +pub const F_ARRAY_UPPER: u32 = 2092; +pub const F_PG_CONVERSION_IS_VISIBLE: u32 = 2093; +pub const F_PG_STAT_GET_BACKEND_ACTIVITY_START: u32 = 2094; +pub const F_PG_TERMINATE_BACKEND: u32 = 2096; +pub const F_PG_GET_FUNCTIONDEF: u32 = 2098; +pub const F_AVG_INT8: u32 = 2100; +pub const F_AVG_INT4: u32 = 2101; +pub const F_AVG_INT2: u32 = 2102; +pub const F_AVG_NUMERIC: u32 = 2103; +pub const F_AVG_FLOAT4: u32 = 2104; +pub const F_AVG_FLOAT8: u32 = 2105; +pub const F_AVG_INTERVAL: u32 = 2106; +pub const F_SUM_INT8: u32 = 2107; +pub const F_SUM_INT4: u32 = 2108; +pub const F_SUM_INT2: u32 = 2109; +pub const F_SUM_FLOAT4: u32 = 2110; +pub const F_SUM_FLOAT8: u32 = 2111; +pub const F_SUM_MONEY: u32 = 2112; +pub const F_SUM_INTERVAL: u32 = 2113; +pub const F_SUM_NUMERIC: u32 = 2114; +pub const F_MAX_INT8: u32 = 2115; +pub const F_MAX_INT4: u32 = 2116; +pub const F_MAX_INT2: u32 = 2117; +pub const F_MAX_OID: u32 = 2118; +pub const F_MAX_FLOAT4: u32 = 2119; +pub const F_MAX_FLOAT8: u32 = 2120; +pub const F_PG_COLUMN_COMPRESSION: u32 = 2121; +pub const F_MAX_DATE: u32 = 2122; +pub const F_MAX_TIME: u32 = 2123; +pub const F_MAX_TIMETZ: u32 = 2124; +pub const F_MAX_MONEY: u32 = 2125; +pub const F_MAX_TIMESTAMP: u32 = 2126; +pub const F_MAX_TIMESTAMPTZ: u32 = 2127; +pub const F_MAX_INTERVAL: u32 = 2128; +pub const F_MAX_TEXT: u32 = 2129; +pub const F_MAX_NUMERIC: u32 = 2130; +pub const F_MIN_INT8: u32 = 2131; +pub const F_MIN_INT4: u32 = 2132; +pub const F_MIN_INT2: u32 = 2133; +pub const F_MIN_OID: u32 = 2134; +pub const F_MIN_FLOAT4: u32 = 2135; +pub const F_MIN_FLOAT8: u32 = 2136; +pub const F_PG_STAT_FORCE_NEXT_FLUSH: u32 = 2137; +pub const F_MIN_DATE: u32 = 2138; +pub const F_MIN_TIME: u32 = 2139; +pub const F_MIN_TIMETZ: u32 = 2140; +pub const F_MIN_MONEY: u32 = 2141; +pub const F_MIN_TIMESTAMP: u32 = 2142; +pub const F_MIN_TIMESTAMPTZ: u32 = 2143; +pub const F_MIN_INTERVAL: u32 = 2144; +pub const F_MIN_TEXT: u32 = 2145; +pub const F_MIN_NUMERIC: u32 = 2146; +pub const F_COUNT_ANY: u32 = 2147; +pub const F_VARIANCE_INT8: u32 = 2148; +pub const F_VARIANCE_INT4: u32 = 2149; +pub const F_VARIANCE_INT2: u32 = 2150; +pub const F_VARIANCE_FLOAT4: u32 = 2151; +pub const F_VARIANCE_FLOAT8: u32 = 2152; +pub const F_VARIANCE_NUMERIC: u32 = 2153; +pub const F_STDDEV_INT8: u32 = 2154; +pub const F_STDDEV_INT4: u32 = 2155; +pub const F_STDDEV_INT2: u32 = 2156; +pub const F_STDDEV_FLOAT4: u32 = 2157; +pub const F_STDDEV_FLOAT8: u32 = 2158; +pub const F_STDDEV_NUMERIC: u32 = 2159; +pub const F_TEXT_PATTERN_LT: u32 = 2160; +pub const F_TEXT_PATTERN_LE: u32 = 2161; +pub const F_PG_GET_FUNCTION_ARGUMENTS: u32 = 2162; +pub const F_TEXT_PATTERN_GE: u32 = 2163; +pub const F_TEXT_PATTERN_GT: u32 = 2164; +pub const F_PG_GET_FUNCTION_RESULT: u32 = 2165; +pub const F_BTTEXT_PATTERN_CMP: u32 = 2166; +pub const F_CEILING_NUMERIC: u32 = 2167; +pub const F_PG_DATABASE_SIZE_NAME: u32 = 2168; +pub const F_POWER_NUMERIC_NUMERIC: u32 = 2169; +pub const F_WIDTH_BUCKET_NUMERIC_NUMERIC_NUMERIC_INT4: u32 = 2170; +pub const F_PG_CANCEL_BACKEND: u32 = 2171; +pub const F_PG_BACKUP_START: u32 = 2172; +pub const F_BPCHAR_PATTERN_LT: u32 = 2174; +pub const F_BPCHAR_PATTERN_LE: u32 = 2175; +pub const F_ARRAY_LENGTH: u32 = 2176; +pub const F_BPCHAR_PATTERN_GE: u32 = 2177; +pub const F_BPCHAR_PATTERN_GT: u32 = 2178; +pub const F_GIST_POINT_CONSISTENT: u32 = 2179; +pub const F_BTBPCHAR_PATTERN_CMP: u32 = 2180; +pub const F_HAS_SEQUENCE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2181; +pub const F_HAS_SEQUENCE_PRIVILEGE_NAME_OID_TEXT: u32 = 2182; +pub const F_HAS_SEQUENCE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2183; +pub const F_HAS_SEQUENCE_PRIVILEGE_OID_OID_TEXT: u32 = 2184; +pub const F_HAS_SEQUENCE_PRIVILEGE_TEXT_TEXT: u32 = 2185; +pub const F_HAS_SEQUENCE_PRIVILEGE_OID_TEXT: u32 = 2186; +pub const F_BTINT48CMP: u32 = 2188; +pub const F_BTINT84CMP: u32 = 2189; +pub const F_BTINT24CMP: u32 = 2190; +pub const F_BTINT42CMP: u32 = 2191; +pub const F_BTINT28CMP: u32 = 2192; +pub const F_BTINT82CMP: u32 = 2193; +pub const F_BTFLOAT48CMP: u32 = 2194; +pub const F_BTFLOAT84CMP: u32 = 2195; +pub const F_INET_CLIENT_ADDR: u32 = 2196; +pub const F_INET_CLIENT_PORT: u32 = 2197; +pub const F_INET_SERVER_ADDR: u32 = 2198; +pub const F_INET_SERVER_PORT: u32 = 2199; +pub const F_REGPROCEDUREIN: u32 = 2212; +pub const F_REGPROCEDUREOUT: u32 = 2213; +pub const F_REGOPERIN: u32 = 2214; +pub const F_REGOPEROUT: u32 = 2215; +pub const F_REGOPERATORIN: u32 = 2216; +pub const F_REGOPERATOROUT: u32 = 2217; +pub const F_REGCLASSIN: u32 = 2218; +pub const F_REGCLASSOUT: u32 = 2219; +pub const F_REGTYPEIN: u32 = 2220; +pub const F_REGTYPEOUT: u32 = 2221; +pub const F_PG_STAT_CLEAR_SNAPSHOT: u32 = 2230; +pub const F_PG_GET_FUNCTION_IDENTITY_ARGUMENTS: u32 = 2232; +pub const F_HASHTID: u32 = 2233; +pub const F_HASHTIDEXTENDED: u32 = 2234; +pub const F_BIT_AND_INT2: u32 = 2236; +pub const F_BIT_OR_INT2: u32 = 2237; +pub const F_BIT_AND_INT4: u32 = 2238; +pub const F_BIT_OR_INT4: u32 = 2239; +pub const F_BIT_AND_INT8: u32 = 2240; +pub const F_BIT_OR_INT8: u32 = 2241; +pub const F_BIT_AND_BIT: u32 = 2242; +pub const F_BIT_OR_BIT: u32 = 2243; +pub const F_MAX_BPCHAR: u32 = 2244; +pub const F_MIN_BPCHAR: u32 = 2245; +pub const F_FMGR_INTERNAL_VALIDATOR: u32 = 2246; +pub const F_FMGR_C_VALIDATOR: u32 = 2247; +pub const F_FMGR_SQL_VALIDATOR: u32 = 2248; +pub const F_HAS_DATABASE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2250; +pub const F_HAS_DATABASE_PRIVILEGE_NAME_OID_TEXT: u32 = 2251; +pub const F_HAS_DATABASE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2252; +pub const F_HAS_DATABASE_PRIVILEGE_OID_OID_TEXT: u32 = 2253; +pub const F_HAS_DATABASE_PRIVILEGE_TEXT_TEXT: u32 = 2254; +pub const F_HAS_DATABASE_PRIVILEGE_OID_TEXT: u32 = 2255; +pub const F_HAS_FUNCTION_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2256; +pub const F_HAS_FUNCTION_PRIVILEGE_NAME_OID_TEXT: u32 = 2257; +pub const F_HAS_FUNCTION_PRIVILEGE_OID_TEXT_TEXT: u32 = 2258; +pub const F_HAS_FUNCTION_PRIVILEGE_OID_OID_TEXT: u32 = 2259; +pub const F_HAS_FUNCTION_PRIVILEGE_TEXT_TEXT: u32 = 2260; +pub const F_HAS_FUNCTION_PRIVILEGE_OID_TEXT: u32 = 2261; +pub const F_HAS_LANGUAGE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2262; +pub const F_HAS_LANGUAGE_PRIVILEGE_NAME_OID_TEXT: u32 = 2263; +pub const F_HAS_LANGUAGE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2264; +pub const F_HAS_LANGUAGE_PRIVILEGE_OID_OID_TEXT: u32 = 2265; +pub const F_HAS_LANGUAGE_PRIVILEGE_TEXT_TEXT: u32 = 2266; +pub const F_HAS_LANGUAGE_PRIVILEGE_OID_TEXT: u32 = 2267; +pub const F_HAS_SCHEMA_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2268; +pub const F_HAS_SCHEMA_PRIVILEGE_NAME_OID_TEXT: u32 = 2269; +pub const F_HAS_SCHEMA_PRIVILEGE_OID_TEXT_TEXT: u32 = 2270; +pub const F_HAS_SCHEMA_PRIVILEGE_OID_OID_TEXT: u32 = 2271; +pub const F_HAS_SCHEMA_PRIVILEGE_TEXT_TEXT: u32 = 2272; +pub const F_HAS_SCHEMA_PRIVILEGE_OID_TEXT: u32 = 2273; +pub const F_PG_STAT_RESET: u32 = 2274; +pub const F_PG_GET_BACKEND_MEMORY_CONTEXTS: u32 = 2282; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT: u32 = 2284; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_TEXT: u32 = 2285; +pub const F_PG_TOTAL_RELATION_SIZE: u32 = 2286; +pub const F_PG_SIZE_PRETTY_INT8: u32 = 2288; +pub const F_PG_OPTIONS_TO_TABLE: u32 = 2289; +pub const F_RECORD_IN: u32 = 2290; +pub const F_RECORD_OUT: u32 = 2291; +pub const F_CSTRING_IN: u32 = 2292; +pub const F_CSTRING_OUT: u32 = 2293; +pub const F_ANY_IN: u32 = 2294; +pub const F_ANY_OUT: u32 = 2295; +pub const F_ANYARRAY_IN: u32 = 2296; +pub const F_ANYARRAY_OUT: u32 = 2297; +pub const F_VOID_IN: u32 = 2298; +pub const F_VOID_OUT: u32 = 2299; +pub const F_TRIGGER_IN: u32 = 2300; +pub const F_TRIGGER_OUT: u32 = 2301; +pub const F_LANGUAGE_HANDLER_IN: u32 = 2302; +pub const F_LANGUAGE_HANDLER_OUT: u32 = 2303; +pub const F_INTERNAL_IN: u32 = 2304; +pub const F_INTERNAL_OUT: u32 = 2305; +pub const F_PG_STAT_GET_SLRU: u32 = 2306; +pub const F_PG_STAT_RESET_SLRU: u32 = 2307; +pub const F_CEIL_FLOAT8: u32 = 2308; +pub const F_FLOOR_FLOAT8: u32 = 2309; +pub const F_SIGN_FLOAT8: u32 = 2310; +pub const F_MD5_TEXT: u32 = 2311; +pub const F_ANYELEMENT_IN: u32 = 2312; +pub const F_ANYELEMENT_OUT: u32 = 2313; +pub const F_POSTGRESQL_FDW_VALIDATOR: u32 = 2316; +pub const F_PG_ENCODING_MAX_LENGTH: u32 = 2319; +pub const F_CEILING_FLOAT8: u32 = 2320; +pub const F_MD5_BYTEA: u32 = 2321; +pub const F_PG_TABLESPACE_SIZE_OID: u32 = 2322; +pub const F_PG_TABLESPACE_SIZE_NAME: u32 = 2323; +pub const F_PG_DATABASE_SIZE_OID: u32 = 2324; +pub const F_PG_RELATION_SIZE_REGCLASS: u32 = 2325; +pub const F_UNNEST_ANYARRAY: u32 = 2331; +pub const F_PG_RELATION_SIZE_REGCLASS_TEXT: u32 = 2332; +pub const F_ARRAY_AGG_TRANSFN: u32 = 2333; +pub const F_ARRAY_AGG_FINALFN: u32 = 2334; +pub const F_ARRAY_AGG_ANYNONARRAY: u32 = 2335; +pub const F_DATE_LT_TIMESTAMP: u32 = 2338; +pub const F_DATE_LE_TIMESTAMP: u32 = 2339; +pub const F_DATE_EQ_TIMESTAMP: u32 = 2340; +pub const F_DATE_GT_TIMESTAMP: u32 = 2341; +pub const F_DATE_GE_TIMESTAMP: u32 = 2342; +pub const F_DATE_NE_TIMESTAMP: u32 = 2343; +pub const F_DATE_CMP_TIMESTAMP: u32 = 2344; +pub const F_DATE_LT_TIMESTAMPTZ: u32 = 2351; +pub const F_DATE_LE_TIMESTAMPTZ: u32 = 2352; +pub const F_DATE_EQ_TIMESTAMPTZ: u32 = 2353; +pub const F_DATE_GT_TIMESTAMPTZ: u32 = 2354; +pub const F_DATE_GE_TIMESTAMPTZ: u32 = 2355; +pub const F_DATE_NE_TIMESTAMPTZ: u32 = 2356; +pub const F_DATE_CMP_TIMESTAMPTZ: u32 = 2357; +pub const F_TIMESTAMP_LT_DATE: u32 = 2364; +pub const F_TIMESTAMP_LE_DATE: u32 = 2365; +pub const F_TIMESTAMP_EQ_DATE: u32 = 2366; +pub const F_TIMESTAMP_GT_DATE: u32 = 2367; +pub const F_TIMESTAMP_GE_DATE: u32 = 2368; +pub const F_TIMESTAMP_NE_DATE: u32 = 2369; +pub const F_TIMESTAMP_CMP_DATE: u32 = 2370; +pub const F_TIMESTAMPTZ_LT_DATE: u32 = 2377; +pub const F_TIMESTAMPTZ_LE_DATE: u32 = 2378; +pub const F_TIMESTAMPTZ_EQ_DATE: u32 = 2379; +pub const F_TIMESTAMPTZ_GT_DATE: u32 = 2380; +pub const F_TIMESTAMPTZ_GE_DATE: u32 = 2381; +pub const F_TIMESTAMPTZ_NE_DATE: u32 = 2382; +pub const F_TIMESTAMPTZ_CMP_DATE: u32 = 2383; +pub const F_HAS_TABLESPACE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2390; +pub const F_HAS_TABLESPACE_PRIVILEGE_NAME_OID_TEXT: u32 = 2391; +pub const F_HAS_TABLESPACE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2392; +pub const F_HAS_TABLESPACE_PRIVILEGE_OID_OID_TEXT: u32 = 2393; +pub const F_HAS_TABLESPACE_PRIVILEGE_TEXT_TEXT: u32 = 2394; +pub const F_HAS_TABLESPACE_PRIVILEGE_OID_TEXT: u32 = 2395; +pub const F_SHELL_IN: u32 = 2398; +pub const F_SHELL_OUT: u32 = 2399; +pub const F_ARRAY_RECV: u32 = 2400; +pub const F_ARRAY_SEND: u32 = 2401; +pub const F_RECORD_RECV: u32 = 2402; +pub const F_RECORD_SEND: u32 = 2403; +pub const F_INT2RECV: u32 = 2404; +pub const F_INT2SEND: u32 = 2405; +pub const F_INT4RECV: u32 = 2406; +pub const F_INT4SEND: u32 = 2407; +pub const F_INT8RECV: u32 = 2408; +pub const F_INT8SEND: u32 = 2409; +pub const F_INT2VECTORRECV: u32 = 2410; +pub const F_INT2VECTORSEND: u32 = 2411; +pub const F_BYTEARECV: u32 = 2412; +pub const F_BYTEASEND: u32 = 2413; +pub const F_TEXTRECV: u32 = 2414; +pub const F_TEXTSEND: u32 = 2415; +pub const F_UNKNOWNRECV: u32 = 2416; +pub const F_UNKNOWNSEND: u32 = 2417; +pub const F_OIDRECV: u32 = 2418; +pub const F_OIDSEND: u32 = 2419; +pub const F_OIDVECTORRECV: u32 = 2420; +pub const F_OIDVECTORSEND: u32 = 2421; +pub const F_NAMERECV: u32 = 2422; +pub const F_NAMESEND: u32 = 2423; +pub const F_FLOAT4RECV: u32 = 2424; +pub const F_FLOAT4SEND: u32 = 2425; +pub const F_FLOAT8RECV: u32 = 2426; +pub const F_FLOAT8SEND: u32 = 2427; +pub const F_POINT_RECV: u32 = 2428; +pub const F_POINT_SEND: u32 = 2429; +pub const F_BPCHARRECV: u32 = 2430; +pub const F_BPCHARSEND: u32 = 2431; +pub const F_VARCHARRECV: u32 = 2432; +pub const F_VARCHARSEND: u32 = 2433; +pub const F_CHARRECV: u32 = 2434; +pub const F_CHARSEND: u32 = 2435; +pub const F_BOOLRECV: u32 = 2436; +pub const F_BOOLSEND: u32 = 2437; +pub const F_TIDRECV: u32 = 2438; +pub const F_TIDSEND: u32 = 2439; +pub const F_XIDRECV: u32 = 2440; +pub const F_XIDSEND: u32 = 2441; +pub const F_CIDRECV: u32 = 2442; +pub const F_CIDSEND: u32 = 2443; +pub const F_REGPROCRECV: u32 = 2444; +pub const F_REGPROCSEND: u32 = 2445; +pub const F_REGPROCEDURERECV: u32 = 2446; +pub const F_REGPROCEDURESEND: u32 = 2447; +pub const F_REGOPERRECV: u32 = 2448; +pub const F_REGOPERSEND: u32 = 2449; +pub const F_REGOPERATORRECV: u32 = 2450; +pub const F_REGOPERATORSEND: u32 = 2451; +pub const F_REGCLASSRECV: u32 = 2452; +pub const F_REGCLASSSEND: u32 = 2453; +pub const F_REGTYPERECV: u32 = 2454; +pub const F_REGTYPESEND: u32 = 2455; +pub const F_BIT_RECV: u32 = 2456; +pub const F_BIT_SEND: u32 = 2457; +pub const F_VARBIT_RECV: u32 = 2458; +pub const F_VARBIT_SEND: u32 = 2459; +pub const F_NUMERIC_RECV: u32 = 2460; +pub const F_NUMERIC_SEND: u32 = 2461; +pub const F_SINH: u32 = 2462; +pub const F_COSH: u32 = 2463; +pub const F_TANH: u32 = 2464; +pub const F_ASINH: u32 = 2465; +pub const F_ACOSH: u32 = 2466; +pub const F_ATANH: u32 = 2467; +pub const F_DATE_RECV: u32 = 2468; +pub const F_DATE_SEND: u32 = 2469; +pub const F_TIME_RECV: u32 = 2470; +pub const F_TIME_SEND: u32 = 2471; +pub const F_TIMETZ_RECV: u32 = 2472; +pub const F_TIMETZ_SEND: u32 = 2473; +pub const F_TIMESTAMP_RECV: u32 = 2474; +pub const F_TIMESTAMP_SEND: u32 = 2475; +pub const F_TIMESTAMPTZ_RECV: u32 = 2476; +pub const F_TIMESTAMPTZ_SEND: u32 = 2477; +pub const F_INTERVAL_RECV: u32 = 2478; +pub const F_INTERVAL_SEND: u32 = 2479; +pub const F_LSEG_RECV: u32 = 2480; +pub const F_LSEG_SEND: u32 = 2481; +pub const F_PATH_RECV: u32 = 2482; +pub const F_PATH_SEND: u32 = 2483; +pub const F_BOX_RECV: u32 = 2484; +pub const F_BOX_SEND: u32 = 2485; +pub const F_POLY_RECV: u32 = 2486; +pub const F_POLY_SEND: u32 = 2487; +pub const F_LINE_RECV: u32 = 2488; +pub const F_LINE_SEND: u32 = 2489; +pub const F_CIRCLE_RECV: u32 = 2490; +pub const F_CIRCLE_SEND: u32 = 2491; +pub const F_CASH_RECV: u32 = 2492; +pub const F_CASH_SEND: u32 = 2493; +pub const F_MACADDR_RECV: u32 = 2494; +pub const F_MACADDR_SEND: u32 = 2495; +pub const F_INET_RECV: u32 = 2496; +pub const F_INET_SEND: u32 = 2497; +pub const F_CIDR_RECV: u32 = 2498; +pub const F_CIDR_SEND: u32 = 2499; +pub const F_CSTRING_RECV: u32 = 2500; +pub const F_CSTRING_SEND: u32 = 2501; +pub const F_ANYARRAY_RECV: u32 = 2502; +pub const F_ANYARRAY_SEND: u32 = 2503; +pub const F_PG_GET_RULEDEF_OID_BOOL: u32 = 2504; +pub const F_PG_GET_VIEWDEF_TEXT_BOOL: u32 = 2505; +pub const F_PG_GET_VIEWDEF_OID_BOOL: u32 = 2506; +pub const F_PG_GET_INDEXDEF_OID_INT4_BOOL: u32 = 2507; +pub const F_PG_GET_CONSTRAINTDEF_OID_BOOL: u32 = 2508; +pub const F_PG_GET_EXPR_PG_NODE_TREE_OID_BOOL: u32 = 2509; +pub const F_PG_PREPARED_STATEMENT: u32 = 2510; +pub const F_PG_CURSOR: u32 = 2511; +pub const F_FLOAT8_VAR_POP: u32 = 2512; +pub const F_FLOAT8_STDDEV_POP: u32 = 2513; +pub const F_NUMERIC_VAR_POP: u32 = 2514; +pub const F_BOOLAND_STATEFUNC: u32 = 2515; +pub const F_BOOLOR_STATEFUNC: u32 = 2516; +pub const F_BOOL_AND: u32 = 2517; +pub const F_BOOL_OR: u32 = 2518; +pub const F_EVERY: u32 = 2519; +pub const F_TIMESTAMP_LT_TIMESTAMPTZ: u32 = 2520; +pub const F_TIMESTAMP_LE_TIMESTAMPTZ: u32 = 2521; +pub const F_TIMESTAMP_EQ_TIMESTAMPTZ: u32 = 2522; +pub const F_TIMESTAMP_GT_TIMESTAMPTZ: u32 = 2523; +pub const F_TIMESTAMP_GE_TIMESTAMPTZ: u32 = 2524; +pub const F_TIMESTAMP_NE_TIMESTAMPTZ: u32 = 2525; +pub const F_TIMESTAMP_CMP_TIMESTAMPTZ: u32 = 2526; +pub const F_TIMESTAMPTZ_LT_TIMESTAMP: u32 = 2527; +pub const F_TIMESTAMPTZ_LE_TIMESTAMP: u32 = 2528; +pub const F_TIMESTAMPTZ_EQ_TIMESTAMP: u32 = 2529; +pub const F_TIMESTAMPTZ_GT_TIMESTAMP: u32 = 2530; +pub const F_TIMESTAMPTZ_GE_TIMESTAMP: u32 = 2531; +pub const F_TIMESTAMPTZ_NE_TIMESTAMP: u32 = 2532; +pub const F_TIMESTAMPTZ_CMP_TIMESTAMP: u32 = 2533; +pub const F_INTERVAL_PL_DATE: u32 = 2546; +pub const F_INTERVAL_PL_TIMETZ: u32 = 2547; +pub const F_INTERVAL_PL_TIMESTAMP: u32 = 2548; +pub const F_INTERVAL_PL_TIMESTAMPTZ: u32 = 2549; +pub const F_INTEGER_PL_DATE: u32 = 2550; +pub const F_PG_TABLESPACE_DATABASES: u32 = 2556; +pub const F_BOOL_INT4: u32 = 2557; +pub const F_INT4_BOOL: u32 = 2558; +pub const F_LASTVAL: u32 = 2559; +pub const F_PG_POSTMASTER_START_TIME: u32 = 2560; +pub const F_PG_BLOCKING_PIDS: u32 = 2561; +pub const F_BOX_BELOW: u32 = 2562; +pub const F_BOX_OVERBELOW: u32 = 2563; +pub const F_BOX_OVERABOVE: u32 = 2564; +pub const F_BOX_ABOVE: u32 = 2565; +pub const F_POLY_BELOW: u32 = 2566; +pub const F_POLY_OVERBELOW: u32 = 2567; +pub const F_POLY_OVERABOVE: u32 = 2568; +pub const F_POLY_ABOVE: u32 = 2569; +pub const F_GIST_BOX_CONSISTENT: u32 = 2578; +pub const F_FLOAT8_JSONB: u32 = 2580; +pub const F_GIST_BOX_PENALTY: u32 = 2581; +pub const F_GIST_BOX_PICKSPLIT: u32 = 2582; +pub const F_GIST_BOX_UNION: u32 = 2583; +pub const F_GIST_BOX_SAME: u32 = 2584; +pub const F_GIST_POLY_CONSISTENT: u32 = 2585; +pub const F_GIST_POLY_COMPRESS: u32 = 2586; +pub const F_CIRCLE_OVERBELOW: u32 = 2587; +pub const F_CIRCLE_OVERABOVE: u32 = 2588; +pub const F_GIST_CIRCLE_CONSISTENT: u32 = 2591; +pub const F_GIST_CIRCLE_COMPRESS: u32 = 2592; +pub const F_NUMERIC_STDDEV_POP: u32 = 2596; +pub const F_DOMAIN_IN: u32 = 2597; +pub const F_DOMAIN_RECV: u32 = 2598; +pub const F_PG_TIMEZONE_ABBREVS: u32 = 2599; +pub const F_XMLEXISTS: u32 = 2614; +pub const F_PG_RELOAD_CONF: u32 = 2621; +pub const F_PG_ROTATE_LOGFILE: u32 = 2622; +pub const F_PG_STAT_FILE_TEXT: u32 = 2623; +pub const F_PG_READ_FILE_TEXT_INT8_INT8: u32 = 2624; +pub const F_PG_LS_DIR_TEXT: u32 = 2625; +pub const F_PG_SLEEP: u32 = 2626; +pub const F_INETNOT: u32 = 2627; +pub const F_INETAND: u32 = 2628; +pub const F_INETOR: u32 = 2629; +pub const F_INETPL: u32 = 2630; +pub const F_INT8PL_INET: u32 = 2631; +pub const F_INETMI_INT8: u32 = 2632; +pub const F_INETMI: u32 = 2633; +pub const F_VAR_SAMP_INT8: u32 = 2641; +pub const F_VAR_SAMP_INT4: u32 = 2642; +pub const F_VAR_SAMP_INT2: u32 = 2643; +pub const F_VAR_SAMP_FLOAT4: u32 = 2644; +pub const F_VAR_SAMP_FLOAT8: u32 = 2645; +pub const F_VAR_SAMP_NUMERIC: u32 = 2646; +pub const F_TRANSACTION_TIMESTAMP: u32 = 2647; +pub const F_STATEMENT_TIMESTAMP: u32 = 2648; +pub const F_CLOCK_TIMESTAMP: u32 = 2649; +pub const F_GIN_CMP_PREFIX: u32 = 2700; +pub const F_PG_HAS_ROLE_NAME_NAME_TEXT: u32 = 2705; +pub const F_PG_HAS_ROLE_NAME_OID_TEXT: u32 = 2706; +pub const F_PG_HAS_ROLE_OID_NAME_TEXT: u32 = 2707; +pub const F_PG_HAS_ROLE_OID_OID_TEXT: u32 = 2708; +pub const F_PG_HAS_ROLE_NAME_TEXT: u32 = 2709; +pub const F_PG_HAS_ROLE_OID_TEXT: u32 = 2710; +pub const F_JUSTIFY_INTERVAL: u32 = 2711; +pub const F_STDDEV_SAMP_INT8: u32 = 2712; +pub const F_STDDEV_SAMP_INT4: u32 = 2713; +pub const F_STDDEV_SAMP_INT2: u32 = 2714; +pub const F_STDDEV_SAMP_FLOAT4: u32 = 2715; +pub const F_STDDEV_SAMP_FLOAT8: u32 = 2716; +pub const F_STDDEV_SAMP_NUMERIC: u32 = 2717; +pub const F_VAR_POP_INT8: u32 = 2718; +pub const F_VAR_POP_INT4: u32 = 2719; +pub const F_VAR_POP_INT2: u32 = 2720; +pub const F_VAR_POP_FLOAT4: u32 = 2721; +pub const F_VAR_POP_FLOAT8: u32 = 2722; +pub const F_VAR_POP_NUMERIC: u32 = 2723; +pub const F_STDDEV_POP_INT8: u32 = 2724; +pub const F_STDDEV_POP_INT4: u32 = 2725; +pub const F_STDDEV_POP_INT2: u32 = 2726; +pub const F_STDDEV_POP_FLOAT4: u32 = 2727; +pub const F_STDDEV_POP_FLOAT8: u32 = 2728; +pub const F_STDDEV_POP_NUMERIC: u32 = 2729; +pub const F_PG_GET_TRIGGERDEF_OID_BOOL: u32 = 2730; +pub const F_ASIND: u32 = 2731; +pub const F_ACOSD: u32 = 2732; +pub const F_ATAND: u32 = 2733; +pub const F_ATAN2D: u32 = 2734; +pub const F_SIND: u32 = 2735; +pub const F_COSD: u32 = 2736; +pub const F_TAND: u32 = 2737; +pub const F_COTD: u32 = 2738; +pub const F_PG_BACKUP_STOP: u32 = 2739; +pub const F_NUMERIC_AVG_SERIALIZE: u32 = 2740; +pub const F_NUMERIC_AVG_DESERIALIZE: u32 = 2741; +pub const F_GINARRAYEXTRACT_ANYARRAY_INTERNAL_INTERNAL: u32 = 2743; +pub const F_GINARRAYCONSISTENT: u32 = 2744; +pub const F_INT8_AVG_ACCUM: u32 = 2746; +pub const F_ARRAYOVERLAP: u32 = 2747; +pub const F_ARRAYCONTAINS: u32 = 2748; +pub const F_ARRAYCONTAINED: u32 = 2749; +pub const F_PG_STAT_GET_DB_TUPLES_RETURNED: u32 = 2758; +pub const F_PG_STAT_GET_DB_TUPLES_FETCHED: u32 = 2759; +pub const F_PG_STAT_GET_DB_TUPLES_INSERTED: u32 = 2760; +pub const F_PG_STAT_GET_DB_TUPLES_UPDATED: u32 = 2761; +pub const F_PG_STAT_GET_DB_TUPLES_DELETED: u32 = 2762; +pub const F_REGEXP_MATCHES_TEXT_TEXT: u32 = 2763; +pub const F_REGEXP_MATCHES_TEXT_TEXT_TEXT: u32 = 2764; +pub const F_REGEXP_SPLIT_TO_TABLE_TEXT_TEXT: u32 = 2765; +pub const F_REGEXP_SPLIT_TO_TABLE_TEXT_TEXT_TEXT: u32 = 2766; +pub const F_REGEXP_SPLIT_TO_ARRAY_TEXT_TEXT: u32 = 2767; +pub const F_REGEXP_SPLIT_TO_ARRAY_TEXT_TEXT_TEXT: u32 = 2768; +pub const F_PG_STAT_GET_CHECKPOINTER_NUM_TIMED: u32 = 2769; +pub const F_PG_STAT_GET_CHECKPOINTER_NUM_REQUESTED: u32 = 2770; +pub const F_PG_STAT_GET_CHECKPOINTER_BUFFERS_WRITTEN: u32 = 2771; +pub const F_PG_STAT_GET_BGWRITER_BUF_WRITTEN_CLEAN: u32 = 2772; +pub const F_PG_STAT_GET_BGWRITER_MAXWRITTEN_CLEAN: u32 = 2773; +pub const F_GINQUERYARRAYEXTRACT: u32 = 2774; +pub const F_ANYNONARRAY_IN: u32 = 2777; +pub const F_ANYNONARRAY_OUT: u32 = 2778; +pub const F_PG_STAT_GET_LAST_VACUUM_TIME: u32 = 2781; +pub const F_PG_STAT_GET_LAST_AUTOVACUUM_TIME: u32 = 2782; +pub const F_PG_STAT_GET_LAST_ANALYZE_TIME: u32 = 2783; +pub const F_PG_STAT_GET_LAST_AUTOANALYZE_TIME: u32 = 2784; +pub const F_INT8_AVG_COMBINE: u32 = 2785; +pub const F_INT8_AVG_SERIALIZE: u32 = 2786; +pub const F_INT8_AVG_DESERIALIZE: u32 = 2787; +pub const F_PG_STAT_GET_BACKEND_WAIT_EVENT_TYPE: u32 = 2788; +pub const F_TIDGT: u32 = 2790; +pub const F_TIDLT: u32 = 2791; +pub const F_TIDGE: u32 = 2792; +pub const F_TIDLE: u32 = 2793; +pub const F_BTTIDCMP: u32 = 2794; +pub const F_TIDLARGER: u32 = 2795; +pub const F_TIDSMALLER: u32 = 2796; +pub const F_MAX_TID: u32 = 2797; +pub const F_MIN_TID: u32 = 2798; +pub const F_COUNT_: u32 = 2803; +pub const F_INT8INC_ANY: u32 = 2804; +pub const F_INT8INC_FLOAT8_FLOAT8: u32 = 2805; +pub const F_FLOAT8_REGR_ACCUM: u32 = 2806; +pub const F_FLOAT8_REGR_SXX: u32 = 2807; +pub const F_FLOAT8_REGR_SYY: u32 = 2808; +pub const F_FLOAT8_REGR_SXY: u32 = 2809; +pub const F_FLOAT8_REGR_AVGX: u32 = 2810; +pub const F_FLOAT8_REGR_AVGY: u32 = 2811; +pub const F_FLOAT8_REGR_R2: u32 = 2812; +pub const F_FLOAT8_REGR_SLOPE: u32 = 2813; +pub const F_FLOAT8_REGR_INTERCEPT: u32 = 2814; +pub const F_FLOAT8_COVAR_POP: u32 = 2815; +pub const F_FLOAT8_COVAR_SAMP: u32 = 2816; +pub const F_FLOAT8_CORR: u32 = 2817; +pub const F_REGR_COUNT: u32 = 2818; +pub const F_REGR_SXX: u32 = 2819; +pub const F_REGR_SYY: u32 = 2820; +pub const F_REGR_SXY: u32 = 2821; +pub const F_REGR_AVGX: u32 = 2822; +pub const F_REGR_AVGY: u32 = 2823; +pub const F_REGR_R2: u32 = 2824; +pub const F_REGR_SLOPE: u32 = 2825; +pub const F_REGR_INTERCEPT: u32 = 2826; +pub const F_COVAR_POP: u32 = 2827; +pub const F_COVAR_SAMP: u32 = 2828; +pub const F_CORR: u32 = 2829; +pub const F_PG_STAT_GET_DB_BLK_READ_TIME: u32 = 2844; +pub const F_PG_STAT_GET_DB_BLK_WRITE_TIME: u32 = 2845; +pub const F_PG_SWITCH_WAL: u32 = 2848; +pub const F_PG_CURRENT_WAL_LSN: u32 = 2849; +pub const F_PG_WALFILE_NAME_OFFSET: u32 = 2850; +pub const F_PG_WALFILE_NAME: u32 = 2851; +pub const F_PG_CURRENT_WAL_INSERT_LSN: u32 = 2852; +pub const F_PG_STAT_GET_BACKEND_WAIT_EVENT: u32 = 2853; +pub const F_PG_MY_TEMP_SCHEMA: u32 = 2854; +pub const F_PG_IS_OTHER_TEMP_SCHEMA: u32 = 2855; +pub const F_PG_TIMEZONE_NAMES: u32 = 2856; +pub const F_PG_STAT_GET_BACKEND_XACT_START: u32 = 2857; +pub const F_NUMERIC_AVG_ACCUM: u32 = 2858; +pub const F_PG_STAT_GET_BUF_ALLOC: u32 = 2859; +pub const F_PG_STAT_GET_LIVE_TUPLES: u32 = 2878; +pub const F_PG_STAT_GET_DEAD_TUPLES: u32 = 2879; +pub const F_PG_ADVISORY_LOCK_INT8: u32 = 2880; +pub const F_PG_ADVISORY_LOCK_SHARED_INT8: u32 = 2881; +pub const F_PG_TRY_ADVISORY_LOCK_INT8: u32 = 2882; +pub const F_PG_TRY_ADVISORY_LOCK_SHARED_INT8: u32 = 2883; +pub const F_PG_ADVISORY_UNLOCK_INT8: u32 = 2884; +pub const F_PG_ADVISORY_UNLOCK_SHARED_INT8: u32 = 2885; +pub const F_PG_ADVISORY_LOCK_INT4_INT4: u32 = 2886; +pub const F_PG_ADVISORY_LOCK_SHARED_INT4_INT4: u32 = 2887; +pub const F_PG_TRY_ADVISORY_LOCK_INT4_INT4: u32 = 2888; +pub const F_PG_TRY_ADVISORY_LOCK_SHARED_INT4_INT4: u32 = 2889; +pub const F_PG_ADVISORY_UNLOCK_INT4_INT4: u32 = 2890; +pub const F_PG_ADVISORY_UNLOCK_SHARED_INT4_INT4: u32 = 2891; +pub const F_PG_ADVISORY_UNLOCK_ALL: u32 = 2892; +pub const F_XML_IN: u32 = 2893; +pub const F_XML_OUT: u32 = 2894; +pub const F_XMLCOMMENT: u32 = 2895; +pub const F_XML: u32 = 2896; +pub const F_XMLVALIDATE: u32 = 2897; +pub const F_XML_RECV: u32 = 2898; +pub const F_XML_SEND: u32 = 2899; +pub const F_XMLCONCAT2: u32 = 2900; +pub const F_XMLAGG: u32 = 2901; +pub const F_VARBITTYPMODIN: u32 = 2902; +pub const F_INTERVALTYPMODIN: u32 = 2903; +pub const F_INTERVALTYPMODOUT: u32 = 2904; +pub const F_TIMESTAMPTYPMODIN: u32 = 2905; +pub const F_TIMESTAMPTYPMODOUT: u32 = 2906; +pub const F_TIMESTAMPTZTYPMODIN: u32 = 2907; +pub const F_TIMESTAMPTZTYPMODOUT: u32 = 2908; +pub const F_TIMETYPMODIN: u32 = 2909; +pub const F_TIMETYPMODOUT: u32 = 2910; +pub const F_TIMETZTYPMODIN: u32 = 2911; +pub const F_TIMETZTYPMODOUT: u32 = 2912; +pub const F_BPCHARTYPMODIN: u32 = 2913; +pub const F_BPCHARTYPMODOUT: u32 = 2914; +pub const F_VARCHARTYPMODIN: u32 = 2915; +pub const F_VARCHARTYPMODOUT: u32 = 2916; +pub const F_NUMERICTYPMODIN: u32 = 2917; +pub const F_NUMERICTYPMODOUT: u32 = 2918; +pub const F_BITTYPMODIN: u32 = 2919; +pub const F_BITTYPMODOUT: u32 = 2920; +pub const F_VARBITTYPMODOUT: u32 = 2921; +pub const F_TEXT_XML: u32 = 2922; +pub const F_TABLE_TO_XML: u32 = 2923; +pub const F_QUERY_TO_XML: u32 = 2924; +pub const F_CURSOR_TO_XML: u32 = 2925; +pub const F_TABLE_TO_XMLSCHEMA: u32 = 2926; +pub const F_QUERY_TO_XMLSCHEMA: u32 = 2927; +pub const F_CURSOR_TO_XMLSCHEMA: u32 = 2928; +pub const F_TABLE_TO_XML_AND_XMLSCHEMA: u32 = 2929; +pub const F_QUERY_TO_XML_AND_XMLSCHEMA: u32 = 2930; +pub const F_XPATH_TEXT_XML__TEXT: u32 = 2931; +pub const F_XPATH_TEXT_XML: u32 = 2932; +pub const F_SCHEMA_TO_XML: u32 = 2933; +pub const F_SCHEMA_TO_XMLSCHEMA: u32 = 2934; +pub const F_SCHEMA_TO_XML_AND_XMLSCHEMA: u32 = 2935; +pub const F_DATABASE_TO_XML: u32 = 2936; +pub const F_DATABASE_TO_XMLSCHEMA: u32 = 2937; +pub const F_DATABASE_TO_XML_AND_XMLSCHEMA: u32 = 2938; +pub const F_TXID_SNAPSHOT_IN: u32 = 2939; +pub const F_TXID_SNAPSHOT_OUT: u32 = 2940; +pub const F_TXID_SNAPSHOT_RECV: u32 = 2941; +pub const F_TXID_SNAPSHOT_SEND: u32 = 2942; +pub const F_TXID_CURRENT: u32 = 2943; +pub const F_TXID_CURRENT_SNAPSHOT: u32 = 2944; +pub const F_TXID_SNAPSHOT_XMIN: u32 = 2945; +pub const F_TXID_SNAPSHOT_XMAX: u32 = 2946; +pub const F_TXID_SNAPSHOT_XIP: u32 = 2947; +pub const F_TXID_VISIBLE_IN_SNAPSHOT: u32 = 2948; +pub const F_UUID_IN: u32 = 2952; +pub const F_UUID_OUT: u32 = 2953; +pub const F_UUID_LT: u32 = 2954; +pub const F_UUID_LE: u32 = 2955; +pub const F_UUID_EQ: u32 = 2956; +pub const F_UUID_GE: u32 = 2957; +pub const F_UUID_GT: u32 = 2958; +pub const F_UUID_NE: u32 = 2959; +pub const F_UUID_CMP: u32 = 2960; +pub const F_UUID_RECV: u32 = 2961; +pub const F_UUID_SEND: u32 = 2962; +pub const F_UUID_HASH: u32 = 2963; +pub const F_TEXT_BOOL: u32 = 2971; +pub const F_PG_STAT_GET_FUNCTION_CALLS: u32 = 2978; +pub const F_PG_STAT_GET_FUNCTION_TOTAL_TIME: u32 = 2979; +pub const F_PG_STAT_GET_FUNCTION_SELF_TIME: u32 = 2980; +pub const F_RECORD_EQ: u32 = 2981; +pub const F_RECORD_NE: u32 = 2982; +pub const F_RECORD_LT: u32 = 2983; +pub const F_RECORD_GT: u32 = 2984; +pub const F_RECORD_LE: u32 = 2985; +pub const F_RECORD_GE: u32 = 2986; +pub const F_BTRECORDCMP: u32 = 2987; +pub const F_PG_TABLE_SIZE: u32 = 2997; +pub const F_PG_INDEXES_SIZE: u32 = 2998; +pub const F_PG_RELATION_FILENODE: u32 = 2999; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3000; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_NAME_OID_TEXT: u32 = 3001; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_OID_TEXT_TEXT: u32 = 3002; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_OID_OID_TEXT: u32 = 3003; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_TEXT_TEXT: u32 = 3004; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_OID_TEXT: u32 = 3005; +pub const F_HAS_SERVER_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3006; +pub const F_HAS_SERVER_PRIVILEGE_NAME_OID_TEXT: u32 = 3007; +pub const F_HAS_SERVER_PRIVILEGE_OID_TEXT_TEXT: u32 = 3008; +pub const F_HAS_SERVER_PRIVILEGE_OID_OID_TEXT: u32 = 3009; +pub const F_HAS_SERVER_PRIVILEGE_TEXT_TEXT: u32 = 3010; +pub const F_HAS_SERVER_PRIVILEGE_OID_TEXT: u32 = 3011; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_TEXT_TEXT_TEXT: u32 = 3012; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_TEXT_INT2_TEXT: u32 = 3013; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_OID_TEXT_TEXT: u32 = 3014; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_OID_INT2_TEXT: u32 = 3015; +pub const F_HAS_COLUMN_PRIVILEGE_OID_TEXT_TEXT_TEXT: u32 = 3016; +pub const F_HAS_COLUMN_PRIVILEGE_OID_TEXT_INT2_TEXT: u32 = 3017; +pub const F_HAS_COLUMN_PRIVILEGE_OID_OID_TEXT_TEXT: u32 = 3018; +pub const F_HAS_COLUMN_PRIVILEGE_OID_OID_INT2_TEXT: u32 = 3019; +pub const F_HAS_COLUMN_PRIVILEGE_TEXT_TEXT_TEXT: u32 = 3020; +pub const F_HAS_COLUMN_PRIVILEGE_TEXT_INT2_TEXT: u32 = 3021; +pub const F_HAS_COLUMN_PRIVILEGE_OID_TEXT_TEXT: u32 = 3022; +pub const F_HAS_COLUMN_PRIVILEGE_OID_INT2_TEXT: u32 = 3023; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3024; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_NAME_OID_TEXT: u32 = 3025; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_OID_TEXT_TEXT: u32 = 3026; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_OID_OID_TEXT: u32 = 3027; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_TEXT_TEXT: u32 = 3028; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_OID_TEXT: u32 = 3029; +pub const F_OVERLAY_BIT_BIT_INT4_INT4: u32 = 3030; +pub const F_OVERLAY_BIT_BIT_INT4: u32 = 3031; +pub const F_GET_BIT_BIT_INT4: u32 = 3032; +pub const F_SET_BIT_BIT_INT4_INT4: u32 = 3033; +pub const F_PG_RELATION_FILEPATH: u32 = 3034; +pub const F_PG_LISTENING_CHANNELS: u32 = 3035; +pub const F_PG_NOTIFY: u32 = 3036; +pub const F_PG_STAT_GET_XACT_NUMSCANS: u32 = 3037; +pub const F_PG_STAT_GET_XACT_TUPLES_RETURNED: u32 = 3038; +pub const F_PG_STAT_GET_XACT_TUPLES_FETCHED: u32 = 3039; +pub const F_PG_STAT_GET_XACT_TUPLES_INSERTED: u32 = 3040; +pub const F_PG_STAT_GET_XACT_TUPLES_UPDATED: u32 = 3041; +pub const F_PG_STAT_GET_XACT_TUPLES_DELETED: u32 = 3042; +pub const F_PG_STAT_GET_XACT_TUPLES_HOT_UPDATED: u32 = 3043; +pub const F_PG_STAT_GET_XACT_BLOCKS_FETCHED: u32 = 3044; +pub const F_PG_STAT_GET_XACT_BLOCKS_HIT: u32 = 3045; +pub const F_PG_STAT_GET_XACT_FUNCTION_CALLS: u32 = 3046; +pub const F_PG_STAT_GET_XACT_FUNCTION_TOTAL_TIME: u32 = 3047; +pub const F_PG_STAT_GET_XACT_FUNCTION_SELF_TIME: u32 = 3048; +pub const F_XPATH_EXISTS_TEXT_XML__TEXT: u32 = 3049; +pub const F_XPATH_EXISTS_TEXT_XML: u32 = 3050; +pub const F_XML_IS_WELL_FORMED: u32 = 3051; +pub const F_XML_IS_WELL_FORMED_DOCUMENT: u32 = 3052; +pub const F_XML_IS_WELL_FORMED_CONTENT: u32 = 3053; +pub const F_PG_STAT_GET_VACUUM_COUNT: u32 = 3054; +pub const F_PG_STAT_GET_AUTOVACUUM_COUNT: u32 = 3055; +pub const F_PG_STAT_GET_ANALYZE_COUNT: u32 = 3056; +pub const F_PG_STAT_GET_AUTOANALYZE_COUNT: u32 = 3057; +pub const F_CONCAT: u32 = 3058; +pub const F_CONCAT_WS: u32 = 3059; +pub const F_LEFT: u32 = 3060; +pub const F_RIGHT: u32 = 3061; +pub const F_REVERSE: u32 = 3062; +pub const F_GIST_POINT_DISTANCE: u32 = 3064; +pub const F_PG_STAT_GET_DB_CONFLICT_TABLESPACE: u32 = 3065; +pub const F_PG_STAT_GET_DB_CONFLICT_LOCK: u32 = 3066; +pub const F_PG_STAT_GET_DB_CONFLICT_SNAPSHOT: u32 = 3067; +pub const F_PG_STAT_GET_DB_CONFLICT_BUFFERPIN: u32 = 3068; +pub const F_PG_STAT_GET_DB_CONFLICT_STARTUP_DEADLOCK: u32 = 3069; +pub const F_PG_STAT_GET_DB_CONFLICT_ALL: u32 = 3070; +pub const F_PG_WAL_REPLAY_PAUSE: u32 = 3071; +pub const F_PG_WAL_REPLAY_RESUME: u32 = 3072; +pub const F_PG_IS_WAL_REPLAY_PAUSED: u32 = 3073; +pub const F_PG_STAT_GET_DB_STAT_RESET_TIME: u32 = 3074; +pub const F_PG_STAT_GET_BGWRITER_STAT_RESET_TIME: u32 = 3075; +pub const F_GINARRAYEXTRACT_ANYARRAY_INTERNAL: u32 = 3076; +pub const F_GIN_EXTRACT_TSVECTOR_TSVECTOR_INTERNAL: u32 = 3077; +pub const F_PG_SEQUENCE_PARAMETERS: u32 = 3078; +pub const F_PG_AVAILABLE_EXTENSIONS: u32 = 3082; +pub const F_PG_AVAILABLE_EXTENSION_VERSIONS: u32 = 3083; +pub const F_PG_EXTENSION_UPDATE_PATHS: u32 = 3084; +pub const F_PG_EXTENSION_CONFIG_DUMP: u32 = 3086; +pub const F_GIN_EXTRACT_TSQUERY_TSQUERY_INTERNAL_INT2_INTERNAL_INTERNAL: u32 = 3087; +pub const F_GIN_TSQUERY_CONSISTENT_INTERNAL_INT2_TSQUERY_INT4_INTERNAL_INTERNAL: u32 = 3088; +pub const F_PG_ADVISORY_XACT_LOCK_INT8: u32 = 3089; +pub const F_PG_ADVISORY_XACT_LOCK_SHARED_INT8: u32 = 3090; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_INT8: u32 = 3091; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_SHARED_INT8: u32 = 3092; +pub const F_PG_ADVISORY_XACT_LOCK_INT4_INT4: u32 = 3093; +pub const F_PG_ADVISORY_XACT_LOCK_SHARED_INT4_INT4: u32 = 3094; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_INT4_INT4: u32 = 3095; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_SHARED_INT4_INT4: u32 = 3096; +pub const F_VARCHAR_SUPPORT: u32 = 3097; +pub const F_PG_CREATE_RESTORE_POINT: u32 = 3098; +pub const F_PG_STAT_GET_WAL_SENDERS: u32 = 3099; +pub const F_ROW_NUMBER: u32 = 3100; +pub const F_RANK_: u32 = 3101; +pub const F_DENSE_RANK_: u32 = 3102; +pub const F_PERCENT_RANK_: u32 = 3103; +pub const F_CUME_DIST_: u32 = 3104; +pub const F_NTILE: u32 = 3105; +pub const F_LAG_ANYELEMENT: u32 = 3106; +pub const F_LAG_ANYELEMENT_INT4: u32 = 3107; +pub const F_LAG_ANYCOMPATIBLE_INT4_ANYCOMPATIBLE: u32 = 3108; +pub const F_LEAD_ANYELEMENT: u32 = 3109; +pub const F_LEAD_ANYELEMENT_INT4: u32 = 3110; +pub const F_LEAD_ANYCOMPATIBLE_INT4_ANYCOMPATIBLE: u32 = 3111; +pub const F_FIRST_VALUE: u32 = 3112; +pub const F_LAST_VALUE: u32 = 3113; +pub const F_NTH_VALUE: u32 = 3114; +pub const F_FDW_HANDLER_IN: u32 = 3116; +pub const F_FDW_HANDLER_OUT: u32 = 3117; +pub const F_VOID_RECV: u32 = 3120; +pub const F_VOID_SEND: u32 = 3121; +pub const F_BTINT2SORTSUPPORT: u32 = 3129; +pub const F_BTINT4SORTSUPPORT: u32 = 3130; +pub const F_BTINT8SORTSUPPORT: u32 = 3131; +pub const F_BTFLOAT4SORTSUPPORT: u32 = 3132; +pub const F_BTFLOAT8SORTSUPPORT: u32 = 3133; +pub const F_BTOIDSORTSUPPORT: u32 = 3134; +pub const F_BTNAMESORTSUPPORT: u32 = 3135; +pub const F_DATE_SORTSUPPORT: u32 = 3136; +pub const F_TIMESTAMP_SORTSUPPORT: u32 = 3137; +pub const F_HAS_TYPE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3138; +pub const F_HAS_TYPE_PRIVILEGE_NAME_OID_TEXT: u32 = 3139; +pub const F_HAS_TYPE_PRIVILEGE_OID_TEXT_TEXT: u32 = 3140; +pub const F_HAS_TYPE_PRIVILEGE_OID_OID_TEXT: u32 = 3141; +pub const F_HAS_TYPE_PRIVILEGE_TEXT_TEXT: u32 = 3142; +pub const F_HAS_TYPE_PRIVILEGE_OID_TEXT: u32 = 3143; +pub const F_MACADDR_NOT: u32 = 3144; +pub const F_MACADDR_AND: u32 = 3145; +pub const F_MACADDR_OR: u32 = 3146; +pub const F_PG_STAT_GET_DB_TEMP_FILES: u32 = 3150; +pub const F_PG_STAT_GET_DB_TEMP_BYTES: u32 = 3151; +pub const F_PG_STAT_GET_DB_DEADLOCKS: u32 = 3152; +pub const F_ARRAY_TO_JSON_ANYARRAY: u32 = 3153; +pub const F_ARRAY_TO_JSON_ANYARRAY_BOOL: u32 = 3154; +pub const F_ROW_TO_JSON_RECORD: u32 = 3155; +pub const F_ROW_TO_JSON_RECORD_BOOL: u32 = 3156; +pub const F_NUMERIC_SUPPORT: u32 = 3157; +pub const F_VARBIT_SUPPORT: u32 = 3158; +pub const F_PG_GET_VIEWDEF_OID_INT4: u32 = 3159; +pub const F_PG_STAT_GET_CHECKPOINTER_WRITE_TIME: u32 = 3160; +pub const F_PG_STAT_GET_CHECKPOINTER_SYNC_TIME: u32 = 3161; +pub const F_PG_COLLATION_FOR: u32 = 3162; +pub const F_PG_TRIGGER_DEPTH: u32 = 3163; +pub const F_PG_WAL_LSN_DIFF: u32 = 3165; +pub const F_PG_SIZE_PRETTY_NUMERIC: u32 = 3166; +pub const F_ARRAY_REMOVE: u32 = 3167; +pub const F_ARRAY_REPLACE: u32 = 3168; +pub const F_RANGESEL: u32 = 3169; +pub const F_LO_LSEEK64: u32 = 3170; +pub const F_LO_TELL64: u32 = 3171; +pub const F_LO_TRUNCATE64: u32 = 3172; +pub const F_JSON_AGG_TRANSFN: u32 = 3173; +pub const F_JSON_AGG_FINALFN: u32 = 3174; +pub const F_JSON_AGG: u32 = 3175; +pub const F_TO_JSON: u32 = 3176; +pub const F_PG_STAT_GET_MOD_SINCE_ANALYZE: u32 = 3177; +pub const F_NUMERIC_SUM: u32 = 3178; +pub const F_CARDINALITY: u32 = 3179; +pub const F_JSON_OBJECT_AGG_TRANSFN: u32 = 3180; +pub const F_RECORD_IMAGE_EQ: u32 = 3181; +pub const F_RECORD_IMAGE_NE: u32 = 3182; +pub const F_RECORD_IMAGE_LT: u32 = 3183; +pub const F_RECORD_IMAGE_GT: u32 = 3184; +pub const F_RECORD_IMAGE_LE: u32 = 3185; +pub const F_RECORD_IMAGE_GE: u32 = 3186; +pub const F_BTRECORDIMAGECMP: u32 = 3187; +pub const F_PG_STAT_GET_ARCHIVER: u32 = 3195; +pub const F_JSON_OBJECT_AGG_FINALFN: u32 = 3196; +pub const F_JSON_OBJECT_AGG: u32 = 3197; +pub const F_JSON_BUILD_ARRAY_ANY: u32 = 3198; +pub const F_JSON_BUILD_ARRAY_: u32 = 3199; +pub const F_JSON_BUILD_OBJECT_ANY: u32 = 3200; +pub const F_JSON_BUILD_OBJECT_: u32 = 3201; +pub const F_JSON_OBJECT__TEXT: u32 = 3202; +pub const F_JSON_OBJECT__TEXT__TEXT: u32 = 3203; +pub const F_JSON_TO_RECORD: u32 = 3204; +pub const F_JSON_TO_RECORDSET: u32 = 3205; +pub const F_JSONB_ARRAY_LENGTH: u32 = 3207; +pub const F_JSONB_EACH: u32 = 3208; +pub const F_JSONB_POPULATE_RECORD: u32 = 3209; +pub const F_JSONB_TYPEOF: u32 = 3210; +pub const F_JSONB_OBJECT_FIELD_TEXT: u32 = 3214; +pub const F_JSONB_ARRAY_ELEMENT: u32 = 3215; +pub const F_JSONB_ARRAY_ELEMENT_TEXT: u32 = 3216; +pub const F_JSONB_EXTRACT_PATH: u32 = 3217; +pub const F_WIDTH_BUCKET_ANYCOMPATIBLE_ANYCOMPATIBLEARRAY: u32 = 3218; +pub const F_JSONB_ARRAY_ELEMENTS: u32 = 3219; +pub const F_PG_LSN_IN: u32 = 3229; +pub const F_PG_LSN_OUT: u32 = 3230; +pub const F_PG_LSN_LT: u32 = 3231; +pub const F_PG_LSN_LE: u32 = 3232; +pub const F_PG_LSN_EQ: u32 = 3233; +pub const F_PG_LSN_GE: u32 = 3234; +pub const F_PG_LSN_GT: u32 = 3235; +pub const F_PG_LSN_NE: u32 = 3236; +pub const F_PG_LSN_MI: u32 = 3237; +pub const F_PG_LSN_RECV: u32 = 3238; +pub const F_PG_LSN_SEND: u32 = 3239; +pub const F_PG_LSN_CMP: u32 = 3251; +pub const F_PG_LSN_HASH: u32 = 3252; +pub const F_BTTEXTSORTSUPPORT: u32 = 3255; +pub const F_GENERATE_SERIES_NUMERIC_NUMERIC_NUMERIC: u32 = 3259; +pub const F_GENERATE_SERIES_NUMERIC_NUMERIC: u32 = 3260; +pub const F_JSON_STRIP_NULLS: u32 = 3261; +pub const F_JSONB_STRIP_NULLS: u32 = 3262; +pub const F_JSONB_OBJECT__TEXT: u32 = 3263; +pub const F_JSONB_OBJECT__TEXT__TEXT: u32 = 3264; +pub const F_JSONB_AGG_TRANSFN: u32 = 3265; +pub const F_JSONB_AGG_FINALFN: u32 = 3266; +pub const F_JSONB_AGG: u32 = 3267; +pub const F_JSONB_OBJECT_AGG_TRANSFN: u32 = 3268; +pub const F_JSONB_OBJECT_AGG_FINALFN: u32 = 3269; +pub const F_JSONB_OBJECT_AGG: u32 = 3270; +pub const F_JSONB_BUILD_ARRAY_ANY: u32 = 3271; +pub const F_JSONB_BUILD_ARRAY_: u32 = 3272; +pub const F_JSONB_BUILD_OBJECT_ANY: u32 = 3273; +pub const F_JSONB_BUILD_OBJECT_: u32 = 3274; +pub const F_DIST_PPOLY: u32 = 3275; +pub const F_ARRAY_POSITION_ANYCOMPATIBLEARRAY_ANYCOMPATIBLE: u32 = 3277; +pub const F_ARRAY_POSITION_ANYCOMPATIBLEARRAY_ANYCOMPATIBLE_INT4: u32 = 3278; +pub const F_ARRAY_POSITIONS: u32 = 3279; +pub const F_GIST_CIRCLE_DISTANCE: u32 = 3280; +pub const F_SCALE: u32 = 3281; +pub const F_GIST_POINT_FETCH: u32 = 3282; +pub const F_NUMERIC_SORTSUPPORT: u32 = 3283; +pub const F_GIST_POLY_DISTANCE: u32 = 3288; +pub const F_DIST_CPOINT: u32 = 3290; +pub const F_DIST_POLYP: u32 = 3292; +pub const F_PG_READ_FILE_TEXT_INT8_INT8_BOOL: u32 = 3293; +pub const F_CURRENT_SETTING_TEXT_BOOL: u32 = 3294; +pub const F_PG_READ_BINARY_FILE_TEXT_INT8_INT8_BOOL: u32 = 3295; +pub const F_PG_NOTIFICATION_QUEUE_USAGE: u32 = 3296; +pub const F_PG_LS_DIR_TEXT_BOOL_BOOL: u32 = 3297; +pub const F_ROW_SECURITY_ACTIVE_OID: u32 = 3298; +pub const F_ROW_SECURITY_ACTIVE_TEXT: u32 = 3299; +pub const F_UUID_SORTSUPPORT: u32 = 3300; +pub const F_JSONB_CONCAT: u32 = 3301; +pub const F_JSONB_DELETE_JSONB_TEXT: u32 = 3302; +pub const F_JSONB_DELETE_JSONB_INT4: u32 = 3303; +pub const F_JSONB_DELETE_PATH: u32 = 3304; +pub const F_JSONB_SET: u32 = 3305; +pub const F_JSONB_PRETTY: u32 = 3306; +pub const F_PG_STAT_FILE_TEXT_BOOL: u32 = 3307; +pub const F_XIDNEQ: u32 = 3308; +pub const F_XIDNEQINT4: u32 = 3309; +pub const F_TSM_HANDLER_IN: u32 = 3311; +pub const F_TSM_HANDLER_OUT: u32 = 3312; +pub const F_BERNOULLI: u32 = 3313; +pub const F_SYSTEM: u32 = 3314; +pub const F_PG_STAT_GET_WAL_RECEIVER: u32 = 3317; +pub const F_PG_STAT_GET_PROGRESS_INFO: u32 = 3318; +pub const F_TS_FILTER: u32 = 3319; +pub const F_SETWEIGHT_TSVECTOR_CHAR__TEXT: u32 = 3320; +pub const F_TS_DELETE_TSVECTOR_TEXT: u32 = 3321; +pub const F_UNNEST_TSVECTOR: u32 = 3322; +pub const F_TS_DELETE_TSVECTOR__TEXT: u32 = 3323; +pub const F_INT4_AVG_COMBINE: u32 = 3324; +pub const F_INTERVAL_AVG_COMBINE: u32 = 3325; +pub const F_TSVECTOR_TO_ARRAY: u32 = 3326; +pub const F_ARRAY_TO_TSVECTOR: u32 = 3327; +pub const F_BPCHAR_SORTSUPPORT: u32 = 3328; +pub const F_PG_SHOW_ALL_FILE_SETTINGS: u32 = 3329; +pub const F_PG_CURRENT_WAL_FLUSH_LSN: u32 = 3330; +pub const F_BYTEA_SORTSUPPORT: u32 = 3331; +pub const F_BTTEXT_PATTERN_SORTSUPPORT: u32 = 3332; +pub const F_BTBPCHAR_PATTERN_SORTSUPPORT: u32 = 3333; +pub const F_PG_SIZE_BYTES: u32 = 3334; +pub const F_NUMERIC_SERIALIZE: u32 = 3335; +pub const F_NUMERIC_DESERIALIZE: u32 = 3336; +pub const F_NUMERIC_AVG_COMBINE: u32 = 3337; +pub const F_NUMERIC_POLY_COMBINE: u32 = 3338; +pub const F_NUMERIC_POLY_SERIALIZE: u32 = 3339; +pub const F_NUMERIC_POLY_DESERIALIZE: u32 = 3340; +pub const F_NUMERIC_COMBINE: u32 = 3341; +pub const F_FLOAT8_REGR_COMBINE: u32 = 3342; +pub const F_JSONB_DELETE_JSONB__TEXT: u32 = 3343; +pub const F_CASH_MUL_INT8: u32 = 3344; +pub const F_CASH_DIV_INT8: u32 = 3345; +pub const F_TXID_CURRENT_IF_ASSIGNED: u32 = 3348; +pub const F_PG_GET_PARTKEYDEF: u32 = 3352; +pub const F_PG_LS_LOGDIR: u32 = 3353; +pub const F_PG_LS_WALDIR: u32 = 3354; +pub const F_PG_NDISTINCT_IN: u32 = 3355; +pub const F_PG_NDISTINCT_OUT: u32 = 3356; +pub const F_PG_NDISTINCT_RECV: u32 = 3357; +pub const F_PG_NDISTINCT_SEND: u32 = 3358; +pub const F_MACADDR_SORTSUPPORT: u32 = 3359; +pub const F_TXID_STATUS: u32 = 3360; +pub const F_PG_SAFE_SNAPSHOT_BLOCKING_PIDS: u32 = 3376; +pub const F_PG_ISOLATION_TEST_SESSION_IS_BLOCKED: u32 = 3378; +pub const F_PG_IDENTIFY_OBJECT_AS_ADDRESS: u32 = 3382; +pub const F_BRIN_MINMAX_OPCINFO: u32 = 3383; +pub const F_BRIN_MINMAX_ADD_VALUE: u32 = 3384; +pub const F_BRIN_MINMAX_CONSISTENT: u32 = 3385; +pub const F_BRIN_MINMAX_UNION: u32 = 3386; +pub const F_INT8_AVG_ACCUM_INV: u32 = 3387; +pub const F_NUMERIC_POLY_SUM: u32 = 3388; +pub const F_NUMERIC_POLY_AVG: u32 = 3389; +pub const F_NUMERIC_POLY_VAR_POP: u32 = 3390; +pub const F_NUMERIC_POLY_VAR_SAMP: u32 = 3391; +pub const F_NUMERIC_POLY_STDDEV_POP: u32 = 3392; +pub const F_NUMERIC_POLY_STDDEV_SAMP: u32 = 3393; +pub const F_REGEXP_MATCH_TEXT_TEXT: u32 = 3396; +pub const F_REGEXP_MATCH_TEXT_TEXT_TEXT: u32 = 3397; +pub const F_INT8_MUL_CASH: u32 = 3399; +pub const F_PG_CONFIG: u32 = 3400; +pub const F_PG_HBA_FILE_RULES: u32 = 3401; +pub const F_PG_STATISTICS_OBJ_IS_VISIBLE: u32 = 3403; +pub const F_PG_DEPENDENCIES_IN: u32 = 3404; +pub const F_PG_DEPENDENCIES_OUT: u32 = 3405; +pub const F_PG_DEPENDENCIES_RECV: u32 = 3406; +pub const F_PG_DEPENDENCIES_SEND: u32 = 3407; +pub const F_PG_GET_PARTITION_CONSTRAINTDEF: u32 = 3408; +pub const F_TIME_HASH_EXTENDED: u32 = 3409; +pub const F_TIMETZ_HASH_EXTENDED: u32 = 3410; +pub const F_TIMESTAMP_HASH_EXTENDED: u32 = 3411; +pub const F_UUID_HASH_EXTENDED: u32 = 3412; +pub const F_PG_LSN_HASH_EXTENDED: u32 = 3413; +pub const F_HASHENUMEXTENDED: u32 = 3414; +pub const F_PG_GET_STATISTICSOBJDEF: u32 = 3415; +pub const F_JSONB_HASH_EXTENDED: u32 = 3416; +pub const F_HASH_RANGE_EXTENDED: u32 = 3417; +pub const F_INTERVAL_HASH_EXTENDED: u32 = 3418; +pub const F_SHA224: u32 = 3419; +pub const F_SHA256: u32 = 3420; +pub const F_SHA384: u32 = 3421; +pub const F_SHA512: u32 = 3422; +pub const F_PG_PARTITION_TREE: u32 = 3423; +pub const F_PG_PARTITION_ROOT: u32 = 3424; +pub const F_PG_PARTITION_ANCESTORS: u32 = 3425; +pub const F_PG_STAT_GET_DB_CHECKSUM_FAILURES: u32 = 3426; +pub const F_PG_MCV_LIST_ITEMS: u32 = 3427; +pub const F_PG_STAT_GET_DB_CHECKSUM_LAST_FAILURE: u32 = 3428; +pub const F_GEN_RANDOM_UUID: u32 = 3432; +pub const F_GTSVECTOR_OPTIONS: u32 = 3434; +pub const F_GIST_POINT_SORTSUPPORT: u32 = 3435; +pub const F_PG_PROMOTE: u32 = 3436; +pub const F_PREFIXSEL: u32 = 3437; +pub const F_PREFIXJOINSEL: u32 = 3438; +pub const F_PG_CONTROL_SYSTEM: u32 = 3441; +pub const F_PG_CONTROL_CHECKPOINT: u32 = 3442; +pub const F_PG_CONTROL_RECOVERY: u32 = 3443; +pub const F_PG_CONTROL_INIT: u32 = 3444; +pub const F_PG_IMPORT_SYSTEM_COLLATIONS: u32 = 3445; +pub const F_MACADDR8_RECV: u32 = 3446; +pub const F_MACADDR8_SEND: u32 = 3447; +pub const F_PG_COLLATION_ACTUAL_VERSION: u32 = 3448; +pub const F_NUMERIC_JSONB: u32 = 3449; +pub const F_INT2_JSONB: u32 = 3450; +pub const F_INT4_JSONB: u32 = 3451; +pub const F_INT8_JSONB: u32 = 3452; +pub const F_FLOAT4_JSONB: u32 = 3453; +pub const F_PG_FILENODE_RELATION: u32 = 3454; +pub const F_LO_FROM_BYTEA: u32 = 3457; +pub const F_LO_GET_OID: u32 = 3458; +pub const F_LO_GET_OID_INT8_INT4: u32 = 3459; +pub const F_LO_PUT: u32 = 3460; +pub const F_MAKE_TIMESTAMP: u32 = 3461; +pub const F_MAKE_TIMESTAMPTZ_INT4_INT4_INT4_INT4_INT4_FLOAT8: u32 = 3462; +pub const F_MAKE_TIMESTAMPTZ_INT4_INT4_INT4_INT4_INT4_FLOAT8_TEXT: u32 = 3463; +pub const F_MAKE_INTERVAL: u32 = 3464; +pub const F_JSONB_ARRAY_ELEMENTS_TEXT: u32 = 3465; +pub const F_SPG_RANGE_QUAD_CONFIG: u32 = 3469; +pub const F_SPG_RANGE_QUAD_CHOOSE: u32 = 3470; +pub const F_SPG_RANGE_QUAD_PICKSPLIT: u32 = 3471; +pub const F_SPG_RANGE_QUAD_INNER_CONSISTENT: u32 = 3472; +pub const F_SPG_RANGE_QUAD_LEAF_CONSISTENT: u32 = 3473; +pub const F_JSONB_POPULATE_RECORDSET: u32 = 3475; +pub const F_TO_REGOPERATOR: u32 = 3476; +pub const F_JSONB_OBJECT_FIELD: u32 = 3478; +pub const F_TO_REGPROCEDURE: u32 = 3479; +pub const F_GIN_COMPARE_JSONB: u32 = 3480; +pub const F_GIN_EXTRACT_JSONB: u32 = 3482; +pub const F_GIN_EXTRACT_JSONB_QUERY: u32 = 3483; +pub const F_GIN_CONSISTENT_JSONB: u32 = 3484; +pub const F_GIN_EXTRACT_JSONB_PATH: u32 = 3485; +pub const F_GIN_EXTRACT_JSONB_QUERY_PATH: u32 = 3486; +pub const F_GIN_CONSISTENT_JSONB_PATH: u32 = 3487; +pub const F_GIN_TRICONSISTENT_JSONB: u32 = 3488; +pub const F_GIN_TRICONSISTENT_JSONB_PATH: u32 = 3489; +pub const F_JSONB_TO_RECORD: u32 = 3490; +pub const F_JSONB_TO_RECORDSET: u32 = 3491; +pub const F_TO_REGOPER: u32 = 3492; +pub const F_TO_REGTYPE: u32 = 3493; +pub const F_TO_REGPROC: u32 = 3494; +pub const F_TO_REGCLASS: u32 = 3495; +pub const F_BOOL_ACCUM: u32 = 3496; +pub const F_BOOL_ACCUM_INV: u32 = 3497; +pub const F_BOOL_ALLTRUE: u32 = 3498; +pub const F_BOOL_ANYTRUE: u32 = 3499; +pub const F_ANYENUM_IN: u32 = 3504; +pub const F_ANYENUM_OUT: u32 = 3505; +pub const F_ENUM_IN: u32 = 3506; +pub const F_ENUM_OUT: u32 = 3507; +pub const F_ENUM_EQ: u32 = 3508; +pub const F_ENUM_NE: u32 = 3509; +pub const F_ENUM_LT: u32 = 3510; +pub const F_ENUM_GT: u32 = 3511; +pub const F_ENUM_LE: u32 = 3512; +pub const F_ENUM_GE: u32 = 3513; +pub const F_ENUM_CMP: u32 = 3514; +pub const F_HASHENUM: u32 = 3515; +pub const F_ENUM_SMALLER: u32 = 3524; +pub const F_ENUM_LARGER: u32 = 3525; +pub const F_MAX_ANYENUM: u32 = 3526; +pub const F_MIN_ANYENUM: u32 = 3527; +pub const F_ENUM_FIRST: u32 = 3528; +pub const F_ENUM_LAST: u32 = 3529; +pub const F_ENUM_RANGE_ANYENUM_ANYENUM: u32 = 3530; +pub const F_ENUM_RANGE_ANYENUM: u32 = 3531; +pub const F_ENUM_RECV: u32 = 3532; +pub const F_ENUM_SEND: u32 = 3533; +pub const F_STRING_AGG_TRANSFN: u32 = 3535; +pub const F_STRING_AGG_FINALFN: u32 = 3536; +pub const F_PG_DESCRIBE_OBJECT: u32 = 3537; +pub const F_STRING_AGG_TEXT_TEXT: u32 = 3538; +pub const F_FORMAT_TEXT_ANY: u32 = 3539; +pub const F_FORMAT_TEXT: u32 = 3540; +pub const F_BYTEA_STRING_AGG_TRANSFN: u32 = 3543; +pub const F_BYTEA_STRING_AGG_FINALFN: u32 = 3544; +pub const F_STRING_AGG_BYTEA_BYTEA: u32 = 3545; +pub const F_INT8DEC: u32 = 3546; +pub const F_INT8DEC_ANY: u32 = 3547; +pub const F_NUMERIC_ACCUM_INV: u32 = 3548; +pub const F_INTERVAL_AVG_ACCUM_INV: u32 = 3549; +pub const F_NETWORK_OVERLAP: u32 = 3551; +pub const F_INET_GIST_CONSISTENT: u32 = 3553; +pub const F_INET_GIST_UNION: u32 = 3554; +pub const F_INET_GIST_COMPRESS: u32 = 3555; +pub const F_BOOL_JSONB: u32 = 3556; +pub const F_INET_GIST_PENALTY: u32 = 3557; +pub const F_INET_GIST_PICKSPLIT: u32 = 3558; +pub const F_INET_GIST_SAME: u32 = 3559; +pub const F_NETWORKSEL: u32 = 3560; +pub const F_NETWORKJOINSEL: u32 = 3561; +pub const F_NETWORK_LARGER: u32 = 3562; +pub const F_NETWORK_SMALLER: u32 = 3563; +pub const F_MAX_INET: u32 = 3564; +pub const F_MIN_INET: u32 = 3565; +pub const F_PG_EVENT_TRIGGER_DROPPED_OBJECTS: u32 = 3566; +pub const F_INT2_ACCUM_INV: u32 = 3567; +pub const F_INT4_ACCUM_INV: u32 = 3568; +pub const F_INT8_ACCUM_INV: u32 = 3569; +pub const F_INT2_AVG_ACCUM_INV: u32 = 3570; +pub const F_INT4_AVG_ACCUM_INV: u32 = 3571; +pub const F_INT2INT4_SUM: u32 = 3572; +pub const F_INET_GIST_FETCH: u32 = 3573; +pub const F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_TEXT_BOOL: u32 = 3577; +pub const F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_BYTEA_BOOL: u32 = 3578; +pub const F_JSONB_INSERT: u32 = 3579; +pub const F_PG_XACT_COMMIT_TIMESTAMP: u32 = 3581; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_TYPE_OID: u32 = 3582; +pub const F_PG_LAST_COMMITTED_XACT: u32 = 3583; +pub const F_BINARY_UPGRADE_SET_NEXT_ARRAY_PG_TYPE_OID: u32 = 3584; +pub const F_BINARY_UPGRADE_SET_NEXT_HEAP_PG_CLASS_OID: u32 = 3586; +pub const F_BINARY_UPGRADE_SET_NEXT_INDEX_PG_CLASS_OID: u32 = 3587; +pub const F_BINARY_UPGRADE_SET_NEXT_TOAST_PG_CLASS_OID: u32 = 3588; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_ENUM_OID: u32 = 3589; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_AUTHID_OID: u32 = 3590; +pub const F_BINARY_UPGRADE_CREATE_EMPTY_EXTENSION: u32 = 3591; +pub const F_EVENT_TRIGGER_IN: u32 = 3594; +pub const F_EVENT_TRIGGER_OUT: u32 = 3595; +pub const F_TSVECTORIN: u32 = 3610; +pub const F_TSVECTOROUT: u32 = 3611; +pub const F_TSQUERYIN: u32 = 3612; +pub const F_TSQUERYOUT: u32 = 3613; +pub const F_TSVECTOR_LT: u32 = 3616; +pub const F_TSVECTOR_LE: u32 = 3617; +pub const F_TSVECTOR_EQ: u32 = 3618; +pub const F_TSVECTOR_NE: u32 = 3619; +pub const F_TSVECTOR_GE: u32 = 3620; +pub const F_TSVECTOR_GT: u32 = 3621; +pub const F_TSVECTOR_CMP: u32 = 3622; +pub const F_STRIP: u32 = 3623; +pub const F_SETWEIGHT_TSVECTOR_CHAR: u32 = 3624; +pub const F_TSVECTOR_CONCAT: u32 = 3625; +pub const F_TS_MATCH_VQ: u32 = 3634; +pub const F_TS_MATCH_QV: u32 = 3635; +pub const F_TSVECTORSEND: u32 = 3638; +pub const F_TSVECTORRECV: u32 = 3639; +pub const F_TSQUERYSEND: u32 = 3640; +pub const F_TSQUERYRECV: u32 = 3641; +pub const F_GTSVECTORIN: u32 = 3646; +pub const F_GTSVECTOROUT: u32 = 3647; +pub const F_GTSVECTOR_COMPRESS: u32 = 3648; +pub const F_GTSVECTOR_DECOMPRESS: u32 = 3649; +pub const F_GTSVECTOR_PICKSPLIT: u32 = 3650; +pub const F_GTSVECTOR_UNION: u32 = 3651; +pub const F_GTSVECTOR_SAME: u32 = 3652; +pub const F_GTSVECTOR_PENALTY: u32 = 3653; +pub const F_GTSVECTOR_CONSISTENT_INTERNAL_TSVECTOR_INT2_OID_INTERNAL: u32 = 3654; +pub const F_GIN_EXTRACT_TSVECTOR_TSVECTOR_INTERNAL_INTERNAL: u32 = 3656; +pub const F_GIN_EXTRACT_TSQUERY_TSVECTOR_INTERNAL_INT2_INTERNAL_INTERNAL_INTERNAL_INTERNAL: u32 = + 3657; +pub const F_GIN_TSQUERY_CONSISTENT_INTERNAL_INT2_TSVECTOR_INT4_INTERNAL_INTERNAL_INTERNAL_INTERNAL : u32 = 3658 ; +pub const F_TSQUERY_LT: u32 = 3662; +pub const F_TSQUERY_LE: u32 = 3663; +pub const F_TSQUERY_EQ: u32 = 3664; +pub const F_TSQUERY_NE: u32 = 3665; +pub const F_TSQUERY_GE: u32 = 3666; +pub const F_TSQUERY_GT: u32 = 3667; +pub const F_TSQUERY_CMP: u32 = 3668; +pub const F_TSQUERY_AND: u32 = 3669; +pub const F_TSQUERY_OR: u32 = 3670; +pub const F_TSQUERY_NOT: u32 = 3671; +pub const F_NUMNODE: u32 = 3672; +pub const F_QUERYTREE: u32 = 3673; +pub const F_TS_REWRITE_TSQUERY_TSQUERY_TSQUERY: u32 = 3684; +pub const F_TS_REWRITE_TSQUERY_TEXT: u32 = 3685; +pub const F_TSMATCHSEL: u32 = 3686; +pub const F_TSMATCHJOINSEL: u32 = 3687; +pub const F_TS_TYPANALYZE: u32 = 3688; +pub const F_TS_STAT_TEXT: u32 = 3689; +pub const F_TS_STAT_TEXT_TEXT: u32 = 3690; +pub const F_TSQ_MCONTAINS: u32 = 3691; +pub const F_TSQ_MCONTAINED: u32 = 3692; +pub const F_GTSQUERY_COMPRESS: u32 = 3695; +pub const F_STARTS_WITH: u32 = 3696; +pub const F_GTSQUERY_PICKSPLIT: u32 = 3697; +pub const F_GTSQUERY_UNION: u32 = 3698; +pub const F_GTSQUERY_SAME: u32 = 3699; +pub const F_GTSQUERY_PENALTY: u32 = 3700; +pub const F_GTSQUERY_CONSISTENT_INTERNAL_TSQUERY_INT2_OID_INTERNAL: u32 = 3701; +pub const F_TS_RANK__FLOAT4_TSVECTOR_TSQUERY_INT4: u32 = 3703; +pub const F_TS_RANK__FLOAT4_TSVECTOR_TSQUERY: u32 = 3704; +pub const F_TS_RANK_TSVECTOR_TSQUERY_INT4: u32 = 3705; +pub const F_TS_RANK_TSVECTOR_TSQUERY: u32 = 3706; +pub const F_TS_RANK_CD__FLOAT4_TSVECTOR_TSQUERY_INT4: u32 = 3707; +pub const F_TS_RANK_CD__FLOAT4_TSVECTOR_TSQUERY: u32 = 3708; +pub const F_TS_RANK_CD_TSVECTOR_TSQUERY_INT4: u32 = 3709; +pub const F_TS_RANK_CD_TSVECTOR_TSQUERY: u32 = 3710; +pub const F_LENGTH_TSVECTOR: u32 = 3711; +pub const F_TS_TOKEN_TYPE_OID: u32 = 3713; +pub const F_TS_TOKEN_TYPE_TEXT: u32 = 3714; +pub const F_TS_PARSE_OID_TEXT: u32 = 3715; +pub const F_TS_PARSE_TEXT_TEXT: u32 = 3716; +pub const F_PRSD_START: u32 = 3717; +pub const F_PRSD_NEXTTOKEN: u32 = 3718; +pub const F_PRSD_END: u32 = 3719; +pub const F_PRSD_HEADLINE: u32 = 3720; +pub const F_PRSD_LEXTYPE: u32 = 3721; +pub const F_TS_LEXIZE: u32 = 3723; +pub const F_GIN_CMP_TSLEXEME: u32 = 3724; +pub const F_DSIMPLE_INIT: u32 = 3725; +pub const F_DSIMPLE_LEXIZE: u32 = 3726; +pub const F_DSYNONYM_INIT: u32 = 3728; +pub const F_DSYNONYM_LEXIZE: u32 = 3729; +pub const F_DISPELL_INIT: u32 = 3731; +pub const F_DISPELL_LEXIZE: u32 = 3732; +pub const F_REGCONFIGIN: u32 = 3736; +pub const F_REGCONFIGOUT: u32 = 3737; +pub const F_REGCONFIGRECV: u32 = 3738; +pub const F_REGCONFIGSEND: u32 = 3739; +pub const F_THESAURUS_INIT: u32 = 3740; +pub const F_THESAURUS_LEXIZE: u32 = 3741; +pub const F_TS_HEADLINE_REGCONFIG_TEXT_TSQUERY_TEXT: u32 = 3743; +pub const F_TS_HEADLINE_REGCONFIG_TEXT_TSQUERY: u32 = 3744; +pub const F_TO_TSVECTOR_REGCONFIG_TEXT: u32 = 3745; +pub const F_TO_TSQUERY_REGCONFIG_TEXT: u32 = 3746; +pub const F_PLAINTO_TSQUERY_REGCONFIG_TEXT: u32 = 3747; +pub const F_TO_TSVECTOR_TEXT: u32 = 3749; +pub const F_TO_TSQUERY_TEXT: u32 = 3750; +pub const F_PLAINTO_TSQUERY_TEXT: u32 = 3751; +pub const F_TSVECTOR_UPDATE_TRIGGER: u32 = 3752; +pub const F_TSVECTOR_UPDATE_TRIGGER_COLUMN: u32 = 3753; +pub const F_TS_HEADLINE_TEXT_TSQUERY_TEXT: u32 = 3754; +pub const F_TS_HEADLINE_TEXT_TSQUERY: u32 = 3755; +pub const F_PG_TS_PARSER_IS_VISIBLE: u32 = 3756; +pub const F_PG_TS_DICT_IS_VISIBLE: u32 = 3757; +pub const F_PG_TS_CONFIG_IS_VISIBLE: u32 = 3758; +pub const F_GET_CURRENT_TS_CONFIG: u32 = 3759; +pub const F_TS_MATCH_TT: u32 = 3760; +pub const F_TS_MATCH_TQ: u32 = 3761; +pub const F_PG_TS_TEMPLATE_IS_VISIBLE: u32 = 3768; +pub const F_REGDICTIONARYIN: u32 = 3771; +pub const F_REGDICTIONARYOUT: u32 = 3772; +pub const F_REGDICTIONARYRECV: u32 = 3773; +pub const F_REGDICTIONARYSEND: u32 = 3774; +pub const F_PG_STAT_RESET_SHARED: u32 = 3775; +pub const F_PG_STAT_RESET_SINGLE_TABLE_COUNTERS: u32 = 3776; +pub const F_PG_STAT_RESET_SINGLE_FUNCTION_COUNTERS: u32 = 3777; +pub const F_PG_TABLESPACE_LOCATION: u32 = 3778; +pub const F_PG_CREATE_PHYSICAL_REPLICATION_SLOT: u32 = 3779; +pub const F_PG_DROP_REPLICATION_SLOT: u32 = 3780; +pub const F_PG_GET_REPLICATION_SLOTS: u32 = 3781; +pub const F_PG_LOGICAL_SLOT_GET_CHANGES: u32 = 3782; +pub const F_PG_LOGICAL_SLOT_GET_BINARY_CHANGES: u32 = 3783; +pub const F_PG_LOGICAL_SLOT_PEEK_CHANGES: u32 = 3784; +pub const F_PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES: u32 = 3785; +pub const F_PG_CREATE_LOGICAL_REPLICATION_SLOT: u32 = 3786; +pub const F_TO_JSONB: u32 = 3787; +pub const F_PG_STAT_GET_SNAPSHOT_TIMESTAMP: u32 = 3788; +pub const F_GIN_CLEAN_PENDING_LIST: u32 = 3789; +pub const F_GTSVECTOR_CONSISTENT_INTERNAL_GTSVECTOR_INT4_OID_INTERNAL: u32 = 3790; +pub const F_GIN_EXTRACT_TSQUERY_TSQUERY_INTERNAL_INT2_INTERNAL_INTERNAL_INTERNAL_INTERNAL: u32 = + 3791; +pub const F_GIN_TSQUERY_CONSISTENT_INTERNAL_INT2_TSQUERY_INT4_INTERNAL_INTERNAL_INTERNAL_INTERNAL : u32 = 3792 ; +pub const F_GTSQUERY_CONSISTENT_INTERNAL_INTERNAL_INT4_OID_INTERNAL: u32 = 3793; +pub const F_INET_SPG_CONFIG: u32 = 3795; +pub const F_INET_SPG_CHOOSE: u32 = 3796; +pub const F_INET_SPG_PICKSPLIT: u32 = 3797; +pub const F_INET_SPG_INNER_CONSISTENT: u32 = 3798; +pub const F_INET_SPG_LEAF_CONSISTENT: u32 = 3799; +pub const F_PG_CURRENT_LOGFILE_: u32 = 3800; +pub const F_PG_CURRENT_LOGFILE_TEXT: u32 = 3801; +pub const F_JSONB_SEND: u32 = 3803; +pub const F_JSONB_OUT: u32 = 3804; +pub const F_JSONB_RECV: u32 = 3805; +pub const F_JSONB_IN: u32 = 3806; +pub const F_PG_GET_FUNCTION_ARG_DEFAULT: u32 = 3808; +pub const F_PG_EXPORT_SNAPSHOT: u32 = 3809; +pub const F_PG_IS_IN_RECOVERY: u32 = 3810; +pub const F_MONEY_INT4: u32 = 3811; +pub const F_MONEY_INT8: u32 = 3812; +pub const F_XMLTEXT: u32 = 3813; +pub const F_PG_COLLATION_IS_VISIBLE: u32 = 3815; +pub const F_ARRAY_TYPANALYZE: u32 = 3816; +pub const F_ARRAYCONTSEL: u32 = 3817; +pub const F_ARRAYCONTJOINSEL: u32 = 3818; +pub const F_PG_GET_MULTIXACT_MEMBERS: u32 = 3819; +pub const F_PG_LAST_WAL_RECEIVE_LSN: u32 = 3820; +pub const F_PG_LAST_WAL_REPLAY_LSN: u32 = 3821; +pub const F_CASH_DIV_CASH: u32 = 3822; +pub const F_NUMERIC_MONEY: u32 = 3823; +pub const F_MONEY_NUMERIC: u32 = 3824; +pub const F_PG_READ_FILE_TEXT: u32 = 3826; +pub const F_PG_READ_BINARY_FILE_TEXT_INT8_INT8: u32 = 3827; +pub const F_PG_READ_BINARY_FILE_TEXT: u32 = 3828; +pub const F_PG_OPFAMILY_IS_VISIBLE: u32 = 3829; +pub const F_PG_LAST_XACT_REPLAY_TIMESTAMP: u32 = 3830; +pub const F_ANYRANGE_IN: u32 = 3832; +pub const F_ANYRANGE_OUT: u32 = 3833; +pub const F_RANGE_IN: u32 = 3834; +pub const F_RANGE_OUT: u32 = 3835; +pub const F_RANGE_RECV: u32 = 3836; +pub const F_RANGE_SEND: u32 = 3837; +pub const F_PG_IDENTIFY_OBJECT: u32 = 3839; +pub const F_INT4RANGE_INT4_INT4: u32 = 3840; +pub const F_INT4RANGE_INT4_INT4_TEXT: u32 = 3841; +pub const F_PG_RELATION_IS_UPDATABLE: u32 = 3842; +pub const F_PG_COLUMN_IS_UPDATABLE: u32 = 3843; +pub const F_NUMRANGE_NUMERIC_NUMERIC: u32 = 3844; +pub const F_NUMRANGE_NUMERIC_NUMERIC_TEXT: u32 = 3845; +pub const F_MAKE_DATE: u32 = 3846; +pub const F_MAKE_TIME: u32 = 3847; +pub const F_LOWER_ANYRANGE: u32 = 3848; +pub const F_UPPER_ANYRANGE: u32 = 3849; +pub const F_ISEMPTY_ANYRANGE: u32 = 3850; +pub const F_LOWER_INC_ANYRANGE: u32 = 3851; +pub const F_UPPER_INC_ANYRANGE: u32 = 3852; +pub const F_LOWER_INF_ANYRANGE: u32 = 3853; +pub const F_UPPER_INF_ANYRANGE: u32 = 3854; +pub const F_RANGE_EQ: u32 = 3855; +pub const F_RANGE_NE: u32 = 3856; +pub const F_RANGE_OVERLAPS: u32 = 3857; +pub const F_RANGE_CONTAINS_ELEM: u32 = 3858; +pub const F_RANGE_CONTAINS: u32 = 3859; +pub const F_ELEM_CONTAINED_BY_RANGE: u32 = 3860; +pub const F_RANGE_CONTAINED_BY: u32 = 3861; +pub const F_RANGE_ADJACENT: u32 = 3862; +pub const F_RANGE_BEFORE: u32 = 3863; +pub const F_RANGE_AFTER: u32 = 3864; +pub const F_RANGE_OVERLEFT: u32 = 3865; +pub const F_RANGE_OVERRIGHT: u32 = 3866; +pub const F_RANGE_UNION: u32 = 3867; +pub const F_RANGE_INTERSECT: u32 = 3868; +pub const F_RANGE_MINUS: u32 = 3869; +pub const F_RANGE_CMP: u32 = 3870; +pub const F_RANGE_LT: u32 = 3871; +pub const F_RANGE_LE: u32 = 3872; +pub const F_RANGE_GE: u32 = 3873; +pub const F_RANGE_GT: u32 = 3874; +pub const F_RANGE_GIST_CONSISTENT: u32 = 3875; +pub const F_RANGE_GIST_UNION: u32 = 3876; +pub const F_PG_REPLICATION_SLOT_ADVANCE: u32 = 3878; +pub const F_RANGE_GIST_PENALTY: u32 = 3879; +pub const F_RANGE_GIST_PICKSPLIT: u32 = 3880; +pub const F_RANGE_GIST_SAME: u32 = 3881; +pub const F_HASH_RANGE: u32 = 3902; +pub const F_INT4RANGE_CANONICAL: u32 = 3914; +pub const F_DATERANGE_CANONICAL: u32 = 3915; +pub const F_RANGE_TYPANALYZE: u32 = 3916; +pub const F_TIMESTAMP_SUPPORT: u32 = 3917; +pub const F_INTERVAL_SUPPORT: u32 = 3918; +pub const F_GINARRAYTRICONSISTENT: u32 = 3920; +pub const F_GIN_TSQUERY_TRICONSISTENT: u32 = 3921; +pub const F_INT4RANGE_SUBDIFF: u32 = 3922; +pub const F_INT8RANGE_SUBDIFF: u32 = 3923; +pub const F_NUMRANGE_SUBDIFF: u32 = 3924; +pub const F_DATERANGE_SUBDIFF: u32 = 3925; +pub const F_INT8RANGE_CANONICAL: u32 = 3928; +pub const F_TSRANGE_SUBDIFF: u32 = 3929; +pub const F_TSTZRANGE_SUBDIFF: u32 = 3930; +pub const F_JSONB_OBJECT_KEYS: u32 = 3931; +pub const F_JSONB_EACH_TEXT: u32 = 3932; +pub const F_TSRANGE_TIMESTAMP_TIMESTAMP: u32 = 3933; +pub const F_TSRANGE_TIMESTAMP_TIMESTAMP_TEXT: u32 = 3934; +pub const F_PG_SLEEP_FOR: u32 = 3935; +pub const F_PG_SLEEP_UNTIL: u32 = 3936; +pub const F_TSTZRANGE_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 3937; +pub const F_TSTZRANGE_TIMESTAMPTZ_TIMESTAMPTZ_TEXT: u32 = 3938; +pub const F_MXID_AGE: u32 = 3939; +pub const F_JSONB_EXTRACT_PATH_TEXT: u32 = 3940; +pub const F_DATERANGE_DATE_DATE: u32 = 3941; +pub const F_DATERANGE_DATE_DATE_TEXT: u32 = 3942; +pub const F_ACLDEFAULT: u32 = 3943; +pub const F_TIME_SUPPORT: u32 = 3944; +pub const F_INT8RANGE_INT8_INT8: u32 = 3945; +pub const F_INT8RANGE_INT8_INT8_TEXT: u32 = 3946; +pub const F_JSON_OBJECT_FIELD: u32 = 3947; +pub const F_JSON_OBJECT_FIELD_TEXT: u32 = 3948; +pub const F_JSON_ARRAY_ELEMENT: u32 = 3949; +pub const F_JSON_ARRAY_ELEMENT_TEXT: u32 = 3950; +pub const F_JSON_EXTRACT_PATH: u32 = 3951; +pub const F_BRIN_SUMMARIZE_NEW_VALUES: u32 = 3952; +pub const F_JSON_EXTRACT_PATH_TEXT: u32 = 3953; +pub const F_PG_GET_OBJECT_ADDRESS: u32 = 3954; +pub const F_JSON_ARRAY_ELEMENTS: u32 = 3955; +pub const F_JSON_ARRAY_LENGTH: u32 = 3956; +pub const F_JSON_OBJECT_KEYS: u32 = 3957; +pub const F_JSON_EACH: u32 = 3958; +pub const F_JSON_EACH_TEXT: u32 = 3959; +pub const F_JSON_POPULATE_RECORD: u32 = 3960; +pub const F_JSON_POPULATE_RECORDSET: u32 = 3961; +pub const F_JSON_TYPEOF: u32 = 3968; +pub const F_JSON_ARRAY_ELEMENTS_TEXT: u32 = 3969; +pub const F_ORDERED_SET_TRANSITION: u32 = 3970; +pub const F_ORDERED_SET_TRANSITION_MULTI: u32 = 3971; +pub const F_PERCENTILE_DISC_FLOAT8_ANYELEMENT: u32 = 3972; +pub const F_PERCENTILE_DISC_FINAL: u32 = 3973; +pub const F_PERCENTILE_CONT_FLOAT8_FLOAT8: u32 = 3974; +pub const F_PERCENTILE_CONT_FLOAT8_FINAL: u32 = 3975; +pub const F_PERCENTILE_CONT_FLOAT8_INTERVAL: u32 = 3976; +pub const F_PERCENTILE_CONT_INTERVAL_FINAL: u32 = 3977; +pub const F_PERCENTILE_DISC__FLOAT8_ANYELEMENT: u32 = 3978; +pub const F_PERCENTILE_DISC_MULTI_FINAL: u32 = 3979; +pub const F_PERCENTILE_CONT__FLOAT8_FLOAT8: u32 = 3980; +pub const F_PERCENTILE_CONT_FLOAT8_MULTI_FINAL: u32 = 3981; +pub const F_PERCENTILE_CONT__FLOAT8_INTERVAL: u32 = 3982; +pub const F_PERCENTILE_CONT_INTERVAL_MULTI_FINAL: u32 = 3983; +pub const F_MODE: u32 = 3984; +pub const F_MODE_FINAL: u32 = 3985; +pub const F_RANK_ANY: u32 = 3986; +pub const F_RANK_FINAL: u32 = 3987; +pub const F_PERCENT_RANK_ANY: u32 = 3988; +pub const F_PERCENT_RANK_FINAL: u32 = 3989; +pub const F_CUME_DIST_ANY: u32 = 3990; +pub const F_CUME_DIST_FINAL: u32 = 3991; +pub const F_DENSE_RANK_ANY: u32 = 3992; +pub const F_DENSE_RANK_FINAL: u32 = 3993; +pub const F_GENERATE_SERIES_INT4_SUPPORT: u32 = 3994; +pub const F_GENERATE_SERIES_INT8_SUPPORT: u32 = 3995; +pub const F_ARRAY_UNNEST_SUPPORT: u32 = 3996; +pub const F_GIST_BOX_DISTANCE: u32 = 3998; +pub const F_BRIN_SUMMARIZE_RANGE: u32 = 3999; +pub const F_JSONPATH_IN: u32 = 4001; +pub const F_JSONPATH_RECV: u32 = 4002; +pub const F_JSONPATH_OUT: u32 = 4003; +pub const F_JSONPATH_SEND: u32 = 4004; +pub const F_JSONB_PATH_EXISTS: u32 = 4005; +pub const F_JSONB_PATH_QUERY: u32 = 4006; +pub const F_JSONB_PATH_QUERY_ARRAY: u32 = 4007; +pub const F_JSONB_PATH_QUERY_FIRST: u32 = 4008; +pub const F_JSONB_PATH_MATCH: u32 = 4009; +pub const F_JSONB_PATH_EXISTS_OPR: u32 = 4010; +pub const F_JSONB_PATH_MATCH_OPR: u32 = 4011; +pub const F_BRIN_DESUMMARIZE_RANGE: u32 = 4014; +pub const F_SPG_QUAD_CONFIG: u32 = 4018; +pub const F_SPG_QUAD_CHOOSE: u32 = 4019; +pub const F_SPG_QUAD_PICKSPLIT: u32 = 4020; +pub const F_SPG_QUAD_INNER_CONSISTENT: u32 = 4021; +pub const F_SPG_QUAD_LEAF_CONSISTENT: u32 = 4022; +pub const F_SPG_KD_CONFIG: u32 = 4023; +pub const F_SPG_KD_CHOOSE: u32 = 4024; +pub const F_SPG_KD_PICKSPLIT: u32 = 4025; +pub const F_SPG_KD_INNER_CONSISTENT: u32 = 4026; +pub const F_SPG_TEXT_CONFIG: u32 = 4027; +pub const F_SPG_TEXT_CHOOSE: u32 = 4028; +pub const F_SPG_TEXT_PICKSPLIT: u32 = 4029; +pub const F_SPG_TEXT_INNER_CONSISTENT: u32 = 4030; +pub const F_SPG_TEXT_LEAF_CONSISTENT: u32 = 4031; +pub const F_PG_SEQUENCE_LAST_VALUE: u32 = 4032; +pub const F_JSONB_NE: u32 = 4038; +pub const F_JSONB_LT: u32 = 4039; +pub const F_JSONB_GT: u32 = 4040; +pub const F_JSONB_LE: u32 = 4041; +pub const F_JSONB_GE: u32 = 4042; +pub const F_JSONB_EQ: u32 = 4043; +pub const F_JSONB_CMP: u32 = 4044; +pub const F_JSONB_HASH: u32 = 4045; +pub const F_JSONB_CONTAINS: u32 = 4046; +pub const F_JSONB_EXISTS: u32 = 4047; +pub const F_JSONB_EXISTS_ANY: u32 = 4048; +pub const F_JSONB_EXISTS_ALL: u32 = 4049; +pub const F_JSONB_CONTAINED: u32 = 4050; +pub const F_ARRAY_AGG_ARRAY_TRANSFN: u32 = 4051; +pub const F_ARRAY_AGG_ARRAY_FINALFN: u32 = 4052; +pub const F_ARRAY_AGG_ANYARRAY: u32 = 4053; +pub const F_RANGE_MERGE_ANYRANGE_ANYRANGE: u32 = 4057; +pub const F_INET_MERGE: u32 = 4063; +pub const F_BOUND_BOX: u32 = 4067; +pub const F_INET_SAME_FAMILY: u32 = 4071; +pub const F_BINARY_UPGRADE_SET_RECORD_INIT_PRIVS: u32 = 4083; +pub const F_REGNAMESPACEIN: u32 = 4084; +pub const F_REGNAMESPACEOUT: u32 = 4085; +pub const F_TO_REGNAMESPACE: u32 = 4086; +pub const F_REGNAMESPACERECV: u32 = 4087; +pub const F_REGNAMESPACESEND: u32 = 4088; +pub const F_BOX_POINT: u32 = 4091; +pub const F_REGROLEOUT: u32 = 4092; +pub const F_TO_REGROLE: u32 = 4093; +pub const F_REGROLERECV: u32 = 4094; +pub const F_REGROLESEND: u32 = 4095; +pub const F_REGROLEIN: u32 = 4098; +pub const F_BINARY_UPGRADE_SET_MISSING_VALUE: u32 = 4101; +pub const F_BRIN_INCLUSION_OPCINFO: u32 = 4105; +pub const F_BRIN_INCLUSION_ADD_VALUE: u32 = 4106; +pub const F_BRIN_INCLUSION_CONSISTENT: u32 = 4107; +pub const F_BRIN_INCLUSION_UNION: u32 = 4108; +pub const F_MACADDR8_IN: u32 = 4110; +pub const F_MACADDR8_OUT: u32 = 4111; +pub const F_TRUNC_MACADDR8: u32 = 4112; +pub const F_MACADDR8_EQ: u32 = 4113; +pub const F_MACADDR8_LT: u32 = 4114; +pub const F_MACADDR8_LE: u32 = 4115; +pub const F_MACADDR8_GT: u32 = 4116; +pub const F_MACADDR8_GE: u32 = 4117; +pub const F_MACADDR8_NE: u32 = 4118; +pub const F_MACADDR8_CMP: u32 = 4119; +pub const F_MACADDR8_NOT: u32 = 4120; +pub const F_MACADDR8_AND: u32 = 4121; +pub const F_MACADDR8_OR: u32 = 4122; +pub const F_MACADDR8: u32 = 4123; +pub const F_MACADDR: u32 = 4124; +pub const F_MACADDR8_SET7BIT: u32 = 4125; +pub const F_IN_RANGE_INT8_INT8_INT8_BOOL_BOOL: u32 = 4126; +pub const F_IN_RANGE_INT4_INT4_INT8_BOOL_BOOL: u32 = 4127; +pub const F_IN_RANGE_INT4_INT4_INT4_BOOL_BOOL: u32 = 4128; +pub const F_IN_RANGE_INT4_INT4_INT2_BOOL_BOOL: u32 = 4129; +pub const F_IN_RANGE_INT2_INT2_INT8_BOOL_BOOL: u32 = 4130; +pub const F_IN_RANGE_INT2_INT2_INT4_BOOL_BOOL: u32 = 4131; +pub const F_IN_RANGE_INT2_INT2_INT2_BOOL_BOOL: u32 = 4132; +pub const F_IN_RANGE_DATE_DATE_INTERVAL_BOOL_BOOL: u32 = 4133; +pub const F_IN_RANGE_TIMESTAMP_TIMESTAMP_INTERVAL_BOOL_BOOL: u32 = 4134; +pub const F_IN_RANGE_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL_BOOL_BOOL: u32 = 4135; +pub const F_IN_RANGE_INTERVAL_INTERVAL_INTERVAL_BOOL_BOOL: u32 = 4136; +pub const F_IN_RANGE_TIME_TIME_INTERVAL_BOOL_BOOL: u32 = 4137; +pub const F_IN_RANGE_TIMETZ_TIMETZ_INTERVAL_BOOL_BOOL: u32 = 4138; +pub const F_IN_RANGE_FLOAT8_FLOAT8_FLOAT8_BOOL_BOOL: u32 = 4139; +pub const F_IN_RANGE_FLOAT4_FLOAT4_FLOAT8_BOOL_BOOL: u32 = 4140; +pub const F_IN_RANGE_NUMERIC_NUMERIC_NUMERIC_BOOL_BOOL: u32 = 4141; +pub const F_PG_LSN_LARGER: u32 = 4187; +pub const F_PG_LSN_SMALLER: u32 = 4188; +pub const F_MAX_PG_LSN: u32 = 4189; +pub const F_MIN_PG_LSN: u32 = 4190; +pub const F_REGCOLLATIONIN: u32 = 4193; +pub const F_REGCOLLATIONOUT: u32 = 4194; +pub const F_TO_REGCOLLATION: u32 = 4195; +pub const F_REGCOLLATIONRECV: u32 = 4196; +pub const F_REGCOLLATIONSEND: u32 = 4197; +pub const F_TS_HEADLINE_REGCONFIG_JSONB_TSQUERY_TEXT: u32 = 4201; +pub const F_TS_HEADLINE_REGCONFIG_JSONB_TSQUERY: u32 = 4202; +pub const F_TS_HEADLINE_JSONB_TSQUERY_TEXT: u32 = 4203; +pub const F_TS_HEADLINE_JSONB_TSQUERY: u32 = 4204; +pub const F_TS_HEADLINE_REGCONFIG_JSON_TSQUERY_TEXT: u32 = 4205; +pub const F_TS_HEADLINE_REGCONFIG_JSON_TSQUERY: u32 = 4206; +pub const F_TS_HEADLINE_JSON_TSQUERY_TEXT: u32 = 4207; +pub const F_TS_HEADLINE_JSON_TSQUERY: u32 = 4208; +pub const F_TO_TSVECTOR_JSONB: u32 = 4209; +pub const F_TO_TSVECTOR_JSON: u32 = 4210; +pub const F_TO_TSVECTOR_REGCONFIG_JSONB: u32 = 4211; +pub const F_TO_TSVECTOR_REGCONFIG_JSON: u32 = 4212; +pub const F_JSONB_TO_TSVECTOR_JSONB_JSONB: u32 = 4213; +pub const F_JSONB_TO_TSVECTOR_REGCONFIG_JSONB_JSONB: u32 = 4214; +pub const F_JSON_TO_TSVECTOR_JSON_JSONB: u32 = 4215; +pub const F_JSON_TO_TSVECTOR_REGCONFIG_JSON_JSONB: u32 = 4216; +pub const F_PG_COPY_PHYSICAL_REPLICATION_SLOT_NAME_NAME_BOOL: u32 = 4220; +pub const F_PG_COPY_PHYSICAL_REPLICATION_SLOT_NAME_NAME: u32 = 4221; +pub const F_PG_COPY_LOGICAL_REPLICATION_SLOT_NAME_NAME_BOOL_NAME: u32 = 4222; +pub const F_PG_COPY_LOGICAL_REPLICATION_SLOT_NAME_NAME_BOOL: u32 = 4223; +pub const F_PG_COPY_LOGICAL_REPLICATION_SLOT_NAME_NAME: u32 = 4224; +pub const F_ANYCOMPATIBLEMULTIRANGE_IN: u32 = 4226; +pub const F_ANYCOMPATIBLEMULTIRANGE_OUT: u32 = 4227; +pub const F_RANGE_MERGE_ANYMULTIRANGE: u32 = 4228; +pub const F_ANYMULTIRANGE_IN: u32 = 4229; +pub const F_ANYMULTIRANGE_OUT: u32 = 4230; +pub const F_MULTIRANGE_IN: u32 = 4231; +pub const F_MULTIRANGE_OUT: u32 = 4232; +pub const F_MULTIRANGE_RECV: u32 = 4233; +pub const F_MULTIRANGE_SEND: u32 = 4234; +pub const F_LOWER_ANYMULTIRANGE: u32 = 4235; +pub const F_UPPER_ANYMULTIRANGE: u32 = 4236; +pub const F_ISEMPTY_ANYMULTIRANGE: u32 = 4237; +pub const F_LOWER_INC_ANYMULTIRANGE: u32 = 4238; +pub const F_UPPER_INC_ANYMULTIRANGE: u32 = 4239; +pub const F_LOWER_INF_ANYMULTIRANGE: u32 = 4240; +pub const F_UPPER_INF_ANYMULTIRANGE: u32 = 4241; +pub const F_MULTIRANGE_TYPANALYZE: u32 = 4242; +pub const F_MULTIRANGESEL: u32 = 4243; +pub const F_MULTIRANGE_EQ: u32 = 4244; +pub const F_MULTIRANGE_NE: u32 = 4245; +pub const F_RANGE_OVERLAPS_MULTIRANGE: u32 = 4246; +pub const F_MULTIRANGE_OVERLAPS_RANGE: u32 = 4247; +pub const F_MULTIRANGE_OVERLAPS_MULTIRANGE: u32 = 4248; +pub const F_MULTIRANGE_CONTAINS_ELEM: u32 = 4249; +pub const F_MULTIRANGE_CONTAINS_RANGE: u32 = 4250; +pub const F_MULTIRANGE_CONTAINS_MULTIRANGE: u32 = 4251; +pub const F_ELEM_CONTAINED_BY_MULTIRANGE: u32 = 4252; +pub const F_RANGE_CONTAINED_BY_MULTIRANGE: u32 = 4253; +pub const F_MULTIRANGE_CONTAINED_BY_MULTIRANGE: u32 = 4254; +pub const F_RANGE_ADJACENT_MULTIRANGE: u32 = 4255; +pub const F_MULTIRANGE_ADJACENT_MULTIRANGE: u32 = 4256; +pub const F_MULTIRANGE_ADJACENT_RANGE: u32 = 4257; +pub const F_RANGE_BEFORE_MULTIRANGE: u32 = 4258; +pub const F_MULTIRANGE_BEFORE_RANGE: u32 = 4259; +pub const F_MULTIRANGE_BEFORE_MULTIRANGE: u32 = 4260; +pub const F_RANGE_AFTER_MULTIRANGE: u32 = 4261; +pub const F_MULTIRANGE_AFTER_RANGE: u32 = 4262; +pub const F_MULTIRANGE_AFTER_MULTIRANGE: u32 = 4263; +pub const F_RANGE_OVERLEFT_MULTIRANGE: u32 = 4264; +pub const F_MULTIRANGE_OVERLEFT_RANGE: u32 = 4265; +pub const F_MULTIRANGE_OVERLEFT_MULTIRANGE: u32 = 4266; +pub const F_RANGE_OVERRIGHT_MULTIRANGE: u32 = 4267; +pub const F_MULTIRANGE_OVERRIGHT_RANGE: u32 = 4268; +pub const F_MULTIRANGE_OVERRIGHT_MULTIRANGE: u32 = 4269; +pub const F_MULTIRANGE_UNION: u32 = 4270; +pub const F_MULTIRANGE_MINUS: u32 = 4271; +pub const F_MULTIRANGE_INTERSECT: u32 = 4272; +pub const F_MULTIRANGE_CMP: u32 = 4273; +pub const F_MULTIRANGE_LT: u32 = 4274; +pub const F_MULTIRANGE_LE: u32 = 4275; +pub const F_MULTIRANGE_GE: u32 = 4276; +pub const F_MULTIRANGE_GT: u32 = 4277; +pub const F_HASH_MULTIRANGE: u32 = 4278; +pub const F_HASH_MULTIRANGE_EXTENDED: u32 = 4279; +pub const F_INT4MULTIRANGE_: u32 = 4280; +pub const F_INT4MULTIRANGE_INT4RANGE: u32 = 4281; +pub const F_INT4MULTIRANGE__INT4RANGE: u32 = 4282; +pub const F_NUMMULTIRANGE_: u32 = 4283; +pub const F_NUMMULTIRANGE_NUMRANGE: u32 = 4284; +pub const F_NUMMULTIRANGE__NUMRANGE: u32 = 4285; +pub const F_TSMULTIRANGE_: u32 = 4286; +pub const F_TSMULTIRANGE_TSRANGE: u32 = 4287; +pub const F_TSMULTIRANGE__TSRANGE: u32 = 4288; +pub const F_TSTZMULTIRANGE_: u32 = 4289; +pub const F_TSTZMULTIRANGE_TSTZRANGE: u32 = 4290; +pub const F_TSTZMULTIRANGE__TSTZRANGE: u32 = 4291; +pub const F_DATEMULTIRANGE_: u32 = 4292; +pub const F_DATEMULTIRANGE_DATERANGE: u32 = 4293; +pub const F_DATEMULTIRANGE__DATERANGE: u32 = 4294; +pub const F_INT8MULTIRANGE_: u32 = 4295; +pub const F_INT8MULTIRANGE_INT8RANGE: u32 = 4296; +pub const F_INT8MULTIRANGE__INT8RANGE: u32 = 4297; +pub const F_MULTIRANGE: u32 = 4298; +pub const F_RANGE_AGG_TRANSFN: u32 = 4299; +pub const F_RANGE_AGG_FINALFN: u32 = 4300; +pub const F_RANGE_AGG_ANYRANGE: u32 = 4301; +pub const F_KOI8R_TO_MIC: u32 = 4302; +pub const F_MIC_TO_KOI8R: u32 = 4303; +pub const F_ISO_TO_MIC: u32 = 4304; +pub const F_MIC_TO_ISO: u32 = 4305; +pub const F_WIN1251_TO_MIC: u32 = 4306; +pub const F_MIC_TO_WIN1251: u32 = 4307; +pub const F_WIN866_TO_MIC: u32 = 4308; +pub const F_MIC_TO_WIN866: u32 = 4309; +pub const F_KOI8R_TO_WIN1251: u32 = 4310; +pub const F_WIN1251_TO_KOI8R: u32 = 4311; +pub const F_KOI8R_TO_WIN866: u32 = 4312; +pub const F_WIN866_TO_KOI8R: u32 = 4313; +pub const F_WIN866_TO_WIN1251: u32 = 4314; +pub const F_WIN1251_TO_WIN866: u32 = 4315; +pub const F_ISO_TO_KOI8R: u32 = 4316; +pub const F_KOI8R_TO_ISO: u32 = 4317; +pub const F_ISO_TO_WIN1251: u32 = 4318; +pub const F_WIN1251_TO_ISO: u32 = 4319; +pub const F_ISO_TO_WIN866: u32 = 4320; +pub const F_WIN866_TO_ISO: u32 = 4321; +pub const F_EUC_CN_TO_MIC: u32 = 4322; +pub const F_MIC_TO_EUC_CN: u32 = 4323; +pub const F_EUC_JP_TO_SJIS: u32 = 4324; +pub const F_SJIS_TO_EUC_JP: u32 = 4325; +pub const F_EUC_JP_TO_MIC: u32 = 4326; +pub const F_SJIS_TO_MIC: u32 = 4327; +pub const F_MIC_TO_EUC_JP: u32 = 4328; +pub const F_MIC_TO_SJIS: u32 = 4329; +pub const F_EUC_KR_TO_MIC: u32 = 4330; +pub const F_MIC_TO_EUC_KR: u32 = 4331; +pub const F_EUC_TW_TO_BIG5: u32 = 4332; +pub const F_BIG5_TO_EUC_TW: u32 = 4333; +pub const F_EUC_TW_TO_MIC: u32 = 4334; +pub const F_BIG5_TO_MIC: u32 = 4335; +pub const F_MIC_TO_EUC_TW: u32 = 4336; +pub const F_MIC_TO_BIG5: u32 = 4337; +pub const F_LATIN2_TO_MIC: u32 = 4338; +pub const F_MIC_TO_LATIN2: u32 = 4339; +pub const F_WIN1250_TO_MIC: u32 = 4340; +pub const F_MIC_TO_WIN1250: u32 = 4341; +pub const F_LATIN2_TO_WIN1250: u32 = 4342; +pub const F_WIN1250_TO_LATIN2: u32 = 4343; +pub const F_LATIN1_TO_MIC: u32 = 4344; +pub const F_MIC_TO_LATIN1: u32 = 4345; +pub const F_LATIN3_TO_MIC: u32 = 4346; +pub const F_MIC_TO_LATIN3: u32 = 4347; +pub const F_LATIN4_TO_MIC: u32 = 4348; +pub const F_MIC_TO_LATIN4: u32 = 4349; +pub const F_NORMALIZE: u32 = 4350; +pub const F_IS_NORMALIZED: u32 = 4351; +pub const F_BIG5_TO_UTF8: u32 = 4352; +pub const F_UTF8_TO_BIG5: u32 = 4353; +pub const F_UTF8_TO_KOI8R: u32 = 4354; +pub const F_KOI8R_TO_UTF8: u32 = 4355; +pub const F_UTF8_TO_KOI8U: u32 = 4356; +pub const F_KOI8U_TO_UTF8: u32 = 4357; +pub const F_UTF8_TO_WIN: u32 = 4358; +pub const F_WIN_TO_UTF8: u32 = 4359; +pub const F_EUC_CN_TO_UTF8: u32 = 4360; +pub const F_UTF8_TO_EUC_CN: u32 = 4361; +pub const F_EUC_JP_TO_UTF8: u32 = 4362; +pub const F_UTF8_TO_EUC_JP: u32 = 4363; +pub const F_EUC_KR_TO_UTF8: u32 = 4364; +pub const F_UTF8_TO_EUC_KR: u32 = 4365; +pub const F_EUC_TW_TO_UTF8: u32 = 4366; +pub const F_UTF8_TO_EUC_TW: u32 = 4367; +pub const F_GB18030_TO_UTF8: u32 = 4368; +pub const F_UTF8_TO_GB18030: u32 = 4369; +pub const F_GBK_TO_UTF8: u32 = 4370; +pub const F_UTF8_TO_GBK: u32 = 4371; +pub const F_UTF8_TO_ISO8859: u32 = 4372; +pub const F_ISO8859_TO_UTF8: u32 = 4373; +pub const F_ISO8859_1_TO_UTF8: u32 = 4374; +pub const F_UTF8_TO_ISO8859_1: u32 = 4375; +pub const F_JOHAB_TO_UTF8: u32 = 4376; +pub const F_UTF8_TO_JOHAB: u32 = 4377; +pub const F_SJIS_TO_UTF8: u32 = 4378; +pub const F_UTF8_TO_SJIS: u32 = 4379; +pub const F_UHC_TO_UTF8: u32 = 4380; +pub const F_UTF8_TO_UHC: u32 = 4381; +pub const F_EUC_JIS_2004_TO_UTF8: u32 = 4382; +pub const F_UTF8_TO_EUC_JIS_2004: u32 = 4383; +pub const F_SHIFT_JIS_2004_TO_UTF8: u32 = 4384; +pub const F_UTF8_TO_SHIFT_JIS_2004: u32 = 4385; +pub const F_EUC_JIS_2004_TO_SHIFT_JIS_2004: u32 = 4386; +pub const F_SHIFT_JIS_2004_TO_EUC_JIS_2004: u32 = 4387; +pub const F_MULTIRANGE_INTERSECT_AGG_TRANSFN: u32 = 4388; +pub const F_RANGE_INTERSECT_AGG_ANYMULTIRANGE: u32 = 4389; +pub const F_BINARY_UPGRADE_SET_NEXT_MULTIRANGE_PG_TYPE_OID: u32 = 4390; +pub const F_BINARY_UPGRADE_SET_NEXT_MULTIRANGE_ARRAY_PG_TYPE_OID: u32 = 4391; +pub const F_RANGE_INTERSECT_AGG_TRANSFN: u32 = 4401; +pub const F_RANGE_INTERSECT_AGG_ANYRANGE: u32 = 4450; +pub const F_RANGE_CONTAINS_MULTIRANGE: u32 = 4541; +pub const F_MULTIRANGE_CONTAINED_BY_RANGE: u32 = 4542; +pub const F_PG_LOG_BACKEND_MEMORY_CONTEXTS: u32 = 4543; +pub const F_BINARY_UPGRADE_SET_NEXT_HEAP_RELFILENODE: u32 = 4545; +pub const F_BINARY_UPGRADE_SET_NEXT_INDEX_RELFILENODE: u32 = 4546; +pub const F_BINARY_UPGRADE_SET_NEXT_TOAST_RELFILENODE: u32 = 4547; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_TABLESPACE_OID: u32 = 4548; +pub const F_UNICODE_VERSION: u32 = 4549; +pub const F_PG_EVENT_TRIGGER_TABLE_REWRITE_OID: u32 = 4566; +pub const F_PG_EVENT_TRIGGER_TABLE_REWRITE_REASON: u32 = 4567; +pub const F_PG_EVENT_TRIGGER_DDL_COMMANDS: u32 = 4568; +pub const F_BRIN_BLOOM_OPCINFO: u32 = 4591; +pub const F_BRIN_BLOOM_ADD_VALUE: u32 = 4592; +pub const F_BRIN_BLOOM_CONSISTENT: u32 = 4593; +pub const F_BRIN_BLOOM_UNION: u32 = 4594; +pub const F_BRIN_BLOOM_OPTIONS: u32 = 4595; +pub const F_BRIN_BLOOM_SUMMARY_IN: u32 = 4596; +pub const F_BRIN_BLOOM_SUMMARY_OUT: u32 = 4597; +pub const F_BRIN_BLOOM_SUMMARY_RECV: u32 = 4598; +pub const F_BRIN_BLOOM_SUMMARY_SEND: u32 = 4599; +pub const F_BRIN_MINMAX_MULTI_OPCINFO: u32 = 4616; +pub const F_BRIN_MINMAX_MULTI_ADD_VALUE: u32 = 4617; +pub const F_BRIN_MINMAX_MULTI_CONSISTENT: u32 = 4618; +pub const F_BRIN_MINMAX_MULTI_UNION: u32 = 4619; +pub const F_BRIN_MINMAX_MULTI_OPTIONS: u32 = 4620; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INT2: u32 = 4621; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INT4: u32 = 4622; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INT8: u32 = 4623; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_FLOAT4: u32 = 4624; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_FLOAT8: u32 = 4625; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_NUMERIC: u32 = 4626; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TID: u32 = 4627; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_UUID: u32 = 4628; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_DATE: u32 = 4629; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TIME: u32 = 4630; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INTERVAL: u32 = 4631; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TIMETZ: u32 = 4632; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_PG_LSN: u32 = 4633; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_MACADDR: u32 = 4634; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_MACADDR8: u32 = 4635; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INET: u32 = 4636; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TIMESTAMP: u32 = 4637; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_IN: u32 = 4638; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_OUT: u32 = 4639; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_RECV: u32 = 4640; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_SEND: u32 = 4641; +pub const F_PHRASETO_TSQUERY_TEXT: u32 = 5001; +pub const F_TSQUERY_PHRASE_TSQUERY_TSQUERY: u32 = 5003; +pub const F_TSQUERY_PHRASE_TSQUERY_TSQUERY_INT4: u32 = 5004; +pub const F_PHRASETO_TSQUERY_REGCONFIG_TEXT: u32 = 5006; +pub const F_WEBSEARCH_TO_TSQUERY_REGCONFIG_TEXT: u32 = 5007; +pub const F_WEBSEARCH_TO_TSQUERY_TEXT: u32 = 5009; +pub const F_SPG_BBOX_QUAD_CONFIG: u32 = 5010; +pub const F_SPG_POLY_QUAD_COMPRESS: u32 = 5011; +pub const F_SPG_BOX_QUAD_CONFIG: u32 = 5012; +pub const F_SPG_BOX_QUAD_CHOOSE: u32 = 5013; +pub const F_SPG_BOX_QUAD_PICKSPLIT: u32 = 5014; +pub const F_SPG_BOX_QUAD_INNER_CONSISTENT: u32 = 5015; +pub const F_SPG_BOX_QUAD_LEAF_CONSISTENT: u32 = 5016; +pub const F_PG_MCV_LIST_IN: u32 = 5018; +pub const F_PG_MCV_LIST_OUT: u32 = 5019; +pub const F_PG_MCV_LIST_RECV: u32 = 5020; +pub const F_PG_MCV_LIST_SEND: u32 = 5021; +pub const F_PG_LSN_PLI: u32 = 5022; +pub const F_NUMERIC_PL_PG_LSN: u32 = 5023; +pub const F_PG_LSN_MII: u32 = 5024; +pub const F_SATISFIES_HASH_PARTITION: u32 = 5028; +pub const F_PG_LS_TMPDIR_: u32 = 5029; +pub const F_PG_LS_TMPDIR_OID: u32 = 5030; +pub const F_PG_LS_ARCHIVE_STATUSDIR: u32 = 5031; +pub const F_NETWORK_SORTSUPPORT: u32 = 5033; +pub const F_XID8LT: u32 = 5034; +pub const F_XID8GT: u32 = 5035; +pub const F_XID8LE: u32 = 5036; +pub const F_XID8GE: u32 = 5037; +pub const F_MATCHINGSEL: u32 = 5040; +pub const F_MATCHINGJOINSEL: u32 = 5041; +pub const F_MIN_SCALE: u32 = 5042; +pub const F_TRIM_SCALE: u32 = 5043; +pub const F_GCD_INT4_INT4: u32 = 5044; +pub const F_GCD_INT8_INT8: u32 = 5045; +pub const F_LCM_INT4_INT4: u32 = 5046; +pub const F_LCM_INT8_INT8: u32 = 5047; +pub const F_GCD_NUMERIC_NUMERIC: u32 = 5048; +pub const F_LCM_NUMERIC_NUMERIC: u32 = 5049; +pub const F_BTVARSTREQUALIMAGE: u32 = 5050; +pub const F_BTEQUALIMAGE: u32 = 5051; +pub const F_PG_GET_SHMEM_ALLOCATIONS: u32 = 5052; +pub const F_PG_STAT_GET_INS_SINCE_VACUUM: u32 = 5053; +pub const F_JSONB_SET_LAX: u32 = 5054; +pub const F_PG_SNAPSHOT_IN: u32 = 5055; +pub const F_PG_SNAPSHOT_OUT: u32 = 5056; +pub const F_PG_SNAPSHOT_RECV: u32 = 5057; +pub const F_PG_SNAPSHOT_SEND: u32 = 5058; +pub const F_PG_CURRENT_XACT_ID: u32 = 5059; +pub const F_PG_CURRENT_XACT_ID_IF_ASSIGNED: u32 = 5060; +pub const F_PG_CURRENT_SNAPSHOT: u32 = 5061; +pub const F_PG_SNAPSHOT_XMIN: u32 = 5062; +pub const F_PG_SNAPSHOT_XMAX: u32 = 5063; +pub const F_PG_SNAPSHOT_XIP: u32 = 5064; +pub const F_PG_VISIBLE_IN_SNAPSHOT: u32 = 5065; +pub const F_PG_XACT_STATUS: u32 = 5066; +pub const F_XID8IN: u32 = 5070; +pub const F_XID: u32 = 5071; +pub const F_XID8OUT: u32 = 5081; +pub const F_XID8RECV: u32 = 5082; +pub const F_XID8SEND: u32 = 5083; +pub const F_XID8EQ: u32 = 5084; +pub const F_XID8NE: u32 = 5085; +pub const F_ANYCOMPATIBLE_IN: u32 = 5086; +pub const F_ANYCOMPATIBLE_OUT: u32 = 5087; +pub const F_ANYCOMPATIBLEARRAY_IN: u32 = 5088; +pub const F_ANYCOMPATIBLEARRAY_OUT: u32 = 5089; +pub const F_ANYCOMPATIBLEARRAY_RECV: u32 = 5090; +pub const F_ANYCOMPATIBLEARRAY_SEND: u32 = 5091; +pub const F_ANYCOMPATIBLENONARRAY_IN: u32 = 5092; +pub const F_ANYCOMPATIBLENONARRAY_OUT: u32 = 5093; +pub const F_ANYCOMPATIBLERANGE_IN: u32 = 5094; +pub const F_ANYCOMPATIBLERANGE_OUT: u32 = 5095; +pub const F_XID8CMP: u32 = 5096; +pub const F_XID8_LARGER: u32 = 5097; +pub const F_XID8_SMALLER: u32 = 5098; +pub const F_MAX_XID8: u32 = 5099; +pub const F_MIN_XID8: u32 = 5100; +pub const F_PG_REPLICATION_ORIGIN_CREATE: u32 = 6003; +pub const F_PG_REPLICATION_ORIGIN_DROP: u32 = 6004; +pub const F_PG_REPLICATION_ORIGIN_OID: u32 = 6005; +pub const F_PG_REPLICATION_ORIGIN_SESSION_SETUP: u32 = 6006; +pub const F_PG_REPLICATION_ORIGIN_SESSION_RESET: u32 = 6007; +pub const F_PG_REPLICATION_ORIGIN_SESSION_IS_SETUP: u32 = 6008; +pub const F_PG_REPLICATION_ORIGIN_SESSION_PROGRESS: u32 = 6009; +pub const F_PG_REPLICATION_ORIGIN_XACT_SETUP: u32 = 6010; +pub const F_PG_REPLICATION_ORIGIN_XACT_RESET: u32 = 6011; +pub const F_PG_REPLICATION_ORIGIN_ADVANCE: u32 = 6012; +pub const F_PG_REPLICATION_ORIGIN_PROGRESS: u32 = 6013; +pub const F_PG_SHOW_REPLICATION_ORIGIN_STATUS: u32 = 6014; +pub const F_JSONB_SUBSCRIPT_HANDLER: u32 = 6098; +pub const F_ICU_UNICODE_VERSION: u32 = 6099; +pub const F_PG_LSN: u32 = 6103; +pub const F_UNICODE_ASSIGNED: u32 = 6105; +pub const F_PG_STAT_GET_BACKEND_SUBXACT: u32 = 6107; +pub const F_PG_STAT_GET_SUBSCRIPTION: u32 = 6118; +pub const F_PG_GET_PUBLICATION_TABLES: u32 = 6119; +pub const F_PG_GET_REPLICA_IDENTITY_INDEX: u32 = 6120; +pub const F_PG_RELATION_IS_PUBLISHABLE: u32 = 6121; +pub const F_MULTIRANGE_GIST_CONSISTENT: u32 = 6154; +pub const F_MULTIRANGE_GIST_COMPRESS: u32 = 6156; +pub const F_PG_GET_CATALOG_FOREIGN_KEYS: u32 = 6159; +pub const F_STRING_TO_TABLE_TEXT_TEXT: u32 = 6160; +pub const F_STRING_TO_TABLE_TEXT_TEXT_TEXT: u32 = 6161; +pub const F_BIT_COUNT_BIT: u32 = 6162; +pub const F_BIT_COUNT_BYTEA: u32 = 6163; +pub const F_BIT_XOR_INT2: u32 = 6164; +pub const F_BIT_XOR_INT4: u32 = 6165; +pub const F_BIT_XOR_INT8: u32 = 6166; +pub const F_BIT_XOR_BIT: u32 = 6167; +pub const F_PG_XACT_COMMIT_TIMESTAMP_ORIGIN: u32 = 6168; +pub const F_PG_STAT_GET_REPLICATION_SLOT: u32 = 6169; +pub const F_PG_STAT_RESET_REPLICATION_SLOT: u32 = 6170; +pub const F_TRIM_ARRAY: u32 = 6172; +pub const F_PG_GET_STATISTICSOBJDEF_EXPRESSIONS: u32 = 6173; +pub const F_PG_GET_STATISTICSOBJDEF_COLUMNS: u32 = 6174; +pub const F_DATE_BIN_INTERVAL_TIMESTAMP_TIMESTAMP: u32 = 6177; +pub const F_DATE_BIN_INTERVAL_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 6178; +pub const F_ARRAY_SUBSCRIPT_HANDLER: u32 = 6179; +pub const F_RAW_ARRAY_SUBSCRIPT_HANDLER: u32 = 6180; +pub const F_TS_DEBUG_REGCONFIG_TEXT: u32 = 6183; +pub const F_TS_DEBUG_TEXT: u32 = 6184; +pub const F_PG_STAT_GET_DB_SESSION_TIME: u32 = 6185; +pub const F_PG_STAT_GET_DB_ACTIVE_TIME: u32 = 6186; +pub const F_PG_STAT_GET_DB_IDLE_IN_TRANSACTION_TIME: u32 = 6187; +pub const F_PG_STAT_GET_DB_SESSIONS: u32 = 6188; +pub const F_PG_STAT_GET_DB_SESSIONS_ABANDONED: u32 = 6189; +pub const F_PG_STAT_GET_DB_SESSIONS_FATAL: u32 = 6190; +pub const F_PG_STAT_GET_DB_SESSIONS_KILLED: u32 = 6191; +pub const F_HASH_RECORD: u32 = 6192; +pub const F_HASH_RECORD_EXTENDED: u32 = 6193; +pub const F_LTRIM_BYTEA_BYTEA: u32 = 6195; +pub const F_RTRIM_BYTEA_BYTEA: u32 = 6196; +pub const F_PG_GET_FUNCTION_SQLBODY: u32 = 6197; +pub const F_UNISTR: u32 = 6198; +pub const F_EXTRACT_TEXT_DATE: u32 = 6199; +pub const F_EXTRACT_TEXT_TIME: u32 = 6200; +pub const F_EXTRACT_TEXT_TIMETZ: u32 = 6201; +pub const F_EXTRACT_TEXT_TIMESTAMP: u32 = 6202; +pub const F_EXTRACT_TEXT_TIMESTAMPTZ: u32 = 6203; +pub const F_EXTRACT_TEXT_INTERVAL: u32 = 6204; +pub const F_HAS_PARAMETER_PRIVILEGE_NAME_TEXT_TEXT: u32 = 6205; +pub const F_HAS_PARAMETER_PRIVILEGE_OID_TEXT_TEXT: u32 = 6206; +pub const F_HAS_PARAMETER_PRIVILEGE_TEXT_TEXT: u32 = 6207; +pub const F_PG_READ_FILE_TEXT_BOOL: u32 = 6208; +pub const F_PG_READ_BINARY_FILE_TEXT_BOOL: u32 = 6209; +pub const F_PG_INPUT_IS_VALID: u32 = 6210; +pub const F_PG_INPUT_ERROR_INFO: u32 = 6211; +pub const F_RANDOM_NORMAL: u32 = 6212; +pub const F_PG_SPLIT_WALFILE_NAME: u32 = 6213; +pub const F_PG_STAT_GET_IO: u32 = 6214; +pub const F_ARRAY_SHUFFLE: u32 = 6215; +pub const F_ARRAY_SAMPLE: u32 = 6216; +pub const F_PG_STAT_GET_TUPLES_NEWPAGE_UPDATED: u32 = 6217; +pub const F_PG_STAT_GET_XACT_TUPLES_NEWPAGE_UPDATED: u32 = 6218; +pub const F_ERF: u32 = 6219; +pub const F_ERFC: u32 = 6220; +pub const F_DATE_ADD_TIMESTAMPTZ_INTERVAL: u32 = 6221; +pub const F_DATE_ADD_TIMESTAMPTZ_INTERVAL_TEXT: u32 = 6222; +pub const F_DATE_SUBTRACT_TIMESTAMPTZ_INTERVAL: u32 = 6223; +pub const F_PG_GET_WAL_RESOURCE_MANAGERS: u32 = 6224; +pub const F_MULTIRANGE_AGG_TRANSFN: u32 = 6225; +pub const F_MULTIRANGE_AGG_FINALFN: u32 = 6226; +pub const F_RANGE_AGG_ANYMULTIRANGE: u32 = 6227; +pub const F_PG_STAT_HAVE_STATS: u32 = 6230; +pub const F_PG_STAT_GET_SUBSCRIPTION_STATS: u32 = 6231; +pub const F_PG_STAT_RESET_SUBSCRIPTION_STATS: u32 = 6232; +pub const F_WINDOW_ROW_NUMBER_SUPPORT: u32 = 6233; +pub const F_WINDOW_RANK_SUPPORT: u32 = 6234; +pub const F_WINDOW_DENSE_RANK_SUPPORT: u32 = 6235; +pub const F_INT8INC_SUPPORT: u32 = 6236; +pub const F_PG_SETTINGS_GET_FLAGS: u32 = 6240; +pub const F_PG_STOP_MAKING_PINNED_OBJECTS: u32 = 6241; +pub const F_TEXT_STARTS_WITH_SUPPORT: u32 = 6242; +pub const F_PG_STAT_GET_RECOVERY_PREFETCH: u32 = 6248; +pub const F_PG_DATABASE_COLLATION_ACTUAL_VERSION: u32 = 6249; +pub const F_PG_IDENT_FILE_MAPPINGS: u32 = 6250; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_INT4_INT4_TEXT: u32 = 6251; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_INT4_INT4: u32 = 6252; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_INT4: u32 = 6253; +pub const F_REGEXP_COUNT_TEXT_TEXT: u32 = 6254; +pub const F_REGEXP_COUNT_TEXT_TEXT_INT4: u32 = 6255; +pub const F_REGEXP_COUNT_TEXT_TEXT_INT4_TEXT: u32 = 6256; +pub const F_REGEXP_INSTR_TEXT_TEXT: u32 = 6257; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4: u32 = 6258; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4: u32 = 6259; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4_INT4: u32 = 6260; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4_INT4_TEXT: u32 = 6261; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4_INT4_TEXT_INT4: u32 = 6262; +pub const F_REGEXP_LIKE_TEXT_TEXT: u32 = 6263; +pub const F_REGEXP_LIKE_TEXT_TEXT_TEXT: u32 = 6264; +pub const F_REGEXP_SUBSTR_TEXT_TEXT: u32 = 6265; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4: u32 = 6266; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4_INT4: u32 = 6267; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4_INT4_TEXT: u32 = 6268; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4_INT4_TEXT_INT4: u32 = 6269; +pub const F_PG_LS_LOGICALSNAPDIR: u32 = 6270; +pub const F_PG_LS_LOGICALMAPDIR: u32 = 6271; +pub const F_PG_LS_REPLSLOTDIR: u32 = 6272; +pub const F_DATE_SUBTRACT_TIMESTAMPTZ_INTERVAL_TEXT: u32 = 6273; +pub const F_GENERATE_SERIES_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL_TEXT: u32 = 6274; +pub const F_JSON_AGG_STRICT_TRANSFN: u32 = 6275; +pub const F_JSON_AGG_STRICT: u32 = 6276; +pub const F_JSON_OBJECT_AGG_STRICT_TRANSFN: u32 = 6277; +pub const F_JSON_OBJECT_AGG_UNIQUE_TRANSFN: u32 = 6278; +pub const F_JSON_OBJECT_AGG_UNIQUE_STRICT_TRANSFN: u32 = 6279; +pub const F_JSON_OBJECT_AGG_STRICT: u32 = 6280; +pub const F_JSON_OBJECT_AGG_UNIQUE: u32 = 6281; +pub const F_JSON_OBJECT_AGG_UNIQUE_STRICT: u32 = 6282; +pub const F_JSONB_AGG_STRICT_TRANSFN: u32 = 6283; +pub const F_JSONB_AGG_STRICT: u32 = 6284; +pub const F_JSONB_OBJECT_AGG_STRICT_TRANSFN: u32 = 6285; +pub const F_JSONB_OBJECT_AGG_UNIQUE_TRANSFN: u32 = 6286; +pub const F_JSONB_OBJECT_AGG_UNIQUE_STRICT_TRANSFN: u32 = 6287; +pub const F_JSONB_OBJECT_AGG_STRICT: u32 = 6288; +pub const F_JSONB_OBJECT_AGG_UNIQUE: u32 = 6289; +pub const F_JSONB_OBJECT_AGG_UNIQUE_STRICT: u32 = 6290; +pub const F_ANY_VALUE: u32 = 6291; +pub const F_ANY_VALUE_TRANSFN: u32 = 6292; +pub const F_ARRAY_AGG_COMBINE: u32 = 6293; +pub const F_ARRAY_AGG_SERIALIZE: u32 = 6294; +pub const F_ARRAY_AGG_DESERIALIZE: u32 = 6295; +pub const F_ARRAY_AGG_ARRAY_COMBINE: u32 = 6296; +pub const F_ARRAY_AGG_ARRAY_SERIALIZE: u32 = 6297; +pub const F_ARRAY_AGG_ARRAY_DESERIALIZE: u32 = 6298; +pub const F_STRING_AGG_COMBINE: u32 = 6299; +pub const F_STRING_AGG_SERIALIZE: u32 = 6300; +pub const F_STRING_AGG_DESERIALIZE: u32 = 6301; +pub const F_PG_LOG_STANDBY_SNAPSHOT: u32 = 6305; +pub const F_WINDOW_PERCENT_RANK_SUPPORT: u32 = 6306; +pub const F_WINDOW_CUME_DIST_SUPPORT: u32 = 6307; +pub const F_WINDOW_NTILE_SUPPORT: u32 = 6308; +pub const F_PG_STAT_GET_DB_CONFLICT_LOGICALSLOT: u32 = 6309; +pub const F_PG_STAT_GET_LASTSCAN: u32 = 6310; +pub const F_SYSTEM_USER: u32 = 6311; +pub const F_BINARY_UPGRADE_LOGICAL_SLOT_HAS_CAUGHT_UP: u32 = 6312; +pub const F_PG_STAT_GET_CHECKPOINTER_STAT_RESET_TIME: u32 = 6314; +pub const F_PG_BASETYPE: u32 = 6315; +pub const F_PG_COLUMN_TOAST_CHUNK_ID: u32 = 6316; +pub const F_TO_REGTYPEMOD: u32 = 6317; +pub const F_PG_GET_WAIT_EVENTS: u32 = 6318; +pub const F_BINARY_UPGRADE_ADD_SUB_REL_STATE: u32 = 6319; +pub const F_BINARY_UPGRADE_REPLORIGIN_ADVANCE: u32 = 6320; +pub const F_PG_AVAILABLE_WAL_SUMMARIES: u32 = 6321; +pub const F_PG_WAL_SUMMARY_CONTENTS: u32 = 6322; +pub const F_PG_GET_WAL_SUMMARIZER_STATE: u32 = 6323; +pub const F_INTERVAL_AVG_SERIALIZE: u32 = 6324; +pub const F_INTERVAL_AVG_DESERIALIZE: u32 = 6325; +pub const F_INTERVAL_SUM: u32 = 6326; +pub const F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_TIMED: u32 = 6327; +pub const F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_REQUESTED: u32 = 6328; +pub const F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_PERFORMED: u32 = 6329; +pub const F_TO_BIN_INT4: u32 = 6330; +pub const F_TO_BIN_INT8: u32 = 6331; +pub const F_TO_OCT_INT4: u32 = 6332; +pub const F_TO_OCT_INT8: u32 = 6333; +pub const F_TIMEZONE_TIMESTAMPTZ: u32 = 6334; +pub const F_TIMEZONE_TIMESTAMP: u32 = 6335; +pub const F_TIMEZONE_TIMETZ: u32 = 6336; +pub const F_JSONB_POPULATE_RECORD_VALID: u32 = 6338; +pub const F_RANDOM_INT4_INT4: u32 = 6339; +pub const F_RANDOM_INT8_INT8: u32 = 6340; +pub const F_RANDOM_NUMERIC_NUMERIC: u32 = 6341; +pub const F_UUID_EXTRACT_TIMESTAMP: u32 = 6342; +pub const F_UUID_EXTRACT_VERSION: u32 = 6343; +pub const F_PG_SYNC_REPLICATION_SLOTS: u32 = 6344; +pub const F_RANGE_CONTAINS_ELEM_SUPPORT: u32 = 6345; +pub const F_ELEM_CONTAINED_BY_RANGE_SUPPORT: u32 = 6346; +pub const NUMERIC_MAX_PRECISION: u32 = 1000; +pub const NUMERIC_MIN_SCALE: i32 = -1000; +pub const NUMERIC_MAX_SCALE: u32 = 1000; +pub const NUMERIC_MAX_DISPLAY_SCALE: u32 = 1000; +pub const NUMERIC_MIN_DISPLAY_SCALE: u32 = 0; +pub const NUMERIC_MAX_RESULT_SCALE: u32 = 2000; +pub const NUMERIC_MIN_SIG_DIGITS: u32 = 16; +pub const JsonbContainsStrategyNumber: u32 = 7; +pub const JsonbExistsStrategyNumber: u32 = 9; +pub const JsonbExistsAnyStrategyNumber: u32 = 10; +pub const JsonbExistsAllStrategyNumber: u32 = 11; +pub const JsonbJsonpathExistsStrategyNumber: u32 = 15; +pub const JsonbJsonpathPredicateStrategyNumber: u32 = 16; +pub const JGINFLAG_KEY: u32 = 1; +pub const JGINFLAG_NULL: u32 = 2; +pub const JGINFLAG_BOOL: u32 = 3; +pub const JGINFLAG_NUM: u32 = 4; +pub const JGINFLAG_STR: u32 = 5; +pub const JGINFLAG_HASHED: u32 = 16; +pub const JGIN_MAXLENGTH: u32 = 125; +pub const JENTRY_OFFLENMASK: u32 = 268435455; +pub const JENTRY_TYPEMASK: u32 = 1879048192; +pub const JENTRY_HAS_OFF: u32 = 2147483648; +pub const JENTRY_ISSTRING: u32 = 0; +pub const JENTRY_ISNUMERIC: u32 = 268435456; +pub const JENTRY_ISBOOL_FALSE: u32 = 536870912; +pub const JENTRY_ISBOOL_TRUE: u32 = 805306368; +pub const JENTRY_ISNULL: u32 = 1073741824; +pub const JENTRY_ISCONTAINER: u32 = 1342177280; +pub const JB_OFFSET_STRIDE: u32 = 32; +pub const JB_CMASK: u32 = 268435455; +pub const JB_FSCALAR: u32 = 268435456; +pub const JB_FOBJECT: u32 = 536870912; +pub const JB_FARRAY: u32 = 1073741824; +pub const ATTSTATSSLOT_VALUES: u32 = 1; +pub const ATTSTATSSLOT_NUMBERS: u32 = 2; +pub const FORMAT_PROC_INVALID_AS_NULL: u32 = 1; +pub const FORMAT_PROC_FORCE_QUALIFY: u32 = 2; +pub const FORMAT_OPERATOR_INVALID_AS_NULL: u32 = 1; +pub const FORMAT_OPERATOR_FORCE_QUALIFY: u32 = 2; +pub const RULE_INDEXDEF_PRETTY: u32 = 1; +pub const RULE_INDEXDEF_KEYS_ONLY: u32 = 2; +pub const DEFAULT_EQ_SEL: f64 = 0.005; +pub const DEFAULT_INEQ_SEL: f64 = 0.3333333333333333; +pub const DEFAULT_RANGE_INEQ_SEL: f64 = 0.005; +pub const DEFAULT_MULTIRANGE_INEQ_SEL: f64 = 0.005; +pub const DEFAULT_MATCH_SEL: f64 = 0.005; +pub const DEFAULT_MATCHING_SEL: f64 = 0.01; +pub const DEFAULT_NUM_DISTINCT: u32 = 200; +pub const DEFAULT_UNK_SEL: f64 = 0.005; +pub const DEFAULT_NOT_UNK_SEL: f64 = 0.995; +pub const SELFLAG_USED_DEFAULT: u32 = 1; +pub const CATCACHE_MAXKEYS: u32 = 4; +pub const CT_MAGIC: u32 = 1462113538; +pub const CL_MAGIC: u32 = 1383485699; +#[allow(unsafe_code)] +pub const RANGE_EMPTY_LITERAL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"empty\0") }; +pub const RANGE_EMPTY: u32 = 1; +pub const RANGE_LB_INC: u32 = 2; +pub const RANGE_UB_INC: u32 = 4; +pub const RANGE_LB_INF: u32 = 8; +pub const RANGE_UB_INF: u32 = 16; +pub const RANGE_LB_NULL: u32 = 32; +pub const RANGE_UB_NULL: u32 = 64; +pub const RANGE_CONTAIN_EMPTY: u32 = 128; +pub const RANGESTRAT_BEFORE: u32 = 1; +pub const RANGESTRAT_OVERLEFT: u32 = 2; +pub const RANGESTRAT_OVERLAPS: u32 = 3; +pub const RANGESTRAT_OVERRIGHT: u32 = 4; +pub const RANGESTRAT_AFTER: u32 = 5; +pub const RANGESTRAT_ADJACENT: u32 = 6; +pub const RANGESTRAT_CONTAINS: u32 = 7; +pub const RANGESTRAT_CONTAINED_BY: u32 = 8; +pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; +pub const RANGESTRAT_EQ: u32 = 18; +pub type pg_int64 = ::core::ffi::c_long; +pub type __gnuc_va_list = [u64; 4usize]; +pub type __u_char = ::core::ffi::c_uchar; +pub type __u_short = ::core::ffi::c_ushort; +pub type __u_int = ::core::ffi::c_uint; +pub type __u_long = ::core::ffi::c_ulong; +pub type __int8_t = ::core::ffi::c_schar; +pub type __uint8_t = ::core::ffi::c_uchar; +pub type __int16_t = ::core::ffi::c_short; +pub type __uint16_t = ::core::ffi::c_ushort; +pub type __int32_t = ::core::ffi::c_int; +pub type __uint32_t = ::core::ffi::c_uint; +pub type __int64_t = ::core::ffi::c_long; +pub type __uint64_t = ::core::ffi::c_ulong; +pub type __int_least8_t = __int8_t; +pub type __uint_least8_t = __uint8_t; +pub type __int_least16_t = __int16_t; +pub type __uint_least16_t = __uint16_t; +pub type __int_least32_t = __int32_t; +pub type __uint_least32_t = __uint32_t; +pub type __int_least64_t = __int64_t; +pub type __uint_least64_t = __uint64_t; +pub type __quad_t = ::core::ffi::c_long; +pub type __u_quad_t = ::core::ffi::c_ulong; +pub type __intmax_t = ::core::ffi::c_long; +pub type __uintmax_t = ::core::ffi::c_ulong; +pub type __dev_t = ::core::ffi::c_ulong; +pub type __uid_t = ::core::ffi::c_uint; +pub type __gid_t = ::core::ffi::c_uint; +pub type __ino_t = ::core::ffi::c_ulong; +pub type __ino64_t = ::core::ffi::c_ulong; +pub type __mode_t = ::core::ffi::c_uint; +pub type __nlink_t = ::core::ffi::c_uint; +pub type __off_t = ::core::ffi::c_long; +pub type __off64_t = ::core::ffi::c_long; +pub type __pid_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __fsid_t { + pub __val: [::core::ffi::c_int; 2usize], +} +pub type __clock_t = ::core::ffi::c_long; +pub type __rlim_t = ::core::ffi::c_ulong; +pub type __rlim64_t = ::core::ffi::c_ulong; +pub type __id_t = ::core::ffi::c_uint; +pub type __time_t = ::core::ffi::c_long; +pub type __useconds_t = ::core::ffi::c_uint; +pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; +pub type __daddr_t = ::core::ffi::c_int; +pub type __key_t = ::core::ffi::c_int; +pub type __clockid_t = ::core::ffi::c_int; +pub type __timer_t = *mut ::core::ffi::c_void; +pub type __blksize_t = ::core::ffi::c_int; +pub type __blkcnt_t = ::core::ffi::c_long; +pub type __blkcnt64_t = ::core::ffi::c_long; +pub type __fsblkcnt_t = ::core::ffi::c_ulong; +pub type __fsblkcnt64_t = ::core::ffi::c_ulong; +pub type __fsfilcnt_t = ::core::ffi::c_ulong; +pub type __fsfilcnt64_t = ::core::ffi::c_ulong; +pub type __fsword_t = ::core::ffi::c_long; +pub type __ssize_t = ::core::ffi::c_long; +pub type __syscall_slong_t = ::core::ffi::c_long; +pub type __syscall_ulong_t = ::core::ffi::c_ulong; +pub type __loff_t = __off64_t; +pub type __caddr_t = *mut ::core::ffi::c_char; +pub type __intptr_t = ::core::ffi::c_long; +pub type __socklen_t = ::core::ffi::c_uint; +pub type __sig_atomic_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __mbstate_t { + pub __count: ::core::ffi::c_int, + pub __value: __mbstate_t__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __mbstate_t__bindgen_ty_1 { + pub __wch: ::core::ffi::c_uint, + pub __wchb: [::core::ffi::c_char; 4usize], +} +impl Default for __mbstate_t__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for __mbstate_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct _G_fpos_t { + pub __pos: __off_t, + pub __state: __mbstate_t, +} +impl Default for _G_fpos_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __fpos_t = _G_fpos_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct _G_fpos64_t { + pub __pos: __off64_t, + pub __state: __mbstate_t, +} +impl Default for _G_fpos64_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __fpos64_t = _G_fpos64_t; +pub type __FILE = _IO_FILE; +pub type FILE = _IO_FILE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_marker { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_codecvt { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_wide_data { + _unused: [u8; 0], +} +pub type _IO_lock_t = ::core::ffi::c_void; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_FILE { + pub _flags: ::core::ffi::c_int, + pub _IO_read_ptr: *mut ::core::ffi::c_char, + pub _IO_read_end: *mut ::core::ffi::c_char, + pub _IO_read_base: *mut ::core::ffi::c_char, + pub _IO_write_base: *mut ::core::ffi::c_char, + pub _IO_write_ptr: *mut ::core::ffi::c_char, + pub _IO_write_end: *mut ::core::ffi::c_char, + pub _IO_buf_base: *mut ::core::ffi::c_char, + pub _IO_buf_end: *mut ::core::ffi::c_char, + pub _IO_save_base: *mut ::core::ffi::c_char, + pub _IO_backup_base: *mut ::core::ffi::c_char, + pub _IO_save_end: *mut ::core::ffi::c_char, + pub _markers: *mut _IO_marker, + pub _chain: *mut _IO_FILE, + pub _fileno: ::core::ffi::c_int, + pub _flags2: ::core::ffi::c_int, + pub _old_offset: __off_t, + pub _cur_column: ::core::ffi::c_ushort, + pub _vtable_offset: ::core::ffi::c_schar, + pub _shortbuf: [::core::ffi::c_char; 1usize], + pub _lock: *mut _IO_lock_t, + pub _offset: __off64_t, + pub _codecvt: *mut _IO_codecvt, + pub _wide_data: *mut _IO_wide_data, + pub _freeres_list: *mut _IO_FILE, + pub _freeres_buf: *mut ::core::ffi::c_void, + pub __pad5: usize, + pub _mode: ::core::ffi::c_int, + pub _unused2: [::core::ffi::c_char; 20usize], +} +impl Default for _IO_FILE { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type va_list = __gnuc_va_list; +pub type off_t = __off_t; +pub type fpos_t = __fpos_t; +pub type _Float128 = u128; +pub type _Float32 = f32; +pub type _Float64 = f64; +pub type _Float32x = f64; +pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_uint; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct div_t { + pub quot: ::core::ffi::c_int, + pub rem: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ldiv_t { + pub quot: ::core::ffi::c_long, + pub rem: ::core::ffi::c_long, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct lldiv_t { + pub quot: ::core::ffi::c_longlong, + pub rem: ::core::ffi::c_longlong, +} +pub type u_char = __u_char; +pub type u_short = __u_short; +pub type u_int = __u_int; +pub type u_long = __u_long; +pub type quad_t = __quad_t; +pub type u_quad_t = __u_quad_t; +pub type fsid_t = __fsid_t; +pub type loff_t = __loff_t; +pub type ino_t = __ino_t; +pub type dev_t = __dev_t; +pub type gid_t = __gid_t; +pub type mode_t = __mode_t; +pub type nlink_t = __nlink_t; +pub type uid_t = __uid_t; +pub type pid_t = __pid_t; +pub type id_t = __id_t; +pub type daddr_t = __daddr_t; +pub type caddr_t = __caddr_t; +pub type key_t = __key_t; +pub type clock_t = __clock_t; +pub type clockid_t = __clockid_t; +pub type time_t = __time_t; +pub type timer_t = __timer_t; +pub type ulong = ::core::ffi::c_ulong; +pub type ushort = ::core::ffi::c_ushort; +pub type uint = ::core::ffi::c_uint; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; +pub type register_t = ::core::ffi::c_long; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __sigset_t { + pub __val: [::core::ffi::c_ulong; 16usize], +} +pub type sigset_t = __sigset_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct timeval { + pub tv_sec: __time_t, + pub tv_usec: __suseconds_t, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct timespec { + pub tv_sec: __time_t, + pub tv_nsec: __syscall_slong_t, +} +pub type suseconds_t = __suseconds_t; +pub type __fd_mask = ::core::ffi::c_long; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct fd_set { + pub __fds_bits: [__fd_mask; 16usize], +} +pub type fd_mask = __fd_mask; +pub type blksize_t = __blksize_t; +pub type blkcnt_t = __blkcnt_t; +pub type fsblkcnt_t = __fsblkcnt_t; +pub type fsfilcnt_t = __fsfilcnt_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_list { + pub __prev: *mut __pthread_internal_list, + pub __next: *mut __pthread_internal_list, +} +impl Default for __pthread_internal_list { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_list_t = __pthread_internal_list; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __pthread_mutex_s { + pub __lock: ::core::ffi::c_int, + pub __count: ::core::ffi::c_uint, + pub __owner: ::core::ffi::c_int, + pub __nusers: ::core::ffi::c_uint, + pub __kind: ::core::ffi::c_int, + pub __spins: ::core::ffi::c_int, + pub __list: __pthread_list_t, +} +impl Default for __pthread_mutex_s { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __pad1: ::core::ffi::c_ulong, + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __pthread_cond_s { + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, + pub __g_refs: [::core::ffi::c_uint; 2usize], + pub __g_size: [::core::ffi::c_uint; 2usize], + pub __g1_orig_size: ::core::ffi::c_uint, + pub __wrefs: ::core::ffi::c_uint, + pub __g_signals: [::core::ffi::c_uint; 2usize], +} +impl Default for __pthread_cond_s { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __once_flag { + pub __data: ::core::ffi::c_int, +} +pub type pthread_t = ::core::ffi::c_ulong; +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_mutexattr_t { + pub __size: [::core::ffi::c_char; 8usize], + pub __align: ::core::ffi::c_int, +} +impl Default for pthread_mutexattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_condattr_t { + pub __size: [::core::ffi::c_char; 8usize], + pub __align: ::core::ffi::c_int, +} +impl Default for pthread_condattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pthread_key_t = ::core::ffi::c_uint; +pub type pthread_once_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_attr_t { + pub __size: [::core::ffi::c_char; 64usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_attr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_mutex_t { + pub __data: __pthread_mutex_s, + pub __size: [::core::ffi::c_char; 48usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_mutex_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_cond_t { + pub __data: __pthread_cond_s, + pub __size: [::core::ffi::c_char; 48usize], + pub __align: ::core::ffi::c_longlong, +} +impl Default for pthread_cond_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_rwlock_t { + pub __data: __pthread_rwlock_arch_t, + pub __size: [::core::ffi::c_char; 56usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_rwlock_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_rwlockattr_t { + pub __size: [::core::ffi::c_char; 8usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_rwlockattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pthread_spinlock_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_barrier_t { + pub __size: [::core::ffi::c_char; 32usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_barrier_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_barrierattr_t { + pub __size: [::core::ffi::c_char; 8usize], + pub __align: ::core::ffi::c_int, +} +impl Default for pthread_barrierattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct random_data { + pub fptr: *mut i32, + pub rptr: *mut i32, + pub state: *mut i32, + pub rand_type: ::core::ffi::c_int, + pub rand_deg: ::core::ffi::c_int, + pub rand_sep: ::core::ffi::c_int, + pub end_ptr: *mut i32, +} +impl Default for random_data { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct drand48_data { + pub __x: [::core::ffi::c_ushort; 3usize], + pub __old_x: [::core::ffi::c_ushort; 3usize], + pub __c: ::core::ffi::c_ushort, + pub __init: ::core::ffi::c_ushort, + pub __a: ::core::ffi::c_ulonglong, +} +pub type __compar_fn_t = ::core::option::Option< + unsafe extern "C" fn( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __locale_struct { + pub __locales: [*mut __locale_data; 13usize], + pub __ctype_b: *const ::core::ffi::c_ushort, + pub __ctype_tolower: *const ::core::ffi::c_int, + pub __ctype_toupper: *const ::core::ffi::c_int, + pub __names: [*const ::core::ffi::c_char; 13usize], +} +impl Default for __locale_struct { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __locale_t = *mut __locale_struct; +pub type locale_t = __locale_t; +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Default, Copy, Clone)] +pub struct max_align_t { + pub __clang_max_align_nonce1: ::core::ffi::c_longlong, + pub __bindgen_padding_0: u64, + pub __clang_max_align_nonce2: u128, +} +pub type int_least8_t = __int_least8_t; +pub type int_least16_t = __int_least16_t; +pub type int_least32_t = __int_least32_t; +pub type int_least64_t = __int_least64_t; +pub type uint_least8_t = __uint_least8_t; +pub type uint_least16_t = __uint_least16_t; +pub type uint_least32_t = __uint_least32_t; +pub type uint_least64_t = __uint_least64_t; +pub type int_fast8_t = ::core::ffi::c_schar; +pub type int_fast16_t = ::core::ffi::c_long; +pub type int_fast32_t = ::core::ffi::c_long; +pub type int_fast64_t = ::core::ffi::c_long; +pub type uint_fast8_t = ::core::ffi::c_uchar; +pub type uint_fast16_t = ::core::ffi::c_ulong; +pub type uint_fast32_t = ::core::ffi::c_ulong; +pub type uint_fast64_t = ::core::ffi::c_ulong; +pub type intmax_t = __intmax_t; +pub type uintmax_t = __uintmax_t; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct lconv { + pub decimal_point: *mut ::core::ffi::c_char, + pub thousands_sep: *mut ::core::ffi::c_char, + pub grouping: *mut ::core::ffi::c_char, + pub int_curr_symbol: *mut ::core::ffi::c_char, + pub currency_symbol: *mut ::core::ffi::c_char, + pub mon_decimal_point: *mut ::core::ffi::c_char, + pub mon_thousands_sep: *mut ::core::ffi::c_char, + pub mon_grouping: *mut ::core::ffi::c_char, + pub positive_sign: *mut ::core::ffi::c_char, + pub negative_sign: *mut ::core::ffi::c_char, + pub int_frac_digits: ::core::ffi::c_char, + pub frac_digits: ::core::ffi::c_char, + pub p_cs_precedes: ::core::ffi::c_char, + pub p_sep_by_space: ::core::ffi::c_char, + pub n_cs_precedes: ::core::ffi::c_char, + pub n_sep_by_space: ::core::ffi::c_char, + pub p_sign_posn: ::core::ffi::c_char, + pub n_sign_posn: ::core::ffi::c_char, + pub int_p_cs_precedes: ::core::ffi::c_char, + pub int_p_sep_by_space: ::core::ffi::c_char, + pub int_n_cs_precedes: ::core::ffi::c_char, + pub int_n_sep_by_space: ::core::ffi::c_char, + pub int_p_sign_posn: ::core::ffi::c_char, + pub int_n_sign_posn: ::core::ffi::c_char, +} +impl Default for lconv { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pg_funcptr_t = ::core::option::Option; +pub type Pointer = *mut ::core::ffi::c_char; +pub type int8 = ::core::ffi::c_schar; +pub type int16 = ::core::ffi::c_short; +pub type int32 = ::core::ffi::c_int; +pub type uint8 = ::core::ffi::c_uchar; +pub type uint16 = ::core::ffi::c_ushort; +pub type uint32 = ::core::ffi::c_uint; +pub type bits8 = uint8; +pub type bits16 = uint16; +pub type bits32 = uint32; +pub type int64 = ::core::ffi::c_long; +pub type uint64 = ::core::ffi::c_ulong; +pub type int128 = i128; +pub type uint128 = u128; +pub type Size = usize; +pub type Index = ::core::ffi::c_uint; +pub type Offset = ::core::ffi::c_int; +pub type float4 = f32; +pub type float8 = f64; +pub type regproc = Oid; +pub type RegProcedure = regproc; +pub type TransactionId = uint32; +pub type LocalTransactionId = uint32; +pub type SubTransactionId = uint32; +pub type MultiXactId = TransactionId; +pub type MultiXactOffset = uint32; +pub type CommandId = uint32; +#[repr(C)] +#[derive(Debug, Default)] +pub struct varlena { + pub vl_len_: [::core::ffi::c_char; 4usize], + pub vl_dat: __IncompleteArrayField<::core::ffi::c_char>, +} +pub type bytea = varlena; +pub type text = varlena; +pub type BpChar = varlena; +pub type VarChar = varlena; +#[repr(C)] +#[derive(Debug)] +pub struct int2vector { + pub vl_len_: int32, + pub ndim: ::core::ffi::c_int, + pub dataoffset: int32, + pub elemtype: Oid, + pub dim1: ::core::ffi::c_int, + pub lbound1: ::core::ffi::c_int, + pub values: __IncompleteArrayField, +} +impl Default for int2vector { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct oidvector { + pub vl_len_: int32, + pub ndim: ::core::ffi::c_int, + pub dataoffset: int32, + pub elemtype: Oid, + pub dim1: ::core::ffi::c_int, + pub lbound1: ::core::ffi::c_int, + pub values: __IncompleteArrayField, +} +impl Default for oidvector { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nameData { + pub data: [::core::ffi::c_char; 64usize], +} +impl Default for nameData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type NameData = nameData; +pub type Name = *mut NameData; +#[repr(C)] +#[derive(Copy, Clone)] +pub union PGAlignedBlock { + pub data: [::core::ffi::c_char; 8192usize], + pub force_align_d: f64, + pub force_align_i64: int64, +} +impl Default for PGAlignedBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[repr(align(4096))] +#[derive(Copy, Clone)] +pub union PGIOAlignedBlock { + pub data: [::core::ffi::c_char; 8192usize], + pub force_align_d: f64, + pub force_align_i64: int64, +} +impl Default for PGIOAlignedBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[repr(align(4096))] +#[derive(Copy, Clone)] +pub union PGAlignedXLogBlock { + pub data: [::core::ffi::c_char; 8192usize], + pub force_align_d: f64, + pub force_align_i64: int64, +} +impl Default for PGAlignedXLogBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_1 { + pub type Type = ::core::ffi::c_uint; + pub const _ISupper: Type = 256; + pub const _ISlower: Type = 512; + pub const _ISalpha: Type = 1024; + pub const _ISdigit: Type = 2048; + pub const _ISxdigit: Type = 4096; + pub const _ISspace: Type = 8192; + pub const _ISprint: Type = 16384; + pub const _ISgraph: Type = 32768; + pub const _ISblank: Type = 1; + pub const _IScntrl: Type = 2; + pub const _ISpunct: Type = 4; + pub const _ISalnum: Type = 8; +} +pub type pgsocket = ::core::ffi::c_int; +pub type float_t = f32; +pub type double_t = f64; +pub mod _bindgen_ty_2 { + pub type Type = ::core::ffi::c_uint; + pub const FP_NAN: Type = 0; + pub const FP_INFINITE: Type = 1; + pub const FP_ZERO: Type = 2; + pub const FP_SUBNORMAL: Type = 3; + pub const FP_NORMAL: Type = 4; +} +pub type qsort_arg_comparator = ::core::option::Option< + unsafe extern "C" fn( + a: *const ::core::ffi::c_void, + b: *const ::core::ffi::c_void, + arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int, +>; +pub type pqsigfunc = + ::core::option::Option; +pub type __jmp_buf = [::core::ffi::c_ulonglong; 22usize]; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __jmp_buf_tag { + pub __jmpbuf: __jmp_buf, + pub __mask_was_saved: ::core::ffi::c_int, + pub __saved_mask: __sigset_t, +} +pub type jmp_buf = [__jmp_buf_tag; 1usize]; +pub type sigjmp_buf = [__jmp_buf_tag; 1usize]; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StringInfoData { + pub data: *mut ::core::ffi::c_char, + pub len: ::core::ffi::c_int, + pub maxlen: ::core::ffi::c_int, + pub cursor: ::core::ffi::c_int, +} +impl Default for StringInfoData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type StringInfo = *mut StringInfoData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ErrorContextCallback { + pub previous: *mut ErrorContextCallback, + pub callback: ::core::option::Option, + pub arg: *mut ::core::ffi::c_void, +} +impl Default for ErrorContextCallback { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ErrorData { + pub elevel: ::core::ffi::c_int, + pub output_to_server: bool, + pub output_to_client: bool, + pub hide_stmt: bool, + pub hide_ctx: bool, + pub filename: *const ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub funcname: *const ::core::ffi::c_char, + pub domain: *const ::core::ffi::c_char, + pub context_domain: *const ::core::ffi::c_char, + pub sqlerrcode: ::core::ffi::c_int, + pub message: *mut ::core::ffi::c_char, + pub detail: *mut ::core::ffi::c_char, + pub detail_log: *mut ::core::ffi::c_char, + pub hint: *mut ::core::ffi::c_char, + pub context: *mut ::core::ffi::c_char, + pub backtrace: *mut ::core::ffi::c_char, + pub message_id: *const ::core::ffi::c_char, + pub schema_name: *mut ::core::ffi::c_char, + pub table_name: *mut ::core::ffi::c_char, + pub column_name: *mut ::core::ffi::c_char, + pub datatype_name: *mut ::core::ffi::c_char, + pub constraint_name: *mut ::core::ffi::c_char, + pub cursorpos: ::core::ffi::c_int, + pub internalpos: ::core::ffi::c_int, + pub internalquery: *mut ::core::ffi::c_char, + pub saved_errno: ::core::ffi::c_int, + pub assoc_context: *mut MemoryContextData, +} +impl Default for ErrorData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type emit_log_hook_type = ::core::option::Option; +pub mod PGErrorVerbosity { + pub type Type = ::core::ffi::c_uint; + pub const PGERROR_TERSE: Type = 0; + pub const PGERROR_DEFAULT: Type = 1; + pub const PGERROR_VERBOSE: Type = 2; +} +pub type MemoryContext = *mut MemoryContextData; +pub type MemoryContextCallbackFunction = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoryContextCallback { + pub func: MemoryContextCallbackFunction, + pub arg: *mut ::core::ffi::c_void, + pub next: *mut MemoryContextCallback, +} +impl Default for MemoryContextCallback { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NullableDatum { + pub value: Datum, + pub isnull: bool, +} +impl Default for NullableDatum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type AttrNumber = int16; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_attribute { + pub attrelid: Oid, + pub attname: NameData, + pub atttypid: Oid, + pub attlen: int16, + pub attnum: int16, + pub attcacheoff: int32, + pub atttypmod: int32, + pub attndims: int16, + pub attbyval: bool, + pub attalign: ::core::ffi::c_char, + pub attstorage: ::core::ffi::c_char, + pub attcompression: ::core::ffi::c_char, + pub attnotnull: bool, + pub atthasdef: bool, + pub atthasmissing: bool, + pub attidentity: ::core::ffi::c_char, + pub attgenerated: ::core::ffi::c_char, + pub attisdropped: bool, + pub attislocal: bool, + pub attinhcount: int16, + pub attcollation: Oid, +} +impl Default for FormData_pg_attribute { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_attribute = *mut FormData_pg_attribute; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormExtraData_pg_attribute { + pub attstattarget: NullableDatum, + pub attoptions: NullableDatum, +} +impl Default for FormExtraData_pg_attribute { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum NodeTag { + T_Invalid = 0, + T_List = 1, + T_Alias = 2, + T_RangeVar = 3, + T_TableFunc = 4, + T_IntoClause = 5, + T_Var = 6, + T_Const = 7, + T_Param = 8, + T_Aggref = 9, + T_GroupingFunc = 10, + T_WindowFunc = 11, + T_WindowFuncRunCondition = 12, + T_MergeSupportFunc = 13, + T_SubscriptingRef = 14, + T_FuncExpr = 15, + T_NamedArgExpr = 16, + T_OpExpr = 17, + T_DistinctExpr = 18, + T_NullIfExpr = 19, + T_ScalarArrayOpExpr = 20, + T_BoolExpr = 21, + T_SubLink = 22, + T_SubPlan = 23, + T_AlternativeSubPlan = 24, + T_FieldSelect = 25, + T_FieldStore = 26, + T_RelabelType = 27, + T_CoerceViaIO = 28, + T_ArrayCoerceExpr = 29, + T_ConvertRowtypeExpr = 30, + T_CollateExpr = 31, + T_CaseExpr = 32, + T_CaseWhen = 33, + T_CaseTestExpr = 34, + T_ArrayExpr = 35, + T_RowExpr = 36, + T_RowCompareExpr = 37, + T_CoalesceExpr = 38, + T_MinMaxExpr = 39, + T_SQLValueFunction = 40, + T_XmlExpr = 41, + T_JsonFormat = 42, + T_JsonReturning = 43, + T_JsonValueExpr = 44, + T_JsonConstructorExpr = 45, + T_JsonIsPredicate = 46, + T_JsonBehavior = 47, + T_JsonExpr = 48, + T_JsonTablePath = 49, + T_JsonTablePathScan = 50, + T_JsonTableSiblingJoin = 51, + T_NullTest = 52, + T_BooleanTest = 53, + T_MergeAction = 54, + T_CoerceToDomain = 55, + T_CoerceToDomainValue = 56, + T_SetToDefault = 57, + T_CurrentOfExpr = 58, + T_NextValueExpr = 59, + T_InferenceElem = 60, + T_TargetEntry = 61, + T_RangeTblRef = 62, + T_JoinExpr = 63, + T_FromExpr = 64, + T_OnConflictExpr = 65, + T_Query = 66, + T_TypeName = 67, + T_ColumnRef = 68, + T_ParamRef = 69, + T_A_Expr = 70, + T_A_Const = 71, + T_TypeCast = 72, + T_CollateClause = 73, + T_RoleSpec = 74, + T_FuncCall = 75, + T_A_Star = 76, + T_A_Indices = 77, + T_A_Indirection = 78, + T_A_ArrayExpr = 79, + T_ResTarget = 80, + T_MultiAssignRef = 81, + T_SortBy = 82, + T_WindowDef = 83, + T_RangeSubselect = 84, + T_RangeFunction = 85, + T_RangeTableFunc = 86, + T_RangeTableFuncCol = 87, + T_RangeTableSample = 88, + T_ColumnDef = 89, + T_TableLikeClause = 90, + T_IndexElem = 91, + T_DefElem = 92, + T_LockingClause = 93, + T_XmlSerialize = 94, + T_PartitionElem = 95, + T_PartitionSpec = 96, + T_PartitionBoundSpec = 97, + T_PartitionRangeDatum = 98, + T_SinglePartitionSpec = 99, + T_PartitionCmd = 100, + T_RangeTblEntry = 101, + T_RTEPermissionInfo = 102, + T_RangeTblFunction = 103, + T_TableSampleClause = 104, + T_WithCheckOption = 105, + T_SortGroupClause = 106, + T_GroupingSet = 107, + T_WindowClause = 108, + T_RowMarkClause = 109, + T_WithClause = 110, + T_InferClause = 111, + T_OnConflictClause = 112, + T_CTESearchClause = 113, + T_CTECycleClause = 114, + T_CommonTableExpr = 115, + T_MergeWhenClause = 116, + T_TriggerTransition = 117, + T_JsonOutput = 118, + T_JsonArgument = 119, + T_JsonFuncExpr = 120, + T_JsonTablePathSpec = 121, + T_JsonTable = 122, + T_JsonTableColumn = 123, + T_JsonKeyValue = 124, + T_JsonParseExpr = 125, + T_JsonScalarExpr = 126, + T_JsonSerializeExpr = 127, + T_JsonObjectConstructor = 128, + T_JsonArrayConstructor = 129, + T_JsonArrayQueryConstructor = 130, + T_JsonAggConstructor = 131, + T_JsonObjectAgg = 132, + T_JsonArrayAgg = 133, + T_RawStmt = 134, + T_InsertStmt = 135, + T_DeleteStmt = 136, + T_UpdateStmt = 137, + T_MergeStmt = 138, + T_SelectStmt = 139, + T_SetOperationStmt = 140, + T_ReturnStmt = 141, + T_PLAssignStmt = 142, + T_CreateSchemaStmt = 143, + T_AlterTableStmt = 144, + T_ReplicaIdentityStmt = 145, + T_AlterTableCmd = 146, + T_AlterCollationStmt = 147, + T_AlterDomainStmt = 148, + T_GrantStmt = 149, + T_ObjectWithArgs = 150, + T_AccessPriv = 151, + T_GrantRoleStmt = 152, + T_AlterDefaultPrivilegesStmt = 153, + T_CopyStmt = 154, + T_VariableSetStmt = 155, + T_VariableShowStmt = 156, + T_CreateStmt = 157, + T_Constraint = 158, + T_CreateTableSpaceStmt = 159, + T_DropTableSpaceStmt = 160, + T_AlterTableSpaceOptionsStmt = 161, + T_AlterTableMoveAllStmt = 162, + T_CreateExtensionStmt = 163, + T_AlterExtensionStmt = 164, + T_AlterExtensionContentsStmt = 165, + T_CreateFdwStmt = 166, + T_AlterFdwStmt = 167, + T_CreateForeignServerStmt = 168, + T_AlterForeignServerStmt = 169, + T_CreateForeignTableStmt = 170, + T_CreateUserMappingStmt = 171, + T_AlterUserMappingStmt = 172, + T_DropUserMappingStmt = 173, + T_ImportForeignSchemaStmt = 174, + T_CreatePolicyStmt = 175, + T_AlterPolicyStmt = 176, + T_CreateAmStmt = 177, + T_CreateTrigStmt = 178, + T_CreateEventTrigStmt = 179, + T_AlterEventTrigStmt = 180, + T_CreatePLangStmt = 181, + T_CreateRoleStmt = 182, + T_AlterRoleStmt = 183, + T_AlterRoleSetStmt = 184, + T_DropRoleStmt = 185, + T_CreateSeqStmt = 186, + T_AlterSeqStmt = 187, + T_DefineStmt = 188, + T_CreateDomainStmt = 189, + T_CreateOpClassStmt = 190, + T_CreateOpClassItem = 191, + T_CreateOpFamilyStmt = 192, + T_AlterOpFamilyStmt = 193, + T_DropStmt = 194, + T_TruncateStmt = 195, + T_CommentStmt = 196, + T_SecLabelStmt = 197, + T_DeclareCursorStmt = 198, + T_ClosePortalStmt = 199, + T_FetchStmt = 200, + T_IndexStmt = 201, + T_CreateStatsStmt = 202, + T_StatsElem = 203, + T_AlterStatsStmt = 204, + T_CreateFunctionStmt = 205, + T_FunctionParameter = 206, + T_AlterFunctionStmt = 207, + T_DoStmt = 208, + T_InlineCodeBlock = 209, + T_CallStmt = 210, + T_CallContext = 211, + T_RenameStmt = 212, + T_AlterObjectDependsStmt = 213, + T_AlterObjectSchemaStmt = 214, + T_AlterOwnerStmt = 215, + T_AlterOperatorStmt = 216, + T_AlterTypeStmt = 217, + T_RuleStmt = 218, + T_NotifyStmt = 219, + T_ListenStmt = 220, + T_UnlistenStmt = 221, + T_TransactionStmt = 222, + T_CompositeTypeStmt = 223, + T_CreateEnumStmt = 224, + T_CreateRangeStmt = 225, + T_AlterEnumStmt = 226, + T_ViewStmt = 227, + T_LoadStmt = 228, + T_CreatedbStmt = 229, + T_AlterDatabaseStmt = 230, + T_AlterDatabaseRefreshCollStmt = 231, + T_AlterDatabaseSetStmt = 232, + T_DropdbStmt = 233, + T_AlterSystemStmt = 234, + T_ClusterStmt = 235, + T_VacuumStmt = 236, + T_VacuumRelation = 237, + T_ExplainStmt = 238, + T_CreateTableAsStmt = 239, + T_RefreshMatViewStmt = 240, + T_CheckPointStmt = 241, + T_DiscardStmt = 242, + T_LockStmt = 243, + T_ConstraintsSetStmt = 244, + T_ReindexStmt = 245, + T_CreateConversionStmt = 246, + T_CreateCastStmt = 247, + T_CreateTransformStmt = 248, + T_PrepareStmt = 249, + T_ExecuteStmt = 250, + T_DeallocateStmt = 251, + T_DropOwnedStmt = 252, + T_ReassignOwnedStmt = 253, + T_AlterTSDictionaryStmt = 254, + T_AlterTSConfigurationStmt = 255, + T_PublicationTable = 256, + T_PublicationObjSpec = 257, + T_CreatePublicationStmt = 258, + T_AlterPublicationStmt = 259, + T_CreateSubscriptionStmt = 260, + T_AlterSubscriptionStmt = 261, + T_DropSubscriptionStmt = 262, + T_PlannerGlobal = 263, + T_PlannerInfo = 264, + T_RelOptInfo = 265, + T_IndexOptInfo = 266, + T_ForeignKeyOptInfo = 267, + T_StatisticExtInfo = 268, + T_JoinDomain = 269, + T_EquivalenceClass = 270, + T_EquivalenceMember = 271, + T_PathKey = 272, + T_GroupByOrdering = 273, + T_PathTarget = 274, + T_ParamPathInfo = 275, + T_Path = 276, + T_IndexPath = 277, + T_IndexClause = 278, + T_BitmapHeapPath = 279, + T_BitmapAndPath = 280, + T_BitmapOrPath = 281, + T_TidPath = 282, + T_TidRangePath = 283, + T_SubqueryScanPath = 284, + T_ForeignPath = 285, + T_CustomPath = 286, + T_AppendPath = 287, + T_MergeAppendPath = 288, + T_GroupResultPath = 289, + T_MaterialPath = 290, + T_MemoizePath = 291, + T_UniquePath = 292, + T_GatherPath = 293, + T_GatherMergePath = 294, + T_NestPath = 295, + T_MergePath = 296, + T_HashPath = 297, + T_ProjectionPath = 298, + T_ProjectSetPath = 299, + T_SortPath = 300, + T_IncrementalSortPath = 301, + T_GroupPath = 302, + T_UpperUniquePath = 303, + T_AggPath = 304, + T_GroupingSetData = 305, + T_RollupData = 306, + T_GroupingSetsPath = 307, + T_MinMaxAggPath = 308, + T_WindowAggPath = 309, + T_SetOpPath = 310, + T_RecursiveUnionPath = 311, + T_LockRowsPath = 312, + T_ModifyTablePath = 313, + T_LimitPath = 314, + T_RestrictInfo = 315, + T_PlaceHolderVar = 316, + T_SpecialJoinInfo = 317, + T_OuterJoinClauseInfo = 318, + T_AppendRelInfo = 319, + T_RowIdentityVarInfo = 320, + T_PlaceHolderInfo = 321, + T_MinMaxAggInfo = 322, + T_PlannerParamItem = 323, + T_AggInfo = 324, + T_AggTransInfo = 325, + T_PlannedStmt = 326, + T_Result = 327, + T_ProjectSet = 328, + T_ModifyTable = 329, + T_Append = 330, + T_MergeAppend = 331, + T_RecursiveUnion = 332, + T_BitmapAnd = 333, + T_BitmapOr = 334, + T_SeqScan = 335, + T_SampleScan = 336, + T_IndexScan = 337, + T_IndexOnlyScan = 338, + T_BitmapIndexScan = 339, + T_BitmapHeapScan = 340, + T_TidScan = 341, + T_TidRangeScan = 342, + T_SubqueryScan = 343, + T_FunctionScan = 344, + T_ValuesScan = 345, + T_TableFuncScan = 346, + T_CteScan = 347, + T_NamedTuplestoreScan = 348, + T_WorkTableScan = 349, + T_ForeignScan = 350, + T_CustomScan = 351, + T_NestLoop = 352, + T_NestLoopParam = 353, + T_MergeJoin = 354, + T_HashJoin = 355, + T_Material = 356, + T_Memoize = 357, + T_Sort = 358, + T_IncrementalSort = 359, + T_Group = 360, + T_Agg = 361, + T_WindowAgg = 362, + T_Unique = 363, + T_Gather = 364, + T_GatherMerge = 365, + T_Hash = 366, + T_SetOp = 367, + T_LockRows = 368, + T_Limit = 369, + T_PlanRowMark = 370, + T_PartitionPruneInfo = 371, + T_PartitionedRelPruneInfo = 372, + T_PartitionPruneStepOp = 373, + T_PartitionPruneStepCombine = 374, + T_PlanInvalItem = 375, + T_ExprState = 376, + T_IndexInfo = 377, + T_ExprContext = 378, + T_ReturnSetInfo = 379, + T_ProjectionInfo = 380, + T_JunkFilter = 381, + T_OnConflictSetState = 382, + T_MergeActionState = 383, + T_ResultRelInfo = 384, + T_EState = 385, + T_WindowFuncExprState = 386, + T_SetExprState = 387, + T_SubPlanState = 388, + T_DomainConstraintState = 389, + T_ResultState = 390, + T_ProjectSetState = 391, + T_ModifyTableState = 392, + T_AppendState = 393, + T_MergeAppendState = 394, + T_RecursiveUnionState = 395, + T_BitmapAndState = 396, + T_BitmapOrState = 397, + T_ScanState = 398, + T_SeqScanState = 399, + T_SampleScanState = 400, + T_IndexScanState = 401, + T_IndexOnlyScanState = 402, + T_BitmapIndexScanState = 403, + T_BitmapHeapScanState = 404, + T_TidScanState = 405, + T_TidRangeScanState = 406, + T_SubqueryScanState = 407, + T_FunctionScanState = 408, + T_ValuesScanState = 409, + T_TableFuncScanState = 410, + T_CteScanState = 411, + T_NamedTuplestoreScanState = 412, + T_WorkTableScanState = 413, + T_ForeignScanState = 414, + T_CustomScanState = 415, + T_JoinState = 416, + T_NestLoopState = 417, + T_MergeJoinState = 418, + T_HashJoinState = 419, + T_MaterialState = 420, + T_MemoizeState = 421, + T_SortState = 422, + T_IncrementalSortState = 423, + T_GroupState = 424, + T_AggState = 425, + T_WindowAggState = 426, + T_UniqueState = 427, + T_GatherState = 428, + T_GatherMergeState = 429, + T_HashState = 430, + T_SetOpState = 431, + T_LockRowsState = 432, + T_LimitState = 433, + T_IndexAmRoutine = 434, + T_TableAmRoutine = 435, + T_TsmRoutine = 436, + T_EventTriggerData = 437, + T_TriggerData = 438, + T_TupleTableSlot = 439, + T_FdwRoutine = 440, + T_Bitmapset = 441, + T_ExtensibleNode = 442, + T_ErrorSaveContext = 443, + T_IdentifySystemCmd = 444, + T_BaseBackupCmd = 445, + T_CreateReplicationSlotCmd = 446, + T_DropReplicationSlotCmd = 447, + T_AlterReplicationSlotCmd = 448, + T_StartReplicationCmd = 449, + T_ReadReplicationSlotCmd = 450, + T_TimeLineHistoryCmd = 451, + T_UploadManifestCmd = 452, + T_SupportRequestSimplify = 453, + T_SupportRequestSelectivity = 454, + T_SupportRequestCost = 455, + T_SupportRequestRows = 456, + T_SupportRequestIndexCondition = 457, + T_SupportRequestWFuncMonotonic = 458, + T_SupportRequestOptimizeWindowClause = 459, + T_Integer = 460, + T_Float = 461, + T_Boolean = 462, + T_String = 463, + T_BitString = 464, + T_ForeignKeyCacheInfo = 465, + T_IntList = 466, + T_OidList = 467, + T_XidList = 468, + T_AllocSetContext = 469, + T_GenerationContext = 470, + T_SlabContext = 471, + T_BumpContext = 472, + T_TIDBitmap = 473, + T_WindowObjectData = 474, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Node { + pub type_: NodeTag, +} +impl Default for Node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParseLoc = ::core::ffi::c_int; +pub type Selectivity = f64; +pub type Cost = f64; +pub type Cardinality = f64; +pub mod CmdType { + pub type Type = ::core::ffi::c_uint; + pub const CMD_UNKNOWN: Type = 0; + pub const CMD_SELECT: Type = 1; + pub const CMD_UPDATE: Type = 2; + pub const CMD_INSERT: Type = 3; + pub const CMD_DELETE: Type = 4; + pub const CMD_MERGE: Type = 5; + pub const CMD_UTILITY: Type = 6; + pub const CMD_NOTHING: Type = 7; +} +pub mod JoinType { + pub type Type = ::core::ffi::c_uint; + pub const JOIN_INNER: Type = 0; + pub const JOIN_LEFT: Type = 1; + pub const JOIN_FULL: Type = 2; + pub const JOIN_RIGHT: Type = 3; + pub const JOIN_SEMI: Type = 4; + pub const JOIN_ANTI: Type = 5; + pub const JOIN_RIGHT_ANTI: Type = 6; + pub const JOIN_UNIQUE_OUTER: Type = 7; + pub const JOIN_UNIQUE_INNER: Type = 8; +} +pub mod AggStrategy { + pub type Type = ::core::ffi::c_uint; + pub const AGG_PLAIN: Type = 0; + pub const AGG_SORTED: Type = 1; + pub const AGG_HASHED: Type = 2; + pub const AGG_MIXED: Type = 3; +} +pub mod AggSplit { + pub type Type = ::core::ffi::c_uint; + pub const AGGSPLIT_SIMPLE: Type = 0; + pub const AGGSPLIT_INITIAL_SERIAL: Type = 6; + pub const AGGSPLIT_FINAL_DESERIAL: Type = 9; +} +pub mod SetOpCmd { + pub type Type = ::core::ffi::c_uint; + pub const SETOPCMD_INTERSECT: Type = 0; + pub const SETOPCMD_INTERSECT_ALL: Type = 1; + pub const SETOPCMD_EXCEPT: Type = 2; + pub const SETOPCMD_EXCEPT_ALL: Type = 3; +} +pub mod SetOpStrategy { + pub type Type = ::core::ffi::c_uint; + pub const SETOP_SORTED: Type = 0; + pub const SETOP_HASHED: Type = 1; +} +pub mod OnConflictAction { + pub type Type = ::core::ffi::c_uint; + pub const ONCONFLICT_NONE: Type = 0; + pub const ONCONFLICT_NOTHING: Type = 1; + pub const ONCONFLICT_UPDATE: Type = 2; +} +pub mod LimitOption { + pub type Type = ::core::ffi::c_uint; + pub const LIMIT_OPTION_COUNT: Type = 0; + pub const LIMIT_OPTION_WITH_TIES: Type = 1; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ListCell { + pub ptr_value: *mut ::core::ffi::c_void, + pub int_value: ::core::ffi::c_int, + pub oid_value: Oid, + pub xid_value: TransactionId, +} +impl Default for ListCell { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +pub struct List { + pub type_: NodeTag, + pub length: ::core::ffi::c_int, + pub max_length: ::core::ffi::c_int, + pub elements: *mut ListCell, + pub initial_elements: __IncompleteArrayField, +} +impl Default for List { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForEachState { + pub l: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForEachState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForBothState { + pub l1: *const List, + pub l2: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForBothState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForBothCellState { + pub l1: *const List, + pub l2: *const List, + pub i1: ::core::ffi::c_int, + pub i2: ::core::ffi::c_int, +} +impl Default for ForBothCellState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForThreeState { + pub l1: *const List, + pub l2: *const List, + pub l3: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForThreeState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForFourState { + pub l1: *const List, + pub l2: *const List, + pub l3: *const List, + pub l4: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForFourState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForFiveState { + pub l1: *const List, + pub l2: *const List, + pub l3: *const List, + pub l4: *const List, + pub l5: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForFiveState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type list_sort_comparator = ::core::option::Option< + unsafe extern "C" fn(a: *const ListCell, b: *const ListCell) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttrDefault { + pub adnum: AttrNumber, + pub adbin: *mut ::core::ffi::c_char, +} +impl Default for AttrDefault { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConstrCheck { + pub ccname: *mut ::core::ffi::c_char, + pub ccbin: *mut ::core::ffi::c_char, + pub ccvalid: bool, + pub ccnoinherit: bool, +} +impl Default for ConstrCheck { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleConstr { + pub defval: *mut AttrDefault, + pub check: *mut ConstrCheck, + pub missing: *mut AttrMissing, + pub num_defval: uint16, + pub num_check: uint16, + pub has_not_null: bool, + pub has_generated_stored: bool, +} +impl Default for TupleConstr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct TupleDescData { + pub natts: ::core::ffi::c_int, + pub tdtypeid: Oid, + pub tdtypmod: int32, + pub tdrefcount: ::core::ffi::c_int, + pub constr: *mut TupleConstr, + pub attrs: __IncompleteArrayField, +} +impl Default for TupleDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TupleDesc = *mut TupleDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttrMap { + pub attnums: *mut AttrNumber, + pub maplen: ::core::ffi::c_int, +} +impl Default for AttrMap { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type BlockNumber = uint32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BlockIdData { + pub bi_hi: uint16, + pub bi_lo: uint16, +} +pub type BlockId = *mut BlockIdData; +#[repr(C)] +#[repr(align(4))] +#[derive(Debug, Default, Copy, Clone)] +pub struct ItemIdData { + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +} +impl ItemIdData { + #[inline] + pub fn lp_off(&self) -> ::core::ffi::c_uint { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 15u8) as u32) } + } + #[inline] + pub fn set_lp_off(&mut self, val: ::core::ffi::c_uint) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 15u8, val as u64) + } + } + #[inline] + pub fn lp_flags(&self) -> ::core::ffi::c_uint { + unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 2u8) as u32) } + } + #[inline] + pub fn set_lp_flags(&mut self, val: ::core::ffi::c_uint) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(15usize, 2u8, val as u64) + } + } + #[inline] + pub fn lp_len(&self) -> ::core::ffi::c_uint { + unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 15u8) as u32) } + } + #[inline] + pub fn set_lp_len(&mut self, val: ::core::ffi::c_uint) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(17usize, 15u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + lp_off: ::core::ffi::c_uint, + lp_flags: ::core::ffi::c_uint, + lp_len: ::core::ffi::c_uint, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 15u8, { + let lp_off: u32 = unsafe { ::core::mem::transmute(lp_off) }; + lp_off as u64 + }); + __bindgen_bitfield_unit.set(15usize, 2u8, { + let lp_flags: u32 = unsafe { ::core::mem::transmute(lp_flags) }; + lp_flags as u64 + }); + __bindgen_bitfield_unit.set(17usize, 15u8, { + let lp_len: u32 = unsafe { ::core::mem::transmute(lp_len) }; + lp_len as u64 + }); + __bindgen_bitfield_unit + } +} +pub type ItemId = *mut ItemIdData; +pub type ItemOffset = uint16; +pub type ItemLength = uint16; +pub type OffsetNumber = uint16; +#[repr(C, packed(2))] +#[derive(Debug, Default, Copy, Clone)] +pub struct ItemPointerData { + pub ip_blkid: BlockIdData, + pub ip_posid: OffsetNumber, +} +pub type ItemPointer = *mut ItemPointerData; +pub type HeapTupleHeader = *mut HeapTupleHeaderData; +pub type MinimalTuple = *mut MinimalTupleData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeapTupleData { + pub t_len: uint32, + pub t_self: ItemPointerData, + pub t_tableOid: Oid, + pub t_data: HeapTupleHeader, +} +impl Default for HeapTupleData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type HeapTuple = *mut HeapTupleData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct flock { + pub l_type: ::core::ffi::c_short, + pub l_whence: ::core::ffi::c_short, + pub l_start: __off_t, + pub l_len: __off_t, + pub l_pid: __pid_t, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct stat { + pub st_dev: __dev_t, + pub st_ino: __ino_t, + pub st_mode: __mode_t, + pub st_nlink: __nlink_t, + pub st_uid: __uid_t, + pub st_gid: __gid_t, + pub st_rdev: __dev_t, + pub __pad1: __dev_t, + pub st_size: __off_t, + pub st_blksize: __blksize_t, + pub __pad2: ::core::ffi::c_int, + pub st_blocks: __blkcnt_t, + pub st_atim: timespec, + pub st_mtim: timespec, + pub st_ctim: timespec, + pub __glibc_reserved: [::core::ffi::c_int; 2usize], +} +pub type XLogRecPtr = uint64; +pub type XLogSegNo = uint64; +pub type TimeLineID = uint32; +pub type RepOriginId = uint16; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct FullTransactionId { + pub value: uint64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TransamVariablesData { + pub nextOid: Oid, + pub oidCount: uint32, + pub nextXid: FullTransactionId, + pub oldestXid: TransactionId, + pub xidVacLimit: TransactionId, + pub xidWarnLimit: TransactionId, + pub xidStopLimit: TransactionId, + pub xidWrapLimit: TransactionId, + pub oldestXidDB: Oid, + pub oldestCommitTsXid: TransactionId, + pub newestCommitTsXid: TransactionId, + pub latestCompletedXid: FullTransactionId, + pub xactCompletionCount: uint64, + pub oldestClogXid: TransactionId, +} +impl Default for TransamVariablesData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Item = Pointer; +pub type Page = Pointer; +pub type LocationIndex = uint16; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PageXLogRecPtr { + pub xlogid: uint32, + pub xrecoff: uint32, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct PageHeaderData { + pub pd_lsn: PageXLogRecPtr, + pub pd_checksum: uint16, + pub pd_flags: uint16, + pub pd_lower: LocationIndex, + pub pd_upper: LocationIndex, + pub pd_special: LocationIndex, + pub pd_pagesize_version: uint16, + pub pd_prune_xid: TransactionId, + pub pd_linp: __IncompleteArrayField, +} +pub type PageHeader = *mut PageHeaderData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct varatt_external { + pub va_rawsize: int32, + pub va_extinfo: uint32, + pub va_valueid: Oid, + pub va_toastrelid: Oid, +} +impl Default for varatt_external { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct varatt_indirect { + pub pointer: *mut varlena, +} +impl Default for varatt_indirect { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct varatt_expanded { + pub eohptr: *mut ExpandedObjectHeader, +} +impl Default for varatt_expanded { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod vartag_external { + pub type Type = ::core::ffi::c_uint; + pub const VARTAG_INDIRECT: Type = 1; + pub const VARTAG_EXPANDED_RO: Type = 2; + pub const VARTAG_EXPANDED_RW: Type = 3; + pub const VARTAG_ONDISK: Type = 18; +} +#[repr(C)] +pub union varattrib_4b { + pub va_4byte: ::core::mem::ManuallyDrop, + pub va_compressed: ::core::mem::ManuallyDrop, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_4b__bindgen_ty_1 { + pub va_header: uint32, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_4b__bindgen_ty_2 { + pub va_header: uint32, + pub va_tcinfo: uint32, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for varattrib_4b { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_1b { + pub va_header: uint8, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_1b_e { + pub va_header: uint8, + pub va_tag: uint8, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct HeapTupleFields { + pub t_xmin: TransactionId, + pub t_xmax: TransactionId, + pub t_field3: HeapTupleFields__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union HeapTupleFields__bindgen_ty_1 { + pub t_cid: CommandId, + pub t_xvac: TransactionId, +} +impl Default for HeapTupleFields__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for HeapTupleFields { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DatumTupleFields { + pub datum_len_: int32, + pub datum_typmod: int32, + pub datum_typeid: Oid, +} +impl Default for DatumTupleFields { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +pub struct HeapTupleHeaderData { + pub t_choice: HeapTupleHeaderData__bindgen_ty_1, + pub t_ctid: ItemPointerData, + pub t_infomask2: uint16, + pub t_infomask: uint16, + pub t_hoff: uint8, + pub t_bits: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union HeapTupleHeaderData__bindgen_ty_1 { + pub t_heap: HeapTupleFields, + pub t_datum: DatumTupleFields, +} +impl Default for HeapTupleHeaderData__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for HeapTupleHeaderData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct MinimalTupleData { + pub t_len: uint32, + pub mt_padding: [::core::ffi::c_char; 6usize], + pub t_infomask2: uint16, + pub t_infomask: uint16, + pub t_hoff: uint8, + pub t_bits: __IncompleteArrayField, +} +pub type Buffer = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufferAccessStrategyData { + _unused: [u8; 0], +} +pub type BufferAccessStrategy = *mut BufferAccessStrategyData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleTableSlot { + pub type_: NodeTag, + pub tts_flags: uint16, + pub tts_nvalid: AttrNumber, + pub tts_ops: *const TupleTableSlotOps, + pub tts_tupleDescriptor: TupleDesc, + pub tts_values: *mut Datum, + pub tts_isnull: *mut bool, + pub tts_mcxt: MemoryContext, + pub tts_tid: ItemPointerData, + pub tts_tableOid: Oid, +} +impl Default for TupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TupleTableSlotOps { + pub base_slot_size: usize, + pub init: ::core::option::Option, + pub release: ::core::option::Option, + pub clear: ::core::option::Option, + pub getsomeattrs: ::core::option::Option< + unsafe extern "C" fn(slot: *mut TupleTableSlot, natts: ::core::ffi::c_int), + >, + pub getsysattr: ::core::option::Option< + unsafe extern "C" fn( + slot: *mut TupleTableSlot, + attnum: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum, + >, + pub is_current_xact_tuple: + ::core::option::Option bool>, + pub materialize: ::core::option::Option, + pub copyslot: ::core::option::Option< + unsafe extern "C" fn(dstslot: *mut TupleTableSlot, srcslot: *mut TupleTableSlot), + >, + pub get_heap_tuple: + ::core::option::Option HeapTuple>, + pub get_minimal_tuple: + ::core::option::Option MinimalTuple>, + pub copy_heap_tuple: + ::core::option::Option HeapTuple>, + pub copy_minimal_tuple: + ::core::option::Option MinimalTuple>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VirtualTupleTableSlot { + pub base: TupleTableSlot, + pub data: *mut ::core::ffi::c_char, +} +impl Default for VirtualTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeapTupleTableSlot { + pub base: TupleTableSlot, + pub tuple: HeapTuple, + pub off: uint32, + pub tupdata: HeapTupleData, +} +impl Default for HeapTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufferHeapTupleTableSlot { + pub base: HeapTupleTableSlot, + pub buffer: Buffer, +} +impl Default for BufferHeapTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinimalTupleTableSlot { + pub base: TupleTableSlot, + pub tuple: HeapTuple, + pub mintuple: MinimalTuple, + pub minhdr: HeapTupleData, + pub off: uint32, +} +impl Default for MinimalTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type bitmapword = uint64; +pub type signedbitmapword = int64; +#[repr(C)] +#[derive(Debug)] +pub struct Bitmapset { + pub type_: NodeTag, + pub nwords: ::core::ffi::c_int, + pub words: __IncompleteArrayField, +} +impl Default for Bitmapset { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BMS_Comparison { + pub type Type = ::core::ffi::c_uint; + pub const BMS_EQUAL: Type = 0; + pub const BMS_SUBSET1: Type = 1; + pub const BMS_SUBSET2: Type = 2; + pub const BMS_DIFFERENT: Type = 3; +} +pub mod BMS_Membership { + pub type Type = ::core::ffi::c_uint; + pub const BMS_EMPTY_SET: Type = 0; + pub const BMS_SINGLETON: Type = 1; + pub const BMS_MULTIPLE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleConversionMap { + pub indesc: TupleDesc, + pub outdesc: TupleDesc, + pub attrMap: *mut AttrMap, + pub invalues: *mut Datum, + pub inisnull: *mut bool, + pub outvalues: *mut Datum, + pub outisnull: *mut bool, +} +impl Default for TupleConversionMap { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct instr_time { + pub ticks: int64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tm { + pub tm_sec: ::core::ffi::c_int, + pub tm_min: ::core::ffi::c_int, + pub tm_hour: ::core::ffi::c_int, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, + pub tm_wday: ::core::ffi::c_int, + pub tm_yday: ::core::ffi::c_int, + pub tm_isdst: ::core::ffi::c_int, + pub tm_gmtoff: ::core::ffi::c_long, + pub tm_zone: *const ::core::ffi::c_char, +} +impl Default for tm { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct itimerspec { + pub it_interval: timespec, + pub it_value: timespec, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BufferUsage { + pub shared_blks_hit: int64, + pub shared_blks_read: int64, + pub shared_blks_dirtied: int64, + pub shared_blks_written: int64, + pub local_blks_hit: int64, + pub local_blks_read: int64, + pub local_blks_dirtied: int64, + pub local_blks_written: int64, + pub temp_blks_read: int64, + pub temp_blks_written: int64, + pub shared_blk_read_time: instr_time, + pub shared_blk_write_time: instr_time, + pub local_blk_read_time: instr_time, + pub local_blk_write_time: instr_time, + pub temp_blk_read_time: instr_time, + pub temp_blk_write_time: instr_time, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WalUsage { + pub wal_records: int64, + pub wal_fpi: int64, + pub wal_bytes: uint64, +} +pub mod InstrumentOption { + pub type Type = ::core::ffi::c_uint; + pub const INSTRUMENT_TIMER: Type = 1; + pub const INSTRUMENT_BUFFERS: Type = 2; + pub const INSTRUMENT_ROWS: Type = 4; + pub const INSTRUMENT_WAL: Type = 8; + pub const INSTRUMENT_ALL: Type = 2147483647; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Instrumentation { + pub need_timer: bool, + pub need_bufusage: bool, + pub need_walusage: bool, + pub async_mode: bool, + pub running: bool, + pub starttime: instr_time, + pub counter: instr_time, + pub firsttuple: f64, + pub tuplecount: f64, + pub bufusage_start: BufferUsage, + pub walusage_start: WalUsage, + pub startup: f64, + pub total: f64, + pub ntuples: f64, + pub ntuples2: f64, + pub nloops: f64, + pub nfiltered1: f64, + pub nfiltered2: f64, + pub bufusage: BufferUsage, + pub walusage: WalUsage, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct WorkerInstrumentation { + pub num_workers: ::core::ffi::c_int, + pub instrument: __IncompleteArrayField, +} +pub type fmNodePtr = *mut Node; +pub type fmAggrefPtr = *mut Aggref; +pub type fmExprContextCallbackFunction = ::core::option::Option; +pub type fmStringInfo = *mut StringInfoData; +pub type FunctionCallInfo = *mut FunctionCallInfoBaseData; +pub type PGFunction = + ::core::option::Option Datum>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FmgrInfo { + pub fn_addr: PGFunction, + pub fn_oid: Oid, + pub fn_nargs: ::core::ffi::c_short, + pub fn_strict: bool, + pub fn_retset: bool, + pub fn_stats: ::core::ffi::c_uchar, + pub fn_extra: *mut ::core::ffi::c_void, + pub fn_mcxt: MemoryContext, + pub fn_expr: fmNodePtr, +} +impl Default for FmgrInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct FunctionCallInfoBaseData { + pub flinfo: *mut FmgrInfo, + pub context: fmNodePtr, + pub resultinfo: fmNodePtr, + pub fncollation: Oid, + pub isnull: bool, + pub nargs: ::core::ffi::c_short, + pub args: __IncompleteArrayField, +} +impl Default for FunctionCallInfoBaseData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Pg_finfo_record { + pub api_version: ::core::ffi::c_int, +} +pub type PGFInfoFunction = ::core::option::Option *const Pg_finfo_record>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Pg_magic_struct { + pub len: ::core::ffi::c_int, + pub version: ::core::ffi::c_int, + pub funcmaxargs: ::core::ffi::c_int, + pub indexmaxkeys: ::core::ffi::c_int, + pub namedatalen: ::core::ffi::c_int, + pub float8byval: ::core::ffi::c_int, + pub abi_extra: [::core::ffi::c_char; 32usize], +} +pub type PGModuleMagicFunction = + ::core::option::Option *const Pg_magic_struct>; +pub mod FmgrHookEventType { + pub type Type = ::core::ffi::c_uint; + pub const FHET_START: Type = 0; + pub const FHET_END: Type = 1; + pub const FHET_ABORT: Type = 2; +} +pub type needs_fmgr_hook_type = ::core::option::Option bool>; +pub type fmgr_hook_type = ::core::option::Option< + unsafe extern "C" fn(event: FmgrHookEventType::Type, flinfo: *mut FmgrInfo, arg: *mut Datum), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_node { + pub prev: *mut dlist_node, + pub next: *mut dlist_node, +} +impl Default for dlist_node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_head { + pub head: dlist_node, +} +impl Default for dlist_head { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_iter { + pub cur: *mut dlist_node, + pub end: *mut dlist_node, +} +impl Default for dlist_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_mutable_iter { + pub cur: *mut dlist_node, + pub next: *mut dlist_node, + pub end: *mut dlist_node, +} +impl Default for dlist_mutable_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dclist_head { + pub dlist: dlist_head, + pub count: uint32, +} +impl Default for dclist_head { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_node { + pub next: *mut slist_node, +} +impl Default for slist_node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_head { + pub head: slist_node, +} +impl Default for slist_head { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_iter { + pub cur: *mut slist_node, +} +impl Default for slist_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_mutable_iter { + pub cur: *mut slist_node, + pub next: *mut slist_node, + pub prev: *mut slist_node, +} +impl Default for slist_mutable_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pairingheap_node { + pub first_child: *mut pairingheap_node, + pub next_sibling: *mut pairingheap_node, + pub prev_or_parent: *mut pairingheap_node, +} +impl Default for pairingheap_node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pairingheap_comparator = ::core::option::Option< + unsafe extern "C" fn( + a: *const pairingheap_node, + b: *const pairingheap_node, + arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pairingheap { + pub ph_compare: pairingheap_comparator, + pub ph_arg: *mut ::core::ffi::c_void, + pub ph_root: *mut pairingheap_node, +} +impl Default for pairingheap { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ErrorSaveContext { + pub type_: NodeTag, + pub error_occurred: bool, + pub details_wanted: bool, + pub error_data: *mut ErrorData, +} +impl Default for ErrorSaveContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamExternData { + pub value: Datum, + pub isnull: bool, + pub pflags: uint16, + pub ptype: Oid, +} +impl Default for ParamExternData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParamListInfo = *mut ParamListInfoData; +pub type ParamFetchHook = ::core::option::Option< + unsafe extern "C" fn( + params: ParamListInfo, + paramid: ::core::ffi::c_int, + speculative: bool, + workspace: *mut ParamExternData, + ) -> *mut ParamExternData, +>; +pub type ParamCompileHook = ::core::option::Option< + unsafe extern "C" fn( + params: ParamListInfo, + param: *mut Param, + state: *mut ExprState, + resv: *mut Datum, + resnull: *mut bool, + ), +>; +pub type ParserSetupHook = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, arg: *mut ::core::ffi::c_void), +>; +#[repr(C)] +#[derive(Debug)] +pub struct ParamListInfoData { + pub paramFetch: ParamFetchHook, + pub paramFetchArg: *mut ::core::ffi::c_void, + pub paramCompile: ParamCompileHook, + pub paramCompileArg: *mut ::core::ffi::c_void, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub paramValuesStr: *mut ::core::ffi::c_char, + pub numParams: ::core::ffi::c_int, + pub params: __IncompleteArrayField, +} +impl Default for ParamListInfoData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamExecData { + pub execPlan: *mut ::core::ffi::c_void, + pub value: Datum, + pub isnull: bool, +} +impl Default for ParamExecData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamsErrorCbData { + pub portalName: *const ::core::ffi::c_char, + pub params: ParamListInfo, +} +impl Default for ParamsErrorCbData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ScanDirection { + pub type Type = ::core::ffi::c_int; + pub const BackwardScanDirection: Type = -1; + pub const NoMovementScanDirection: Type = 0; + pub const ForwardScanDirection: Type = 1; +} +pub type StrategyNumber = uint16; +pub type RelFileNumber = Oid; +pub mod ForkNumber { + pub type Type = ::core::ffi::c_int; + pub const InvalidForkNumber: Type = -1; + pub const MAIN_FORKNUM: Type = 0; + pub const FSM_FORKNUM: Type = 1; + pub const VISIBILITYMAP_FORKNUM: Type = 2; + pub const INIT_FORKNUM: Type = 3; +} +pub mod LockClauseStrength { + pub type Type = ::core::ffi::c_uint; + pub const LCS_NONE: Type = 0; + pub const LCS_FORKEYSHARE: Type = 1; + pub const LCS_FORSHARE: Type = 2; + pub const LCS_FORNOKEYUPDATE: Type = 3; + pub const LCS_FORUPDATE: Type = 4; +} +pub mod LockWaitPolicy { + pub type Type = ::core::ffi::c_uint; + pub const LockWaitBlock: Type = 0; + pub const LockWaitSkip: Type = 1; + pub const LockWaitError: Type = 2; +} +pub mod LockTupleMode { + pub type Type = ::core::ffi::c_uint; + pub const LockTupleKeyShare: Type = 0; + pub const LockTupleShare: Type = 1; + pub const LockTupleNoKeyExclusive: Type = 2; + pub const LockTupleExclusive: Type = 3; +} +pub mod OverridingKind { + pub type Type = ::core::ffi::c_uint; + pub const OVERRIDING_NOT_SET: Type = 0; + pub const OVERRIDING_USER_VALUE: Type = 1; + pub const OVERRIDING_SYSTEM_VALUE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Alias { + pub type_: NodeTag, + pub aliasname: *mut ::core::ffi::c_char, + pub colnames: *mut List, +} +impl Default for Alias { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod OnCommitAction { + pub type Type = ::core::ffi::c_uint; + pub const ONCOMMIT_NOOP: Type = 0; + pub const ONCOMMIT_PRESERVE_ROWS: Type = 1; + pub const ONCOMMIT_DELETE_ROWS: Type = 2; + pub const ONCOMMIT_DROP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeVar { + pub type_: NodeTag, + pub catalogname: *mut ::core::ffi::c_char, + pub schemaname: *mut ::core::ffi::c_char, + pub relname: *mut ::core::ffi::c_char, + pub inh: bool, + pub relpersistence: ::core::ffi::c_char, + pub alias: *mut Alias, + pub location: ParseLoc, +} +impl Default for RangeVar { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TableFuncType { + pub type Type = ::core::ffi::c_uint; + pub const TFT_XMLTABLE: Type = 0; + pub const TFT_JSON_TABLE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableFunc { + pub type_: NodeTag, + pub functype: TableFuncType::Type, + pub ns_uris: *mut List, + pub ns_names: *mut List, + pub docexpr: *mut Node, + pub rowexpr: *mut Node, + pub colnames: *mut List, + pub coltypes: *mut List, + pub coltypmods: *mut List, + pub colcollations: *mut List, + pub colexprs: *mut List, + pub coldefexprs: *mut List, + pub colvalexprs: *mut List, + pub passingvalexprs: *mut List, + pub notnulls: *mut Bitmapset, + pub plan: *mut Node, + pub ordinalitycol: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for TableFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IntoClause { + pub type_: NodeTag, + pub rel: *mut RangeVar, + pub colNames: *mut List, + pub accessMethod: *mut ::core::ffi::c_char, + pub options: *mut List, + pub onCommit: OnCommitAction::Type, + pub tableSpaceName: *mut ::core::ffi::c_char, + pub viewQuery: *mut Node, + pub skipData: bool, +} +impl Default for IntoClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Expr { + pub type_: NodeTag, +} +impl Default for Expr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Var { + pub xpr: Expr, + pub varno: ::core::ffi::c_int, + pub varattno: AttrNumber, + pub vartype: Oid, + pub vartypmod: int32, + pub varcollid: Oid, + pub varnullingrels: *mut Bitmapset, + pub varlevelsup: Index, + pub varnosyn: Index, + pub varattnosyn: AttrNumber, + pub location: ParseLoc, +} +impl Default for Var { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Const { + pub xpr: Expr, + pub consttype: Oid, + pub consttypmod: int32, + pub constcollid: Oid, + pub constlen: ::core::ffi::c_int, + pub constvalue: Datum, + pub constisnull: bool, + pub constbyval: bool, + pub location: ParseLoc, +} +impl Default for Const { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ParamKind { + pub type Type = ::core::ffi::c_uint; + pub const PARAM_EXTERN: Type = 0; + pub const PARAM_EXEC: Type = 1; + pub const PARAM_SUBLINK: Type = 2; + pub const PARAM_MULTIEXPR: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Param { + pub xpr: Expr, + pub paramkind: ParamKind::Type, + pub paramid: ::core::ffi::c_int, + pub paramtype: Oid, + pub paramtypmod: int32, + pub paramcollid: Oid, + pub location: ParseLoc, +} +impl Default for Param { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Aggref { + pub xpr: Expr, + pub aggfnoid: Oid, + pub aggtype: Oid, + pub aggcollid: Oid, + pub inputcollid: Oid, + pub aggtranstype: Oid, + pub aggargtypes: *mut List, + pub aggdirectargs: *mut List, + pub args: *mut List, + pub aggorder: *mut List, + pub aggdistinct: *mut List, + pub aggfilter: *mut Expr, + pub aggstar: bool, + pub aggvariadic: bool, + pub aggkind: ::core::ffi::c_char, + pub aggpresorted: bool, + pub agglevelsup: Index, + pub aggsplit: AggSplit::Type, + pub aggno: ::core::ffi::c_int, + pub aggtransno: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for Aggref { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingFunc { + pub xpr: Expr, + pub args: *mut List, + pub refs: *mut List, + pub cols: *mut List, + pub agglevelsup: Index, + pub location: ParseLoc, +} +impl Default for GroupingFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFunc { + pub xpr: Expr, + pub winfnoid: Oid, + pub wintype: Oid, + pub wincollid: Oid, + pub inputcollid: Oid, + pub args: *mut List, + pub aggfilter: *mut Expr, + pub runCondition: *mut List, + pub winref: Index, + pub winstar: bool, + pub winagg: bool, + pub location: ParseLoc, +} +impl Default for WindowFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFuncRunCondition { + pub xpr: Expr, + pub opno: Oid, + pub inputcollid: Oid, + pub wfunc_left: bool, + pub arg: *mut Expr, +} +impl Default for WindowFuncRunCondition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeSupportFunc { + pub xpr: Expr, + pub msftype: Oid, + pub msfcollid: Oid, + pub location: ParseLoc, +} +impl Default for MergeSupportFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubscriptingRef { + pub xpr: Expr, + pub refcontainertype: Oid, + pub refelemtype: Oid, + pub refrestype: Oid, + pub reftypmod: int32, + pub refcollid: Oid, + pub refupperindexpr: *mut List, + pub reflowerindexpr: *mut List, + pub refexpr: *mut Expr, + pub refassgnexpr: *mut Expr, +} +impl Default for SubscriptingRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CoercionContext { + pub type Type = ::core::ffi::c_uint; + pub const COERCION_IMPLICIT: Type = 0; + pub const COERCION_ASSIGNMENT: Type = 1; + pub const COERCION_PLPGSQL: Type = 2; + pub const COERCION_EXPLICIT: Type = 3; +} +pub mod CoercionForm { + pub type Type = ::core::ffi::c_uint; + pub const COERCE_EXPLICIT_CALL: Type = 0; + pub const COERCE_EXPLICIT_CAST: Type = 1; + pub const COERCE_IMPLICIT_CAST: Type = 2; + pub const COERCE_SQL_SYNTAX: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FuncExpr { + pub xpr: Expr, + pub funcid: Oid, + pub funcresulttype: Oid, + pub funcretset: bool, + pub funcvariadic: bool, + pub funcformat: CoercionForm::Type, + pub funccollid: Oid, + pub inputcollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for FuncExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedArgExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub name: *mut ::core::ffi::c_char, + pub argnumber: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for NamedArgExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OpExpr { + pub xpr: Expr, + pub opno: Oid, + pub opfuncid: Oid, + pub opresulttype: Oid, + pub opretset: bool, + pub opcollid: Oid, + pub inputcollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for OpExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type DistinctExpr = OpExpr; +pub type NullIfExpr = OpExpr; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScalarArrayOpExpr { + pub xpr: Expr, + pub opno: Oid, + pub opfuncid: Oid, + pub hashfuncid: Oid, + pub negfuncid: Oid, + pub useOr: bool, + pub inputcollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for ScalarArrayOpExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BoolExprType { + pub type Type = ::core::ffi::c_uint; + pub const AND_EXPR: Type = 0; + pub const OR_EXPR: Type = 1; + pub const NOT_EXPR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BoolExpr { + pub xpr: Expr, + pub boolop: BoolExprType::Type, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for BoolExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SubLinkType { + pub type Type = ::core::ffi::c_uint; + pub const EXISTS_SUBLINK: Type = 0; + pub const ALL_SUBLINK: Type = 1; + pub const ANY_SUBLINK: Type = 2; + pub const ROWCOMPARE_SUBLINK: Type = 3; + pub const EXPR_SUBLINK: Type = 4; + pub const MULTIEXPR_SUBLINK: Type = 5; + pub const ARRAY_SUBLINK: Type = 6; + pub const CTE_SUBLINK: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubLink { + pub xpr: Expr, + pub subLinkType: SubLinkType::Type, + pub subLinkId: ::core::ffi::c_int, + pub testexpr: *mut Node, + pub operName: *mut List, + pub subselect: *mut Node, + pub location: ParseLoc, +} +impl Default for SubLink { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubPlan { + pub xpr: Expr, + pub subLinkType: SubLinkType::Type, + pub testexpr: *mut Node, + pub paramIds: *mut List, + pub plan_id: ::core::ffi::c_int, + pub plan_name: *mut ::core::ffi::c_char, + pub firstColType: Oid, + pub firstColTypmod: int32, + pub firstColCollation: Oid, + pub useHashTable: bool, + pub unknownEqFalse: bool, + pub parallel_safe: bool, + pub setParam: *mut List, + pub parParam: *mut List, + pub args: *mut List, + pub startup_cost: Cost, + pub per_call_cost: Cost, +} +impl Default for SubPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlternativeSubPlan { + pub xpr: Expr, + pub subplans: *mut List, +} +impl Default for AlternativeSubPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FieldSelect { + pub xpr: Expr, + pub arg: *mut Expr, + pub fieldnum: AttrNumber, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, +} +impl Default for FieldSelect { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FieldStore { + pub xpr: Expr, + pub arg: *mut Expr, + pub newvals: *mut List, + pub fieldnums: *mut List, + pub resulttype: Oid, +} +impl Default for FieldStore { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelabelType { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, + pub relabelformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for RelabelType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoerceViaIO { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub resultcollid: Oid, + pub coerceformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for CoerceViaIO { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayCoerceExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub elemexpr: *mut Expr, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, + pub coerceformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for ArrayCoerceExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConvertRowtypeExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub convertformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for ConvertRowtypeExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollateExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub collOid: Oid, + pub location: ParseLoc, +} +impl Default for CollateExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CaseExpr { + pub xpr: Expr, + pub casetype: Oid, + pub casecollid: Oid, + pub arg: *mut Expr, + pub args: *mut List, + pub defresult: *mut Expr, + pub location: ParseLoc, +} +impl Default for CaseExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CaseWhen { + pub xpr: Expr, + pub expr: *mut Expr, + pub result: *mut Expr, + pub location: ParseLoc, +} +impl Default for CaseWhen { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CaseTestExpr { + pub xpr: Expr, + pub typeId: Oid, + pub typeMod: int32, + pub collation: Oid, +} +impl Default for CaseTestExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayExpr { + pub xpr: Expr, + pub array_typeid: Oid, + pub array_collid: Oid, + pub element_typeid: Oid, + pub elements: *mut List, + pub multidims: bool, + pub location: ParseLoc, +} +impl Default for ArrayExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowExpr { + pub xpr: Expr, + pub args: *mut List, + pub row_typeid: Oid, + pub row_format: CoercionForm::Type, + pub colnames: *mut List, + pub location: ParseLoc, +} +impl Default for RowExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RowCompareType { + pub type Type = ::core::ffi::c_uint; + pub const ROWCOMPARE_LT: Type = 1; + pub const ROWCOMPARE_LE: Type = 2; + pub const ROWCOMPARE_EQ: Type = 3; + pub const ROWCOMPARE_GE: Type = 4; + pub const ROWCOMPARE_GT: Type = 5; + pub const ROWCOMPARE_NE: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowCompareExpr { + pub xpr: Expr, + pub rctype: RowCompareType::Type, + pub opnos: *mut List, + pub opfamilies: *mut List, + pub inputcollids: *mut List, + pub largs: *mut List, + pub rargs: *mut List, +} +impl Default for RowCompareExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoalesceExpr { + pub xpr: Expr, + pub coalescetype: Oid, + pub coalescecollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for CoalesceExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MinMaxOp { + pub type Type = ::core::ffi::c_uint; + pub const IS_GREATEST: Type = 0; + pub const IS_LEAST: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinMaxExpr { + pub xpr: Expr, + pub minmaxtype: Oid, + pub minmaxcollid: Oid, + pub inputcollid: Oid, + pub op: MinMaxOp::Type, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for MinMaxExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SQLValueFunctionOp { + pub type Type = ::core::ffi::c_uint; + pub const SVFOP_CURRENT_DATE: Type = 0; + pub const SVFOP_CURRENT_TIME: Type = 1; + pub const SVFOP_CURRENT_TIME_N: Type = 2; + pub const SVFOP_CURRENT_TIMESTAMP: Type = 3; + pub const SVFOP_CURRENT_TIMESTAMP_N: Type = 4; + pub const SVFOP_LOCALTIME: Type = 5; + pub const SVFOP_LOCALTIME_N: Type = 6; + pub const SVFOP_LOCALTIMESTAMP: Type = 7; + pub const SVFOP_LOCALTIMESTAMP_N: Type = 8; + pub const SVFOP_CURRENT_ROLE: Type = 9; + pub const SVFOP_CURRENT_USER: Type = 10; + pub const SVFOP_USER: Type = 11; + pub const SVFOP_SESSION_USER: Type = 12; + pub const SVFOP_CURRENT_CATALOG: Type = 13; + pub const SVFOP_CURRENT_SCHEMA: Type = 14; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SQLValueFunction { + pub xpr: Expr, + pub op: SQLValueFunctionOp::Type, + pub type_: Oid, + pub typmod: int32, + pub location: ParseLoc, +} +impl Default for SQLValueFunction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod XmlExprOp { + pub type Type = ::core::ffi::c_uint; + pub const IS_XMLCONCAT: Type = 0; + pub const IS_XMLELEMENT: Type = 1; + pub const IS_XMLFOREST: Type = 2; + pub const IS_XMLPARSE: Type = 3; + pub const IS_XMLPI: Type = 4; + pub const IS_XMLROOT: Type = 5; + pub const IS_XMLSERIALIZE: Type = 6; + pub const IS_DOCUMENT: Type = 7; +} +pub mod XmlOptionType { + pub type Type = ::core::ffi::c_uint; + pub const XMLOPTION_DOCUMENT: Type = 0; + pub const XMLOPTION_CONTENT: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XmlExpr { + pub xpr: Expr, + pub op: XmlExprOp::Type, + pub name: *mut ::core::ffi::c_char, + pub named_args: *mut List, + pub arg_names: *mut List, + pub args: *mut List, + pub xmloption: XmlOptionType::Type, + pub indent: bool, + pub type_: Oid, + pub typmod: int32, + pub location: ParseLoc, +} +impl Default for XmlExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonEncoding { + pub type Type = ::core::ffi::c_uint; + pub const JS_ENC_DEFAULT: Type = 0; + pub const JS_ENC_UTF8: Type = 1; + pub const JS_ENC_UTF16: Type = 2; + pub const JS_ENC_UTF32: Type = 3; +} +pub mod JsonFormatType { + pub type Type = ::core::ffi::c_uint; + pub const JS_FORMAT_DEFAULT: Type = 0; + pub const JS_FORMAT_JSON: Type = 1; + pub const JS_FORMAT_JSONB: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonFormat { + pub type_: NodeTag, + pub format_type: JsonFormatType::Type, + pub encoding: JsonEncoding::Type, + pub location: ParseLoc, +} +impl Default for JsonFormat { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonReturning { + pub type_: NodeTag, + pub format: *mut JsonFormat, + pub typid: Oid, + pub typmod: int32, +} +impl Default for JsonReturning { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonValueExpr { + pub type_: NodeTag, + pub raw_expr: *mut Expr, + pub formatted_expr: *mut Expr, + pub format: *mut JsonFormat, +} +impl Default for JsonValueExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonConstructorType { + pub type Type = ::core::ffi::c_uint; + pub const JSCTOR_JSON_OBJECT: Type = 1; + pub const JSCTOR_JSON_ARRAY: Type = 2; + pub const JSCTOR_JSON_OBJECTAGG: Type = 3; + pub const JSCTOR_JSON_ARRAYAGG: Type = 4; + pub const JSCTOR_JSON_PARSE: Type = 5; + pub const JSCTOR_JSON_SCALAR: Type = 6; + pub const JSCTOR_JSON_SERIALIZE: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExpr { + pub xpr: Expr, + pub type_: JsonConstructorType::Type, + pub args: *mut List, + pub func: *mut Expr, + pub coercion: *mut Expr, + pub returning: *mut JsonReturning, + pub absent_on_null: bool, + pub unique: bool, + pub location: ParseLoc, +} +impl Default for JsonConstructorExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonValueType { + pub type Type = ::core::ffi::c_uint; + pub const JS_TYPE_ANY: Type = 0; + pub const JS_TYPE_OBJECT: Type = 1; + pub const JS_TYPE_ARRAY: Type = 2; + pub const JS_TYPE_SCALAR: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonIsPredicate { + pub type_: NodeTag, + pub expr: *mut Node, + pub format: *mut JsonFormat, + pub item_type: JsonValueType::Type, + pub unique_keys: bool, + pub location: ParseLoc, +} +impl Default for JsonIsPredicate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonWrapper { + pub type Type = ::core::ffi::c_uint; + pub const JSW_UNSPEC: Type = 0; + pub const JSW_NONE: Type = 1; + pub const JSW_CONDITIONAL: Type = 2; + pub const JSW_UNCONDITIONAL: Type = 3; +} +pub mod JsonBehaviorType { + pub type Type = ::core::ffi::c_uint; + pub const JSON_BEHAVIOR_NULL: Type = 0; + pub const JSON_BEHAVIOR_ERROR: Type = 1; + pub const JSON_BEHAVIOR_EMPTY: Type = 2; + pub const JSON_BEHAVIOR_TRUE: Type = 3; + pub const JSON_BEHAVIOR_FALSE: Type = 4; + pub const JSON_BEHAVIOR_UNKNOWN: Type = 5; + pub const JSON_BEHAVIOR_EMPTY_ARRAY: Type = 6; + pub const JSON_BEHAVIOR_EMPTY_OBJECT: Type = 7; + pub const JSON_BEHAVIOR_DEFAULT: Type = 8; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonBehavior { + pub type_: NodeTag, + pub btype: JsonBehaviorType::Type, + pub expr: *mut Node, + pub coerce: bool, + pub location: ParseLoc, +} +impl Default for JsonBehavior { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonExprOp { + pub type Type = ::core::ffi::c_uint; + pub const JSON_EXISTS_OP: Type = 0; + pub const JSON_QUERY_OP: Type = 1; + pub const JSON_VALUE_OP: Type = 2; + pub const JSON_TABLE_OP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonExpr { + pub xpr: Expr, + pub op: JsonExprOp::Type, + pub column_name: *mut ::core::ffi::c_char, + pub formatted_expr: *mut Node, + pub format: *mut JsonFormat, + pub path_spec: *mut Node, + pub returning: *mut JsonReturning, + pub passing_names: *mut List, + pub passing_values: *mut List, + pub on_empty: *mut JsonBehavior, + pub on_error: *mut JsonBehavior, + pub use_io_coercion: bool, + pub use_json_coercion: bool, + pub wrapper: JsonWrapper::Type, + pub omit_quotes: bool, + pub collation: Oid, + pub location: ParseLoc, +} +impl Default for JsonExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePath { + pub type_: NodeTag, + pub value: *mut Const, + pub name: *mut ::core::ffi::c_char, +} +impl Default for JsonTablePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePlan { + pub type_: NodeTag, +} +impl Default for JsonTablePlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePathScan { + pub plan: JsonTablePlan, + pub path: *mut JsonTablePath, + pub errorOnError: bool, + pub child: *mut JsonTablePlan, + pub colMin: ::core::ffi::c_int, + pub colMax: ::core::ffi::c_int, +} +impl Default for JsonTablePathScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTableSiblingJoin { + pub plan: JsonTablePlan, + pub lplan: *mut JsonTablePlan, + pub rplan: *mut JsonTablePlan, +} +impl Default for JsonTableSiblingJoin { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod NullTestType { + pub type Type = ::core::ffi::c_uint; + pub const IS_NULL: Type = 0; + pub const IS_NOT_NULL: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NullTest { + pub xpr: Expr, + pub arg: *mut Expr, + pub nulltesttype: NullTestType::Type, + pub argisrow: bool, + pub location: ParseLoc, +} +impl Default for NullTest { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BoolTestType { + pub type Type = ::core::ffi::c_uint; + pub const IS_TRUE: Type = 0; + pub const IS_NOT_TRUE: Type = 1; + pub const IS_FALSE: Type = 2; + pub const IS_NOT_FALSE: Type = 3; + pub const IS_UNKNOWN: Type = 4; + pub const IS_NOT_UNKNOWN: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BooleanTest { + pub xpr: Expr, + pub arg: *mut Expr, + pub booltesttype: BoolTestType::Type, + pub location: ParseLoc, +} +impl Default for BooleanTest { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MergeMatchKind { + pub type Type = ::core::ffi::c_uint; + pub const MERGE_WHEN_MATCHED: Type = 0; + pub const MERGE_WHEN_NOT_MATCHED_BY_SOURCE: Type = 1; + pub const MERGE_WHEN_NOT_MATCHED_BY_TARGET: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAction { + pub type_: NodeTag, + pub matchKind: MergeMatchKind::Type, + pub commandType: CmdType::Type, + pub override_: OverridingKind::Type, + pub qual: *mut Node, + pub targetList: *mut List, + pub updateColnos: *mut List, +} +impl Default for MergeAction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoerceToDomain { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, + pub coercionformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for CoerceToDomain { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoerceToDomainValue { + pub xpr: Expr, + pub typeId: Oid, + pub typeMod: int32, + pub collation: Oid, + pub location: ParseLoc, +} +impl Default for CoerceToDomainValue { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetToDefault { + pub xpr: Expr, + pub typeId: Oid, + pub typeMod: int32, + pub collation: Oid, + pub location: ParseLoc, +} +impl Default for SetToDefault { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CurrentOfExpr { + pub xpr: Expr, + pub cvarno: Index, + pub cursor_name: *mut ::core::ffi::c_char, + pub cursor_param: ::core::ffi::c_int, +} +impl Default for CurrentOfExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NextValueExpr { + pub xpr: Expr, + pub seqid: Oid, + pub typeId: Oid, +} +impl Default for NextValueExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InferenceElem { + pub xpr: Expr, + pub expr: *mut Node, + pub infercollid: Oid, + pub inferopclass: Oid, +} +impl Default for InferenceElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TargetEntry { + pub xpr: Expr, + pub expr: *mut Expr, + pub resno: AttrNumber, + pub resname: *mut ::core::ffi::c_char, + pub ressortgroupref: Index, + pub resorigtbl: Oid, + pub resorigcol: AttrNumber, + pub resjunk: bool, +} +impl Default for TargetEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTblRef { + pub type_: NodeTag, + pub rtindex: ::core::ffi::c_int, +} +impl Default for RangeTblRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinExpr { + pub type_: NodeTag, + pub jointype: JoinType::Type, + pub isNatural: bool, + pub larg: *mut Node, + pub rarg: *mut Node, + pub usingClause: *mut List, + pub join_using_alias: *mut Alias, + pub quals: *mut Node, + pub alias: *mut Alias, + pub rtindex: ::core::ffi::c_int, +} +impl Default for JoinExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FromExpr { + pub type_: NodeTag, + pub fromlist: *mut List, + pub quals: *mut Node, +} +impl Default for FromExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OnConflictExpr { + pub type_: NodeTag, + pub action: OnConflictAction::Type, + pub arbiterElems: *mut List, + pub arbiterWhere: *mut Node, + pub constraint: Oid, + pub onConflictSet: *mut List, + pub onConflictWhere: *mut Node, + pub exclRelIndex: ::core::ffi::c_int, + pub exclRelTlist: *mut List, +} +impl Default for OnConflictExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannedStmt { + pub type_: NodeTag, + pub commandType: CmdType::Type, + pub queryId: uint64, + pub hasReturning: bool, + pub hasModifyingCTE: bool, + pub canSetTag: bool, + pub transientPlan: bool, + pub dependsOnRole: bool, + pub parallelModeNeeded: bool, + pub jitFlags: ::core::ffi::c_int, + pub planTree: *mut Plan, + pub rtable: *mut List, + pub permInfos: *mut List, + pub resultRelations: *mut List, + pub appendRelations: *mut List, + pub subplans: *mut List, + pub rewindPlanIDs: *mut Bitmapset, + pub rowMarks: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub paramExecTypes: *mut List, + pub utilityStmt: *mut Node, + pub stmt_location: ParseLoc, + pub stmt_len: ParseLoc, +} +impl Default for PlannedStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Plan { + pub type_: NodeTag, + pub startup_cost: Cost, + pub total_cost: Cost, + pub plan_rows: Cardinality, + pub plan_width: ::core::ffi::c_int, + pub parallel_aware: bool, + pub parallel_safe: bool, + pub async_capable: bool, + pub plan_node_id: ::core::ffi::c_int, + pub targetlist: *mut List, + pub qual: *mut List, + pub lefttree: *mut Plan, + pub righttree: *mut Plan, + pub initPlan: *mut List, + pub extParam: *mut Bitmapset, + pub allParam: *mut Bitmapset, +} +impl Default for Plan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Result { + pub plan: Plan, + pub resconstantqual: *mut Node, +} +impl Default for Result { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectSet { + pub plan: Plan, +} +impl Default for ProjectSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ModifyTable { + pub plan: Plan, + pub operation: CmdType::Type, + pub canSetTag: bool, + pub nominalRelation: Index, + pub rootRelation: Index, + pub partColsUpdated: bool, + pub resultRelations: *mut List, + pub updateColnosLists: *mut List, + pub withCheckOptionLists: *mut List, + pub returningLists: *mut List, + pub fdwPrivLists: *mut List, + pub fdwDirectModifyPlans: *mut Bitmapset, + pub rowMarks: *mut List, + pub epqParam: ::core::ffi::c_int, + pub onConflictAction: OnConflictAction::Type, + pub arbiterIndexes: *mut List, + pub onConflictSet: *mut List, + pub onConflictCols: *mut List, + pub onConflictWhere: *mut Node, + pub exclRelRTI: Index, + pub exclRelTlist: *mut List, + pub mergeActionLists: *mut List, + pub mergeJoinConditions: *mut List, +} +impl Default for ModifyTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Append { + pub plan: Plan, + pub apprelids: *mut Bitmapset, + pub appendplans: *mut List, + pub nasyncplans: ::core::ffi::c_int, + pub first_partial_plan: ::core::ffi::c_int, + pub part_prune_info: *mut PartitionPruneInfo, +} +impl Default for Append { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAppend { + pub plan: Plan, + pub apprelids: *mut Bitmapset, + pub mergeplans: *mut List, + pub numCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub collations: *mut Oid, + pub nullsFirst: *mut bool, + pub part_prune_info: *mut PartitionPruneInfo, +} +impl Default for MergeAppend { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RecursiveUnion { + pub plan: Plan, + pub wtParam: ::core::ffi::c_int, + pub numCols: ::core::ffi::c_int, + pub dupColIdx: *mut AttrNumber, + pub dupOperators: *mut Oid, + pub dupCollations: *mut Oid, + pub numGroups: ::core::ffi::c_long, +} +impl Default for RecursiveUnion { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapAnd { + pub plan: Plan, + pub bitmapplans: *mut List, +} +impl Default for BitmapAnd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapOr { + pub plan: Plan, + pub isshared: bool, + pub bitmapplans: *mut List, +} +impl Default for BitmapOr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Scan { + pub plan: Plan, + pub scanrelid: Index, +} +impl Default for Scan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SeqScan { + pub scan: Scan, +} +impl Default for SeqScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SampleScan { + pub scan: Scan, + pub tablesample: *mut TableSampleClause, +} +impl Default for SampleScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexScan { + pub scan: Scan, + pub indexid: Oid, + pub indexqual: *mut List, + pub indexqualorig: *mut List, + pub indexorderby: *mut List, + pub indexorderbyorig: *mut List, + pub indexorderbyops: *mut List, + pub indexorderdir: ScanDirection::Type, +} +impl Default for IndexScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexOnlyScan { + pub scan: Scan, + pub indexid: Oid, + pub indexqual: *mut List, + pub recheckqual: *mut List, + pub indexorderby: *mut List, + pub indextlist: *mut List, + pub indexorderdir: ScanDirection::Type, +} +impl Default for IndexOnlyScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapIndexScan { + pub scan: Scan, + pub indexid: Oid, + pub isshared: bool, + pub indexqual: *mut List, + pub indexqualorig: *mut List, +} +impl Default for BitmapIndexScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapHeapScan { + pub scan: Scan, + pub bitmapqualorig: *mut List, +} +impl Default for BitmapHeapScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidScan { + pub scan: Scan, + pub tidquals: *mut List, +} +impl Default for TidScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidRangeScan { + pub scan: Scan, + pub tidrangequals: *mut List, +} +impl Default for TidRangeScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SubqueryScanStatus { + pub type Type = ::core::ffi::c_uint; + pub const SUBQUERY_SCAN_UNKNOWN: Type = 0; + pub const SUBQUERY_SCAN_TRIVIAL: Type = 1; + pub const SUBQUERY_SCAN_NONTRIVIAL: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubqueryScan { + pub scan: Scan, + pub subplan: *mut Plan, + pub scanstatus: SubqueryScanStatus::Type, +} +impl Default for SubqueryScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionScan { + pub scan: Scan, + pub functions: *mut List, + pub funcordinality: bool, +} +impl Default for FunctionScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ValuesScan { + pub scan: Scan, + pub values_lists: *mut List, +} +impl Default for ValuesScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableFuncScan { + pub scan: Scan, + pub tablefunc: *mut TableFunc, +} +impl Default for TableFuncScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CteScan { + pub scan: Scan, + pub ctePlanId: ::core::ffi::c_int, + pub cteParam: ::core::ffi::c_int, +} +impl Default for CteScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedTuplestoreScan { + pub scan: Scan, + pub enrname: *mut ::core::ffi::c_char, +} +impl Default for NamedTuplestoreScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WorkTableScan { + pub scan: Scan, + pub wtParam: ::core::ffi::c_int, +} +impl Default for WorkTableScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignScan { + pub scan: Scan, + pub operation: CmdType::Type, + pub resultRelation: Index, + pub checkAsUser: Oid, + pub fs_server: Oid, + pub fdw_exprs: *mut List, + pub fdw_private: *mut List, + pub fdw_scan_tlist: *mut List, + pub fdw_recheck_quals: *mut List, + pub fs_relids: *mut Bitmapset, + pub fs_base_relids: *mut Bitmapset, + pub fsSystemCol: bool, +} +impl Default for ForeignScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomScan { + pub scan: Scan, + pub flags: uint32, + pub custom_plans: *mut List, + pub custom_exprs: *mut List, + pub custom_private: *mut List, + pub custom_scan_tlist: *mut List, + pub custom_relids: *mut Bitmapset, + pub methods: *const CustomScanMethods, +} +impl Default for CustomScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Join { + pub plan: Plan, + pub jointype: JoinType::Type, + pub inner_unique: bool, + pub joinqual: *mut List, +} +impl Default for Join { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestLoop { + pub join: Join, + pub nestParams: *mut List, +} +impl Default for NestLoop { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestLoopParam { + pub type_: NodeTag, + pub paramno: ::core::ffi::c_int, + pub paramval: *mut Var, +} +impl Default for NestLoopParam { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeJoin { + pub join: Join, + pub skip_mark_restore: bool, + pub mergeclauses: *mut List, + pub mergeFamilies: *mut Oid, + pub mergeCollations: *mut Oid, + pub mergeStrategies: *mut ::core::ffi::c_int, + pub mergeNullsFirst: *mut bool, +} +impl Default for MergeJoin { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoin { + pub join: Join, + pub hashclauses: *mut List, + pub hashoperators: *mut List, + pub hashcollations: *mut List, + pub hashkeys: *mut List, +} +impl Default for HashJoin { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Material { + pub plan: Plan, +} +impl Default for Material { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Memoize { + pub plan: Plan, + pub numKeys: ::core::ffi::c_int, + pub hashOperators: *mut Oid, + pub collations: *mut Oid, + pub param_exprs: *mut List, + pub singlerow: bool, + pub binary_mode: bool, + pub est_entries: uint32, + pub keyparamids: *mut Bitmapset, +} +impl Default for Memoize { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Sort { + pub plan: Plan, + pub numCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub collations: *mut Oid, + pub nullsFirst: *mut bool, +} +impl Default for Sort { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IncrementalSort { + pub sort: Sort, + pub nPresortedCols: ::core::ffi::c_int, +} +impl Default for IncrementalSort { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Group { + pub plan: Plan, + pub numCols: ::core::ffi::c_int, + pub grpColIdx: *mut AttrNumber, + pub grpOperators: *mut Oid, + pub grpCollations: *mut Oid, +} +impl Default for Group { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Agg { + pub plan: Plan, + pub aggstrategy: AggStrategy::Type, + pub aggsplit: AggSplit::Type, + pub numCols: ::core::ffi::c_int, + pub grpColIdx: *mut AttrNumber, + pub grpOperators: *mut Oid, + pub grpCollations: *mut Oid, + pub numGroups: ::core::ffi::c_long, + pub transitionSpace: uint64, + pub aggParams: *mut Bitmapset, + pub groupingSets: *mut List, + pub chain: *mut List, +} +impl Default for Agg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowAgg { + pub plan: Plan, + pub winref: Index, + pub partNumCols: ::core::ffi::c_int, + pub partColIdx: *mut AttrNumber, + pub partOperators: *mut Oid, + pub partCollations: *mut Oid, + pub ordNumCols: ::core::ffi::c_int, + pub ordColIdx: *mut AttrNumber, + pub ordOperators: *mut Oid, + pub ordCollations: *mut Oid, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut Node, + pub endOffset: *mut Node, + pub runCondition: *mut List, + pub runConditionOrig: *mut List, + pub startInRangeFunc: Oid, + pub endInRangeFunc: Oid, + pub inRangeColl: Oid, + pub inRangeAsc: bool, + pub inRangeNullsFirst: bool, + pub topWindow: bool, +} +impl Default for WindowAgg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Unique { + pub plan: Plan, + pub numCols: ::core::ffi::c_int, + pub uniqColIdx: *mut AttrNumber, + pub uniqOperators: *mut Oid, + pub uniqCollations: *mut Oid, +} +impl Default for Unique { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Gather { + pub plan: Plan, + pub num_workers: ::core::ffi::c_int, + pub rescan_param: ::core::ffi::c_int, + pub single_copy: bool, + pub invisible: bool, + pub initParam: *mut Bitmapset, +} +impl Default for Gather { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherMerge { + pub plan: Plan, + pub num_workers: ::core::ffi::c_int, + pub rescan_param: ::core::ffi::c_int, + pub numCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub collations: *mut Oid, + pub nullsFirst: *mut bool, + pub initParam: *mut Bitmapset, +} +impl Default for GatherMerge { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Hash { + pub plan: Plan, + pub hashkeys: *mut List, + pub skewTable: Oid, + pub skewColumn: AttrNumber, + pub skewInherit: bool, + pub rows_total: Cardinality, +} +impl Default for Hash { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOp { + pub plan: Plan, + pub cmd: SetOpCmd::Type, + pub strategy: SetOpStrategy::Type, + pub numCols: ::core::ffi::c_int, + pub dupColIdx: *mut AttrNumber, + pub dupOperators: *mut Oid, + pub dupCollations: *mut Oid, + pub flagColIdx: AttrNumber, + pub firstFlag: ::core::ffi::c_int, + pub numGroups: ::core::ffi::c_long, +} +impl Default for SetOp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRows { + pub plan: Plan, + pub rowMarks: *mut List, + pub epqParam: ::core::ffi::c_int, +} +impl Default for LockRows { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Limit { + pub plan: Plan, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, + pub uniqNumCols: ::core::ffi::c_int, + pub uniqColIdx: *mut AttrNumber, + pub uniqOperators: *mut Oid, + pub uniqCollations: *mut Oid, +} +impl Default for Limit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RowMarkType { + pub type Type = ::core::ffi::c_uint; + pub const ROW_MARK_EXCLUSIVE: Type = 0; + pub const ROW_MARK_NOKEYEXCLUSIVE: Type = 1; + pub const ROW_MARK_SHARE: Type = 2; + pub const ROW_MARK_KEYSHARE: Type = 3; + pub const ROW_MARK_REFERENCE: Type = 4; + pub const ROW_MARK_COPY: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlanRowMark { + pub type_: NodeTag, + pub rti: Index, + pub prti: Index, + pub rowmarkId: Index, + pub markType: RowMarkType::Type, + pub allMarkTypes: ::core::ffi::c_int, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, + pub isParent: bool, +} +impl Default for PlanRowMark { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneInfo { + pub type_: NodeTag, + pub prune_infos: *mut List, + pub other_subplans: *mut Bitmapset, +} +impl Default for PartitionPruneInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionedRelPruneInfo { + pub type_: NodeTag, + pub rtindex: Index, + pub present_parts: *mut Bitmapset, + pub nparts: ::core::ffi::c_int, + pub subplan_map: *mut ::core::ffi::c_int, + pub subpart_map: *mut ::core::ffi::c_int, + pub relid_map: *mut Oid, + pub initial_pruning_steps: *mut List, + pub exec_pruning_steps: *mut List, + pub execparamids: *mut Bitmapset, +} +impl Default for PartitionedRelPruneInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneStep { + pub type_: NodeTag, + pub step_id: ::core::ffi::c_int, +} +impl Default for PartitionPruneStep { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneStepOp { + pub step: PartitionPruneStep, + pub opstrategy: StrategyNumber, + pub exprs: *mut List, + pub cmpfns: *mut List, + pub nullkeys: *mut Bitmapset, +} +impl Default for PartitionPruneStepOp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionPruneCombineOp { + pub type Type = ::core::ffi::c_uint; + pub const PARTPRUNE_COMBINE_UNION: Type = 0; + pub const PARTPRUNE_COMBINE_INTERSECT: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneStepCombine { + pub step: PartitionPruneStep, + pub combineOp: PartitionPruneCombineOp::Type, + pub source_stepids: *mut List, +} +impl Default for PartitionPruneStepCombine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlanInvalItem { + pub type_: NodeTag, + pub cacheId: ::core::ffi::c_int, + pub hashValue: uint32, +} +impl Default for PlanInvalItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MonotonicFunction { + pub type Type = ::core::ffi::c_uint; + pub const MONOTONICFUNC_NONE: Type = 0; + pub const MONOTONICFUNC_INCREASING: Type = 1; + pub const MONOTONICFUNC_DECREASING: Type = 2; + pub const MONOTONICFUNC_BOTH: Type = 3; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_atomic_flag { + pub value: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_atomic_uint32 { + pub value: uint32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_atomic_uint64 { + pub value: uint64, +} +pub type dsm_handle = uint32; +pub mod dsm_op { + pub type Type = ::core::ffi::c_uint; + pub const DSM_OP_CREATE: Type = 0; + pub const DSM_OP_ATTACH: Type = 1; + pub const DSM_OP_DETACH: Type = 2; + pub const DSM_OP_DESTROY: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dsm_segment { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PGShmemHeader { + _unused: [u8; 0], +} +pub type on_dsm_detach_callback = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dsa_area { + _unused: [u8; 0], +} +pub type dsa_pointer = uint64; +pub type dsa_pointer_atomic = pg_atomic_uint64; +pub type dsa_handle = dsm_handle; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TIDBitmap { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TBMIterator { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TBMSharedIterator { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TBMIterateResult { + pub blockno: BlockNumber, + pub ntuples: ::core::ffi::c_int, + pub recheck: bool, + pub offsets: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionBoundInfoData { + _unused: [u8; 0], +} +pub type PartitionBoundInfo = *mut PartitionBoundInfoData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionKeyData { + _unused: [u8; 0], +} +pub type PartitionKey = *mut PartitionKeyData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionDescData { + _unused: [u8; 0], +} +pub type PartitionDesc = *mut PartitionDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionDirectoryData { + _unused: [u8; 0], +} +pub type PartitionDirectory = *mut PartitionDirectoryData; +pub type ProcNumber = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct proclist_node { + pub next: ProcNumber, + pub prev: ProcNumber, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct proclist_head { + pub head: ProcNumber, + pub tail: ProcNumber, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct proclist_mutable_iter { + pub cur: ProcNumber, + pub next: ProcNumber, +} +pub type slock_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SpinDelayStatus { + pub spins: ::core::ffi::c_int, + pub delays: ::core::ffi::c_int, + pub cur_delay: ::core::ffi::c_int, + pub file: *const ::core::ffi::c_char, + pub line: ::core::ffi::c_int, + pub func: *const ::core::ffi::c_char, +} +impl Default for SpinDelayStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ConditionVariable { + pub mutex: slock_t, + pub wakeup: proclist_head, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ConditionVariableMinimallyPadded { + pub cv: ConditionVariable, + pub pad: [::core::ffi::c_char; 16usize], +} +impl Default for ConditionVariableMinimallyPadded { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type HashValueFunc = ::core::option::Option< + unsafe extern "C" fn(key: *const ::core::ffi::c_void, keysize: Size) -> uint32, +>; +pub type HashCompareFunc = ::core::option::Option< + unsafe extern "C" fn( + key1: *const ::core::ffi::c_void, + key2: *const ::core::ffi::c_void, + keysize: Size, + ) -> ::core::ffi::c_int, +>; +pub type HashCopyFunc = ::core::option::Option< + unsafe extern "C" fn( + dest: *mut ::core::ffi::c_void, + src: *const ::core::ffi::c_void, + keysize: Size, + ) -> *mut ::core::ffi::c_void, +>; +pub type HashAllocFunc = + ::core::option::Option *mut ::core::ffi::c_void>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASHELEMENT { + pub link: *mut HASHELEMENT, + pub hashvalue: uint32, +} +impl Default for HASHELEMENT { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASHHDR { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HTAB { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASHCTL { + pub num_partitions: ::core::ffi::c_long, + pub ssize: ::core::ffi::c_long, + pub dsize: ::core::ffi::c_long, + pub max_dsize: ::core::ffi::c_long, + pub keysize: Size, + pub entrysize: Size, + pub hash: HashValueFunc, + pub match_: HashCompareFunc, + pub keycopy: HashCopyFunc, + pub alloc: HashAllocFunc, + pub hcxt: MemoryContext, + pub hctl: *mut HASHHDR, +} +impl Default for HASHCTL { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod HASHACTION { + pub type Type = ::core::ffi::c_uint; + pub const HASH_FIND: Type = 0; + pub const HASH_ENTER: Type = 1; + pub const HASH_REMOVE: Type = 2; + pub const HASH_ENTER_NULL: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASH_SEQ_STATUS { + pub hashp: *mut HTAB, + pub curBucket: uint32, + pub curEntry: *mut HASHELEMENT, +} +impl Default for HASH_SEQ_STATUS { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod EphemeralNameRelationType { + pub type Type = ::core::ffi::c_uint; + pub const ENR_NAMED_TUPLESTORE: Type = 0; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EphemeralNamedRelationMetadataData { + pub name: *mut ::core::ffi::c_char, + pub reliddesc: Oid, + pub tupdesc: TupleDesc, + pub enrtype: EphemeralNameRelationType::Type, + pub enrtuples: f64, +} +impl Default for EphemeralNamedRelationMetadataData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type EphemeralNamedRelationMetadata = *mut EphemeralNamedRelationMetadataData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EphemeralNamedRelationData { + pub md: EphemeralNamedRelationMetadataData, + pub reldata: *mut ::core::ffi::c_void, +} +impl Default for EphemeralNamedRelationData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type EphemeralNamedRelation = *mut EphemeralNamedRelationData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QueryEnvironment { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Trigger { + pub tgoid: Oid, + pub tgname: *mut ::core::ffi::c_char, + pub tgfoid: Oid, + pub tgtype: int16, + pub tgenabled: ::core::ffi::c_char, + pub tgisinternal: bool, + pub tgisclone: bool, + pub tgconstrrelid: Oid, + pub tgconstrindid: Oid, + pub tgconstraint: Oid, + pub tgdeferrable: bool, + pub tginitdeferred: bool, + pub tgnargs: int16, + pub tgnattr: int16, + pub tgattr: *mut int16, + pub tgargs: *mut *mut ::core::ffi::c_char, + pub tgqual: *mut ::core::ffi::c_char, + pub tgoldtable: *mut ::core::ffi::c_char, + pub tgnewtable: *mut ::core::ffi::c_char, +} +impl Default for Trigger { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TriggerDesc { + pub triggers: *mut Trigger, + pub numtriggers: ::core::ffi::c_int, + pub trig_insert_before_row: bool, + pub trig_insert_after_row: bool, + pub trig_insert_instead_row: bool, + pub trig_insert_before_statement: bool, + pub trig_insert_after_statement: bool, + pub trig_update_before_row: bool, + pub trig_update_after_row: bool, + pub trig_update_instead_row: bool, + pub trig_update_before_statement: bool, + pub trig_update_after_statement: bool, + pub trig_delete_before_row: bool, + pub trig_delete_after_row: bool, + pub trig_delete_instead_row: bool, + pub trig_delete_before_statement: bool, + pub trig_delete_after_statement: bool, + pub trig_truncate_before_statement: bool, + pub trig_truncate_after_statement: bool, + pub trig_insert_new_table: bool, + pub trig_update_old_table: bool, + pub trig_update_new_table: bool, + pub trig_delete_old_table: bool, +} +impl Default for TriggerDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iovec { + pub iov_base: *mut ::core::ffi::c_void, + pub iov_len: usize, +} +impl Default for iovec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type useconds_t = __useconds_t; +pub type socklen_t = __socklen_t; +pub mod _bindgen_ty_3 { + pub type Type = ::core::ffi::c_uint; + pub const _PC_LINK_MAX: Type = 0; + pub const _PC_MAX_CANON: Type = 1; + pub const _PC_MAX_INPUT: Type = 2; + pub const _PC_NAME_MAX: Type = 3; + pub const _PC_PATH_MAX: Type = 4; + pub const _PC_PIPE_BUF: Type = 5; + pub const _PC_CHOWN_RESTRICTED: Type = 6; + pub const _PC_NO_TRUNC: Type = 7; + pub const _PC_VDISABLE: Type = 8; + pub const _PC_SYNC_IO: Type = 9; + pub const _PC_ASYNC_IO: Type = 10; + pub const _PC_PRIO_IO: Type = 11; + pub const _PC_SOCK_MAXBUF: Type = 12; + pub const _PC_FILESIZEBITS: Type = 13; + pub const _PC_REC_INCR_XFER_SIZE: Type = 14; + pub const _PC_REC_MAX_XFER_SIZE: Type = 15; + pub const _PC_REC_MIN_XFER_SIZE: Type = 16; + pub const _PC_REC_XFER_ALIGN: Type = 17; + pub const _PC_ALLOC_SIZE_MIN: Type = 18; + pub const _PC_SYMLINK_MAX: Type = 19; + pub const _PC_2_SYMLINKS: Type = 20; +} +pub mod _bindgen_ty_4 { + pub type Type = ::core::ffi::c_uint; + pub const _SC_ARG_MAX: Type = 0; + pub const _SC_CHILD_MAX: Type = 1; + pub const _SC_CLK_TCK: Type = 2; + pub const _SC_NGROUPS_MAX: Type = 3; + pub const _SC_OPEN_MAX: Type = 4; + pub const _SC_STREAM_MAX: Type = 5; + pub const _SC_TZNAME_MAX: Type = 6; + pub const _SC_JOB_CONTROL: Type = 7; + pub const _SC_SAVED_IDS: Type = 8; + pub const _SC_REALTIME_SIGNALS: Type = 9; + pub const _SC_PRIORITY_SCHEDULING: Type = 10; + pub const _SC_TIMERS: Type = 11; + pub const _SC_ASYNCHRONOUS_IO: Type = 12; + pub const _SC_PRIORITIZED_IO: Type = 13; + pub const _SC_SYNCHRONIZED_IO: Type = 14; + pub const _SC_FSYNC: Type = 15; + pub const _SC_MAPPED_FILES: Type = 16; + pub const _SC_MEMLOCK: Type = 17; + pub const _SC_MEMLOCK_RANGE: Type = 18; + pub const _SC_MEMORY_PROTECTION: Type = 19; + pub const _SC_MESSAGE_PASSING: Type = 20; + pub const _SC_SEMAPHORES: Type = 21; + pub const _SC_SHARED_MEMORY_OBJECTS: Type = 22; + pub const _SC_AIO_LISTIO_MAX: Type = 23; + pub const _SC_AIO_MAX: Type = 24; + pub const _SC_AIO_PRIO_DELTA_MAX: Type = 25; + pub const _SC_DELAYTIMER_MAX: Type = 26; + pub const _SC_MQ_OPEN_MAX: Type = 27; + pub const _SC_MQ_PRIO_MAX: Type = 28; + pub const _SC_VERSION: Type = 29; + pub const _SC_PAGESIZE: Type = 30; + pub const _SC_RTSIG_MAX: Type = 31; + pub const _SC_SEM_NSEMS_MAX: Type = 32; + pub const _SC_SEM_VALUE_MAX: Type = 33; + pub const _SC_SIGQUEUE_MAX: Type = 34; + pub const _SC_TIMER_MAX: Type = 35; + pub const _SC_BC_BASE_MAX: Type = 36; + pub const _SC_BC_DIM_MAX: Type = 37; + pub const _SC_BC_SCALE_MAX: Type = 38; + pub const _SC_BC_STRING_MAX: Type = 39; + pub const _SC_COLL_WEIGHTS_MAX: Type = 40; + pub const _SC_EQUIV_CLASS_MAX: Type = 41; + pub const _SC_EXPR_NEST_MAX: Type = 42; + pub const _SC_LINE_MAX: Type = 43; + pub const _SC_RE_DUP_MAX: Type = 44; + pub const _SC_CHARCLASS_NAME_MAX: Type = 45; + pub const _SC_2_VERSION: Type = 46; + pub const _SC_2_C_BIND: Type = 47; + pub const _SC_2_C_DEV: Type = 48; + pub const _SC_2_FORT_DEV: Type = 49; + pub const _SC_2_FORT_RUN: Type = 50; + pub const _SC_2_SW_DEV: Type = 51; + pub const _SC_2_LOCALEDEF: Type = 52; + pub const _SC_PII: Type = 53; + pub const _SC_PII_XTI: Type = 54; + pub const _SC_PII_SOCKET: Type = 55; + pub const _SC_PII_INTERNET: Type = 56; + pub const _SC_PII_OSI: Type = 57; + pub const _SC_POLL: Type = 58; + pub const _SC_SELECT: Type = 59; + pub const _SC_UIO_MAXIOV: Type = 60; + pub const _SC_IOV_MAX: Type = 60; + pub const _SC_PII_INTERNET_STREAM: Type = 61; + pub const _SC_PII_INTERNET_DGRAM: Type = 62; + pub const _SC_PII_OSI_COTS: Type = 63; + pub const _SC_PII_OSI_CLTS: Type = 64; + pub const _SC_PII_OSI_M: Type = 65; + pub const _SC_T_IOV_MAX: Type = 66; + pub const _SC_THREADS: Type = 67; + pub const _SC_THREAD_SAFE_FUNCTIONS: Type = 68; + pub const _SC_GETGR_R_SIZE_MAX: Type = 69; + pub const _SC_GETPW_R_SIZE_MAX: Type = 70; + pub const _SC_LOGIN_NAME_MAX: Type = 71; + pub const _SC_TTY_NAME_MAX: Type = 72; + pub const _SC_THREAD_DESTRUCTOR_ITERATIONS: Type = 73; + pub const _SC_THREAD_KEYS_MAX: Type = 74; + pub const _SC_THREAD_STACK_MIN: Type = 75; + pub const _SC_THREAD_THREADS_MAX: Type = 76; + pub const _SC_THREAD_ATTR_STACKADDR: Type = 77; + pub const _SC_THREAD_ATTR_STACKSIZE: Type = 78; + pub const _SC_THREAD_PRIORITY_SCHEDULING: Type = 79; + pub const _SC_THREAD_PRIO_INHERIT: Type = 80; + pub const _SC_THREAD_PRIO_PROTECT: Type = 81; + pub const _SC_THREAD_PROCESS_SHARED: Type = 82; + pub const _SC_NPROCESSORS_CONF: Type = 83; + pub const _SC_NPROCESSORS_ONLN: Type = 84; + pub const _SC_PHYS_PAGES: Type = 85; + pub const _SC_AVPHYS_PAGES: Type = 86; + pub const _SC_ATEXIT_MAX: Type = 87; + pub const _SC_PASS_MAX: Type = 88; + pub const _SC_XOPEN_VERSION: Type = 89; + pub const _SC_XOPEN_XCU_VERSION: Type = 90; + pub const _SC_XOPEN_UNIX: Type = 91; + pub const _SC_XOPEN_CRYPT: Type = 92; + pub const _SC_XOPEN_ENH_I18N: Type = 93; + pub const _SC_XOPEN_SHM: Type = 94; + pub const _SC_2_CHAR_TERM: Type = 95; + pub const _SC_2_C_VERSION: Type = 96; + pub const _SC_2_UPE: Type = 97; + pub const _SC_XOPEN_XPG2: Type = 98; + pub const _SC_XOPEN_XPG3: Type = 99; + pub const _SC_XOPEN_XPG4: Type = 100; + pub const _SC_CHAR_BIT: Type = 101; + pub const _SC_CHAR_MAX: Type = 102; + pub const _SC_CHAR_MIN: Type = 103; + pub const _SC_INT_MAX: Type = 104; + pub const _SC_INT_MIN: Type = 105; + pub const _SC_LONG_BIT: Type = 106; + pub const _SC_WORD_BIT: Type = 107; + pub const _SC_MB_LEN_MAX: Type = 108; + pub const _SC_NZERO: Type = 109; + pub const _SC_SSIZE_MAX: Type = 110; + pub const _SC_SCHAR_MAX: Type = 111; + pub const _SC_SCHAR_MIN: Type = 112; + pub const _SC_SHRT_MAX: Type = 113; + pub const _SC_SHRT_MIN: Type = 114; + pub const _SC_UCHAR_MAX: Type = 115; + pub const _SC_UINT_MAX: Type = 116; + pub const _SC_ULONG_MAX: Type = 117; + pub const _SC_USHRT_MAX: Type = 118; + pub const _SC_NL_ARGMAX: Type = 119; + pub const _SC_NL_LANGMAX: Type = 120; + pub const _SC_NL_MSGMAX: Type = 121; + pub const _SC_NL_NMAX: Type = 122; + pub const _SC_NL_SETMAX: Type = 123; + pub const _SC_NL_TEXTMAX: Type = 124; + pub const _SC_XBS5_ILP32_OFF32: Type = 125; + pub const _SC_XBS5_ILP32_OFFBIG: Type = 126; + pub const _SC_XBS5_LP64_OFF64: Type = 127; + pub const _SC_XBS5_LPBIG_OFFBIG: Type = 128; + pub const _SC_XOPEN_LEGACY: Type = 129; + pub const _SC_XOPEN_REALTIME: Type = 130; + pub const _SC_XOPEN_REALTIME_THREADS: Type = 131; + pub const _SC_ADVISORY_INFO: Type = 132; + pub const _SC_BARRIERS: Type = 133; + pub const _SC_BASE: Type = 134; + pub const _SC_C_LANG_SUPPORT: Type = 135; + pub const _SC_C_LANG_SUPPORT_R: Type = 136; + pub const _SC_CLOCK_SELECTION: Type = 137; + pub const _SC_CPUTIME: Type = 138; + pub const _SC_THREAD_CPUTIME: Type = 139; + pub const _SC_DEVICE_IO: Type = 140; + pub const _SC_DEVICE_SPECIFIC: Type = 141; + pub const _SC_DEVICE_SPECIFIC_R: Type = 142; + pub const _SC_FD_MGMT: Type = 143; + pub const _SC_FIFO: Type = 144; + pub const _SC_PIPE: Type = 145; + pub const _SC_FILE_ATTRIBUTES: Type = 146; + pub const _SC_FILE_LOCKING: Type = 147; + pub const _SC_FILE_SYSTEM: Type = 148; + pub const _SC_MONOTONIC_CLOCK: Type = 149; + pub const _SC_MULTI_PROCESS: Type = 150; + pub const _SC_SINGLE_PROCESS: Type = 151; + pub const _SC_NETWORKING: Type = 152; + pub const _SC_READER_WRITER_LOCKS: Type = 153; + pub const _SC_SPIN_LOCKS: Type = 154; + pub const _SC_REGEXP: Type = 155; + pub const _SC_REGEX_VERSION: Type = 156; + pub const _SC_SHELL: Type = 157; + pub const _SC_SIGNALS: Type = 158; + pub const _SC_SPAWN: Type = 159; + pub const _SC_SPORADIC_SERVER: Type = 160; + pub const _SC_THREAD_SPORADIC_SERVER: Type = 161; + pub const _SC_SYSTEM_DATABASE: Type = 162; + pub const _SC_SYSTEM_DATABASE_R: Type = 163; + pub const _SC_TIMEOUTS: Type = 164; + pub const _SC_TYPED_MEMORY_OBJECTS: Type = 165; + pub const _SC_USER_GROUPS: Type = 166; + pub const _SC_USER_GROUPS_R: Type = 167; + pub const _SC_2_PBS: Type = 168; + pub const _SC_2_PBS_ACCOUNTING: Type = 169; + pub const _SC_2_PBS_LOCATE: Type = 170; + pub const _SC_2_PBS_MESSAGE: Type = 171; + pub const _SC_2_PBS_TRACK: Type = 172; + pub const _SC_SYMLOOP_MAX: Type = 173; + pub const _SC_STREAMS: Type = 174; + pub const _SC_2_PBS_CHECKPOINT: Type = 175; + pub const _SC_V6_ILP32_OFF32: Type = 176; + pub const _SC_V6_ILP32_OFFBIG: Type = 177; + pub const _SC_V6_LP64_OFF64: Type = 178; + pub const _SC_V6_LPBIG_OFFBIG: Type = 179; + pub const _SC_HOST_NAME_MAX: Type = 180; + pub const _SC_TRACE: Type = 181; + pub const _SC_TRACE_EVENT_FILTER: Type = 182; + pub const _SC_TRACE_INHERIT: Type = 183; + pub const _SC_TRACE_LOG: Type = 184; + pub const _SC_LEVEL1_ICACHE_SIZE: Type = 185; + pub const _SC_LEVEL1_ICACHE_ASSOC: Type = 186; + pub const _SC_LEVEL1_ICACHE_LINESIZE: Type = 187; + pub const _SC_LEVEL1_DCACHE_SIZE: Type = 188; + pub const _SC_LEVEL1_DCACHE_ASSOC: Type = 189; + pub const _SC_LEVEL1_DCACHE_LINESIZE: Type = 190; + pub const _SC_LEVEL2_CACHE_SIZE: Type = 191; + pub const _SC_LEVEL2_CACHE_ASSOC: Type = 192; + pub const _SC_LEVEL2_CACHE_LINESIZE: Type = 193; + pub const _SC_LEVEL3_CACHE_SIZE: Type = 194; + pub const _SC_LEVEL3_CACHE_ASSOC: Type = 195; + pub const _SC_LEVEL3_CACHE_LINESIZE: Type = 196; + pub const _SC_LEVEL4_CACHE_SIZE: Type = 197; + pub const _SC_LEVEL4_CACHE_ASSOC: Type = 198; + pub const _SC_LEVEL4_CACHE_LINESIZE: Type = 199; + pub const _SC_IPV6: Type = 235; + pub const _SC_RAW_SOCKETS: Type = 236; + pub const _SC_V7_ILP32_OFF32: Type = 237; + pub const _SC_V7_ILP32_OFFBIG: Type = 238; + pub const _SC_V7_LP64_OFF64: Type = 239; + pub const _SC_V7_LPBIG_OFFBIG: Type = 240; + pub const _SC_SS_REPL_MAX: Type = 241; + pub const _SC_TRACE_EVENT_NAME_MAX: Type = 242; + pub const _SC_TRACE_NAME_MAX: Type = 243; + pub const _SC_TRACE_SYS_MAX: Type = 244; + pub const _SC_TRACE_USER_EVENT_MAX: Type = 245; + pub const _SC_XOPEN_STREAMS: Type = 246; + pub const _SC_THREAD_ROBUST_PRIO_INHERIT: Type = 247; + pub const _SC_THREAD_ROBUST_PRIO_PROTECT: Type = 248; + pub const _SC_MINSIGSTKSZ: Type = 249; + pub const _SC_SIGSTKSZ: Type = 250; +} +pub mod _bindgen_ty_5 { + pub type Type = ::core::ffi::c_uint; + pub const _CS_PATH: Type = 0; + pub const _CS_V6_WIDTH_RESTRICTED_ENVS: Type = 1; + pub const _CS_GNU_LIBC_VERSION: Type = 2; + pub const _CS_GNU_LIBPTHREAD_VERSION: Type = 3; + pub const _CS_V5_WIDTH_RESTRICTED_ENVS: Type = 4; + pub const _CS_V7_WIDTH_RESTRICTED_ENVS: Type = 5; + pub const _CS_LFS_CFLAGS: Type = 1000; + pub const _CS_LFS_LDFLAGS: Type = 1001; + pub const _CS_LFS_LIBS: Type = 1002; + pub const _CS_LFS_LINTFLAGS: Type = 1003; + pub const _CS_LFS64_CFLAGS: Type = 1004; + pub const _CS_LFS64_LDFLAGS: Type = 1005; + pub const _CS_LFS64_LIBS: Type = 1006; + pub const _CS_LFS64_LINTFLAGS: Type = 1007; + pub const _CS_XBS5_ILP32_OFF32_CFLAGS: Type = 1100; + pub const _CS_XBS5_ILP32_OFF32_LDFLAGS: Type = 1101; + pub const _CS_XBS5_ILP32_OFF32_LIBS: Type = 1102; + pub const _CS_XBS5_ILP32_OFF32_LINTFLAGS: Type = 1103; + pub const _CS_XBS5_ILP32_OFFBIG_CFLAGS: Type = 1104; + pub const _CS_XBS5_ILP32_OFFBIG_LDFLAGS: Type = 1105; + pub const _CS_XBS5_ILP32_OFFBIG_LIBS: Type = 1106; + pub const _CS_XBS5_ILP32_OFFBIG_LINTFLAGS: Type = 1107; + pub const _CS_XBS5_LP64_OFF64_CFLAGS: Type = 1108; + pub const _CS_XBS5_LP64_OFF64_LDFLAGS: Type = 1109; + pub const _CS_XBS5_LP64_OFF64_LIBS: Type = 1110; + pub const _CS_XBS5_LP64_OFF64_LINTFLAGS: Type = 1111; + pub const _CS_XBS5_LPBIG_OFFBIG_CFLAGS: Type = 1112; + pub const _CS_XBS5_LPBIG_OFFBIG_LDFLAGS: Type = 1113; + pub const _CS_XBS5_LPBIG_OFFBIG_LIBS: Type = 1114; + pub const _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS: Type = 1115; + pub const _CS_POSIX_V6_ILP32_OFF32_CFLAGS: Type = 1116; + pub const _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: Type = 1117; + pub const _CS_POSIX_V6_ILP32_OFF32_LIBS: Type = 1118; + pub const _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS: Type = 1119; + pub const _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: Type = 1120; + pub const _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: Type = 1121; + pub const _CS_POSIX_V6_ILP32_OFFBIG_LIBS: Type = 1122; + pub const _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS: Type = 1123; + pub const _CS_POSIX_V6_LP64_OFF64_CFLAGS: Type = 1124; + pub const _CS_POSIX_V6_LP64_OFF64_LDFLAGS: Type = 1125; + pub const _CS_POSIX_V6_LP64_OFF64_LIBS: Type = 1126; + pub const _CS_POSIX_V6_LP64_OFF64_LINTFLAGS: Type = 1127; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: Type = 1128; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: Type = 1129; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_LIBS: Type = 1130; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS: Type = 1131; + pub const _CS_POSIX_V7_ILP32_OFF32_CFLAGS: Type = 1132; + pub const _CS_POSIX_V7_ILP32_OFF32_LDFLAGS: Type = 1133; + pub const _CS_POSIX_V7_ILP32_OFF32_LIBS: Type = 1134; + pub const _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS: Type = 1135; + pub const _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS: Type = 1136; + pub const _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS: Type = 1137; + pub const _CS_POSIX_V7_ILP32_OFFBIG_LIBS: Type = 1138; + pub const _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS: Type = 1139; + pub const _CS_POSIX_V7_LP64_OFF64_CFLAGS: Type = 1140; + pub const _CS_POSIX_V7_LP64_OFF64_LDFLAGS: Type = 1141; + pub const _CS_POSIX_V7_LP64_OFF64_LIBS: Type = 1142; + pub const _CS_POSIX_V7_LP64_OFF64_LINTFLAGS: Type = 1143; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS: Type = 1144; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS: Type = 1145; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_LIBS: Type = 1146; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS: Type = 1147; + pub const _CS_V6_ENV: Type = 1148; + pub const _CS_V7_ENV: Type = 1149; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dirent { + pub d_ino: __ino_t, + pub d_off: __off_t, + pub d_reclen: ::core::ffi::c_ushort, + pub d_type: ::core::ffi::c_uchar, + pub d_name: [::core::ffi::c_char; 256usize], +} +impl Default for dirent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_6 { + pub type Type = ::core::ffi::c_uint; + pub const DT_UNKNOWN: Type = 0; + pub const DT_FIFO: Type = 1; + pub const DT_CHR: Type = 2; + pub const DT_DIR: Type = 4; + pub const DT_BLK: Type = 6; + pub const DT_REG: Type = 8; + pub const DT_LNK: Type = 10; + pub const DT_SOCK: Type = 12; + pub const DT_WHT: Type = 14; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __dirstream { + _unused: [u8; 0], +} +pub type DIR = __dirstream; +pub type File = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FileSet { + pub creator_pid: pid_t, + pub number: uint32, + pub ntablespaces: ::core::ffi::c_int, + pub tablespaces: [Oid; 8usize], +} +impl Default for FileSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedFileSet { + pub fs: FileSet, + pub mutex: slock_t, + pub refcnt: ::core::ffi::c_int, +} +impl Default for SharedFileSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedTuplestore { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedTuplestoreAccessor { + _unused: [u8; 0], +} +pub type Timestamp = int64; +pub type TimestampTz = int64; +pub type TimeOffset = int64; +pub type fsec_t = int32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Interval { + pub time: TimeOffset, + pub day: int32, + pub month: int32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_itm { + pub tm_usec: ::core::ffi::c_int, + pub tm_sec: ::core::ffi::c_int, + pub tm_min: ::core::ffi::c_int, + pub tm_hour: int64, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_itm_in { + pub tm_usec: int64, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, +} +pub mod SnapshotType { + pub type Type = ::core::ffi::c_uint; + pub const SNAPSHOT_MVCC: Type = 0; + pub const SNAPSHOT_SELF: Type = 1; + pub const SNAPSHOT_ANY: Type = 2; + pub const SNAPSHOT_TOAST: Type = 3; + pub const SNAPSHOT_DIRTY: Type = 4; + pub const SNAPSHOT_HISTORIC_MVCC: Type = 5; + pub const SNAPSHOT_NON_VACUUMABLE: Type = 6; +} +pub type Snapshot = *mut SnapshotData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SnapshotData { + pub snapshot_type: SnapshotType::Type, + pub xmin: TransactionId, + pub xmax: TransactionId, + pub xip: *mut TransactionId, + pub xcnt: uint32, + pub subxip: *mut TransactionId, + pub subxcnt: int32, + pub suboverflowed: bool, + pub takenDuringRecovery: bool, + pub copied: bool, + pub curcid: CommandId, + pub speculativeToken: uint32, + pub vistest: *mut GlobalVisState, + pub active_count: uint32, + pub regd_count: uint32, + pub ph_node: pairingheap_node, + pub whenTaken: TimestampTz, + pub lsn: XLogRecPtr, + pub snapXactCompletionCount: uint64, +} +impl Default for SnapshotData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Relation = *mut RelationData; +pub type RelationPtr = *mut Relation; +pub mod IndexAttrBitmapKind { + pub type Type = ::core::ffi::c_uint; + pub const INDEX_ATTR_BITMAP_KEY: Type = 0; + pub const INDEX_ATTR_BITMAP_PRIMARY_KEY: Type = 1; + pub const INDEX_ATTR_BITMAP_IDENTITY_KEY: Type = 2; + pub const INDEX_ATTR_BITMAP_HOT_BLOCKING: Type = 3; + pub const INDEX_ATTR_BITMAP_SUMMARIZED: Type = 4; +} +pub type SortSupport = *mut SortSupportData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortSupportData { + pub ssup_cxt: MemoryContext, + pub ssup_collation: Oid, + pub ssup_reverse: bool, + pub ssup_nulls_first: bool, + pub ssup_attno: AttrNumber, + pub ssup_extra: *mut ::core::ffi::c_void, + pub comparator: ::core::option::Option< + unsafe extern "C" fn(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int, + >, + pub abbreviate: bool, + pub abbrev_converter: + ::core::option::Option Datum>, + pub abbrev_abort: ::core::option::Option< + unsafe extern "C" fn(memtupcount: ::core::ffi::c_int, ssup: SortSupport) -> bool, + >, + pub abbrev_full_comparator: ::core::option::Option< + unsafe extern "C" fn(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int, + >, +} +impl Default for SortSupportData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScanKeyData { + pub sk_flags: ::core::ffi::c_int, + pub sk_attno: AttrNumber, + pub sk_strategy: StrategyNumber, + pub sk_subtype: Oid, + pub sk_collation: Oid, + pub sk_func: FmgrInfo, + pub sk_argument: Datum, +} +impl Default for ScanKeyData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ScanKey = *mut ScanKeyData; +pub type LOCKMASK = ::core::ffi::c_int; +pub type LOCKMODE = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_standby_lock { + pub xid: TransactionId, + pub dbOid: Oid, + pub relOid: Oid, +} +impl Default for xl_standby_lock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexBuildResult { + pub heap_tuples: f64, + pub index_tuples: f64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexVacuumInfo { + pub index: Relation, + pub heaprel: Relation, + pub analyze_only: bool, + pub report_progress: bool, + pub estimated_count: bool, + pub message_level: ::core::ffi::c_int, + pub num_heap_tuples: f64, + pub strategy: BufferAccessStrategy, +} +impl Default for IndexVacuumInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexBulkDeleteResult { + pub num_pages: BlockNumber, + pub estimated_count: bool, + pub num_index_tuples: f64, + pub tuples_removed: f64, + pub pages_newly_deleted: BlockNumber, + pub pages_deleted: BlockNumber, + pub pages_free: BlockNumber, +} +pub type IndexBulkDeleteCallback = ::core::option::Option< + unsafe extern "C" fn(itemptr: ItemPointer, state: *mut ::core::ffi::c_void) -> bool, +>; +pub type IndexScanDesc = *mut IndexScanDescData; +pub type SysScanDesc = *mut SysScanDescData; +pub type ParallelIndexScanDesc = *mut ParallelIndexScanDescData; +pub mod IndexUniqueCheck { + pub type Type = ::core::ffi::c_uint; + pub const UNIQUE_CHECK_NO: Type = 0; + pub const UNIQUE_CHECK_YES: Type = 1; + pub const UNIQUE_CHECK_PARTIAL: Type = 2; + pub const UNIQUE_CHECK_EXISTING: Type = 3; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexOrderByDistance { + pub value: f64, + pub isnull: bool, +} +pub mod IndexAMProperty { + pub type Type = ::core::ffi::c_uint; + pub const AMPROP_UNKNOWN: Type = 0; + pub const AMPROP_ASC: Type = 1; + pub const AMPROP_DESC: Type = 2; + pub const AMPROP_NULLS_FIRST: Type = 3; + pub const AMPROP_NULLS_LAST: Type = 4; + pub const AMPROP_ORDERABLE: Type = 5; + pub const AMPROP_DISTANCE_ORDERABLE: Type = 6; + pub const AMPROP_RETURNABLE: Type = 7; + pub const AMPROP_SEARCH_ARRAY: Type = 8; + pub const AMPROP_SEARCH_NULLS: Type = 9; + pub const AMPROP_CLUSTERABLE: Type = 10; + pub const AMPROP_INDEX_SCAN: Type = 11; + pub const AMPROP_BITMAP_SCAN: Type = 12; + pub const AMPROP_BACKWARD_SCAN: Type = 13; + pub const AMPROP_CAN_ORDER: Type = 14; + pub const AMPROP_CAN_UNIQUE: Type = 15; + pub const AMPROP_CAN_MULTI_COL: Type = 16; + pub const AMPROP_CAN_EXCLUDE: Type = 17; + pub const AMPROP_CAN_INCLUDE: Type = 18; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OpFamilyMember { + pub is_func: bool, + pub object: Oid, + pub number: ::core::ffi::c_int, + pub lefttype: Oid, + pub righttype: Oid, + pub sortfamily: Oid, + pub ref_is_hard: bool, + pub ref_is_family: bool, + pub refobjid: Oid, +} +impl Default for OpFamilyMember { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ambuild_function = ::core::option::Option< + unsafe extern "C" fn( + heapRelation: Relation, + indexRelation: Relation, + indexInfo: *mut IndexInfo, + ) -> *mut IndexBuildResult, +>; +pub type ambuildempty_function = + ::core::option::Option; +pub type aminsert_function = ::core::option::Option< + unsafe extern "C" fn( + indexRelation: Relation, + values: *mut Datum, + isnull: *mut bool, + heap_tid: ItemPointer, + heapRelation: Relation, + checkUnique: IndexUniqueCheck::Type, + indexUnchanged: bool, + indexInfo: *mut IndexInfo, + ) -> bool, +>; +pub type aminsertcleanup_function = ::core::option::Option< + unsafe extern "C" fn(indexRelation: Relation, indexInfo: *mut IndexInfo), +>; +pub type ambulkdelete_function = ::core::option::Option< + unsafe extern "C" fn( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + callback: IndexBulkDeleteCallback, + callback_state: *mut ::core::ffi::c_void, + ) -> *mut IndexBulkDeleteResult, +>; +pub type amvacuumcleanup_function = ::core::option::Option< + unsafe extern "C" fn( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult, +>; +pub type amcanreturn_function = ::core::option::Option< + unsafe extern "C" fn(indexRelation: Relation, attno: ::core::ffi::c_int) -> bool, +>; +pub type amcostestimate_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + path: *mut IndexPath, + loop_count: f64, + indexStartupCost: *mut Cost, + indexTotalCost: *mut Cost, + indexSelectivity: *mut Selectivity, + indexCorrelation: *mut f64, + indexPages: *mut f64, + ), +>; +pub type amoptions_function = + ::core::option::Option *mut bytea>; +pub type amproperty_function = ::core::option::Option< + unsafe extern "C" fn( + index_oid: Oid, + attno: ::core::ffi::c_int, + prop: IndexAMProperty::Type, + propname: *const ::core::ffi::c_char, + res: *mut bool, + isnull: *mut bool, + ) -> bool, +>; +pub type ambuildphasename_function = + ::core::option::Option *mut ::core::ffi::c_char>; +pub type amvalidate_function = + ::core::option::Option bool>; +pub type amadjustmembers_function = ::core::option::Option< + unsafe extern "C" fn( + opfamilyoid: Oid, + opclassoid: Oid, + operators: *mut List, + functions: *mut List, + ), +>; +pub type ambeginscan_function = ::core::option::Option< + unsafe extern "C" fn( + indexRelation: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc, +>; +pub type amrescan_function = ::core::option::Option< + unsafe extern "C" fn( + scan: IndexScanDesc, + keys: ScanKey, + nkeys: ::core::ffi::c_int, + orderbys: ScanKey, + norderbys: ::core::ffi::c_int, + ), +>; +pub type amgettuple_function = ::core::option::Option< + unsafe extern "C" fn(scan: IndexScanDesc, direction: ScanDirection::Type) -> bool, +>; +pub type amgetbitmap_function = + ::core::option::Option int64>; +pub type amendscan_function = ::core::option::Option; +pub type ammarkpos_function = ::core::option::Option; +pub type amrestrpos_function = ::core::option::Option; +pub type amestimateparallelscan_function = ::core::option::Option< + unsafe extern "C" fn(nkeys: ::core::ffi::c_int, norderbys: ::core::ffi::c_int) -> Size, +>; +pub type aminitparallelscan_function = + ::core::option::Option; +pub type amparallelrescan_function = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexAmRoutine { + pub type_: NodeTag, + pub amstrategies: uint16, + pub amsupport: uint16, + pub amoptsprocnum: uint16, + pub amcanorder: bool, + pub amcanorderbyop: bool, + pub amcanbackward: bool, + pub amcanunique: bool, + pub amcanmulticol: bool, + pub amoptionalkey: bool, + pub amsearcharray: bool, + pub amsearchnulls: bool, + pub amstorage: bool, + pub amclusterable: bool, + pub ampredlocks: bool, + pub amcanparallel: bool, + pub amcanbuildparallel: bool, + pub amcaninclude: bool, + pub amusemaintenanceworkmem: bool, + pub amsummarizing: bool, + pub amparallelvacuumoptions: uint8, + pub amkeytype: Oid, + pub ambuild: ambuild_function, + pub ambuildempty: ambuildempty_function, + pub aminsert: aminsert_function, + pub aminsertcleanup: aminsertcleanup_function, + pub ambulkdelete: ambulkdelete_function, + pub amvacuumcleanup: amvacuumcleanup_function, + pub amcanreturn: amcanreturn_function, + pub amcostestimate: amcostestimate_function, + pub amoptions: amoptions_function, + pub amproperty: amproperty_function, + pub ambuildphasename: ambuildphasename_function, + pub amvalidate: amvalidate_function, + pub amadjustmembers: amadjustmembers_function, + pub ambeginscan: ambeginscan_function, + pub amrescan: amrescan_function, + pub amgettuple: amgettuple_function, + pub amgetbitmap: amgetbitmap_function, + pub amendscan: amendscan_function, + pub ammarkpos: ammarkpos_function, + pub amrestrpos: amrestrpos_function, + pub amestimateparallelscan: amestimateparallelscan_function, + pub aminitparallelscan: aminitparallelscan_function, + pub amparallelrescan: amparallelrescan_function, +} +impl Default for IndexAmRoutine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DomainConstraintCache { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeCacheEnumData { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeCacheEntry { + pub type_id: Oid, + pub type_id_hash: uint32, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub typstorage: ::core::ffi::c_char, + pub typtype: ::core::ffi::c_char, + pub typrelid: Oid, + pub typsubscript: Oid, + pub typelem: Oid, + pub typcollation: Oid, + pub btree_opf: Oid, + pub btree_opintype: Oid, + pub hash_opf: Oid, + pub hash_opintype: Oid, + pub eq_opr: Oid, + pub lt_opr: Oid, + pub gt_opr: Oid, + pub cmp_proc: Oid, + pub hash_proc: Oid, + pub hash_extended_proc: Oid, + pub eq_opr_finfo: FmgrInfo, + pub cmp_proc_finfo: FmgrInfo, + pub hash_proc_finfo: FmgrInfo, + pub hash_extended_proc_finfo: FmgrInfo, + pub tupDesc: TupleDesc, + pub tupDesc_identifier: uint64, + pub rngelemtype: *mut TypeCacheEntry, + pub rng_opfamily: Oid, + pub rng_collation: Oid, + pub rng_cmp_proc_finfo: FmgrInfo, + pub rng_canonical_finfo: FmgrInfo, + pub rng_subdiff_finfo: FmgrInfo, + pub rngtype: *mut TypeCacheEntry, + pub domainBaseType: Oid, + pub domainBaseTypmod: int32, + pub domainData: *mut DomainConstraintCache, + pub flags: ::core::ffi::c_int, + pub enumData: *mut TypeCacheEnumData, + pub nextDomain: *mut TypeCacheEntry, +} +impl Default for TypeCacheEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DomainConstraintRef { + pub constraints: *mut List, + pub refctx: MemoryContext, + pub tcache: *mut TypeCacheEntry, + pub need_exprstate: bool, + pub dcc: *mut DomainConstraintCache, + pub callback: MemoryContextCallback, +} +impl Default for DomainConstraintRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedRecordTypmodRegistry { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug)] +pub struct BrinOpcInfo { + pub oi_nstored: uint16, + pub oi_regular_nulls: bool, + pub oi_opaque: *mut ::core::ffi::c_void, + pub oi_typcache: __IncompleteArrayField<*mut TypeCacheEntry>, +} +impl Default for BrinOpcInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct BrinDesc { + pub bd_context: MemoryContext, + pub bd_index: Relation, + pub bd_tupdesc: TupleDesc, + pub bd_disktdesc: TupleDesc, + pub bd_totalstored: ::core::ffi::c_int, + pub bd_info: __IncompleteArrayField<*mut BrinOpcInfo>, +} +impl Default for BrinDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type brin_serialize_callback_type = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BrinValues { + pub bv_attno: AttrNumber, + pub bv_hasnulls: bool, + pub bv_allnulls: bool, + pub bv_values: *mut Datum, + pub bv_mem_value: Datum, + pub bv_context: MemoryContext, + pub bv_serialize: brin_serialize_callback_type, +} +impl Default for BrinValues { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct BrinMemTuple { + pub bt_placeholder: bool, + pub bt_empty_range: bool, + pub bt_blkno: BlockNumber, + pub bt_context: MemoryContext, + pub bt_values: *mut Datum, + pub bt_allnulls: *mut bool, + pub bt_hasnulls: *mut bool, + pub bt_columns: __IncompleteArrayField, +} +impl Default for BrinMemTuple { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BrinTuple { + pub bt_blkno: BlockNumber, + pub bt_info: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexTupleData { + pub t_tid: ItemPointerData, + pub t_info: ::core::ffi::c_ushort, +} +pub type IndexTuple = *mut IndexTupleData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexAttributeBitMapData { + pub bits: [bits8; 4usize], +} +pub type IndexAttributeBitMap = *mut IndexAttributeBitMapData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalTapeSet { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalTape { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TapeShare { + pub firstblocknumber: int64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Tuplesortstate { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Sharedsort { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortCoordinateData { + pub isWorker: bool, + pub nParticipants: ::core::ffi::c_int, + pub sharedsort: *mut Sharedsort, +} +impl Default for SortCoordinateData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SortCoordinate = *mut SortCoordinateData; +pub mod TuplesortMethod { + pub type Type = ::core::ffi::c_uint; + pub const SORT_TYPE_STILL_IN_PROGRESS: Type = 0; + pub const SORT_TYPE_TOP_N_HEAPSORT: Type = 1; + pub const SORT_TYPE_QUICKSORT: Type = 2; + pub const SORT_TYPE_EXTERNAL_SORT: Type = 4; + pub const SORT_TYPE_EXTERNAL_MERGE: Type = 8; +} +pub mod TuplesortSpaceType { + pub type Type = ::core::ffi::c_uint; + pub const SORT_SPACE_TYPE_DISK: Type = 0; + pub const SORT_SPACE_TYPE_MEMORY: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TuplesortInstrumentation { + pub sortMethod: TuplesortMethod::Type, + pub spaceType: TuplesortSpaceType::Type, + pub spaceUsed: int64, +} +impl Default for TuplesortInstrumentation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortTuple { + pub tuple: *mut ::core::ffi::c_void, + pub datum1: Datum, + pub isnull1: bool, + pub srctape: ::core::ffi::c_int, +} +impl Default for SortTuple { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SortTupleComparator = ::core::option::Option< + unsafe extern "C" fn( + a: *const SortTuple, + b: *const SortTuple, + state: *mut Tuplesortstate, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TuplesortPublic { + pub comparetup: SortTupleComparator, + pub comparetup_tiebreak: SortTupleComparator, + pub removeabbrev: ::core::option::Option< + unsafe extern "C" fn( + state: *mut Tuplesortstate, + stups: *mut SortTuple, + count: ::core::ffi::c_int, + ), + >, + pub writetup: ::core::option::Option< + unsafe extern "C" fn( + state: *mut Tuplesortstate, + tape: *mut LogicalTape, + stup: *mut SortTuple, + ), + >, + pub readtup: ::core::option::Option< + unsafe extern "C" fn( + state: *mut Tuplesortstate, + stup: *mut SortTuple, + tape: *mut LogicalTape, + len: ::core::ffi::c_uint, + ), + >, + pub freestate: ::core::option::Option, + pub maincontext: MemoryContext, + pub sortcontext: MemoryContext, + pub tuplecontext: MemoryContext, + pub haveDatum1: bool, + pub nKeys: ::core::ffi::c_int, + pub sortKeys: SortSupport, + pub onlyKey: SortSupport, + pub sortopt: ::core::ffi::c_int, + pub tuples: bool, + pub arg: *mut ::core::ffi::c_void, +} +impl Default for TuplesortPublic { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Tuplestorestate { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelHashJoinState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyMultiInsertBuffer { + _unused: [u8; 0], +} +pub type ExprStateEvalFunc = ::core::option::Option< + unsafe extern "C" fn( + expression: *mut ExprState, + econtext: *mut ExprContext, + isNull: *mut bool, + ) -> Datum, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprState { + pub type_: NodeTag, + pub flags: uint8, + pub resnull: bool, + pub resvalue: Datum, + pub resultslot: *mut TupleTableSlot, + pub steps: *mut ExprEvalStep, + pub evalfunc: ExprStateEvalFunc, + pub expr: *mut Expr, + pub evalfunc_private: *mut ::core::ffi::c_void, + pub steps_len: ::core::ffi::c_int, + pub steps_alloc: ::core::ffi::c_int, + pub parent: *mut PlanState, + pub ext_params: ParamListInfo, + pub innermost_caseval: *mut Datum, + pub innermost_casenull: *mut bool, + pub innermost_domainval: *mut Datum, + pub innermost_domainnull: *mut bool, + pub escontext: *mut ErrorSaveContext, +} +impl Default for ExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexInfo { + pub type_: NodeTag, + pub ii_NumIndexAttrs: ::core::ffi::c_int, + pub ii_NumIndexKeyAttrs: ::core::ffi::c_int, + pub ii_IndexAttrNumbers: [AttrNumber; 32usize], + pub ii_Expressions: *mut List, + pub ii_ExpressionsState: *mut List, + pub ii_Predicate: *mut List, + pub ii_PredicateState: *mut ExprState, + pub ii_ExclusionOps: *mut Oid, + pub ii_ExclusionProcs: *mut Oid, + pub ii_ExclusionStrats: *mut uint16, + pub ii_UniqueOps: *mut Oid, + pub ii_UniqueProcs: *mut Oid, + pub ii_UniqueStrats: *mut uint16, + pub ii_Unique: bool, + pub ii_NullsNotDistinct: bool, + pub ii_ReadyForInserts: bool, + pub ii_CheckedUnchanged: bool, + pub ii_IndexUnchanged: bool, + pub ii_Concurrent: bool, + pub ii_BrokenHotChain: bool, + pub ii_Summarizing: bool, + pub ii_ParallelWorkers: ::core::ffi::c_int, + pub ii_Am: Oid, + pub ii_AmCache: *mut ::core::ffi::c_void, + pub ii_Context: MemoryContext, +} +impl Default for IndexInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExprContextCallbackFunction = ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprContext_CB { + pub next: *mut ExprContext_CB, + pub function: ExprContextCallbackFunction, + pub arg: Datum, +} +impl Default for ExprContext_CB { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprContext { + pub type_: NodeTag, + pub ecxt_scantuple: *mut TupleTableSlot, + pub ecxt_innertuple: *mut TupleTableSlot, + pub ecxt_outertuple: *mut TupleTableSlot, + pub ecxt_per_query_memory: MemoryContext, + pub ecxt_per_tuple_memory: MemoryContext, + pub ecxt_param_exec_vals: *mut ParamExecData, + pub ecxt_param_list_info: ParamListInfo, + pub ecxt_aggvalues: *mut Datum, + pub ecxt_aggnulls: *mut bool, + pub caseValue_datum: Datum, + pub caseValue_isNull: bool, + pub domainValue_datum: Datum, + pub domainValue_isNull: bool, + pub ecxt_estate: *mut EState, + pub ecxt_callbacks: *mut ExprContext_CB, +} +impl Default for ExprContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ExprDoneCond { + pub type Type = ::core::ffi::c_uint; + pub const ExprSingleResult: Type = 0; + pub const ExprMultipleResult: Type = 1; + pub const ExprEndResult: Type = 2; +} +pub mod SetFunctionReturnMode { + pub type Type = ::core::ffi::c_uint; + pub const SFRM_ValuePerCall: Type = 1; + pub const SFRM_Materialize: Type = 2; + pub const SFRM_Materialize_Random: Type = 4; + pub const SFRM_Materialize_Preferred: Type = 8; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReturnSetInfo { + pub type_: NodeTag, + pub econtext: *mut ExprContext, + pub expectedDesc: TupleDesc, + pub allowedModes: ::core::ffi::c_int, + pub returnMode: SetFunctionReturnMode::Type, + pub isDone: ExprDoneCond::Type, + pub setResult: *mut Tuplestorestate, + pub setDesc: TupleDesc, +} +impl Default for ReturnSetInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectionInfo { + pub type_: NodeTag, + pub pi_state: ExprState, + pub pi_exprContext: *mut ExprContext, +} +impl Default for ProjectionInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JunkFilter { + pub type_: NodeTag, + pub jf_targetList: *mut List, + pub jf_cleanTupType: TupleDesc, + pub jf_cleanMap: *mut AttrNumber, + pub jf_resultSlot: *mut TupleTableSlot, +} +impl Default for JunkFilter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OnConflictSetState { + pub type_: NodeTag, + pub oc_Existing: *mut TupleTableSlot, + pub oc_ProjSlot: *mut TupleTableSlot, + pub oc_ProjInfo: *mut ProjectionInfo, + pub oc_WhereClause: *mut ExprState, +} +impl Default for OnConflictSetState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeActionState { + pub type_: NodeTag, + pub mas_action: *mut MergeAction, + pub mas_proj: *mut ProjectionInfo, + pub mas_whenqual: *mut ExprState, +} +impl Default for MergeActionState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResultRelInfo { + pub type_: NodeTag, + pub ri_RangeTableIndex: Index, + pub ri_RelationDesc: Relation, + pub ri_NumIndices: ::core::ffi::c_int, + pub ri_IndexRelationDescs: RelationPtr, + pub ri_IndexRelationInfo: *mut *mut IndexInfo, + pub ri_RowIdAttNo: AttrNumber, + pub ri_extraUpdatedCols: *mut Bitmapset, + pub ri_projectNew: *mut ProjectionInfo, + pub ri_newTupleSlot: *mut TupleTableSlot, + pub ri_oldTupleSlot: *mut TupleTableSlot, + pub ri_projectNewInfoValid: bool, + pub ri_TrigDesc: *mut TriggerDesc, + pub ri_TrigFunctions: *mut FmgrInfo, + pub ri_TrigWhenExprs: *mut *mut ExprState, + pub ri_TrigInstrument: *mut Instrumentation, + pub ri_ReturningSlot: *mut TupleTableSlot, + pub ri_TrigOldSlot: *mut TupleTableSlot, + pub ri_TrigNewSlot: *mut TupleTableSlot, + pub ri_FdwRoutine: *mut FdwRoutine, + pub ri_FdwState: *mut ::core::ffi::c_void, + pub ri_usesFdwDirectModify: bool, + pub ri_NumSlots: ::core::ffi::c_int, + pub ri_NumSlotsInitialized: ::core::ffi::c_int, + pub ri_BatchSize: ::core::ffi::c_int, + pub ri_Slots: *mut *mut TupleTableSlot, + pub ri_PlanSlots: *mut *mut TupleTableSlot, + pub ri_WithCheckOptions: *mut List, + pub ri_WithCheckOptionExprs: *mut List, + pub ri_ConstraintExprs: *mut *mut ExprState, + pub ri_GeneratedExprsI: *mut *mut ExprState, + pub ri_GeneratedExprsU: *mut *mut ExprState, + pub ri_NumGeneratedNeededI: ::core::ffi::c_int, + pub ri_NumGeneratedNeededU: ::core::ffi::c_int, + pub ri_returningList: *mut List, + pub ri_projectReturning: *mut ProjectionInfo, + pub ri_onConflictArbiterIndexes: *mut List, + pub ri_onConflict: *mut OnConflictSetState, + pub ri_MergeActions: [*mut List; 3usize], + pub ri_MergeJoinCondition: *mut ExprState, + pub ri_PartitionCheckExpr: *mut ExprState, + pub ri_ChildToRootMap: *mut TupleConversionMap, + pub ri_ChildToRootMapValid: bool, + pub ri_RootToChildMap: *mut TupleConversionMap, + pub ri_RootToChildMapValid: bool, + pub ri_RootResultRelInfo: *mut ResultRelInfo, + pub ri_PartitionTupleSlot: *mut TupleTableSlot, + pub ri_CopyMultiInsertBuffer: *mut CopyMultiInsertBuffer, + pub ri_ancestorResultRels: *mut List, +} +impl Default for ResultRelInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AsyncRequest { + pub requestor: *mut PlanState, + pub requestee: *mut PlanState, + pub request_index: ::core::ffi::c_int, + pub callback_pending: bool, + pub request_complete: bool, + pub result: *mut TupleTableSlot, +} +impl Default for AsyncRequest { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EState { + pub type_: NodeTag, + pub es_direction: ScanDirection::Type, + pub es_snapshot: Snapshot, + pub es_crosscheck_snapshot: Snapshot, + pub es_range_table: *mut List, + pub es_range_table_size: Index, + pub es_relations: *mut Relation, + pub es_rowmarks: *mut *mut ExecRowMark, + pub es_rteperminfos: *mut List, + pub es_plannedstmt: *mut PlannedStmt, + pub es_sourceText: *const ::core::ffi::c_char, + pub es_junkFilter: *mut JunkFilter, + pub es_output_cid: CommandId, + pub es_result_relations: *mut *mut ResultRelInfo, + pub es_opened_result_relations: *mut List, + pub es_partition_directory: PartitionDirectory, + pub es_tuple_routing_result_relations: *mut List, + pub es_trig_target_relations: *mut List, + pub es_param_list_info: ParamListInfo, + pub es_param_exec_vals: *mut ParamExecData, + pub es_queryEnv: *mut QueryEnvironment, + pub es_query_cxt: MemoryContext, + pub es_tupleTable: *mut List, + pub es_processed: uint64, + pub es_total_processed: uint64, + pub es_top_eflags: ::core::ffi::c_int, + pub es_instrument: ::core::ffi::c_int, + pub es_finished: bool, + pub es_exprcontexts: *mut List, + pub es_subplanstates: *mut List, + pub es_auxmodifytables: *mut List, + pub es_per_tuple_exprcontext: *mut ExprContext, + pub es_epq_active: *mut EPQState, + pub es_use_parallel_mode: bool, + pub es_query_dsa: *mut dsa_area, + pub es_jit_flags: ::core::ffi::c_int, + pub es_jit: *mut JitContext, + pub es_jit_worker_instr: *mut JitInstrumentation, + pub es_insert_pending_result_relations: *mut List, + pub es_insert_pending_modifytables: *mut List, +} +impl Default for EState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecRowMark { + pub relation: Relation, + pub relid: Oid, + pub rti: Index, + pub prti: Index, + pub rowmarkId: Index, + pub markType: RowMarkType::Type, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, + pub ermActive: bool, + pub curCtid: ItemPointerData, + pub ermExtra: *mut ::core::ffi::c_void, +} +impl Default for ExecRowMark { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecAuxRowMark { + pub rowmark: *mut ExecRowMark, + pub ctidAttNo: AttrNumber, + pub toidAttNo: AttrNumber, + pub wholeAttNo: AttrNumber, +} +impl Default for ExecAuxRowMark { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TupleHashEntry = *mut TupleHashEntryData; +pub type TupleHashTable = *mut TupleHashTableData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleHashEntryData { + pub firstTuple: MinimalTuple, + pub additional: *mut ::core::ffi::c_void, + pub status: uint32, + pub hash: uint32, +} +impl Default for TupleHashEntryData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tuplehash_hash { + pub size: uint64, + pub members: uint32, + pub sizemask: uint32, + pub grow_threshold: uint32, + pub data: *mut TupleHashEntryData, + pub ctx: MemoryContext, + pub private_data: *mut ::core::ffi::c_void, +} +impl Default for tuplehash_hash { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod tuplehash_status { + pub type Type = ::core::ffi::c_uint; + pub const tuplehash_SH_EMPTY: Type = 0; + pub const tuplehash_SH_IN_USE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct tuplehash_iterator { + pub cur: uint32, + pub end: uint32, + pub done: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleHashTableData { + pub hashtab: *mut tuplehash_hash, + pub numCols: ::core::ffi::c_int, + pub keyColIdx: *mut AttrNumber, + pub tab_hash_funcs: *mut FmgrInfo, + pub tab_eq_func: *mut ExprState, + pub tab_collations: *mut Oid, + pub tablecxt: MemoryContext, + pub tempcxt: MemoryContext, + pub entrysize: Size, + pub tableslot: *mut TupleTableSlot, + pub inputslot: *mut TupleTableSlot, + pub in_hash_funcs: *mut FmgrInfo, + pub cur_eq_func: *mut ExprState, + pub hash_iv: uint32, + pub exprcontext: *mut ExprContext, +} +impl Default for TupleHashTableData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TupleHashIterator = tuplehash_iterator; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFuncExprState { + pub type_: NodeTag, + pub wfunc: *mut WindowFunc, + pub args: *mut List, + pub aggfilter: *mut ExprState, + pub wfuncno: ::core::ffi::c_int, +} +impl Default for WindowFuncExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetExprState { + pub type_: NodeTag, + pub expr: *mut Expr, + pub args: *mut List, + pub elidedFuncState: *mut ExprState, + pub func: FmgrInfo, + pub funcResultStore: *mut Tuplestorestate, + pub funcResultSlot: *mut TupleTableSlot, + pub funcResultDesc: TupleDesc, + pub funcReturnsTuple: bool, + pub funcReturnsSet: bool, + pub setArgsValid: bool, + pub shutdown_reg: bool, + pub fcinfo: FunctionCallInfo, +} +impl Default for SetExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubPlanState { + pub type_: NodeTag, + pub subplan: *mut SubPlan, + pub planstate: *mut PlanState, + pub parent: *mut PlanState, + pub testexpr: *mut ExprState, + pub args: *mut List, + pub curTuple: HeapTuple, + pub curArray: Datum, + pub descRight: TupleDesc, + pub projLeft: *mut ProjectionInfo, + pub projRight: *mut ProjectionInfo, + pub hashtable: TupleHashTable, + pub hashnulls: TupleHashTable, + pub havehashrows: bool, + pub havenullrows: bool, + pub hashtablecxt: MemoryContext, + pub hashtempcxt: MemoryContext, + pub innerecontext: *mut ExprContext, + pub numCols: ::core::ffi::c_int, + pub keyColIdx: *mut AttrNumber, + pub tab_eq_funcoids: *mut Oid, + pub tab_collations: *mut Oid, + pub tab_hash_funcs: *mut FmgrInfo, + pub tab_eq_funcs: *mut FmgrInfo, + pub lhs_hash_funcs: *mut FmgrInfo, + pub cur_eq_funcs: *mut FmgrInfo, + pub cur_eq_comp: *mut ExprState, +} +impl Default for SubPlanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DomainConstraintType { + pub type Type = ::core::ffi::c_uint; + pub const DOM_CONSTRAINT_NOTNULL: Type = 0; + pub const DOM_CONSTRAINT_CHECK: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DomainConstraintState { + pub type_: NodeTag, + pub constrainttype: DomainConstraintType::Type, + pub name: *mut ::core::ffi::c_char, + pub check_expr: *mut Expr, + pub check_exprstate: *mut ExprState, +} +impl Default for DomainConstraintState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonExprState { + pub jsexpr: *mut JsonExpr, + pub formatted_expr: NullableDatum, + pub pathspec: NullableDatum, + pub args: *mut List, + pub error: NullableDatum, + pub empty: NullableDatum, + pub jump_empty: ::core::ffi::c_int, + pub jump_error: ::core::ffi::c_int, + pub jump_eval_coercion: ::core::ffi::c_int, + pub jump_end: ::core::ffi::c_int, + pub input_fcinfo: FunctionCallInfo, + pub escontext: ErrorSaveContext, +} +impl Default for JsonExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExecProcNodeMtd = + ::core::option::Option *mut TupleTableSlot>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlanState { + pub type_: NodeTag, + pub plan: *mut Plan, + pub state: *mut EState, + pub ExecProcNode: ExecProcNodeMtd, + pub ExecProcNodeReal: ExecProcNodeMtd, + pub instrument: *mut Instrumentation, + pub worker_instrument: *mut WorkerInstrumentation, + pub worker_jit_instrument: *mut SharedJitInstrumentation, + pub qual: *mut ExprState, + pub lefttree: *mut PlanState, + pub righttree: *mut PlanState, + pub initPlan: *mut List, + pub subPlan: *mut List, + pub chgParam: *mut Bitmapset, + pub ps_ResultTupleDesc: TupleDesc, + pub ps_ResultTupleSlot: *mut TupleTableSlot, + pub ps_ExprContext: *mut ExprContext, + pub ps_ProjInfo: *mut ProjectionInfo, + pub async_capable: bool, + pub scandesc: TupleDesc, + pub scanops: *const TupleTableSlotOps, + pub outerops: *const TupleTableSlotOps, + pub innerops: *const TupleTableSlotOps, + pub resultops: *const TupleTableSlotOps, + pub scanopsfixed: bool, + pub outeropsfixed: bool, + pub inneropsfixed: bool, + pub resultopsfixed: bool, + pub scanopsset: bool, + pub outeropsset: bool, + pub inneropsset: bool, + pub resultopsset: bool, +} +impl Default for PlanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EPQState { + pub parentestate: *mut EState, + pub epqParam: ::core::ffi::c_int, + pub resultRelations: *mut List, + pub tuple_table: *mut List, + pub relsubs_slot: *mut *mut TupleTableSlot, + pub plan: *mut Plan, + pub arowMarks: *mut List, + pub origslot: *mut TupleTableSlot, + pub recheckestate: *mut EState, + pub relsubs_rowmark: *mut *mut ExecAuxRowMark, + pub relsubs_done: *mut bool, + pub relsubs_blocked: *mut bool, + pub recheckplanstate: *mut PlanState, +} +impl Default for EPQState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResultState { + pub ps: PlanState, + pub resconstantqual: *mut ExprState, + pub rs_done: bool, + pub rs_checkqual: bool, +} +impl Default for ResultState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectSetState { + pub ps: PlanState, + pub elems: *mut *mut Node, + pub elemdone: *mut ExprDoneCond::Type, + pub nelems: ::core::ffi::c_int, + pub pending_srf_tuples: bool, + pub argcontext: MemoryContext, +} +impl Default for ProjectSetState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ModifyTableState { + pub ps: PlanState, + pub operation: CmdType::Type, + pub canSetTag: bool, + pub mt_done: bool, + pub mt_nrels: ::core::ffi::c_int, + pub resultRelInfo: *mut ResultRelInfo, + pub rootResultRelInfo: *mut ResultRelInfo, + pub mt_epqstate: EPQState, + pub fireBSTriggers: bool, + pub mt_resultOidAttno: ::core::ffi::c_int, + pub mt_lastResultOid: Oid, + pub mt_lastResultIndex: ::core::ffi::c_int, + pub mt_resultOidHash: *mut HTAB, + pub mt_root_tuple_slot: *mut TupleTableSlot, + pub mt_partition_tuple_routing: *mut PartitionTupleRouting, + pub mt_transition_capture: *mut TransitionCaptureState, + pub mt_oc_transition_capture: *mut TransitionCaptureState, + pub mt_merge_subcommands: ::core::ffi::c_int, + pub mt_merge_action: *mut MergeActionState, + pub mt_merge_pending_not_matched: *mut TupleTableSlot, + pub mt_merge_inserted: f64, + pub mt_merge_updated: f64, + pub mt_merge_deleted: f64, +} +impl Default for ModifyTableState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelAppendState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AppendState { + pub ps: PlanState, + pub appendplans: *mut *mut PlanState, + pub as_nplans: ::core::ffi::c_int, + pub as_whichplan: ::core::ffi::c_int, + pub as_begun: bool, + pub as_asyncplans: *mut Bitmapset, + pub as_nasyncplans: ::core::ffi::c_int, + pub as_asyncrequests: *mut *mut AsyncRequest, + pub as_asyncresults: *mut *mut TupleTableSlot, + pub as_nasyncresults: ::core::ffi::c_int, + pub as_syncdone: bool, + pub as_nasyncremain: ::core::ffi::c_int, + pub as_needrequest: *mut Bitmapset, + pub as_eventset: *mut WaitEventSet, + pub as_first_partial_plan: ::core::ffi::c_int, + pub as_pstate: *mut ParallelAppendState, + pub pstate_len: Size, + pub as_prune_state: *mut PartitionPruneState, + pub as_valid_subplans_identified: bool, + pub as_valid_subplans: *mut Bitmapset, + pub as_valid_asyncplans: *mut Bitmapset, + pub choose_next_subplan: + ::core::option::Option bool>, +} +impl Default for AppendState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAppendState { + pub ps: PlanState, + pub mergeplans: *mut *mut PlanState, + pub ms_nplans: ::core::ffi::c_int, + pub ms_nkeys: ::core::ffi::c_int, + pub ms_sortkeys: SortSupport, + pub ms_slots: *mut *mut TupleTableSlot, + pub ms_heap: *mut binaryheap, + pub ms_initialized: bool, + pub ms_prune_state: *mut PartitionPruneState, + pub ms_valid_subplans: *mut Bitmapset, +} +impl Default for MergeAppendState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RecursiveUnionState { + pub ps: PlanState, + pub recursing: bool, + pub intermediate_empty: bool, + pub working_table: *mut Tuplestorestate, + pub intermediate_table: *mut Tuplestorestate, + pub eqfuncoids: *mut Oid, + pub hashfunctions: *mut FmgrInfo, + pub tempContext: MemoryContext, + pub hashtable: TupleHashTable, + pub tableContext: MemoryContext, +} +impl Default for RecursiveUnionState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapAndState { + pub ps: PlanState, + pub bitmapplans: *mut *mut PlanState, + pub nplans: ::core::ffi::c_int, +} +impl Default for BitmapAndState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapOrState { + pub ps: PlanState, + pub bitmapplans: *mut *mut PlanState, + pub nplans: ::core::ffi::c_int, +} +impl Default for BitmapOrState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScanState { + pub ps: PlanState, + pub ss_currentRelation: Relation, + pub ss_currentScanDesc: *mut TableScanDescData, + pub ss_ScanTupleSlot: *mut TupleTableSlot, +} +impl Default for ScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SeqScanState { + pub ss: ScanState, + pub pscan_len: Size, +} +impl Default for SeqScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SampleScanState { + pub ss: ScanState, + pub args: *mut List, + pub repeatable: *mut ExprState, + pub tsmroutine: *mut TsmRoutine, + pub tsm_state: *mut ::core::ffi::c_void, + pub use_bulkread: bool, + pub use_pagemode: bool, + pub begun: bool, + pub seed: uint32, + pub donetuples: int64, + pub haveblock: bool, + pub done: bool, +} +impl Default for SampleScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexRuntimeKeyInfo { + pub scan_key: *mut ScanKeyData, + pub key_expr: *mut ExprState, + pub key_toastable: bool, +} +impl Default for IndexRuntimeKeyInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexArrayKeyInfo { + pub scan_key: *mut ScanKeyData, + pub array_expr: *mut ExprState, + pub next_elem: ::core::ffi::c_int, + pub num_elems: ::core::ffi::c_int, + pub elem_values: *mut Datum, + pub elem_nulls: *mut bool, +} +impl Default for IndexArrayKeyInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexScanState { + pub ss: ScanState, + pub indexqualorig: *mut ExprState, + pub indexorderbyorig: *mut List, + pub iss_ScanKeys: *mut ScanKeyData, + pub iss_NumScanKeys: ::core::ffi::c_int, + pub iss_OrderByKeys: *mut ScanKeyData, + pub iss_NumOrderByKeys: ::core::ffi::c_int, + pub iss_RuntimeKeys: *mut IndexRuntimeKeyInfo, + pub iss_NumRuntimeKeys: ::core::ffi::c_int, + pub iss_RuntimeKeysReady: bool, + pub iss_RuntimeContext: *mut ExprContext, + pub iss_RelationDesc: Relation, + pub iss_ScanDesc: *mut IndexScanDescData, + pub iss_ReorderQueue: *mut pairingheap, + pub iss_ReachedEnd: bool, + pub iss_OrderByValues: *mut Datum, + pub iss_OrderByNulls: *mut bool, + pub iss_SortSupport: SortSupport, + pub iss_OrderByTypByVals: *mut bool, + pub iss_OrderByTypLens: *mut int16, + pub iss_PscanLen: Size, +} +impl Default for IndexScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexOnlyScanState { + pub ss: ScanState, + pub recheckqual: *mut ExprState, + pub ioss_ScanKeys: *mut ScanKeyData, + pub ioss_NumScanKeys: ::core::ffi::c_int, + pub ioss_OrderByKeys: *mut ScanKeyData, + pub ioss_NumOrderByKeys: ::core::ffi::c_int, + pub ioss_RuntimeKeys: *mut IndexRuntimeKeyInfo, + pub ioss_NumRuntimeKeys: ::core::ffi::c_int, + pub ioss_RuntimeKeysReady: bool, + pub ioss_RuntimeContext: *mut ExprContext, + pub ioss_RelationDesc: Relation, + pub ioss_ScanDesc: *mut IndexScanDescData, + pub ioss_TableSlot: *mut TupleTableSlot, + pub ioss_VMBuffer: Buffer, + pub ioss_PscanLen: Size, + pub ioss_NameCStringAttNums: *mut AttrNumber, + pub ioss_NameCStringCount: ::core::ffi::c_int, +} +impl Default for IndexOnlyScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapIndexScanState { + pub ss: ScanState, + pub biss_result: *mut TIDBitmap, + pub biss_ScanKeys: *mut ScanKeyData, + pub biss_NumScanKeys: ::core::ffi::c_int, + pub biss_RuntimeKeys: *mut IndexRuntimeKeyInfo, + pub biss_NumRuntimeKeys: ::core::ffi::c_int, + pub biss_ArrayKeys: *mut IndexArrayKeyInfo, + pub biss_NumArrayKeys: ::core::ffi::c_int, + pub biss_RuntimeKeysReady: bool, + pub biss_RuntimeContext: *mut ExprContext, + pub biss_RelationDesc: Relation, + pub biss_ScanDesc: *mut IndexScanDescData, +} +impl Default for BitmapIndexScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SharedBitmapState { + pub type Type = ::core::ffi::c_uint; + pub const BM_INITIAL: Type = 0; + pub const BM_INPROGRESS: Type = 1; + pub const BM_FINISHED: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelBitmapHeapState { + pub tbmiterator: dsa_pointer, + pub prefetch_iterator: dsa_pointer, + pub mutex: slock_t, + pub prefetch_pages: ::core::ffi::c_int, + pub prefetch_target: ::core::ffi::c_int, + pub state: SharedBitmapState::Type, + pub cv: ConditionVariable, +} +impl Default for ParallelBitmapHeapState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapHeapScanState { + pub ss: ScanState, + pub bitmapqualorig: *mut ExprState, + pub tbm: *mut TIDBitmap, + pub tbmiterator: *mut TBMIterator, + pub tbmres: *mut TBMIterateResult, + pub pvmbuffer: Buffer, + pub exact_pages: ::core::ffi::c_long, + pub lossy_pages: ::core::ffi::c_long, + pub prefetch_iterator: *mut TBMIterator, + pub prefetch_pages: ::core::ffi::c_int, + pub prefetch_target: ::core::ffi::c_int, + pub prefetch_maximum: ::core::ffi::c_int, + pub initialized: bool, + pub shared_tbmiterator: *mut TBMSharedIterator, + pub shared_prefetch_iterator: *mut TBMSharedIterator, + pub pstate: *mut ParallelBitmapHeapState, +} +impl Default for BitmapHeapScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidScanState { + pub ss: ScanState, + pub tss_tidexprs: *mut List, + pub tss_isCurrentOf: bool, + pub tss_NumTids: ::core::ffi::c_int, + pub tss_TidPtr: ::core::ffi::c_int, + pub tss_TidList: *mut ItemPointerData, +} +impl Default for TidScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidRangeScanState { + pub ss: ScanState, + pub trss_tidexprs: *mut List, + pub trss_mintid: ItemPointerData, + pub trss_maxtid: ItemPointerData, + pub trss_inScan: bool, +} +impl Default for TidRangeScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubqueryScanState { + pub ss: ScanState, + pub subplan: *mut PlanState, +} +impl Default for SubqueryScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionScanPerFuncState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionScanState { + pub ss: ScanState, + pub eflags: ::core::ffi::c_int, + pub ordinality: bool, + pub simple: bool, + pub ordinal: int64, + pub nfuncs: ::core::ffi::c_int, + pub funcstates: *mut FunctionScanPerFuncState, + pub argcontext: MemoryContext, +} +impl Default for FunctionScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ValuesScanState { + pub ss: ScanState, + pub rowcontext: *mut ExprContext, + pub exprlists: *mut *mut List, + pub exprstatelists: *mut *mut List, + pub array_len: ::core::ffi::c_int, + pub curr_idx: ::core::ffi::c_int, +} +impl Default for ValuesScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableFuncScanState { + pub ss: ScanState, + pub docexpr: *mut ExprState, + pub rowexpr: *mut ExprState, + pub colexprs: *mut List, + pub coldefexprs: *mut List, + pub colvalexprs: *mut List, + pub passingvalexprs: *mut List, + pub ns_names: *mut List, + pub ns_uris: *mut List, + pub notnulls: *mut Bitmapset, + pub opaque: *mut ::core::ffi::c_void, + pub routine: *mut TableFuncRoutine, + pub in_functions: *mut FmgrInfo, + pub typioparams: *mut Oid, + pub ordinal: int64, + pub perTableCxt: MemoryContext, + pub tupstore: *mut Tuplestorestate, +} +impl Default for TableFuncScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CteScanState { + pub ss: ScanState, + pub eflags: ::core::ffi::c_int, + pub readptr: ::core::ffi::c_int, + pub cteplanstate: *mut PlanState, + pub leader: *mut CteScanState, + pub cte_table: *mut Tuplestorestate, + pub eof_cte: bool, +} +impl Default for CteScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedTuplestoreScanState { + pub ss: ScanState, + pub readptr: ::core::ffi::c_int, + pub tupdesc: TupleDesc, + pub relation: *mut Tuplestorestate, +} +impl Default for NamedTuplestoreScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WorkTableScanState { + pub ss: ScanState, + pub rustate: *mut RecursiveUnionState, +} +impl Default for WorkTableScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignScanState { + pub ss: ScanState, + pub fdw_recheck_quals: *mut ExprState, + pub pscan_len: Size, + pub resultRelInfo: *mut ResultRelInfo, + pub fdwroutine: *mut FdwRoutine, + pub fdw_state: *mut ::core::ffi::c_void, +} +impl Default for ForeignScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomScanState { + pub ss: ScanState, + pub flags: uint32, + pub custom_ps: *mut List, + pub pscan_len: Size, + pub methods: *const CustomExecMethods, + pub slotOps: *const TupleTableSlotOps, +} +impl Default for CustomScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinState { + pub ps: PlanState, + pub jointype: JoinType::Type, + pub single_match: bool, + pub joinqual: *mut ExprState, +} +impl Default for JoinState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestLoopState { + pub js: JoinState, + pub nl_NeedNewOuter: bool, + pub nl_MatchedOuter: bool, + pub nl_NullInnerTupleSlot: *mut TupleTableSlot, +} +impl Default for NestLoopState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeJoinClauseData { + _unused: [u8; 0], +} +pub type MergeJoinClause = *mut MergeJoinClauseData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeJoinState { + pub js: JoinState, + pub mj_NumClauses: ::core::ffi::c_int, + pub mj_Clauses: MergeJoinClause, + pub mj_JoinState: ::core::ffi::c_int, + pub mj_SkipMarkRestore: bool, + pub mj_ExtraMarks: bool, + pub mj_ConstFalseJoin: bool, + pub mj_FillOuter: bool, + pub mj_FillInner: bool, + pub mj_MatchedOuter: bool, + pub mj_MatchedInner: bool, + pub mj_OuterTupleSlot: *mut TupleTableSlot, + pub mj_InnerTupleSlot: *mut TupleTableSlot, + pub mj_MarkedTupleSlot: *mut TupleTableSlot, + pub mj_NullOuterTupleSlot: *mut TupleTableSlot, + pub mj_NullInnerTupleSlot: *mut TupleTableSlot, + pub mj_OuterEContext: *mut ExprContext, + pub mj_InnerEContext: *mut ExprContext, +} +impl Default for MergeJoinState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoinTupleData { + _unused: [u8; 0], +} +pub type HashJoinTuple = *mut HashJoinTupleData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoinTableData { + _unused: [u8; 0], +} +pub type HashJoinTable = *mut HashJoinTableData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoinState { + pub js: JoinState, + pub hashclauses: *mut ExprState, + pub hj_OuterHashKeys: *mut List, + pub hj_HashOperators: *mut List, + pub hj_Collations: *mut List, + pub hj_HashTable: HashJoinTable, + pub hj_CurHashValue: uint32, + pub hj_CurBucketNo: ::core::ffi::c_int, + pub hj_CurSkewBucketNo: ::core::ffi::c_int, + pub hj_CurTuple: HashJoinTuple, + pub hj_OuterTupleSlot: *mut TupleTableSlot, + pub hj_HashTupleSlot: *mut TupleTableSlot, + pub hj_NullOuterTupleSlot: *mut TupleTableSlot, + pub hj_NullInnerTupleSlot: *mut TupleTableSlot, + pub hj_FirstOuterTupleSlot: *mut TupleTableSlot, + pub hj_JoinState: ::core::ffi::c_int, + pub hj_MatchedOuter: bool, + pub hj_OuterNotEmpty: bool, +} +impl Default for HashJoinState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MaterialState { + pub ss: ScanState, + pub eflags: ::core::ffi::c_int, + pub eof_underlying: bool, + pub tuplestorestate: *mut Tuplestorestate, +} +impl Default for MaterialState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeEntry { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeTuple { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeKey { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct MemoizeInstrumentation { + pub cache_hits: uint64, + pub cache_misses: uint64, + pub cache_evictions: uint64, + pub cache_overflows: uint64, + pub mem_peak: uint64, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedMemoizeInfo { + pub num_workers: ::core::ffi::c_int, + pub sinstrument: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeState { + pub ss: ScanState, + pub mstatus: ::core::ffi::c_int, + pub nkeys: ::core::ffi::c_int, + pub hashtable: *mut memoize_hash, + pub hashkeydesc: TupleDesc, + pub tableslot: *mut TupleTableSlot, + pub probeslot: *mut TupleTableSlot, + pub cache_eq_expr: *mut ExprState, + pub param_exprs: *mut *mut ExprState, + pub hashfunctions: *mut FmgrInfo, + pub collations: *mut Oid, + pub mem_used: uint64, + pub mem_limit: uint64, + pub tableContext: MemoryContext, + pub lru_list: dlist_head, + pub last_tuple: *mut MemoizeTuple, + pub entry: *mut MemoizeEntry, + pub singlerow: bool, + pub binary_mode: bool, + pub stats: MemoizeInstrumentation, + pub shared_info: *mut SharedMemoizeInfo, + pub keyparamids: *mut Bitmapset, +} +impl Default for MemoizeState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PresortedKeyData { + pub flinfo: FmgrInfo, + pub fcinfo: FunctionCallInfo, + pub attno: OffsetNumber, +} +impl Default for PresortedKeyData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct SharedSortInfo { + pub num_workers: ::core::ffi::c_int, + pub sinstrument: __IncompleteArrayField, +} +impl Default for SharedSortInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortState { + pub ss: ScanState, + pub randomAccess: bool, + pub bounded: bool, + pub bound: int64, + pub sort_Done: bool, + pub bounded_Done: bool, + pub bound_Done: int64, + pub tuplesortstate: *mut ::core::ffi::c_void, + pub am_worker: bool, + pub datumSort: bool, + pub shared_info: *mut SharedSortInfo, +} +impl Default for SortState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IncrementalSortGroupInfo { + pub groupCount: int64, + pub maxDiskSpaceUsed: int64, + pub totalDiskSpaceUsed: int64, + pub maxMemorySpaceUsed: int64, + pub totalMemorySpaceUsed: int64, + pub sortMethods: bits32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IncrementalSortInfo { + pub fullsortGroupInfo: IncrementalSortGroupInfo, + pub prefixsortGroupInfo: IncrementalSortGroupInfo, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedIncrementalSortInfo { + pub num_workers: ::core::ffi::c_int, + pub sinfo: __IncompleteArrayField, +} +pub mod IncrementalSortExecutionStatus { + pub type Type = ::core::ffi::c_uint; + pub const INCSORT_LOADFULLSORT: Type = 0; + pub const INCSORT_LOADPREFIXSORT: Type = 1; + pub const INCSORT_READFULLSORT: Type = 2; + pub const INCSORT_READPREFIXSORT: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IncrementalSortState { + pub ss: ScanState, + pub bounded: bool, + pub bound: int64, + pub outerNodeDone: bool, + pub bound_Done: int64, + pub execution_status: IncrementalSortExecutionStatus::Type, + pub n_fullsort_remaining: int64, + pub fullsort_state: *mut Tuplesortstate, + pub prefixsort_state: *mut Tuplesortstate, + pub presorted_keys: *mut PresortedKeyData, + pub incsort_info: IncrementalSortInfo, + pub group_pivot: *mut TupleTableSlot, + pub transfer_tuple: *mut TupleTableSlot, + pub am_worker: bool, + pub shared_info: *mut SharedIncrementalSortInfo, +} +impl Default for IncrementalSortState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupState { + pub ss: ScanState, + pub eqfunction: *mut ExprState, + pub grp_done: bool, +} +impl Default for GroupState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AggregateInstrumentation { + pub hash_mem_peak: Size, + pub hash_disk_used: uint64, + pub hash_batches_used: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedAggInfo { + pub num_workers: ::core::ffi::c_int, + pub sinstrument: __IncompleteArrayField, +} +pub type AggStatePerAgg = *mut AggStatePerAggData; +pub type AggStatePerTrans = *mut AggStatePerTransData; +pub type AggStatePerGroup = *mut AggStatePerGroupData; +pub type AggStatePerPhase = *mut AggStatePerPhaseData; +pub type AggStatePerHash = *mut AggStatePerHashData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggState { + pub ss: ScanState, + pub aggs: *mut List, + pub numaggs: ::core::ffi::c_int, + pub numtrans: ::core::ffi::c_int, + pub aggstrategy: AggStrategy::Type, + pub aggsplit: AggSplit::Type, + pub phase: AggStatePerPhase, + pub numphases: ::core::ffi::c_int, + pub current_phase: ::core::ffi::c_int, + pub peragg: AggStatePerAgg, + pub pertrans: AggStatePerTrans, + pub hashcontext: *mut ExprContext, + pub aggcontexts: *mut *mut ExprContext, + pub tmpcontext: *mut ExprContext, + pub curaggcontext: *mut ExprContext, + pub curperagg: AggStatePerAgg, + pub curpertrans: AggStatePerTrans, + pub input_done: bool, + pub agg_done: bool, + pub projected_set: ::core::ffi::c_int, + pub current_set: ::core::ffi::c_int, + pub grouped_cols: *mut Bitmapset, + pub all_grouped_cols: *mut List, + pub colnos_needed: *mut Bitmapset, + pub max_colno_needed: ::core::ffi::c_int, + pub all_cols_needed: bool, + pub maxsets: ::core::ffi::c_int, + pub phases: AggStatePerPhase, + pub sort_in: *mut Tuplesortstate, + pub sort_out: *mut Tuplesortstate, + pub sort_slot: *mut TupleTableSlot, + pub pergroups: *mut AggStatePerGroup, + pub grp_firstTuple: HeapTuple, + pub table_filled: bool, + pub num_hashes: ::core::ffi::c_int, + pub hash_metacxt: MemoryContext, + pub hash_tapeset: *mut LogicalTapeSet, + pub hash_spills: *mut HashAggSpill, + pub hash_spill_rslot: *mut TupleTableSlot, + pub hash_spill_wslot: *mut TupleTableSlot, + pub hash_batches: *mut List, + pub hash_ever_spilled: bool, + pub hash_spill_mode: bool, + pub hash_mem_limit: Size, + pub hash_ngroups_limit: uint64, + pub hash_planned_partitions: ::core::ffi::c_int, + pub hashentrysize: f64, + pub hash_mem_peak: Size, + pub hash_ngroups_current: uint64, + pub hash_disk_used: uint64, + pub hash_batches_used: ::core::ffi::c_int, + pub perhash: AggStatePerHash, + pub hash_pergroup: *mut AggStatePerGroup, + pub all_pergroups: *mut AggStatePerGroup, + pub shared_info: *mut SharedAggInfo, +} +impl Default for AggState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowStatePerFuncData { + _unused: [u8; 0], +} +pub type WindowStatePerFunc = *mut WindowStatePerFuncData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowStatePerAggData { + _unused: [u8; 0], +} +pub type WindowStatePerAgg = *mut WindowStatePerAggData; +pub mod WindowAggStatus { + pub type Type = ::core::ffi::c_uint; + pub const WINDOWAGG_DONE: Type = 0; + pub const WINDOWAGG_RUN: Type = 1; + pub const WINDOWAGG_PASSTHROUGH: Type = 2; + pub const WINDOWAGG_PASSTHROUGH_STRICT: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowAggState { + pub ss: ScanState, + pub funcs: *mut List, + pub numfuncs: ::core::ffi::c_int, + pub numaggs: ::core::ffi::c_int, + pub perfunc: WindowStatePerFunc, + pub peragg: WindowStatePerAgg, + pub partEqfunction: *mut ExprState, + pub ordEqfunction: *mut ExprState, + pub buffer: *mut Tuplestorestate, + pub current_ptr: ::core::ffi::c_int, + pub framehead_ptr: ::core::ffi::c_int, + pub frametail_ptr: ::core::ffi::c_int, + pub grouptail_ptr: ::core::ffi::c_int, + pub spooled_rows: int64, + pub currentpos: int64, + pub frameheadpos: int64, + pub frametailpos: int64, + pub agg_winobj: *mut WindowObjectData, + pub aggregatedbase: int64, + pub aggregatedupto: int64, + pub status: WindowAggStatus::Type, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut ExprState, + pub endOffset: *mut ExprState, + pub startOffsetValue: Datum, + pub endOffsetValue: Datum, + pub startInRangeFunc: FmgrInfo, + pub endInRangeFunc: FmgrInfo, + pub inRangeColl: Oid, + pub inRangeAsc: bool, + pub inRangeNullsFirst: bool, + pub currentgroup: int64, + pub frameheadgroup: int64, + pub frametailgroup: int64, + pub groupheadpos: int64, + pub grouptailpos: int64, + pub partcontext: MemoryContext, + pub aggcontext: MemoryContext, + pub curaggcontext: MemoryContext, + pub tmpcontext: *mut ExprContext, + pub runcondition: *mut ExprState, + pub use_pass_through: bool, + pub top_window: bool, + pub all_first: bool, + pub partition_spooled: bool, + pub more_partitions: bool, + pub framehead_valid: bool, + pub frametail_valid: bool, + pub grouptail_valid: bool, + pub first_part_slot: *mut TupleTableSlot, + pub framehead_slot: *mut TupleTableSlot, + pub frametail_slot: *mut TupleTableSlot, + pub agg_row_slot: *mut TupleTableSlot, + pub temp_slot_1: *mut TupleTableSlot, + pub temp_slot_2: *mut TupleTableSlot, +} +impl Default for WindowAggState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UniqueState { + pub ps: PlanState, + pub eqfunction: *mut ExprState, +} +impl Default for UniqueState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherState { + pub ps: PlanState, + pub initialized: bool, + pub need_to_scan_locally: bool, + pub tuples_needed: int64, + pub funnel_slot: *mut TupleTableSlot, + pub pei: *mut ParallelExecutorInfo, + pub nworkers_launched: ::core::ffi::c_int, + pub nreaders: ::core::ffi::c_int, + pub nextreader: ::core::ffi::c_int, + pub reader: *mut *mut TupleQueueReader, +} +impl Default for GatherState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GMReaderTupleBuffer { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherMergeState { + pub ps: PlanState, + pub initialized: bool, + pub gm_initialized: bool, + pub need_to_scan_locally: bool, + pub tuples_needed: int64, + pub tupDesc: TupleDesc, + pub gm_nkeys: ::core::ffi::c_int, + pub gm_sortkeys: SortSupport, + pub pei: *mut ParallelExecutorInfo, + pub nworkers_launched: ::core::ffi::c_int, + pub nreaders: ::core::ffi::c_int, + pub gm_slots: *mut *mut TupleTableSlot, + pub reader: *mut *mut TupleQueueReader, + pub gm_tuple_buffers: *mut GMReaderTupleBuffer, + pub gm_heap: *mut binaryheap, +} +impl Default for GatherMergeState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HashInstrumentation { + pub nbuckets: ::core::ffi::c_int, + pub nbuckets_original: ::core::ffi::c_int, + pub nbatch: ::core::ffi::c_int, + pub nbatch_original: ::core::ffi::c_int, + pub space_peak: Size, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedHashInfo { + pub num_workers: ::core::ffi::c_int, + pub hinstrument: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashState { + pub ps: PlanState, + pub hashtable: HashJoinTable, + pub hashkeys: *mut List, + pub shared_info: *mut SharedHashInfo, + pub hinstrument: *mut HashInstrumentation, + pub parallel_state: *mut ParallelHashJoinState, +} +impl Default for HashState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOpStatePerGroupData { + _unused: [u8; 0], +} +pub type SetOpStatePerGroup = *mut SetOpStatePerGroupData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOpState { + pub ps: PlanState, + pub eqfunction: *mut ExprState, + pub eqfuncoids: *mut Oid, + pub hashfunctions: *mut FmgrInfo, + pub setop_done: bool, + pub numOutput: ::core::ffi::c_long, + pub pergroup: SetOpStatePerGroup, + pub grp_firstTuple: HeapTuple, + pub hashtable: TupleHashTable, + pub tableContext: MemoryContext, + pub table_filled: bool, + pub hashiter: TupleHashIterator, +} +impl Default for SetOpState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRowsState { + pub ps: PlanState, + pub lr_arowMarks: *mut List, + pub lr_epqstate: EPQState, +} +impl Default for LockRowsState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LimitStateCond { + pub type Type = ::core::ffi::c_uint; + pub const LIMIT_INITIAL: Type = 0; + pub const LIMIT_RESCAN: Type = 1; + pub const LIMIT_EMPTY: Type = 2; + pub const LIMIT_INWINDOW: Type = 3; + pub const LIMIT_WINDOWEND_TIES: Type = 4; + pub const LIMIT_SUBPLANEOF: Type = 5; + pub const LIMIT_WINDOWEND: Type = 6; + pub const LIMIT_WINDOWSTART: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LimitState { + pub ps: PlanState, + pub limitOffset: *mut ExprState, + pub limitCount: *mut ExprState, + pub limitOption: LimitOption::Type, + pub offset: int64, + pub count: int64, + pub noCount: bool, + pub lstate: LimitStateCond::Type, + pub position: int64, + pub subSlot: *mut TupleTableSlot, + pub eqfunction: *mut ExprState, + pub last_slot: *mut TupleTableSlot, +} +impl Default for LimitState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CommandTag { + pub type Type = ::core::ffi::c_uint; + pub const CMDTAG_UNKNOWN: Type = 0; + pub const CMDTAG_ALTER_ACCESS_METHOD: Type = 1; + pub const CMDTAG_ALTER_AGGREGATE: Type = 2; + pub const CMDTAG_ALTER_CAST: Type = 3; + pub const CMDTAG_ALTER_COLLATION: Type = 4; + pub const CMDTAG_ALTER_CONSTRAINT: Type = 5; + pub const CMDTAG_ALTER_CONVERSION: Type = 6; + pub const CMDTAG_ALTER_DATABASE: Type = 7; + pub const CMDTAG_ALTER_DEFAULT_PRIVILEGES: Type = 8; + pub const CMDTAG_ALTER_DOMAIN: Type = 9; + pub const CMDTAG_ALTER_EVENT_TRIGGER: Type = 10; + pub const CMDTAG_ALTER_EXTENSION: Type = 11; + pub const CMDTAG_ALTER_FOREIGN_DATA_WRAPPER: Type = 12; + pub const CMDTAG_ALTER_FOREIGN_TABLE: Type = 13; + pub const CMDTAG_ALTER_FUNCTION: Type = 14; + pub const CMDTAG_ALTER_INDEX: Type = 15; + pub const CMDTAG_ALTER_LANGUAGE: Type = 16; + pub const CMDTAG_ALTER_LARGE_OBJECT: Type = 17; + pub const CMDTAG_ALTER_MATERIALIZED_VIEW: Type = 18; + pub const CMDTAG_ALTER_OPERATOR: Type = 19; + pub const CMDTAG_ALTER_OPERATOR_CLASS: Type = 20; + pub const CMDTAG_ALTER_OPERATOR_FAMILY: Type = 21; + pub const CMDTAG_ALTER_POLICY: Type = 22; + pub const CMDTAG_ALTER_PROCEDURE: Type = 23; + pub const CMDTAG_ALTER_PUBLICATION: Type = 24; + pub const CMDTAG_ALTER_ROLE: Type = 25; + pub const CMDTAG_ALTER_ROUTINE: Type = 26; + pub const CMDTAG_ALTER_RULE: Type = 27; + pub const CMDTAG_ALTER_SCHEMA: Type = 28; + pub const CMDTAG_ALTER_SEQUENCE: Type = 29; + pub const CMDTAG_ALTER_SERVER: Type = 30; + pub const CMDTAG_ALTER_STATISTICS: Type = 31; + pub const CMDTAG_ALTER_SUBSCRIPTION: Type = 32; + pub const CMDTAG_ALTER_SYSTEM: Type = 33; + pub const CMDTAG_ALTER_TABLE: Type = 34; + pub const CMDTAG_ALTER_TABLESPACE: Type = 35; + pub const CMDTAG_ALTER_TEXT_SEARCH_CONFIGURATION: Type = 36; + pub const CMDTAG_ALTER_TEXT_SEARCH_DICTIONARY: Type = 37; + pub const CMDTAG_ALTER_TEXT_SEARCH_PARSER: Type = 38; + pub const CMDTAG_ALTER_TEXT_SEARCH_TEMPLATE: Type = 39; + pub const CMDTAG_ALTER_TRANSFORM: Type = 40; + pub const CMDTAG_ALTER_TRIGGER: Type = 41; + pub const CMDTAG_ALTER_TYPE: Type = 42; + pub const CMDTAG_ALTER_USER_MAPPING: Type = 43; + pub const CMDTAG_ALTER_VIEW: Type = 44; + pub const CMDTAG_ANALYZE: Type = 45; + pub const CMDTAG_BEGIN: Type = 46; + pub const CMDTAG_CALL: Type = 47; + pub const CMDTAG_CHECKPOINT: Type = 48; + pub const CMDTAG_CLOSE: Type = 49; + pub const CMDTAG_CLOSE_CURSOR: Type = 50; + pub const CMDTAG_CLOSE_CURSOR_ALL: Type = 51; + pub const CMDTAG_CLUSTER: Type = 52; + pub const CMDTAG_COMMENT: Type = 53; + pub const CMDTAG_COMMIT: Type = 54; + pub const CMDTAG_COMMIT_PREPARED: Type = 55; + pub const CMDTAG_COPY: Type = 56; + pub const CMDTAG_COPY_FROM: Type = 57; + pub const CMDTAG_CREATE_ACCESS_METHOD: Type = 58; + pub const CMDTAG_CREATE_AGGREGATE: Type = 59; + pub const CMDTAG_CREATE_CAST: Type = 60; + pub const CMDTAG_CREATE_COLLATION: Type = 61; + pub const CMDTAG_CREATE_CONSTRAINT: Type = 62; + pub const CMDTAG_CREATE_CONVERSION: Type = 63; + pub const CMDTAG_CREATE_DATABASE: Type = 64; + pub const CMDTAG_CREATE_DOMAIN: Type = 65; + pub const CMDTAG_CREATE_EVENT_TRIGGER: Type = 66; + pub const CMDTAG_CREATE_EXTENSION: Type = 67; + pub const CMDTAG_CREATE_FOREIGN_DATA_WRAPPER: Type = 68; + pub const CMDTAG_CREATE_FOREIGN_TABLE: Type = 69; + pub const CMDTAG_CREATE_FUNCTION: Type = 70; + pub const CMDTAG_CREATE_INDEX: Type = 71; + pub const CMDTAG_CREATE_LANGUAGE: Type = 72; + pub const CMDTAG_CREATE_MATERIALIZED_VIEW: Type = 73; + pub const CMDTAG_CREATE_OPERATOR: Type = 74; + pub const CMDTAG_CREATE_OPERATOR_CLASS: Type = 75; + pub const CMDTAG_CREATE_OPERATOR_FAMILY: Type = 76; + pub const CMDTAG_CREATE_POLICY: Type = 77; + pub const CMDTAG_CREATE_PROCEDURE: Type = 78; + pub const CMDTAG_CREATE_PUBLICATION: Type = 79; + pub const CMDTAG_CREATE_ROLE: Type = 80; + pub const CMDTAG_CREATE_ROUTINE: Type = 81; + pub const CMDTAG_CREATE_RULE: Type = 82; + pub const CMDTAG_CREATE_SCHEMA: Type = 83; + pub const CMDTAG_CREATE_SEQUENCE: Type = 84; + pub const CMDTAG_CREATE_SERVER: Type = 85; + pub const CMDTAG_CREATE_STATISTICS: Type = 86; + pub const CMDTAG_CREATE_SUBSCRIPTION: Type = 87; + pub const CMDTAG_CREATE_TABLE: Type = 88; + pub const CMDTAG_CREATE_TABLE_AS: Type = 89; + pub const CMDTAG_CREATE_TABLESPACE: Type = 90; + pub const CMDTAG_CREATE_TEXT_SEARCH_CONFIGURATION: Type = 91; + pub const CMDTAG_CREATE_TEXT_SEARCH_DICTIONARY: Type = 92; + pub const CMDTAG_CREATE_TEXT_SEARCH_PARSER: Type = 93; + pub const CMDTAG_CREATE_TEXT_SEARCH_TEMPLATE: Type = 94; + pub const CMDTAG_CREATE_TRANSFORM: Type = 95; + pub const CMDTAG_CREATE_TRIGGER: Type = 96; + pub const CMDTAG_CREATE_TYPE: Type = 97; + pub const CMDTAG_CREATE_USER_MAPPING: Type = 98; + pub const CMDTAG_CREATE_VIEW: Type = 99; + pub const CMDTAG_DEALLOCATE: Type = 100; + pub const CMDTAG_DEALLOCATE_ALL: Type = 101; + pub const CMDTAG_DECLARE_CURSOR: Type = 102; + pub const CMDTAG_DELETE: Type = 103; + pub const CMDTAG_DISCARD: Type = 104; + pub const CMDTAG_DISCARD_ALL: Type = 105; + pub const CMDTAG_DISCARD_PLANS: Type = 106; + pub const CMDTAG_DISCARD_SEQUENCES: Type = 107; + pub const CMDTAG_DISCARD_TEMP: Type = 108; + pub const CMDTAG_DO: Type = 109; + pub const CMDTAG_DROP_ACCESS_METHOD: Type = 110; + pub const CMDTAG_DROP_AGGREGATE: Type = 111; + pub const CMDTAG_DROP_CAST: Type = 112; + pub const CMDTAG_DROP_COLLATION: Type = 113; + pub const CMDTAG_DROP_CONSTRAINT: Type = 114; + pub const CMDTAG_DROP_CONVERSION: Type = 115; + pub const CMDTAG_DROP_DATABASE: Type = 116; + pub const CMDTAG_DROP_DOMAIN: Type = 117; + pub const CMDTAG_DROP_EVENT_TRIGGER: Type = 118; + pub const CMDTAG_DROP_EXTENSION: Type = 119; + pub const CMDTAG_DROP_FOREIGN_DATA_WRAPPER: Type = 120; + pub const CMDTAG_DROP_FOREIGN_TABLE: Type = 121; + pub const CMDTAG_DROP_FUNCTION: Type = 122; + pub const CMDTAG_DROP_INDEX: Type = 123; + pub const CMDTAG_DROP_LANGUAGE: Type = 124; + pub const CMDTAG_DROP_MATERIALIZED_VIEW: Type = 125; + pub const CMDTAG_DROP_OPERATOR: Type = 126; + pub const CMDTAG_DROP_OPERATOR_CLASS: Type = 127; + pub const CMDTAG_DROP_OPERATOR_FAMILY: Type = 128; + pub const CMDTAG_DROP_OWNED: Type = 129; + pub const CMDTAG_DROP_POLICY: Type = 130; + pub const CMDTAG_DROP_PROCEDURE: Type = 131; + pub const CMDTAG_DROP_PUBLICATION: Type = 132; + pub const CMDTAG_DROP_ROLE: Type = 133; + pub const CMDTAG_DROP_ROUTINE: Type = 134; + pub const CMDTAG_DROP_RULE: Type = 135; + pub const CMDTAG_DROP_SCHEMA: Type = 136; + pub const CMDTAG_DROP_SEQUENCE: Type = 137; + pub const CMDTAG_DROP_SERVER: Type = 138; + pub const CMDTAG_DROP_STATISTICS: Type = 139; + pub const CMDTAG_DROP_SUBSCRIPTION: Type = 140; + pub const CMDTAG_DROP_TABLE: Type = 141; + pub const CMDTAG_DROP_TABLESPACE: Type = 142; + pub const CMDTAG_DROP_TEXT_SEARCH_CONFIGURATION: Type = 143; + pub const CMDTAG_DROP_TEXT_SEARCH_DICTIONARY: Type = 144; + pub const CMDTAG_DROP_TEXT_SEARCH_PARSER: Type = 145; + pub const CMDTAG_DROP_TEXT_SEARCH_TEMPLATE: Type = 146; + pub const CMDTAG_DROP_TRANSFORM: Type = 147; + pub const CMDTAG_DROP_TRIGGER: Type = 148; + pub const CMDTAG_DROP_TYPE: Type = 149; + pub const CMDTAG_DROP_USER_MAPPING: Type = 150; + pub const CMDTAG_DROP_VIEW: Type = 151; + pub const CMDTAG_EXECUTE: Type = 152; + pub const CMDTAG_EXPLAIN: Type = 153; + pub const CMDTAG_FETCH: Type = 154; + pub const CMDTAG_GRANT: Type = 155; + pub const CMDTAG_GRANT_ROLE: Type = 156; + pub const CMDTAG_IMPORT_FOREIGN_SCHEMA: Type = 157; + pub const CMDTAG_INSERT: Type = 158; + pub const CMDTAG_LISTEN: Type = 159; + pub const CMDTAG_LOAD: Type = 160; + pub const CMDTAG_LOCK_TABLE: Type = 161; + pub const CMDTAG_LOGIN: Type = 162; + pub const CMDTAG_MERGE: Type = 163; + pub const CMDTAG_MOVE: Type = 164; + pub const CMDTAG_NOTIFY: Type = 165; + pub const CMDTAG_PREPARE: Type = 166; + pub const CMDTAG_PREPARE_TRANSACTION: Type = 167; + pub const CMDTAG_REASSIGN_OWNED: Type = 168; + pub const CMDTAG_REFRESH_MATERIALIZED_VIEW: Type = 169; + pub const CMDTAG_REINDEX: Type = 170; + pub const CMDTAG_RELEASE: Type = 171; + pub const CMDTAG_RESET: Type = 172; + pub const CMDTAG_REVOKE: Type = 173; + pub const CMDTAG_REVOKE_ROLE: Type = 174; + pub const CMDTAG_ROLLBACK: Type = 175; + pub const CMDTAG_ROLLBACK_PREPARED: Type = 176; + pub const CMDTAG_SAVEPOINT: Type = 177; + pub const CMDTAG_SECURITY_LABEL: Type = 178; + pub const CMDTAG_SELECT: Type = 179; + pub const CMDTAG_SELECT_FOR_KEY_SHARE: Type = 180; + pub const CMDTAG_SELECT_FOR_NO_KEY_UPDATE: Type = 181; + pub const CMDTAG_SELECT_FOR_SHARE: Type = 182; + pub const CMDTAG_SELECT_FOR_UPDATE: Type = 183; + pub const CMDTAG_SELECT_INTO: Type = 184; + pub const CMDTAG_SET: Type = 185; + pub const CMDTAG_SET_CONSTRAINTS: Type = 186; + pub const CMDTAG_SHOW: Type = 187; + pub const CMDTAG_START_TRANSACTION: Type = 188; + pub const CMDTAG_TRUNCATE_TABLE: Type = 189; + pub const CMDTAG_UNLISTEN: Type = 190; + pub const CMDTAG_UPDATE: Type = 191; + pub const CMDTAG_VACUUM: Type = 192; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QueryCompletion { + pub commandTag: CommandTag::Type, + pub nprocessed: uint64, +} +impl Default for QueryCompletion { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CommandDest { + pub type Type = ::core::ffi::c_uint; + pub const DestNone: Type = 0; + pub const DestDebug: Type = 1; + pub const DestRemote: Type = 2; + pub const DestRemoteExecute: Type = 3; + pub const DestRemoteSimple: Type = 4; + pub const DestSPI: Type = 5; + pub const DestTuplestore: Type = 6; + pub const DestIntoRel: Type = 7; + pub const DestCopyOut: Type = 8; + pub const DestSQLFunction: Type = 9; + pub const DestTransientRel: Type = 10; + pub const DestTupleQueue: Type = 11; + pub const DestExplainSerialize: Type = 12; +} +pub type DestReceiver = _DestReceiver; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _DestReceiver { + pub receiveSlot: ::core::option::Option< + unsafe extern "C" fn(slot: *mut TupleTableSlot, self_: *mut DestReceiver) -> bool, + >, + pub rStartup: ::core::option::Option< + unsafe extern "C" fn( + self_: *mut DestReceiver, + operation: ::core::ffi::c_int, + typeinfo: TupleDesc, + ), + >, + pub rShutdown: ::core::option::Option, + pub rDestroy: ::core::option::Option, + pub mydest: CommandDest::Type, +} +impl Default for _DestReceiver { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QueryDesc { + pub operation: CmdType::Type, + pub plannedstmt: *mut PlannedStmt, + pub sourceText: *const ::core::ffi::c_char, + pub snapshot: Snapshot, + pub crosscheck_snapshot: Snapshot, + pub dest: *mut DestReceiver, + pub params: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, + pub instrument_options: ::core::ffi::c_int, + pub tupDesc: TupleDesc, + pub estate: *mut EState, + pub planstate: *mut PlanState, + pub already_executed: bool, + pub totaltime: *mut Instrumentation, +} +impl Default for QueryDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Integer { + pub type_: NodeTag, + pub ival: ::core::ffi::c_int, +} +impl Default for Integer { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Float { + pub type_: NodeTag, + pub fval: *mut ::core::ffi::c_char, +} +impl Default for Float { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Boolean { + pub type_: NodeTag, + pub boolval: bool, +} +impl Default for Boolean { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct String { + pub type_: NodeTag, + pub sval: *mut ::core::ffi::c_char, +} +impl Default for String { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitString { + pub type_: NodeTag, + pub bsval: *mut ::core::ffi::c_char, +} +impl Default for BitString { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod QuerySource { + pub type Type = ::core::ffi::c_uint; + pub const QSRC_ORIGINAL: Type = 0; + pub const QSRC_PARSER: Type = 1; + pub const QSRC_INSTEAD_RULE: Type = 2; + pub const QSRC_QUAL_INSTEAD_RULE: Type = 3; + pub const QSRC_NON_INSTEAD_RULE: Type = 4; +} +pub mod SortByDir { + pub type Type = ::core::ffi::c_uint; + pub const SORTBY_DEFAULT: Type = 0; + pub const SORTBY_ASC: Type = 1; + pub const SORTBY_DESC: Type = 2; + pub const SORTBY_USING: Type = 3; +} +pub mod SortByNulls { + pub type Type = ::core::ffi::c_uint; + pub const SORTBY_NULLS_DEFAULT: Type = 0; + pub const SORTBY_NULLS_FIRST: Type = 1; + pub const SORTBY_NULLS_LAST: Type = 2; +} +pub mod SetQuantifier { + pub type Type = ::core::ffi::c_uint; + pub const SET_QUANTIFIER_DEFAULT: Type = 0; + pub const SET_QUANTIFIER_ALL: Type = 1; + pub const SET_QUANTIFIER_DISTINCT: Type = 2; +} +pub type AclMode = uint64; +#[doc = "\tQuery Tree"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Query { + pub type_: NodeTag, + pub commandType: CmdType::Type, + pub querySource: QuerySource::Type, + pub queryId: uint64, + pub canSetTag: bool, + pub utilityStmt: *mut Node, + pub resultRelation: ::core::ffi::c_int, + pub hasAggs: bool, + pub hasWindowFuncs: bool, + pub hasTargetSRFs: bool, + pub hasSubLinks: bool, + pub hasDistinctOn: bool, + pub hasRecursive: bool, + pub hasModifyingCTE: bool, + pub hasForUpdate: bool, + pub hasRowSecurity: bool, + pub isReturn: bool, + pub cteList: *mut List, + pub rtable: *mut List, + pub rteperminfos: *mut List, + pub jointree: *mut FromExpr, + pub mergeActionList: *mut List, + pub mergeTargetRelation: ::core::ffi::c_int, + pub mergeJoinCondition: *mut Node, + pub targetList: *mut List, + pub override_: OverridingKind::Type, + pub onConflict: *mut OnConflictExpr, + pub returningList: *mut List, + pub groupClause: *mut List, + pub groupDistinct: bool, + pub groupingSets: *mut List, + pub havingQual: *mut Node, + pub windowClause: *mut List, + pub distinctClause: *mut List, + pub sortClause: *mut List, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, + pub rowMarks: *mut List, + pub setOperations: *mut Node, + pub constraintDeps: *mut List, + pub withCheckOptions: *mut List, + pub stmt_location: ParseLoc, + pub stmt_len: ParseLoc, +} +impl Default for Query { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[doc = "\tSupporting data structures for Parse Trees\n\n\tMost of these node types appear in raw parsetrees output by the grammar,\n\tand get transformed to something else by the analyzer. A few of them\n\tare used as-is in transformed querytrees."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeName { + pub type_: NodeTag, + pub names: *mut List, + pub typeOid: Oid, + pub setof: bool, + pub pct_type: bool, + pub typmods: *mut List, + pub typemod: int32, + pub arrayBounds: *mut List, + pub location: ParseLoc, +} +impl Default for TypeName { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ColumnRef { + pub type_: NodeTag, + pub fields: *mut List, + pub location: ParseLoc, +} +impl Default for ColumnRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamRef { + pub type_: NodeTag, + pub number: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for ParamRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod A_Expr_Kind { + pub type Type = ::core::ffi::c_uint; + pub const AEXPR_OP: Type = 0; + pub const AEXPR_OP_ANY: Type = 1; + pub const AEXPR_OP_ALL: Type = 2; + pub const AEXPR_DISTINCT: Type = 3; + pub const AEXPR_NOT_DISTINCT: Type = 4; + pub const AEXPR_NULLIF: Type = 5; + pub const AEXPR_IN: Type = 6; + pub const AEXPR_LIKE: Type = 7; + pub const AEXPR_ILIKE: Type = 8; + pub const AEXPR_SIMILAR: Type = 9; + pub const AEXPR_BETWEEN: Type = 10; + pub const AEXPR_NOT_BETWEEN: Type = 11; + pub const AEXPR_BETWEEN_SYM: Type = 12; + pub const AEXPR_NOT_BETWEEN_SYM: Type = 13; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Expr { + pub type_: NodeTag, + pub kind: A_Expr_Kind::Type, + pub name: *mut List, + pub lexpr: *mut Node, + pub rexpr: *mut Node, + pub location: ParseLoc, +} +impl Default for A_Expr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ValUnion { + pub node: Node, + pub ival: Integer, + pub fval: Float, + pub boolval: Boolean, + pub sval: String, + pub bsval: BitString, +} +impl Default for ValUnion { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct A_Const { + pub type_: NodeTag, + pub val: ValUnion, + pub isnull: bool, + pub location: ParseLoc, +} +impl Default for A_Const { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeCast { + pub type_: NodeTag, + pub arg: *mut Node, + pub typeName: *mut TypeName, + pub location: ParseLoc, +} +impl Default for TypeCast { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollateClause { + pub type_: NodeTag, + pub arg: *mut Node, + pub collname: *mut List, + pub location: ParseLoc, +} +impl Default for CollateClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RoleSpecType { + pub type Type = ::core::ffi::c_uint; + pub const ROLESPEC_CSTRING: Type = 0; + pub const ROLESPEC_CURRENT_ROLE: Type = 1; + pub const ROLESPEC_CURRENT_USER: Type = 2; + pub const ROLESPEC_SESSION_USER: Type = 3; + pub const ROLESPEC_PUBLIC: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RoleSpec { + pub type_: NodeTag, + pub roletype: RoleSpecType::Type, + pub rolename: *mut ::core::ffi::c_char, + pub location: ParseLoc, +} +impl Default for RoleSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FuncCall { + pub type_: NodeTag, + pub funcname: *mut List, + pub args: *mut List, + pub agg_order: *mut List, + pub agg_filter: *mut Node, + pub over: *mut WindowDef, + pub agg_within_group: bool, + pub agg_star: bool, + pub agg_distinct: bool, + pub func_variadic: bool, + pub funcformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for FuncCall { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Star { + pub type_: NodeTag, +} +impl Default for A_Star { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Indices { + pub type_: NodeTag, + pub is_slice: bool, + pub lidx: *mut Node, + pub uidx: *mut Node, +} +impl Default for A_Indices { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Indirection { + pub type_: NodeTag, + pub arg: *mut Node, + pub indirection: *mut List, +} +impl Default for A_Indirection { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_ArrayExpr { + pub type_: NodeTag, + pub elements: *mut List, + pub location: ParseLoc, +} +impl Default for A_ArrayExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResTarget { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub indirection: *mut List, + pub val: *mut Node, + pub location: ParseLoc, +} +impl Default for ResTarget { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MultiAssignRef { + pub type_: NodeTag, + pub source: *mut Node, + pub colno: ::core::ffi::c_int, + pub ncolumns: ::core::ffi::c_int, +} +impl Default for MultiAssignRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortBy { + pub type_: NodeTag, + pub node: *mut Node, + pub sortby_dir: SortByDir::Type, + pub sortby_nulls: SortByNulls::Type, + pub useOp: *mut List, + pub location: ParseLoc, +} +impl Default for SortBy { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowDef { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub refname: *mut ::core::ffi::c_char, + pub partitionClause: *mut List, + pub orderClause: *mut List, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut Node, + pub endOffset: *mut Node, + pub location: ParseLoc, +} +impl Default for WindowDef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeSubselect { + pub type_: NodeTag, + pub lateral: bool, + pub subquery: *mut Node, + pub alias: *mut Alias, +} +impl Default for RangeSubselect { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeFunction { + pub type_: NodeTag, + pub lateral: bool, + pub ordinality: bool, + pub is_rowsfrom: bool, + pub functions: *mut List, + pub alias: *mut Alias, + pub coldeflist: *mut List, +} +impl Default for RangeFunction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTableFunc { + pub type_: NodeTag, + pub lateral: bool, + pub docexpr: *mut Node, + pub rowexpr: *mut Node, + pub namespaces: *mut List, + pub columns: *mut List, + pub alias: *mut Alias, + pub location: ParseLoc, +} +impl Default for RangeTableFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTableFuncCol { + pub type_: NodeTag, + pub colname: *mut ::core::ffi::c_char, + pub typeName: *mut TypeName, + pub for_ordinality: bool, + pub is_not_null: bool, + pub colexpr: *mut Node, + pub coldefexpr: *mut Node, + pub location: ParseLoc, +} +impl Default for RangeTableFuncCol { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTableSample { + pub type_: NodeTag, + pub relation: *mut Node, + pub method: *mut List, + pub args: *mut List, + pub repeatable: *mut Node, + pub location: ParseLoc, +} +impl Default for RangeTableSample { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ColumnDef { + pub type_: NodeTag, + pub colname: *mut ::core::ffi::c_char, + pub typeName: *mut TypeName, + pub compression: *mut ::core::ffi::c_char, + pub inhcount: ::core::ffi::c_int, + pub is_local: bool, + pub is_not_null: bool, + pub is_from_type: bool, + pub storage: ::core::ffi::c_char, + pub storage_name: *mut ::core::ffi::c_char, + pub raw_default: *mut Node, + pub cooked_default: *mut Node, + pub identity: ::core::ffi::c_char, + pub identitySequence: *mut RangeVar, + pub generated: ::core::ffi::c_char, + pub collClause: *mut CollateClause, + pub collOid: Oid, + pub constraints: *mut List, + pub fdwoptions: *mut List, + pub location: ParseLoc, +} +impl Default for ColumnDef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableLikeClause { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub options: bits32, + pub relationOid: Oid, +} +impl Default for TableLikeClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TableLikeOption { + pub type Type = ::core::ffi::c_uint; + pub const CREATE_TABLE_LIKE_COMMENTS: Type = 1; + pub const CREATE_TABLE_LIKE_COMPRESSION: Type = 2; + pub const CREATE_TABLE_LIKE_CONSTRAINTS: Type = 4; + pub const CREATE_TABLE_LIKE_DEFAULTS: Type = 8; + pub const CREATE_TABLE_LIKE_GENERATED: Type = 16; + pub const CREATE_TABLE_LIKE_IDENTITY: Type = 32; + pub const CREATE_TABLE_LIKE_INDEXES: Type = 64; + pub const CREATE_TABLE_LIKE_STATISTICS: Type = 128; + pub const CREATE_TABLE_LIKE_STORAGE: Type = 256; + pub const CREATE_TABLE_LIKE_ALL: Type = 2147483647; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexElem { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub expr: *mut Node, + pub indexcolname: *mut ::core::ffi::c_char, + pub collation: *mut List, + pub opclass: *mut List, + pub opclassopts: *mut List, + pub ordering: SortByDir::Type, + pub nulls_ordering: SortByNulls::Type, +} +impl Default for IndexElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DefElemAction { + pub type Type = ::core::ffi::c_uint; + pub const DEFELEM_UNSPEC: Type = 0; + pub const DEFELEM_SET: Type = 1; + pub const DEFELEM_ADD: Type = 2; + pub const DEFELEM_DROP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DefElem { + pub type_: NodeTag, + pub defnamespace: *mut ::core::ffi::c_char, + pub defname: *mut ::core::ffi::c_char, + pub arg: *mut Node, + pub defaction: DefElemAction::Type, + pub location: ParseLoc, +} +impl Default for DefElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockingClause { + pub type_: NodeTag, + pub lockedRels: *mut List, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, +} +impl Default for LockingClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XmlSerialize { + pub type_: NodeTag, + pub xmloption: XmlOptionType::Type, + pub expr: *mut Node, + pub typeName: *mut TypeName, + pub indent: bool, + pub location: ParseLoc, +} +impl Default for XmlSerialize { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionElem { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub expr: *mut Node, + pub collation: *mut List, + pub opclass: *mut List, + pub location: ParseLoc, +} +impl Default for PartitionElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionStrategy { + pub type Type = ::core::ffi::c_uint; + pub const PARTITION_STRATEGY_LIST: Type = 108; + pub const PARTITION_STRATEGY_RANGE: Type = 114; + pub const PARTITION_STRATEGY_HASH: Type = 104; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionSpec { + pub type_: NodeTag, + pub strategy: PartitionStrategy::Type, + pub partParams: *mut List, + pub location: ParseLoc, +} +impl Default for PartitionSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionBoundSpec { + pub type_: NodeTag, + pub strategy: ::core::ffi::c_char, + pub is_default: bool, + pub modulus: ::core::ffi::c_int, + pub remainder: ::core::ffi::c_int, + pub listdatums: *mut List, + pub lowerdatums: *mut List, + pub upperdatums: *mut List, + pub location: ParseLoc, +} +impl Default for PartitionBoundSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionRangeDatumKind { + pub type Type = ::core::ffi::c_int; + pub const PARTITION_RANGE_DATUM_MINVALUE: Type = -1; + pub const PARTITION_RANGE_DATUM_VALUE: Type = 0; + pub const PARTITION_RANGE_DATUM_MAXVALUE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionRangeDatum { + pub type_: NodeTag, + pub kind: PartitionRangeDatumKind::Type, + pub value: *mut Node, + pub location: ParseLoc, +} +impl Default for PartitionRangeDatum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SinglePartitionSpec { + pub type_: NodeTag, +} +impl Default for SinglePartitionSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionCmd { + pub type_: NodeTag, + pub name: *mut RangeVar, + pub bound: *mut PartitionBoundSpec, + pub concurrent: bool, +} +impl Default for PartitionCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RTEKind { + pub type Type = ::core::ffi::c_uint; + pub const RTE_RELATION: Type = 0; + pub const RTE_SUBQUERY: Type = 1; + pub const RTE_JOIN: Type = 2; + pub const RTE_FUNCTION: Type = 3; + pub const RTE_TABLEFUNC: Type = 4; + pub const RTE_VALUES: Type = 5; + pub const RTE_CTE: Type = 6; + pub const RTE_NAMEDTUPLESTORE: Type = 7; + pub const RTE_RESULT: Type = 8; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTblEntry { + pub type_: NodeTag, + pub alias: *mut Alias, + pub eref: *mut Alias, + pub rtekind: RTEKind::Type, + pub relid: Oid, + pub inh: bool, + pub relkind: ::core::ffi::c_char, + pub rellockmode: ::core::ffi::c_int, + pub perminfoindex: Index, + pub tablesample: *mut TableSampleClause, + pub subquery: *mut Query, + pub security_barrier: bool, + pub jointype: JoinType::Type, + pub joinmergedcols: ::core::ffi::c_int, + pub joinaliasvars: *mut List, + pub joinleftcols: *mut List, + pub joinrightcols: *mut List, + pub join_using_alias: *mut Alias, + pub functions: *mut List, + pub funcordinality: bool, + pub tablefunc: *mut TableFunc, + pub values_lists: *mut List, + pub ctename: *mut ::core::ffi::c_char, + pub ctelevelsup: Index, + pub self_reference: bool, + pub coltypes: *mut List, + pub coltypmods: *mut List, + pub colcollations: *mut List, + pub enrname: *mut ::core::ffi::c_char, + pub enrtuples: Cardinality, + pub lateral: bool, + pub inFromCl: bool, + pub securityQuals: *mut List, +} +impl Default for RangeTblEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RTEPermissionInfo { + pub type_: NodeTag, + pub relid: Oid, + pub inh: bool, + pub requiredPerms: AclMode, + pub checkAsUser: Oid, + pub selectedCols: *mut Bitmapset, + pub insertedCols: *mut Bitmapset, + pub updatedCols: *mut Bitmapset, +} +impl Default for RTEPermissionInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTblFunction { + pub type_: NodeTag, + pub funcexpr: *mut Node, + pub funccolcount: ::core::ffi::c_int, + pub funccolnames: *mut List, + pub funccoltypes: *mut List, + pub funccoltypmods: *mut List, + pub funccolcollations: *mut List, + pub funcparams: *mut Bitmapset, +} +impl Default for RangeTblFunction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableSampleClause { + pub type_: NodeTag, + pub tsmhandler: Oid, + pub args: *mut List, + pub repeatable: *mut Expr, +} +impl Default for TableSampleClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod WCOKind { + pub type Type = ::core::ffi::c_uint; + pub const WCO_VIEW_CHECK: Type = 0; + pub const WCO_RLS_INSERT_CHECK: Type = 1; + pub const WCO_RLS_UPDATE_CHECK: Type = 2; + pub const WCO_RLS_CONFLICT_CHECK: Type = 3; + pub const WCO_RLS_MERGE_UPDATE_CHECK: Type = 4; + pub const WCO_RLS_MERGE_DELETE_CHECK: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WithCheckOption { + pub type_: NodeTag, + pub kind: WCOKind::Type, + pub relname: *mut ::core::ffi::c_char, + pub polname: *mut ::core::ffi::c_char, + pub qual: *mut Node, + pub cascaded: bool, +} +impl Default for WithCheckOption { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortGroupClause { + pub type_: NodeTag, + pub tleSortGroupRef: Index, + pub eqop: Oid, + pub sortop: Oid, + pub nulls_first: bool, + pub hashable: bool, +} +impl Default for SortGroupClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod GroupingSetKind { + pub type Type = ::core::ffi::c_uint; + pub const GROUPING_SET_EMPTY: Type = 0; + pub const GROUPING_SET_SIMPLE: Type = 1; + pub const GROUPING_SET_ROLLUP: Type = 2; + pub const GROUPING_SET_CUBE: Type = 3; + pub const GROUPING_SET_SETS: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingSet { + pub type_: NodeTag, + pub kind: GroupingSetKind::Type, + pub content: *mut List, + pub location: ParseLoc, +} +impl Default for GroupingSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowClause { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub refname: *mut ::core::ffi::c_char, + pub partitionClause: *mut List, + pub orderClause: *mut List, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut Node, + pub endOffset: *mut Node, + pub startInRangeFunc: Oid, + pub endInRangeFunc: Oid, + pub inRangeColl: Oid, + pub inRangeAsc: bool, + pub inRangeNullsFirst: bool, + pub winref: Index, + pub copiedOrder: bool, +} +impl Default for WindowClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowMarkClause { + pub type_: NodeTag, + pub rti: Index, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, + pub pushedDown: bool, +} +impl Default for RowMarkClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WithClause { + pub type_: NodeTag, + pub ctes: *mut List, + pub recursive: bool, + pub location: ParseLoc, +} +impl Default for WithClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InferClause { + pub type_: NodeTag, + pub indexElems: *mut List, + pub whereClause: *mut Node, + pub conname: *mut ::core::ffi::c_char, + pub location: ParseLoc, +} +impl Default for InferClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OnConflictClause { + pub type_: NodeTag, + pub action: OnConflictAction::Type, + pub infer: *mut InferClause, + pub targetList: *mut List, + pub whereClause: *mut Node, + pub location: ParseLoc, +} +impl Default for OnConflictClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CTEMaterialize { + pub type Type = ::core::ffi::c_uint; + pub const CTEMaterializeDefault: Type = 0; + pub const CTEMaterializeAlways: Type = 1; + pub const CTEMaterializeNever: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CTESearchClause { + pub type_: NodeTag, + pub search_col_list: *mut List, + pub search_breadth_first: bool, + pub search_seq_column: *mut ::core::ffi::c_char, + pub location: ParseLoc, +} +impl Default for CTESearchClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CTECycleClause { + pub type_: NodeTag, + pub cycle_col_list: *mut List, + pub cycle_mark_column: *mut ::core::ffi::c_char, + pub cycle_mark_value: *mut Node, + pub cycle_mark_default: *mut Node, + pub cycle_path_column: *mut ::core::ffi::c_char, + pub location: ParseLoc, + pub cycle_mark_type: Oid, + pub cycle_mark_typmod: ::core::ffi::c_int, + pub cycle_mark_collation: Oid, + pub cycle_mark_neop: Oid, +} +impl Default for CTECycleClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CommonTableExpr { + pub type_: NodeTag, + pub ctename: *mut ::core::ffi::c_char, + pub aliascolnames: *mut List, + pub ctematerialized: CTEMaterialize::Type, + pub ctequery: *mut Node, + pub search_clause: *mut CTESearchClause, + pub cycle_clause: *mut CTECycleClause, + pub location: ParseLoc, + pub cterecursive: bool, + pub cterefcount: ::core::ffi::c_int, + pub ctecolnames: *mut List, + pub ctecoltypes: *mut List, + pub ctecoltypmods: *mut List, + pub ctecolcollations: *mut List, +} +impl Default for CommonTableExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeWhenClause { + pub type_: NodeTag, + pub matchKind: MergeMatchKind::Type, + pub commandType: CmdType::Type, + pub override_: OverridingKind::Type, + pub condition: *mut Node, + pub targetList: *mut List, + pub values: *mut List, +} +impl Default for MergeWhenClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TriggerTransition { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub isNew: bool, + pub isTable: bool, +} +impl Default for TriggerTransition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonOutput { + pub type_: NodeTag, + pub typeName: *mut TypeName, + pub returning: *mut JsonReturning, +} +impl Default for JsonOutput { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArgument { + pub type_: NodeTag, + pub val: *mut JsonValueExpr, + pub name: *mut ::core::ffi::c_char, +} +impl Default for JsonArgument { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonQuotes { + pub type Type = ::core::ffi::c_uint; + pub const JS_QUOTES_UNSPEC: Type = 0; + pub const JS_QUOTES_KEEP: Type = 1; + pub const JS_QUOTES_OMIT: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonFuncExpr { + pub type_: NodeTag, + pub op: JsonExprOp::Type, + pub column_name: *mut ::core::ffi::c_char, + pub context_item: *mut JsonValueExpr, + pub pathspec: *mut Node, + pub passing: *mut List, + pub output: *mut JsonOutput, + pub on_empty: *mut JsonBehavior, + pub on_error: *mut JsonBehavior, + pub wrapper: JsonWrapper::Type, + pub quotes: JsonQuotes::Type, + pub location: ParseLoc, +} +impl Default for JsonFuncExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePathSpec { + pub type_: NodeTag, + pub string: *mut Node, + pub name: *mut ::core::ffi::c_char, + pub name_location: ParseLoc, + pub location: ParseLoc, +} +impl Default for JsonTablePathSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTable { + pub type_: NodeTag, + pub context_item: *mut JsonValueExpr, + pub pathspec: *mut JsonTablePathSpec, + pub passing: *mut List, + pub columns: *mut List, + pub on_error: *mut JsonBehavior, + pub alias: *mut Alias, + pub lateral: bool, + pub location: ParseLoc, +} +impl Default for JsonTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonTableColumnType { + pub type Type = ::core::ffi::c_uint; + pub const JTC_FOR_ORDINALITY: Type = 0; + pub const JTC_REGULAR: Type = 1; + pub const JTC_EXISTS: Type = 2; + pub const JTC_FORMATTED: Type = 3; + pub const JTC_NESTED: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTableColumn { + pub type_: NodeTag, + pub coltype: JsonTableColumnType::Type, + pub name: *mut ::core::ffi::c_char, + pub typeName: *mut TypeName, + pub pathspec: *mut JsonTablePathSpec, + pub format: *mut JsonFormat, + pub wrapper: JsonWrapper::Type, + pub quotes: JsonQuotes::Type, + pub columns: *mut List, + pub on_empty: *mut JsonBehavior, + pub on_error: *mut JsonBehavior, + pub location: ParseLoc, +} +impl Default for JsonTableColumn { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonKeyValue { + pub type_: NodeTag, + pub key: *mut Expr, + pub value: *mut JsonValueExpr, +} +impl Default for JsonKeyValue { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonParseExpr { + pub type_: NodeTag, + pub expr: *mut JsonValueExpr, + pub output: *mut JsonOutput, + pub unique_keys: bool, + pub location: ParseLoc, +} +impl Default for JsonParseExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonScalarExpr { + pub type_: NodeTag, + pub expr: *mut Expr, + pub output: *mut JsonOutput, + pub location: ParseLoc, +} +impl Default for JsonScalarExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonSerializeExpr { + pub type_: NodeTag, + pub expr: *mut JsonValueExpr, + pub output: *mut JsonOutput, + pub location: ParseLoc, +} +impl Default for JsonSerializeExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonObjectConstructor { + pub type_: NodeTag, + pub exprs: *mut List, + pub output: *mut JsonOutput, + pub absent_on_null: bool, + pub unique: bool, + pub location: ParseLoc, +} +impl Default for JsonObjectConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArrayConstructor { + pub type_: NodeTag, + pub exprs: *mut List, + pub output: *mut JsonOutput, + pub absent_on_null: bool, + pub location: ParseLoc, +} +impl Default for JsonArrayConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArrayQueryConstructor { + pub type_: NodeTag, + pub query: *mut Node, + pub output: *mut JsonOutput, + pub format: *mut JsonFormat, + pub absent_on_null: bool, + pub location: ParseLoc, +} +impl Default for JsonArrayQueryConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonAggConstructor { + pub type_: NodeTag, + pub output: *mut JsonOutput, + pub agg_filter: *mut Node, + pub agg_order: *mut List, + pub over: *mut WindowDef, + pub location: ParseLoc, +} +impl Default for JsonAggConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonObjectAgg { + pub type_: NodeTag, + pub constructor: *mut JsonAggConstructor, + pub arg: *mut JsonKeyValue, + pub absent_on_null: bool, + pub unique: bool, +} +impl Default for JsonObjectAgg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArrayAgg { + pub type_: NodeTag, + pub constructor: *mut JsonAggConstructor, + pub arg: *mut JsonValueExpr, + pub absent_on_null: bool, +} +impl Default for JsonArrayAgg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[doc = "\t\tRaw Grammar Output Statements"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RawStmt { + pub type_: NodeTag, + pub stmt: *mut Node, + pub stmt_location: ParseLoc, + pub stmt_len: ParseLoc, +} +impl Default for RawStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[doc = "\t\tOptimizable Statements"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InsertStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub cols: *mut List, + pub selectStmt: *mut Node, + pub onConflictClause: *mut OnConflictClause, + pub returningList: *mut List, + pub withClause: *mut WithClause, + pub override_: OverridingKind::Type, +} +impl Default for InsertStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DeleteStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub usingClause: *mut List, + pub whereClause: *mut Node, + pub returningList: *mut List, + pub withClause: *mut WithClause, +} +impl Default for DeleteStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UpdateStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub targetList: *mut List, + pub whereClause: *mut Node, + pub fromClause: *mut List, + pub returningList: *mut List, + pub withClause: *mut WithClause, +} +impl Default for UpdateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub sourceRelation: *mut Node, + pub joinCondition: *mut Node, + pub mergeWhenClauses: *mut List, + pub returningList: *mut List, + pub withClause: *mut WithClause, +} +impl Default for MergeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SetOperation { + pub type Type = ::core::ffi::c_uint; + pub const SETOP_NONE: Type = 0; + pub const SETOP_UNION: Type = 1; + pub const SETOP_INTERSECT: Type = 2; + pub const SETOP_EXCEPT: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SelectStmt { + pub type_: NodeTag, + pub distinctClause: *mut List, + pub intoClause: *mut IntoClause, + pub targetList: *mut List, + pub fromClause: *mut List, + pub whereClause: *mut Node, + pub groupClause: *mut List, + pub groupDistinct: bool, + pub havingClause: *mut Node, + pub windowClause: *mut List, + pub valuesLists: *mut List, + pub sortClause: *mut List, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, + pub lockingClause: *mut List, + pub withClause: *mut WithClause, + pub op: SetOperation::Type, + pub all: bool, + pub larg: *mut SelectStmt, + pub rarg: *mut SelectStmt, +} +impl Default for SelectStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOperationStmt { + pub type_: NodeTag, + pub op: SetOperation::Type, + pub all: bool, + pub larg: *mut Node, + pub rarg: *mut Node, + pub colTypes: *mut List, + pub colTypmods: *mut List, + pub colCollations: *mut List, + pub groupClauses: *mut List, +} +impl Default for SetOperationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReturnStmt { + pub type_: NodeTag, + pub returnval: *mut Node, +} +impl Default for ReturnStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLAssignStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub indirection: *mut List, + pub nnames: ::core::ffi::c_int, + pub val: *mut SelectStmt, + pub location: ParseLoc, +} +impl Default for PLAssignStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ObjectType { + #[doc = "\t\tOther Statements (no optimizations required)\n\n\t\tThese are not touched by parser/analyze.c except to put them into\n\t\tthe utilityStmt field of a Query. This is eventually passed to\n\t\tProcessUtility (by-passing rewriting and planning). Some of the\n\t\tstatements do need attention from parse analysis, and this is\n\t\tdone by routines in parser/parse_utilcmd.c after ProcessUtility\n\t\treceives the command for execution.\n\t\tDECLARE CURSOR, EXPLAIN, and CREATE TABLE AS are special cases:\n\t\tthey contain optimizable statements, which get processed normally\n\t\tby parser/analyze.c."] + pub type Type = ::core::ffi::c_uint; + pub const OBJECT_ACCESS_METHOD: Type = 0; + pub const OBJECT_AGGREGATE: Type = 1; + pub const OBJECT_AMOP: Type = 2; + pub const OBJECT_AMPROC: Type = 3; + pub const OBJECT_ATTRIBUTE: Type = 4; + pub const OBJECT_CAST: Type = 5; + pub const OBJECT_COLUMN: Type = 6; + pub const OBJECT_COLLATION: Type = 7; + pub const OBJECT_CONVERSION: Type = 8; + pub const OBJECT_DATABASE: Type = 9; + pub const OBJECT_DEFAULT: Type = 10; + pub const OBJECT_DEFACL: Type = 11; + pub const OBJECT_DOMAIN: Type = 12; + pub const OBJECT_DOMCONSTRAINT: Type = 13; + pub const OBJECT_EVENT_TRIGGER: Type = 14; + pub const OBJECT_EXTENSION: Type = 15; + pub const OBJECT_FDW: Type = 16; + pub const OBJECT_FOREIGN_SERVER: Type = 17; + pub const OBJECT_FOREIGN_TABLE: Type = 18; + pub const OBJECT_FUNCTION: Type = 19; + pub const OBJECT_INDEX: Type = 20; + pub const OBJECT_LANGUAGE: Type = 21; + pub const OBJECT_LARGEOBJECT: Type = 22; + pub const OBJECT_MATVIEW: Type = 23; + pub const OBJECT_OPCLASS: Type = 24; + pub const OBJECT_OPERATOR: Type = 25; + pub const OBJECT_OPFAMILY: Type = 26; + pub const OBJECT_PARAMETER_ACL: Type = 27; + pub const OBJECT_POLICY: Type = 28; + pub const OBJECT_PROCEDURE: Type = 29; + pub const OBJECT_PUBLICATION: Type = 30; + pub const OBJECT_PUBLICATION_NAMESPACE: Type = 31; + pub const OBJECT_PUBLICATION_REL: Type = 32; + pub const OBJECT_ROLE: Type = 33; + pub const OBJECT_ROUTINE: Type = 34; + pub const OBJECT_RULE: Type = 35; + pub const OBJECT_SCHEMA: Type = 36; + pub const OBJECT_SEQUENCE: Type = 37; + pub const OBJECT_SUBSCRIPTION: Type = 38; + pub const OBJECT_STATISTIC_EXT: Type = 39; + pub const OBJECT_TABCONSTRAINT: Type = 40; + pub const OBJECT_TABLE: Type = 41; + pub const OBJECT_TABLESPACE: Type = 42; + pub const OBJECT_TRANSFORM: Type = 43; + pub const OBJECT_TRIGGER: Type = 44; + pub const OBJECT_TSCONFIGURATION: Type = 45; + pub const OBJECT_TSDICTIONARY: Type = 46; + pub const OBJECT_TSPARSER: Type = 47; + pub const OBJECT_TSTEMPLATE: Type = 48; + pub const OBJECT_TYPE: Type = 49; + pub const OBJECT_USER_MAPPING: Type = 50; + pub const OBJECT_VIEW: Type = 51; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateSchemaStmt { + pub type_: NodeTag, + pub schemaname: *mut ::core::ffi::c_char, + pub authrole: *mut RoleSpec, + pub schemaElts: *mut List, + pub if_not_exists: bool, +} +impl Default for CreateSchemaStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DropBehavior { + pub type Type = ::core::ffi::c_uint; + pub const DROP_RESTRICT: Type = 0; + pub const DROP_CASCADE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub cmds: *mut List, + pub objtype: ObjectType::Type, + pub missing_ok: bool, +} +impl Default for AlterTableStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterTableType { + pub type Type = ::core::ffi::c_uint; + pub const AT_AddColumn: Type = 0; + pub const AT_AddColumnToView: Type = 1; + pub const AT_ColumnDefault: Type = 2; + pub const AT_CookedColumnDefault: Type = 3; + pub const AT_DropNotNull: Type = 4; + pub const AT_SetNotNull: Type = 5; + pub const AT_SetExpression: Type = 6; + pub const AT_DropExpression: Type = 7; + pub const AT_CheckNotNull: Type = 8; + pub const AT_SetStatistics: Type = 9; + pub const AT_SetOptions: Type = 10; + pub const AT_ResetOptions: Type = 11; + pub const AT_SetStorage: Type = 12; + pub const AT_SetCompression: Type = 13; + pub const AT_DropColumn: Type = 14; + pub const AT_AddIndex: Type = 15; + pub const AT_ReAddIndex: Type = 16; + pub const AT_AddConstraint: Type = 17; + pub const AT_ReAddConstraint: Type = 18; + pub const AT_ReAddDomainConstraint: Type = 19; + pub const AT_AlterConstraint: Type = 20; + pub const AT_ValidateConstraint: Type = 21; + pub const AT_AddIndexConstraint: Type = 22; + pub const AT_DropConstraint: Type = 23; + pub const AT_ReAddComment: Type = 24; + pub const AT_AlterColumnType: Type = 25; + pub const AT_AlterColumnGenericOptions: Type = 26; + pub const AT_ChangeOwner: Type = 27; + pub const AT_ClusterOn: Type = 28; + pub const AT_DropCluster: Type = 29; + pub const AT_SetLogged: Type = 30; + pub const AT_SetUnLogged: Type = 31; + pub const AT_DropOids: Type = 32; + pub const AT_SetAccessMethod: Type = 33; + pub const AT_SetTableSpace: Type = 34; + pub const AT_SetRelOptions: Type = 35; + pub const AT_ResetRelOptions: Type = 36; + pub const AT_ReplaceRelOptions: Type = 37; + pub const AT_EnableTrig: Type = 38; + pub const AT_EnableAlwaysTrig: Type = 39; + pub const AT_EnableReplicaTrig: Type = 40; + pub const AT_DisableTrig: Type = 41; + pub const AT_EnableTrigAll: Type = 42; + pub const AT_DisableTrigAll: Type = 43; + pub const AT_EnableTrigUser: Type = 44; + pub const AT_DisableTrigUser: Type = 45; + pub const AT_EnableRule: Type = 46; + pub const AT_EnableAlwaysRule: Type = 47; + pub const AT_EnableReplicaRule: Type = 48; + pub const AT_DisableRule: Type = 49; + pub const AT_AddInherit: Type = 50; + pub const AT_DropInherit: Type = 51; + pub const AT_AddOf: Type = 52; + pub const AT_DropOf: Type = 53; + pub const AT_ReplicaIdentity: Type = 54; + pub const AT_EnableRowSecurity: Type = 55; + pub const AT_DisableRowSecurity: Type = 56; + pub const AT_ForceRowSecurity: Type = 57; + pub const AT_NoForceRowSecurity: Type = 58; + pub const AT_GenericOptions: Type = 59; + pub const AT_AttachPartition: Type = 60; + pub const AT_DetachPartition: Type = 61; + pub const AT_DetachPartitionFinalize: Type = 62; + pub const AT_AddIdentity: Type = 63; + pub const AT_SetIdentity: Type = 64; + pub const AT_DropIdentity: Type = 65; + pub const AT_ReAddStatistics: Type = 66; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicaIdentityStmt { + pub type_: NodeTag, + pub identity_type: ::core::ffi::c_char, + pub name: *mut ::core::ffi::c_char, +} +impl Default for ReplicaIdentityStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableCmd { + pub type_: NodeTag, + pub subtype: AlterTableType::Type, + pub name: *mut ::core::ffi::c_char, + pub num: int16, + pub newowner: *mut RoleSpec, + pub def: *mut Node, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, + pub recurse: bool, +} +impl Default for AlterTableCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterCollationStmt { + pub type_: NodeTag, + pub collname: *mut List, +} +impl Default for AlterCollationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDomainStmt { + pub type_: NodeTag, + pub subtype: ::core::ffi::c_char, + pub typeName: *mut List, + pub name: *mut ::core::ffi::c_char, + pub def: *mut Node, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, +} +impl Default for AlterDomainStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod GrantTargetType { + pub type Type = ::core::ffi::c_uint; + pub const ACL_TARGET_OBJECT: Type = 0; + pub const ACL_TARGET_ALL_IN_SCHEMA: Type = 1; + pub const ACL_TARGET_DEFAULTS: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GrantStmt { + pub type_: NodeTag, + pub is_grant: bool, + pub targtype: GrantTargetType::Type, + pub objtype: ObjectType::Type, + pub objects: *mut List, + pub privileges: *mut List, + pub grantees: *mut List, + pub grant_option: bool, + pub grantor: *mut RoleSpec, + pub behavior: DropBehavior::Type, +} +impl Default for GrantStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectWithArgs { + pub type_: NodeTag, + pub objname: *mut List, + pub objargs: *mut List, + pub objfuncargs: *mut List, + pub args_unspecified: bool, +} +impl Default for ObjectWithArgs { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AccessPriv { + pub type_: NodeTag, + pub priv_name: *mut ::core::ffi::c_char, + pub cols: *mut List, +} +impl Default for AccessPriv { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GrantRoleStmt { + pub type_: NodeTag, + pub granted_roles: *mut List, + pub grantee_roles: *mut List, + pub is_grant: bool, + pub opt: *mut List, + pub grantor: *mut RoleSpec, + pub behavior: DropBehavior::Type, +} +impl Default for GrantRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDefaultPrivilegesStmt { + pub type_: NodeTag, + pub options: *mut List, + pub action: *mut GrantStmt, +} +impl Default for AlterDefaultPrivilegesStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub query: *mut Node, + pub attlist: *mut List, + pub is_from: bool, + pub is_program: bool, + pub filename: *mut ::core::ffi::c_char, + pub options: *mut List, + pub whereClause: *mut Node, +} +impl Default for CopyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod VariableSetKind { + pub type Type = ::core::ffi::c_uint; + pub const VAR_SET_VALUE: Type = 0; + pub const VAR_SET_DEFAULT: Type = 1; + pub const VAR_SET_CURRENT: Type = 2; + pub const VAR_SET_MULTI: Type = 3; + pub const VAR_RESET: Type = 4; + pub const VAR_RESET_ALL: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VariableSetStmt { + pub type_: NodeTag, + pub kind: VariableSetKind::Type, + pub name: *mut ::core::ffi::c_char, + pub args: *mut List, + pub is_local: bool, +} +impl Default for VariableSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VariableShowStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, +} +impl Default for VariableShowStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub tableElts: *mut List, + pub inhRelations: *mut List, + pub partbound: *mut PartitionBoundSpec, + pub partspec: *mut PartitionSpec, + pub ofTypename: *mut TypeName, + pub constraints: *mut List, + pub options: *mut List, + pub oncommit: OnCommitAction::Type, + pub tablespacename: *mut ::core::ffi::c_char, + pub accessMethod: *mut ::core::ffi::c_char, + pub if_not_exists: bool, +} +impl Default for CreateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ConstrType { + pub type Type = ::core::ffi::c_uint; + pub const CONSTR_NULL: Type = 0; + pub const CONSTR_NOTNULL: Type = 1; + pub const CONSTR_DEFAULT: Type = 2; + pub const CONSTR_IDENTITY: Type = 3; + pub const CONSTR_GENERATED: Type = 4; + pub const CONSTR_CHECK: Type = 5; + pub const CONSTR_PRIMARY: Type = 6; + pub const CONSTR_UNIQUE: Type = 7; + pub const CONSTR_EXCLUSION: Type = 8; + pub const CONSTR_FOREIGN: Type = 9; + pub const CONSTR_ATTR_DEFERRABLE: Type = 10; + pub const CONSTR_ATTR_NOT_DEFERRABLE: Type = 11; + pub const CONSTR_ATTR_DEFERRED: Type = 12; + pub const CONSTR_ATTR_IMMEDIATE: Type = 13; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Constraint { + pub type_: NodeTag, + pub contype: ConstrType::Type, + pub conname: *mut ::core::ffi::c_char, + pub deferrable: bool, + pub initdeferred: bool, + pub skip_validation: bool, + pub initially_valid: bool, + pub is_no_inherit: bool, + pub raw_expr: *mut Node, + pub cooked_expr: *mut ::core::ffi::c_char, + pub generated_when: ::core::ffi::c_char, + pub inhcount: ::core::ffi::c_int, + pub nulls_not_distinct: bool, + pub keys: *mut List, + pub including: *mut List, + pub exclusions: *mut List, + pub options: *mut List, + pub indexname: *mut ::core::ffi::c_char, + pub indexspace: *mut ::core::ffi::c_char, + pub reset_default_tblspc: bool, + pub access_method: *mut ::core::ffi::c_char, + pub where_clause: *mut Node, + pub pktable: *mut RangeVar, + pub fk_attrs: *mut List, + pub pk_attrs: *mut List, + pub fk_matchtype: ::core::ffi::c_char, + pub fk_upd_action: ::core::ffi::c_char, + pub fk_del_action: ::core::ffi::c_char, + pub fk_del_set_cols: *mut List, + pub old_conpfeqop: *mut List, + pub old_pktable_oid: Oid, + pub location: ParseLoc, +} +impl Default for Constraint { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTableSpaceStmt { + pub type_: NodeTag, + pub tablespacename: *mut ::core::ffi::c_char, + pub owner: *mut RoleSpec, + pub location: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreateTableSpaceStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropTableSpaceStmt { + pub type_: NodeTag, + pub tablespacename: *mut ::core::ffi::c_char, + pub missing_ok: bool, +} +impl Default for DropTableSpaceStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableSpaceOptionsStmt { + pub type_: NodeTag, + pub tablespacename: *mut ::core::ffi::c_char, + pub options: *mut List, + pub isReset: bool, +} +impl Default for AlterTableSpaceOptionsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableMoveAllStmt { + pub type_: NodeTag, + pub orig_tablespacename: *mut ::core::ffi::c_char, + pub objtype: ObjectType::Type, + pub roles: *mut List, + pub new_tablespacename: *mut ::core::ffi::c_char, + pub nowait: bool, +} +impl Default for AlterTableMoveAllStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateExtensionStmt { + pub type_: NodeTag, + pub extname: *mut ::core::ffi::c_char, + pub if_not_exists: bool, + pub options: *mut List, +} +impl Default for CreateExtensionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterExtensionStmt { + pub type_: NodeTag, + pub extname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterExtensionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterExtensionContentsStmt { + pub type_: NodeTag, + pub extname: *mut ::core::ffi::c_char, + pub action: ::core::ffi::c_int, + pub objtype: ObjectType::Type, + pub object: *mut Node, +} +impl Default for AlterExtensionContentsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateFdwStmt { + pub type_: NodeTag, + pub fdwname: *mut ::core::ffi::c_char, + pub func_options: *mut List, + pub options: *mut List, +} +impl Default for CreateFdwStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterFdwStmt { + pub type_: NodeTag, + pub fdwname: *mut ::core::ffi::c_char, + pub func_options: *mut List, + pub options: *mut List, +} +impl Default for AlterFdwStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateForeignServerStmt { + pub type_: NodeTag, + pub servername: *mut ::core::ffi::c_char, + pub servertype: *mut ::core::ffi::c_char, + pub version: *mut ::core::ffi::c_char, + pub fdwname: *mut ::core::ffi::c_char, + pub if_not_exists: bool, + pub options: *mut List, +} +impl Default for CreateForeignServerStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterForeignServerStmt { + pub type_: NodeTag, + pub servername: *mut ::core::ffi::c_char, + pub version: *mut ::core::ffi::c_char, + pub options: *mut List, + pub has_version: bool, +} +impl Default for AlterForeignServerStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateForeignTableStmt { + pub base: CreateStmt, + pub servername: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreateForeignTableStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateUserMappingStmt { + pub type_: NodeTag, + pub user: *mut RoleSpec, + pub servername: *mut ::core::ffi::c_char, + pub if_not_exists: bool, + pub options: *mut List, +} +impl Default for CreateUserMappingStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterUserMappingStmt { + pub type_: NodeTag, + pub user: *mut RoleSpec, + pub servername: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterUserMappingStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropUserMappingStmt { + pub type_: NodeTag, + pub user: *mut RoleSpec, + pub servername: *mut ::core::ffi::c_char, + pub missing_ok: bool, +} +impl Default for DropUserMappingStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ImportForeignSchemaType { + pub type Type = ::core::ffi::c_uint; + pub const FDW_IMPORT_SCHEMA_ALL: Type = 0; + pub const FDW_IMPORT_SCHEMA_LIMIT_TO: Type = 1; + pub const FDW_IMPORT_SCHEMA_EXCEPT: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ImportForeignSchemaStmt { + pub type_: NodeTag, + pub server_name: *mut ::core::ffi::c_char, + pub remote_schema: *mut ::core::ffi::c_char, + pub local_schema: *mut ::core::ffi::c_char, + pub list_type: ImportForeignSchemaType::Type, + pub table_list: *mut List, + pub options: *mut List, +} +impl Default for ImportForeignSchemaStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatePolicyStmt { + pub type_: NodeTag, + pub policy_name: *mut ::core::ffi::c_char, + pub table: *mut RangeVar, + pub cmd_name: *mut ::core::ffi::c_char, + pub permissive: bool, + pub roles: *mut List, + pub qual: *mut Node, + pub with_check: *mut Node, +} +impl Default for CreatePolicyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterPolicyStmt { + pub type_: NodeTag, + pub policy_name: *mut ::core::ffi::c_char, + pub table: *mut RangeVar, + pub roles: *mut List, + pub qual: *mut Node, + pub with_check: *mut Node, +} +impl Default for AlterPolicyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateAmStmt { + pub type_: NodeTag, + pub amname: *mut ::core::ffi::c_char, + pub handler_name: *mut List, + pub amtype: ::core::ffi::c_char, +} +impl Default for CreateAmStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTrigStmt { + pub type_: NodeTag, + pub replace: bool, + pub isconstraint: bool, + pub trigname: *mut ::core::ffi::c_char, + pub relation: *mut RangeVar, + pub funcname: *mut List, + pub args: *mut List, + pub row: bool, + pub timing: int16, + pub events: int16, + pub columns: *mut List, + pub whenClause: *mut Node, + pub transitionRels: *mut List, + pub deferrable: bool, + pub initdeferred: bool, + pub constrrel: *mut RangeVar, +} +impl Default for CreateTrigStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateEventTrigStmt { + pub type_: NodeTag, + pub trigname: *mut ::core::ffi::c_char, + pub eventname: *mut ::core::ffi::c_char, + pub whenclause: *mut List, + pub funcname: *mut List, +} +impl Default for CreateEventTrigStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterEventTrigStmt { + pub type_: NodeTag, + pub trigname: *mut ::core::ffi::c_char, + pub tgenabled: ::core::ffi::c_char, +} +impl Default for AlterEventTrigStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatePLangStmt { + pub type_: NodeTag, + pub replace: bool, + pub plname: *mut ::core::ffi::c_char, + pub plhandler: *mut List, + pub plinline: *mut List, + pub plvalidator: *mut List, + pub pltrusted: bool, +} +impl Default for CreatePLangStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RoleStmtType { + pub type Type = ::core::ffi::c_uint; + pub const ROLESTMT_ROLE: Type = 0; + pub const ROLESTMT_USER: Type = 1; + pub const ROLESTMT_GROUP: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateRoleStmt { + pub type_: NodeTag, + pub stmt_type: RoleStmtType::Type, + pub role: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreateRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterRoleStmt { + pub type_: NodeTag, + pub role: *mut RoleSpec, + pub options: *mut List, + pub action: ::core::ffi::c_int, +} +impl Default for AlterRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterRoleSetStmt { + pub type_: NodeTag, + pub role: *mut RoleSpec, + pub database: *mut ::core::ffi::c_char, + pub setstmt: *mut VariableSetStmt, +} +impl Default for AlterRoleSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropRoleStmt { + pub type_: NodeTag, + pub roles: *mut List, + pub missing_ok: bool, +} +impl Default for DropRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateSeqStmt { + pub type_: NodeTag, + pub sequence: *mut RangeVar, + pub options: *mut List, + pub ownerId: Oid, + pub for_identity: bool, + pub if_not_exists: bool, +} +impl Default for CreateSeqStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterSeqStmt { + pub type_: NodeTag, + pub sequence: *mut RangeVar, + pub options: *mut List, + pub for_identity: bool, + pub missing_ok: bool, +} +impl Default for AlterSeqStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DefineStmt { + pub type_: NodeTag, + pub kind: ObjectType::Type, + pub oldstyle: bool, + pub defnames: *mut List, + pub args: *mut List, + pub definition: *mut List, + pub if_not_exists: bool, + pub replace: bool, +} +impl Default for DefineStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateDomainStmt { + pub type_: NodeTag, + pub domainname: *mut List, + pub typeName: *mut TypeName, + pub collClause: *mut CollateClause, + pub constraints: *mut List, +} +impl Default for CreateDomainStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateOpClassStmt { + pub type_: NodeTag, + pub opclassname: *mut List, + pub opfamilyname: *mut List, + pub amname: *mut ::core::ffi::c_char, + pub datatype: *mut TypeName, + pub items: *mut List, + pub isDefault: bool, +} +impl Default for CreateOpClassStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateOpClassItem { + pub type_: NodeTag, + pub itemtype: ::core::ffi::c_int, + pub name: *mut ObjectWithArgs, + pub number: ::core::ffi::c_int, + pub order_family: *mut List, + pub class_args: *mut List, + pub storedtype: *mut TypeName, +} +impl Default for CreateOpClassItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateOpFamilyStmt { + pub type_: NodeTag, + pub opfamilyname: *mut List, + pub amname: *mut ::core::ffi::c_char, +} +impl Default for CreateOpFamilyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterOpFamilyStmt { + pub type_: NodeTag, + pub opfamilyname: *mut List, + pub amname: *mut ::core::ffi::c_char, + pub isDrop: bool, + pub items: *mut List, +} +impl Default for AlterOpFamilyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropStmt { + pub type_: NodeTag, + pub objects: *mut List, + pub removeType: ObjectType::Type, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, + pub concurrent: bool, +} +impl Default for DropStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TruncateStmt { + pub type_: NodeTag, + pub relations: *mut List, + pub restart_seqs: bool, + pub behavior: DropBehavior::Type, +} +impl Default for TruncateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CommentStmt { + pub type_: NodeTag, + pub objtype: ObjectType::Type, + pub object: *mut Node, + pub comment: *mut ::core::ffi::c_char, +} +impl Default for CommentStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SecLabelStmt { + pub type_: NodeTag, + pub objtype: ObjectType::Type, + pub object: *mut Node, + pub provider: *mut ::core::ffi::c_char, + pub label: *mut ::core::ffi::c_char, +} +impl Default for SecLabelStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DeclareCursorStmt { + pub type_: NodeTag, + pub portalname: *mut ::core::ffi::c_char, + pub options: ::core::ffi::c_int, + pub query: *mut Node, +} +impl Default for DeclareCursorStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClosePortalStmt { + pub type_: NodeTag, + pub portalname: *mut ::core::ffi::c_char, +} +impl Default for ClosePortalStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod FetchDirection { + pub type Type = ::core::ffi::c_uint; + pub const FETCH_FORWARD: Type = 0; + pub const FETCH_BACKWARD: Type = 1; + pub const FETCH_ABSOLUTE: Type = 2; + pub const FETCH_RELATIVE: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FetchStmt { + pub type_: NodeTag, + pub direction: FetchDirection::Type, + pub howMany: ::core::ffi::c_long, + pub portalname: *mut ::core::ffi::c_char, + pub ismove: bool, +} +impl Default for FetchStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexStmt { + pub type_: NodeTag, + pub idxname: *mut ::core::ffi::c_char, + pub relation: *mut RangeVar, + pub accessMethod: *mut ::core::ffi::c_char, + pub tableSpace: *mut ::core::ffi::c_char, + pub indexParams: *mut List, + pub indexIncludingParams: *mut List, + pub options: *mut List, + pub whereClause: *mut Node, + pub excludeOpNames: *mut List, + pub idxcomment: *mut ::core::ffi::c_char, + pub indexOid: Oid, + pub oldNumber: RelFileNumber, + pub oldCreateSubid: SubTransactionId, + pub oldFirstRelfilelocatorSubid: SubTransactionId, + pub unique: bool, + pub nulls_not_distinct: bool, + pub primary: bool, + pub isconstraint: bool, + pub deferrable: bool, + pub initdeferred: bool, + pub transformed: bool, + pub concurrent: bool, + pub if_not_exists: bool, + pub reset_default_tblspc: bool, +} +impl Default for IndexStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateStatsStmt { + pub type_: NodeTag, + pub defnames: *mut List, + pub stat_types: *mut List, + pub exprs: *mut List, + pub relations: *mut List, + pub stxcomment: *mut ::core::ffi::c_char, + pub transformed: bool, + pub if_not_exists: bool, +} +impl Default for CreateStatsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StatsElem { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub expr: *mut Node, +} +impl Default for StatsElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterStatsStmt { + pub type_: NodeTag, + pub defnames: *mut List, + pub stxstattarget: *mut Node, + pub missing_ok: bool, +} +impl Default for AlterStatsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateFunctionStmt { + pub type_: NodeTag, + pub is_procedure: bool, + pub replace: bool, + pub funcname: *mut List, + pub parameters: *mut List, + pub returnType: *mut TypeName, + pub options: *mut List, + pub sql_body: *mut Node, +} +impl Default for CreateFunctionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod FunctionParameterMode { + pub type Type = ::core::ffi::c_uint; + pub const FUNC_PARAM_IN: Type = 105; + pub const FUNC_PARAM_OUT: Type = 111; + pub const FUNC_PARAM_INOUT: Type = 98; + pub const FUNC_PARAM_VARIADIC: Type = 118; + pub const FUNC_PARAM_TABLE: Type = 116; + pub const FUNC_PARAM_DEFAULT: Type = 100; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionParameter { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub argType: *mut TypeName, + pub mode: FunctionParameterMode::Type, + pub defexpr: *mut Node, +} +impl Default for FunctionParameter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterFunctionStmt { + pub type_: NodeTag, + pub objtype: ObjectType::Type, + pub func: *mut ObjectWithArgs, + pub actions: *mut List, +} +impl Default for AlterFunctionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DoStmt { + pub type_: NodeTag, + pub args: *mut List, +} +impl Default for DoStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InlineCodeBlock { + pub type_: NodeTag, + pub source_text: *mut ::core::ffi::c_char, + pub langOid: Oid, + pub langIsTrusted: bool, + pub atomic: bool, +} +impl Default for InlineCodeBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CallStmt { + pub type_: NodeTag, + pub funccall: *mut FuncCall, + pub funcexpr: *mut FuncExpr, + pub outargs: *mut List, +} +impl Default for CallStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CallContext { + pub type_: NodeTag, + pub atomic: bool, +} +impl Default for CallContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RenameStmt { + pub type_: NodeTag, + pub renameType: ObjectType::Type, + pub relationType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub subname: *mut ::core::ffi::c_char, + pub newname: *mut ::core::ffi::c_char, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, +} +impl Default for RenameStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterObjectDependsStmt { + pub type_: NodeTag, + pub objectType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub extname: *mut String, + pub remove: bool, +} +impl Default for AlterObjectDependsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterObjectSchemaStmt { + pub type_: NodeTag, + pub objectType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub newschema: *mut ::core::ffi::c_char, + pub missing_ok: bool, +} +impl Default for AlterObjectSchemaStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterOwnerStmt { + pub type_: NodeTag, + pub objectType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub newowner: *mut RoleSpec, +} +impl Default for AlterOwnerStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterOperatorStmt { + pub type_: NodeTag, + pub opername: *mut ObjectWithArgs, + pub options: *mut List, +} +impl Default for AlterOperatorStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTypeStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub options: *mut List, +} +impl Default for AlterTypeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RuleStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub rulename: *mut ::core::ffi::c_char, + pub whereClause: *mut Node, + pub event: CmdType::Type, + pub instead: bool, + pub actions: *mut List, + pub replace: bool, +} +impl Default for RuleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NotifyStmt { + pub type_: NodeTag, + pub conditionname: *mut ::core::ffi::c_char, + pub payload: *mut ::core::ffi::c_char, +} +impl Default for NotifyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ListenStmt { + pub type_: NodeTag, + pub conditionname: *mut ::core::ffi::c_char, +} +impl Default for ListenStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UnlistenStmt { + pub type_: NodeTag, + pub conditionname: *mut ::core::ffi::c_char, +} +impl Default for UnlistenStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TransactionStmtKind { + pub type Type = ::core::ffi::c_uint; + pub const TRANS_STMT_BEGIN: Type = 0; + pub const TRANS_STMT_START: Type = 1; + pub const TRANS_STMT_COMMIT: Type = 2; + pub const TRANS_STMT_ROLLBACK: Type = 3; + pub const TRANS_STMT_SAVEPOINT: Type = 4; + pub const TRANS_STMT_RELEASE: Type = 5; + pub const TRANS_STMT_ROLLBACK_TO: Type = 6; + pub const TRANS_STMT_PREPARE: Type = 7; + pub const TRANS_STMT_COMMIT_PREPARED: Type = 8; + pub const TRANS_STMT_ROLLBACK_PREPARED: Type = 9; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TransactionStmt { + pub type_: NodeTag, + pub kind: TransactionStmtKind::Type, + pub options: *mut List, + pub savepoint_name: *mut ::core::ffi::c_char, + pub gid: *mut ::core::ffi::c_char, + pub chain: bool, + pub location: ParseLoc, +} +impl Default for TransactionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CompositeTypeStmt { + pub type_: NodeTag, + pub typevar: *mut RangeVar, + pub coldeflist: *mut List, +} +impl Default for CompositeTypeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateEnumStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub vals: *mut List, +} +impl Default for CreateEnumStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateRangeStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub params: *mut List, +} +impl Default for CreateRangeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterEnumStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub oldVal: *mut ::core::ffi::c_char, + pub newVal: *mut ::core::ffi::c_char, + pub newValNeighbor: *mut ::core::ffi::c_char, + pub newValIsAfter: bool, + pub skipIfNewValExists: bool, +} +impl Default for AlterEnumStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ViewCheckOption { + pub type Type = ::core::ffi::c_uint; + pub const NO_CHECK_OPTION: Type = 0; + pub const LOCAL_CHECK_OPTION: Type = 1; + pub const CASCADED_CHECK_OPTION: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ViewStmt { + pub type_: NodeTag, + pub view: *mut RangeVar, + pub aliases: *mut List, + pub query: *mut Node, + pub replace: bool, + pub options: *mut List, + pub withCheckOption: ViewCheckOption::Type, +} +impl Default for ViewStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LoadStmt { + pub type_: NodeTag, + pub filename: *mut ::core::ffi::c_char, +} +impl Default for LoadStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatedbStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreatedbStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDatabaseStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterDatabaseStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDatabaseRefreshCollStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, +} +impl Default for AlterDatabaseRefreshCollStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDatabaseSetStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub setstmt: *mut VariableSetStmt, +} +impl Default for AlterDatabaseSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropdbStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub missing_ok: bool, + pub options: *mut List, +} +impl Default for DropdbStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterSystemStmt { + pub type_: NodeTag, + pub setstmt: *mut VariableSetStmt, +} +impl Default for AlterSystemStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClusterStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub indexname: *mut ::core::ffi::c_char, + pub params: *mut List, +} +impl Default for ClusterStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacuumStmt { + pub type_: NodeTag, + pub options: *mut List, + pub rels: *mut List, + pub is_vacuumcmd: bool, +} +impl Default for VacuumStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacuumRelation { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub oid: Oid, + pub va_cols: *mut List, +} +impl Default for VacuumRelation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExplainStmt { + pub type_: NodeTag, + pub query: *mut Node, + pub options: *mut List, +} +impl Default for ExplainStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTableAsStmt { + pub type_: NodeTag, + pub query: *mut Node, + pub into: *mut IntoClause, + pub objtype: ObjectType::Type, + pub is_select_into: bool, + pub if_not_exists: bool, +} +impl Default for CreateTableAsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RefreshMatViewStmt { + pub type_: NodeTag, + pub concurrent: bool, + pub skipData: bool, + pub relation: *mut RangeVar, +} +impl Default for RefreshMatViewStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CheckPointStmt { + pub type_: NodeTag, +} +impl Default for CheckPointStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DiscardMode { + pub type Type = ::core::ffi::c_uint; + pub const DISCARD_ALL: Type = 0; + pub const DISCARD_PLANS: Type = 1; + pub const DISCARD_SEQUENCES: Type = 2; + pub const DISCARD_TEMP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DiscardStmt { + pub type_: NodeTag, + pub target: DiscardMode::Type, +} +impl Default for DiscardStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockStmt { + pub type_: NodeTag, + pub relations: *mut List, + pub mode: ::core::ffi::c_int, + pub nowait: bool, +} +impl Default for LockStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConstraintsSetStmt { + pub type_: NodeTag, + pub constraints: *mut List, + pub deferred: bool, +} +impl Default for ConstraintsSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ReindexObjectType { + pub type Type = ::core::ffi::c_uint; + pub const REINDEX_OBJECT_INDEX: Type = 0; + pub const REINDEX_OBJECT_TABLE: Type = 1; + pub const REINDEX_OBJECT_SCHEMA: Type = 2; + pub const REINDEX_OBJECT_SYSTEM: Type = 3; + pub const REINDEX_OBJECT_DATABASE: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReindexStmt { + pub type_: NodeTag, + pub kind: ReindexObjectType::Type, + pub relation: *mut RangeVar, + pub name: *const ::core::ffi::c_char, + pub params: *mut List, +} +impl Default for ReindexStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateConversionStmt { + pub type_: NodeTag, + pub conversion_name: *mut List, + pub for_encoding_name: *mut ::core::ffi::c_char, + pub to_encoding_name: *mut ::core::ffi::c_char, + pub func_name: *mut List, + pub def: bool, +} +impl Default for CreateConversionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateCastStmt { + pub type_: NodeTag, + pub sourcetype: *mut TypeName, + pub targettype: *mut TypeName, + pub func: *mut ObjectWithArgs, + pub context: CoercionContext::Type, + pub inout: bool, +} +impl Default for CreateCastStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTransformStmt { + pub type_: NodeTag, + pub replace: bool, + pub type_name: *mut TypeName, + pub lang: *mut ::core::ffi::c_char, + pub fromsql: *mut ObjectWithArgs, + pub tosql: *mut ObjectWithArgs, +} +impl Default for CreateTransformStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PrepareStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub argtypes: *mut List, + pub query: *mut Node, +} +impl Default for PrepareStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecuteStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub params: *mut List, +} +impl Default for ExecuteStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DeallocateStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub isall: bool, + pub location: ParseLoc, +} +impl Default for DeallocateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropOwnedStmt { + pub type_: NodeTag, + pub roles: *mut List, + pub behavior: DropBehavior::Type, +} +impl Default for DropOwnedStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReassignOwnedStmt { + pub type_: NodeTag, + pub roles: *mut List, + pub newrole: *mut RoleSpec, +} +impl Default for ReassignOwnedStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTSDictionaryStmt { + pub type_: NodeTag, + pub dictname: *mut List, + pub options: *mut List, +} +impl Default for AlterTSDictionaryStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterTSConfigType { + pub type Type = ::core::ffi::c_uint; + pub const ALTER_TSCONFIG_ADD_MAPPING: Type = 0; + pub const ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN: Type = 1; + pub const ALTER_TSCONFIG_REPLACE_DICT: Type = 2; + pub const ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN: Type = 3; + pub const ALTER_TSCONFIG_DROP_MAPPING: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTSConfigurationStmt { + pub type_: NodeTag, + pub kind: AlterTSConfigType::Type, + pub cfgname: *mut List, + pub tokentype: *mut List, + pub dicts: *mut List, + pub override_: bool, + pub replace: bool, + pub missing_ok: bool, +} +impl Default for AlterTSConfigurationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PublicationTable { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub whereClause: *mut Node, + pub columns: *mut List, +} +impl Default for PublicationTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PublicationObjSpecType { + pub type Type = ::core::ffi::c_uint; + pub const PUBLICATIONOBJ_TABLE: Type = 0; + pub const PUBLICATIONOBJ_TABLES_IN_SCHEMA: Type = 1; + pub const PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA: Type = 2; + pub const PUBLICATIONOBJ_CONTINUATION: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PublicationObjSpec { + pub type_: NodeTag, + pub pubobjtype: PublicationObjSpecType::Type, + pub name: *mut ::core::ffi::c_char, + pub pubtable: *mut PublicationTable, + pub location: ParseLoc, +} +impl Default for PublicationObjSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatePublicationStmt { + pub type_: NodeTag, + pub pubname: *mut ::core::ffi::c_char, + pub options: *mut List, + pub pubobjects: *mut List, + pub for_all_tables: bool, +} +impl Default for CreatePublicationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterPublicationAction { + pub type Type = ::core::ffi::c_uint; + pub const AP_AddObjects: Type = 0; + pub const AP_DropObjects: Type = 1; + pub const AP_SetObjects: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterPublicationStmt { + pub type_: NodeTag, + pub pubname: *mut ::core::ffi::c_char, + pub options: *mut List, + pub pubobjects: *mut List, + pub for_all_tables: bool, + pub action: AlterPublicationAction::Type, +} +impl Default for AlterPublicationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateSubscriptionStmt { + pub type_: NodeTag, + pub subname: *mut ::core::ffi::c_char, + pub conninfo: *mut ::core::ffi::c_char, + pub publication: *mut List, + pub options: *mut List, +} +impl Default for CreateSubscriptionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterSubscriptionType { + pub type Type = ::core::ffi::c_uint; + pub const ALTER_SUBSCRIPTION_OPTIONS: Type = 0; + pub const ALTER_SUBSCRIPTION_CONNECTION: Type = 1; + pub const ALTER_SUBSCRIPTION_SET_PUBLICATION: Type = 2; + pub const ALTER_SUBSCRIPTION_ADD_PUBLICATION: Type = 3; + pub const ALTER_SUBSCRIPTION_DROP_PUBLICATION: Type = 4; + pub const ALTER_SUBSCRIPTION_REFRESH: Type = 5; + pub const ALTER_SUBSCRIPTION_ENABLED: Type = 6; + pub const ALTER_SUBSCRIPTION_SKIP: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterSubscriptionStmt { + pub type_: NodeTag, + pub kind: AlterSubscriptionType::Type, + pub subname: *mut ::core::ffi::c_char, + pub conninfo: *mut ::core::ffi::c_char, + pub publication: *mut List, + pub options: *mut List, +} +impl Default for AlterSubscriptionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropSubscriptionStmt { + pub type_: NodeTag, + pub subname: *mut ::core::ffi::c_char, + pub missing_ok: bool, + pub behavior: DropBehavior::Type, +} +impl Default for DropSubscriptionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct MemoryContextCounters { + pub nblocks: Size, + pub freechunks: Size, + pub totalspace: Size, + pub freespace: Size, +} +pub type MemoryStatsPrintFunc = ::core::option::Option< + unsafe extern "C" fn( + context: MemoryContext, + passthru: *mut ::core::ffi::c_void, + stats_string: *const ::core::ffi::c_char, + print_to_stderr: bool, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct MemoryContextMethods { + pub alloc: ::core::option::Option< + unsafe extern "C" fn( + context: MemoryContext, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void, + >, + pub free_p: ::core::option::Option, + pub realloc: ::core::option::Option< + unsafe extern "C" fn( + pointer: *mut ::core::ffi::c_void, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void, + >, + pub reset: ::core::option::Option, + pub delete_context: ::core::option::Option, + pub get_chunk_context: ::core::option::Option< + unsafe extern "C" fn(pointer: *mut ::core::ffi::c_void) -> MemoryContext, + >, + pub get_chunk_space: + ::core::option::Option Size>, + pub is_empty: ::core::option::Option bool>, + pub stats: ::core::option::Option< + unsafe extern "C" fn( + context: MemoryContext, + printfunc: MemoryStatsPrintFunc, + passthru: *mut ::core::ffi::c_void, + totals: *mut MemoryContextCounters, + print_to_stderr: bool, + ), + >, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoryContextData { + pub type_: NodeTag, + pub isReset: bool, + pub allowInCritSection: bool, + pub mem_allocated: Size, + pub methods: *const MemoryContextMethods, + pub parent: MemoryContext, + pub firstchild: MemoryContext, + pub prevchild: MemoryContext, + pub nextchild: MemoryContext, + pub name: *const ::core::ffi::c_char, + pub ident: *const ::core::ffi::c_char, + pub reset_cbs: *mut MemoryContextCallback, +} +impl Default for MemoryContextData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExecutorStart_hook_type = ::core::option::Option< + unsafe extern "C" fn(queryDesc: *mut QueryDesc, eflags: ::core::ffi::c_int), +>; +pub type ExecutorRun_hook_type = ::core::option::Option< + unsafe extern "C" fn( + queryDesc: *mut QueryDesc, + direction: ScanDirection::Type, + count: uint64, + execute_once: bool, + ), +>; +pub type ExecutorFinish_hook_type = + ::core::option::Option; +pub type ExecutorEnd_hook_type = + ::core::option::Option; +pub type ExecutorCheckPerms_hook_type = ::core::option::Option< + unsafe extern "C" fn( + rangeTable: *mut List, + rtePermInfos: *mut List, + ereport_on_violation: bool, + ) -> bool, +>; +pub type ExecScanAccessMtd = + ::core::option::Option *mut TupleTableSlot>; +pub type ExecScanRecheckMtd = ::core::option::Option< + unsafe extern "C" fn(node: *mut ScanState, slot: *mut TupleTableSlot) -> bool, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupOutputState { + pub slot: *mut TupleTableSlot, + pub dest: *mut DestReceiver, +} +impl Default for TupOutputState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttInMetadata { + pub tupdesc: TupleDesc, + pub attinfuncs: *mut FmgrInfo, + pub attioparams: *mut Oid, + pub atttypmods: *mut int32, +} +impl Default for AttInMetadata { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FuncCallContext { + pub call_cntr: uint64, + pub max_calls: uint64, + pub user_fctx: *mut ::core::ffi::c_void, + pub attinmeta: *mut AttInMetadata, + pub multi_call_memory_ctx: MemoryContext, + pub tuple_desc: TupleDesc, +} +impl Default for FuncCallContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TypeFuncClass { + pub type Type = ::core::ffi::c_uint; + pub const TYPEFUNC_SCALAR: Type = 0; + pub const TYPEFUNC_COMPOSITE: Type = 1; + pub const TYPEFUNC_COMPOSITE_DOMAIN: Type = 2; + pub const TYPEFUNC_RECORD: Type = 3; + pub const TYPEFUNC_OTHER: Type = 4; +} +pub type sig_atomic_t = __sig_atomic_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigval { + pub sival_int: ::core::ffi::c_int, + pub sival_ptr: *mut ::core::ffi::c_void, +} +impl Default for sigval { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __sigval_t = sigval; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t { + pub si_signo: ::core::ffi::c_int, + pub si_errno: ::core::ffi::c_int, + pub si_code: ::core::ffi::c_int, + pub __pad0: ::core::ffi::c_int, + pub _sifields: siginfo_t__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union siginfo_t__bindgen_ty_1 { + pub _pad: [::core::ffi::c_int; 28usize], + pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1, + pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2, + pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3, + pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4, + pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5, + pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6, + pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 { + pub si_pid: __pid_t, + pub si_uid: __uid_t, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 { + pub si_tid: ::core::ffi::c_int, + pub si_overrun: ::core::ffi::c_int, + pub si_sigval: __sigval_t, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 { + pub si_pid: __pid_t, + pub si_uid: __uid_t, + pub si_sigval: __sigval_t, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 { + pub si_pid: __pid_t, + pub si_uid: __uid_t, + pub si_status: ::core::ffi::c_int, + pub si_utime: __clock_t, + pub si_stime: __clock_t, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 { + pub si_addr: *mut ::core::ffi::c_void, + pub si_addr_lsb: ::core::ffi::c_short, + pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 { + pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1, + pub _pkey: __uint32_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 { + pub _lower: *mut ::core::ffi::c_void, + pub _upper: *mut ::core::ffi::c_void, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 { + pub si_band: ::core::ffi::c_long, + pub si_fd: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 { + pub _call_addr: *mut ::core::ffi::c_void, + pub _syscall: ::core::ffi::c_int, + pub _arch: ::core::ffi::c_uint, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_7 { + pub type Type = ::core::ffi::c_int; + pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; + pub const SI_TKILL: Type = -6; + pub const SI_SIGIO: Type = -5; + pub const SI_ASYNCIO: Type = -4; + pub const SI_MESGQ: Type = -3; + pub const SI_TIMER: Type = -2; + pub const SI_QUEUE: Type = -1; + pub const SI_USER: Type = 0; + pub const SI_KERNEL: Type = 128; +} +pub mod _bindgen_ty_8 { + pub type Type = ::core::ffi::c_uint; + pub const ILL_ILLOPC: Type = 1; + pub const ILL_ILLOPN: Type = 2; + pub const ILL_ILLADR: Type = 3; + pub const ILL_ILLTRP: Type = 4; + pub const ILL_PRVOPC: Type = 5; + pub const ILL_PRVREG: Type = 6; + pub const ILL_COPROC: Type = 7; + pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; +} +pub mod _bindgen_ty_9 { + pub type Type = ::core::ffi::c_uint; + pub const FPE_INTDIV: Type = 1; + pub const FPE_INTOVF: Type = 2; + pub const FPE_FLTDIV: Type = 3; + pub const FPE_FLTOVF: Type = 4; + pub const FPE_FLTUND: Type = 5; + pub const FPE_FLTRES: Type = 6; + pub const FPE_FLTINV: Type = 7; + pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; +} +pub mod _bindgen_ty_10 { + pub type Type = ::core::ffi::c_uint; + pub const SEGV_MAPERR: Type = 1; + pub const SEGV_ACCERR: Type = 2; + pub const SEGV_BNDERR: Type = 3; + pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; +} +pub mod _bindgen_ty_11 { + pub type Type = ::core::ffi::c_uint; + pub const BUS_ADRALN: Type = 1; + pub const BUS_ADRERR: Type = 2; + pub const BUS_OBJERR: Type = 3; + pub const BUS_MCEERR_AR: Type = 4; + pub const BUS_MCEERR_AO: Type = 5; +} +pub mod _bindgen_ty_12 { + pub type Type = ::core::ffi::c_uint; + pub const CLD_EXITED: Type = 1; + pub const CLD_KILLED: Type = 2; + pub const CLD_DUMPED: Type = 3; + pub const CLD_TRAPPED: Type = 4; + pub const CLD_STOPPED: Type = 5; + pub const CLD_CONTINUED: Type = 6; +} +pub mod _bindgen_ty_13 { + pub type Type = ::core::ffi::c_uint; + pub const POLL_IN: Type = 1; + pub const POLL_OUT: Type = 2; + pub const POLL_MSG: Type = 3; + pub const POLL_ERR: Type = 4; + pub const POLL_PRI: Type = 5; + pub const POLL_HUP: Type = 6; +} +pub type sigval_t = __sigval_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sigevent { + pub sigev_value: __sigval_t, + pub sigev_signo: ::core::ffi::c_int, + pub sigev_notify: ::core::ffi::c_int, + pub _sigev_un: sigevent__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigevent__bindgen_ty_1 { + pub _pad: [::core::ffi::c_int; 12usize], + pub _tid: __pid_t, + pub _sigev_thread: sigevent__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigevent__bindgen_ty_1__bindgen_ty_1 { + pub _function: ::core::option::Option, + pub _attribute: *mut pthread_attr_t, +} +impl Default for sigevent__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigevent__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigevent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type sigevent_t = sigevent; +pub mod _bindgen_ty_14 { + pub type Type = ::core::ffi::c_uint; + pub const SIGEV_SIGNAL: Type = 0; + pub const SIGEV_NONE: Type = 1; + pub const SIGEV_THREAD: Type = 2; + pub const SIGEV_THREAD_ID: Type = 4; +} +pub type __sighandler_t = ::core::option::Option; +pub type sig_t = __sighandler_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sigaction { + pub __sigaction_handler: sigaction__bindgen_ty_1, + pub sa_mask: __sigset_t, + pub sa_flags: ::core::ffi::c_int, + pub sa_restorer: ::core::option::Option, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigaction__bindgen_ty_1 { + pub sa_handler: __sighandler_t, + pub sa_sigaction: ::core::option::Option< + unsafe extern "C" fn( + arg1: ::core::ffi::c_int, + arg2: *mut siginfo_t, + arg3: *mut ::core::ffi::c_void, + ), + >, +} +impl Default for sigaction__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigaction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __s8 = ::core::ffi::c_schar; +pub type __u8 = ::core::ffi::c_uchar; +pub type __s16 = ::core::ffi::c_short; +pub type __u16 = ::core::ffi::c_ushort; +pub type __s32 = ::core::ffi::c_int; +pub type __u32 = ::core::ffi::c_uint; +pub type __s64 = ::core::ffi::c_longlong; +pub type __u64 = ::core::ffi::c_ulonglong; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fd_set { + pub fds_bits: [::core::ffi::c_ulong; 16usize], +} +pub type __kernel_sighandler_t = + ::core::option::Option; +pub type __kernel_key_t = ::core::ffi::c_int; +pub type __kernel_mqd_t = ::core::ffi::c_int; +pub type __kernel_old_uid_t = ::core::ffi::c_ushort; +pub type __kernel_old_gid_t = ::core::ffi::c_ushort; +pub type __kernel_long_t = ::core::ffi::c_long; +pub type __kernel_ulong_t = ::core::ffi::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = ::core::ffi::c_uint; +pub type __kernel_pid_t = ::core::ffi::c_int; +pub type __kernel_ipc_pid_t = ::core::ffi::c_int; +pub type __kernel_uid_t = ::core::ffi::c_uint; +pub type __kernel_gid_t = ::core::ffi::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = ::core::ffi::c_int; +pub type __kernel_uid32_t = ::core::ffi::c_uint; +pub type __kernel_gid32_t = ::core::ffi::c_uint; +pub type __kernel_old_dev_t = ::core::ffi::c_uint; +pub type __kernel_size_t = __kernel_ulong_t; +pub type __kernel_ssize_t = __kernel_long_t; +pub type __kernel_ptrdiff_t = __kernel_long_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fsid_t { + pub val: [::core::ffi::c_int; 2usize], +} +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = ::core::ffi::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = ::core::ffi::c_int; +pub type __kernel_clockid_t = ::core::ffi::c_int; +pub type __kernel_caddr_t = *mut ::core::ffi::c_char; +pub type __kernel_uid16_t = ::core::ffi::c_ushort; +pub type __kernel_gid16_t = ::core::ffi::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = ::core::ffi::c_uint; +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Copy, Clone)] +pub struct sigcontext { + pub fault_address: __u64, + pub regs: [__u64; 31usize], + pub sp: __u64, + pub pc: __u64, + pub pstate: __u64, + pub __bindgen_padding_0: [u8; 8usize], + pub __reserved: [__u8; 4096usize], +} +impl Default for sigcontext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _aarch64_ctx { + pub magic: __u32, + pub size: __u32, +} +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Default, Copy, Clone)] +pub struct fpsimd_context { + pub head: _aarch64_ctx, + pub fpsr: __u32, + pub fpcr: __u32, + pub vregs: [__uint128_t; 32usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct esr_context { + pub head: _aarch64_ctx, + pub esr: __u64, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct extra_context { + pub head: _aarch64_ctx, + pub datap: __u64, + pub size: __u32, + pub __reserved: [__u32; 3usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct sve_context { + pub head: _aarch64_ctx, + pub vl: __u16, + pub flags: __u16, + pub __reserved: [__u16; 2usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct za_context { + pub head: _aarch64_ctx, + pub vl: __u16, + pub __reserved: [__u16; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct stack_t { + pub ss_sp: *mut ::core::ffi::c_void, + pub ss_flags: ::core::ffi::c_int, + pub ss_size: usize, +} +impl Default for stack_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct timezone { + pub tz_minuteswest: ::core::ffi::c_int, + pub tz_dsttime: ::core::ffi::c_int, +} +pub mod __itimer_which { + pub type Type = ::core::ffi::c_uint; + pub const ITIMER_REAL: Type = 0; + pub const ITIMER_VIRTUAL: Type = 1; + pub const ITIMER_PROF: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct itimerval { + pub it_interval: timeval, + pub it_value: timeval, +} +pub type __itimer_which_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct user_regs_struct { + pub regs: [::core::ffi::c_ulonglong; 31usize], + pub sp: ::core::ffi::c_ulonglong, + pub pc: ::core::ffi::c_ulonglong, + pub pstate: ::core::ffi::c_ulonglong, +} +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Default, Copy, Clone)] +pub struct user_fpsimd_struct { + pub vregs: [__uint128_t; 32usize], + pub fpsr: ::core::ffi::c_uint, + pub fpcr: ::core::ffi::c_uint, +} +pub type elf_greg_t = __uint64_t; +pub type elf_gregset_t = [elf_greg_t; 34usize]; +pub type elf_fpregset_t = user_fpsimd_struct; +pub type __pr_uid_t = ::core::ffi::c_uint; +pub type __pr_gid_t = ::core::ffi::c_uint; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct elf_siginfo { + pub si_signo: ::core::ffi::c_int, + pub si_code: ::core::ffi::c_int, + pub si_errno: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf_prstatus { + pub pr_info: elf_siginfo, + pub pr_cursig: ::core::ffi::c_short, + pub pr_sigpend: ::core::ffi::c_ulong, + pub pr_sighold: ::core::ffi::c_ulong, + pub pr_pid: __pid_t, + pub pr_ppid: __pid_t, + pub pr_pgrp: __pid_t, + pub pr_sid: __pid_t, + pub pr_utime: timeval, + pub pr_stime: timeval, + pub pr_cutime: timeval, + pub pr_cstime: timeval, + pub pr_reg: elf_gregset_t, + pub pr_fpvalid: ::core::ffi::c_int, +} +impl Default for elf_prstatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf_prpsinfo { + pub pr_state: ::core::ffi::c_char, + pub pr_sname: ::core::ffi::c_char, + pub pr_zomb: ::core::ffi::c_char, + pub pr_nice: ::core::ffi::c_char, + pub pr_flag: ::core::ffi::c_ulong, + pub pr_uid: __pr_uid_t, + pub pr_gid: __pr_gid_t, + pub pr_pid: ::core::ffi::c_int, + pub pr_ppid: ::core::ffi::c_int, + pub pr_pgrp: ::core::ffi::c_int, + pub pr_sid: ::core::ffi::c_int, + pub pr_fname: [::core::ffi::c_char; 16usize], + pub pr_psargs: [::core::ffi::c_char; 80usize], +} +impl Default for elf_prpsinfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type psaddr_t = *mut ::core::ffi::c_void; +pub type __prgregset_t = elf_gregset_t; +pub type __prfpregset_t = elf_fpregset_t; +pub type prgregset_t = __prgregset_t; +pub type prfpregset_t = __prfpregset_t; +pub type lwpid_t = __pid_t; +pub type prstatus_t = elf_prstatus; +pub type prpsinfo_t = elf_prpsinfo; +pub type greg_t = elf_greg_t; +pub type gregset_t = elf_gregset_t; +pub type fpregset_t = elf_fpregset_t; +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Copy, Clone)] +pub struct mcontext_t { + pub fault_address: ::core::ffi::c_ulonglong, + pub regs: [::core::ffi::c_ulonglong; 31usize], + pub sp: ::core::ffi::c_ulonglong, + pub pc: ::core::ffi::c_ulonglong, + pub pstate: ::core::ffi::c_ulonglong, + pub __bindgen_padding_0: [u8; 8usize], + pub __reserved: [::core::ffi::c_uchar; 4096usize], +} +impl Default for mcontext_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Copy, Clone)] +pub struct ucontext_t { + pub uc_flags: ::core::ffi::c_ulong, + pub uc_link: *mut ucontext_t, + pub uc_stack: stack_t, + pub uc_sigmask: sigset_t, + pub __bindgen_padding_0: u64, + pub uc_mcontext: mcontext_t, +} +impl Default for ucontext_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_15 { + pub type Type = ::core::ffi::c_uint; + pub const SS_ONSTACK: Type = 1; + pub const SS_DISABLE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigstack { + pub ss_sp: *mut ::core::ffi::c_void, + pub ss_onstack: ::core::ffi::c_int, +} +impl Default for sigstack { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pg_time_t = int64; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_tm { + pub tm_sec: ::core::ffi::c_int, + pub tm_min: ::core::ffi::c_int, + pub tm_hour: ::core::ffi::c_int, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, + pub tm_wday: ::core::ffi::c_int, + pub tm_yday: ::core::ffi::c_int, + pub tm_isdst: ::core::ffi::c_int, + pub tm_gmtoff: ::core::ffi::c_long, + pub tm_zone: *const ::core::ffi::c_char, +} +impl Default for pg_tm { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_tz { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_tzenum { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Port { + _unused: [u8; 0], +} +pub type pg_stack_base_t = *mut ::core::ffi::c_char; +pub mod BackendType { + pub type Type = ::core::ffi::c_uint; + pub const B_INVALID: Type = 0; + pub const B_BACKEND: Type = 1; + pub const B_AUTOVAC_LAUNCHER: Type = 2; + pub const B_AUTOVAC_WORKER: Type = 3; + pub const B_BG_WORKER: Type = 4; + pub const B_WAL_SENDER: Type = 5; + pub const B_SLOTSYNC_WORKER: Type = 6; + pub const B_STANDALONE_BACKEND: Type = 7; + pub const B_ARCHIVER: Type = 8; + pub const B_BG_WRITER: Type = 9; + pub const B_CHECKPOINTER: Type = 10; + pub const B_STARTUP: Type = 11; + pub const B_WAL_RECEIVER: Type = 12; + pub const B_WAL_SUMMARIZER: Type = 13; + pub const B_WAL_WRITER: Type = 14; + pub const B_LOGGER: Type = 15; +} +pub mod ProcessingMode { + #[doc = "\t pmod.h --\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t *\n\t\t\tPOSTGRES processing mode definitions. *"] + pub type Type = ::core::ffi::c_uint; + pub const BootstrapProcessing: Type = 0; + pub const InitProcessing: Type = 1; + pub const NormalProcessing: Type = 2; +} +pub type shmem_request_hook_type = ::core::option::Option; +pub mod ProgressCommandType { + pub type Type = ::core::ffi::c_uint; + pub const PROGRESS_COMMAND_INVALID: Type = 0; + pub const PROGRESS_COMMAND_VACUUM: Type = 1; + pub const PROGRESS_COMMAND_ANALYZE: Type = 2; + pub const PROGRESS_COMMAND_CLUSTER: Type = 3; + pub const PROGRESS_COMMAND_CREATE_INDEX: Type = 4; + pub const PROGRESS_COMMAND_BASEBACKUP: Type = 5; + pub const PROGRESS_COMMAND_COPY: Type = 6; +} +pub mod __socket_type { + pub type Type = ::core::ffi::c_uint; + pub const SOCK_STREAM: Type = 1; + pub const SOCK_DGRAM: Type = 2; + pub const SOCK_RAW: Type = 3; + pub const SOCK_RDM: Type = 4; + pub const SOCK_SEQPACKET: Type = 5; + pub const SOCK_DCCP: Type = 6; + pub const SOCK_PACKET: Type = 10; + pub const SOCK_CLOEXEC: Type = 524288; + pub const SOCK_NONBLOCK: Type = 2048; +} +pub type sa_family_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct sockaddr { + pub sa_family: sa_family_t, + pub sa_data: [::core::ffi::c_char; 14usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_storage { + pub ss_family: sa_family_t, + pub __ss_padding: [::core::ffi::c_char; 118usize], + pub __ss_align: ::core::ffi::c_ulong, +} +impl Default for sockaddr_storage { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_16 { + pub type Type = ::core::ffi::c_uint; + pub const MSG_OOB: Type = 1; + pub const MSG_PEEK: Type = 2; + pub const MSG_DONTROUTE: Type = 4; + pub const MSG_CTRUNC: Type = 8; + pub const MSG_PROXY: Type = 16; + pub const MSG_TRUNC: Type = 32; + pub const MSG_DONTWAIT: Type = 64; + pub const MSG_EOR: Type = 128; + pub const MSG_WAITALL: Type = 256; + pub const MSG_FIN: Type = 512; + pub const MSG_SYN: Type = 1024; + pub const MSG_CONFIRM: Type = 2048; + pub const MSG_RST: Type = 4096; + pub const MSG_ERRQUEUE: Type = 8192; + pub const MSG_NOSIGNAL: Type = 16384; + pub const MSG_MORE: Type = 32768; + pub const MSG_WAITFORONE: Type = 65536; + pub const MSG_BATCH: Type = 262144; + pub const MSG_ZEROCOPY: Type = 67108864; + pub const MSG_FASTOPEN: Type = 536870912; + pub const MSG_CMSG_CLOEXEC: Type = 1073741824; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct msghdr { + pub msg_name: *mut ::core::ffi::c_void, + pub msg_namelen: socklen_t, + pub msg_iov: *mut iovec, + pub msg_iovlen: usize, + pub msg_control: *mut ::core::ffi::c_void, + pub msg_controllen: usize, + pub msg_flags: ::core::ffi::c_int, +} +impl Default for msghdr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct cmsghdr { + pub cmsg_len: usize, + pub cmsg_level: ::core::ffi::c_int, + pub cmsg_type: ::core::ffi::c_int, + pub __cmsg_data: __IncompleteArrayField<::core::ffi::c_uchar>, +} +pub mod _bindgen_ty_17 { + pub type Type = ::core::ffi::c_uint; + pub const SCM_RIGHTS: Type = 1; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct linger { + pub l_onoff: ::core::ffi::c_int, + pub l_linger: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct osockaddr { + pub sa_family: ::core::ffi::c_ushort, + pub sa_data: [::core::ffi::c_uchar; 14usize], +} +pub mod _bindgen_ty_18 { + pub type Type = ::core::ffi::c_uint; + pub const SHUT_RD: Type = 0; + pub const SHUT_WR: Type = 1; + pub const SHUT_RDWR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_un { + pub sun_family: sa_family_t, + pub sun_path: [::core::ffi::c_char; 108usize], +} +impl Default for sockaddr_un { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type in_addr_t = u32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct in_addr { + pub s_addr: in_addr_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_opts { + pub ip_dst: in_addr, + pub ip_opts: [::core::ffi::c_char; 40usize], +} +impl Default for ip_opts { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct in_pktinfo { + pub ipi_ifindex: ::core::ffi::c_int, + pub ipi_spec_dst: in_addr, + pub ipi_addr: in_addr, +} +pub mod _bindgen_ty_19 { + pub type Type = ::core::ffi::c_uint; + pub const IPPROTO_IP: Type = 0; + pub const IPPROTO_ICMP: Type = 1; + pub const IPPROTO_IGMP: Type = 2; + pub const IPPROTO_IPIP: Type = 4; + pub const IPPROTO_TCP: Type = 6; + pub const IPPROTO_EGP: Type = 8; + pub const IPPROTO_PUP: Type = 12; + pub const IPPROTO_UDP: Type = 17; + pub const IPPROTO_IDP: Type = 22; + pub const IPPROTO_TP: Type = 29; + pub const IPPROTO_DCCP: Type = 33; + pub const IPPROTO_IPV6: Type = 41; + pub const IPPROTO_RSVP: Type = 46; + pub const IPPROTO_GRE: Type = 47; + pub const IPPROTO_ESP: Type = 50; + pub const IPPROTO_AH: Type = 51; + pub const IPPROTO_MTP: Type = 92; + pub const IPPROTO_BEETPH: Type = 94; + pub const IPPROTO_ENCAP: Type = 98; + pub const IPPROTO_PIM: Type = 103; + pub const IPPROTO_COMP: Type = 108; + pub const IPPROTO_SCTP: Type = 132; + pub const IPPROTO_UDPLITE: Type = 136; + pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; + pub const IPPROTO_RAW: Type = 255; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; +} +pub mod _bindgen_ty_20 { + pub type Type = ::core::ffi::c_uint; + pub const IPPROTO_HOPOPTS: Type = 0; + pub const IPPROTO_ROUTING: Type = 43; + pub const IPPROTO_FRAGMENT: Type = 44; + pub const IPPROTO_ICMPV6: Type = 58; + pub const IPPROTO_NONE: Type = 59; + pub const IPPROTO_DSTOPTS: Type = 60; + pub const IPPROTO_MH: Type = 135; +} +pub type in_port_t = u16; +pub mod _bindgen_ty_21 { + pub type Type = ::core::ffi::c_uint; + pub const IPPORT_ECHO: Type = 7; + pub const IPPORT_DISCARD: Type = 9; + pub const IPPORT_SYSTAT: Type = 11; + pub const IPPORT_DAYTIME: Type = 13; + pub const IPPORT_NETSTAT: Type = 15; + pub const IPPORT_FTP: Type = 21; + pub const IPPORT_TELNET: Type = 23; + pub const IPPORT_SMTP: Type = 25; + pub const IPPORT_TIMESERVER: Type = 37; + pub const IPPORT_NAMESERVER: Type = 42; + pub const IPPORT_WHOIS: Type = 43; + pub const IPPORT_MTP: Type = 57; + pub const IPPORT_TFTP: Type = 69; + pub const IPPORT_RJE: Type = 77; + pub const IPPORT_FINGER: Type = 79; + pub const IPPORT_TTYLINK: Type = 87; + pub const IPPORT_SUPDUP: Type = 95; + pub const IPPORT_EXECSERVER: Type = 512; + pub const IPPORT_LOGINSERVER: Type = 513; + pub const IPPORT_CMDSERVER: Type = 514; + pub const IPPORT_EFSSERVER: Type = 520; + pub const IPPORT_BIFFUDP: Type = 512; + pub const IPPORT_WHOSERVER: Type = 513; + pub const IPPORT_ROUTESERVER: Type = 520; + pub const IPPORT_RESERVED: Type = 1024; + pub const IPPORT_USERRESERVED: Type = 5000; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct in6_addr { + pub __in6_u: in6_addr__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union in6_addr__bindgen_ty_1 { + pub __u6_addr8: [u8; 16usize], + pub __u6_addr16: [u16; 8usize], + pub __u6_addr32: [u32; 4usize], +} +impl Default for in6_addr__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for in6_addr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct sockaddr_in { + pub sin_family: sa_family_t, + pub sin_port: in_port_t, + pub sin_addr: in_addr, + pub sin_zero: [::core::ffi::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sockaddr_in6 { + pub sin6_family: sa_family_t, + pub sin6_port: in_port_t, + pub sin6_flowinfo: u32, + pub sin6_addr: in6_addr, + pub sin6_scope_id: u32, +} +impl Default for sockaddr_in6 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreq { + pub imr_multiaddr: in_addr, + pub imr_interface: in_addr, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreq_source { + pub imr_multiaddr: in_addr, + pub imr_interface: in_addr, + pub imr_sourceaddr: in_addr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ipv6_mreq { + pub ipv6mr_multiaddr: in6_addr, + pub ipv6mr_interface: ::core::ffi::c_uint, +} +impl Default for ipv6_mreq { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct group_req { + pub gr_interface: u32, + pub gr_group: sockaddr_storage, +} +impl Default for group_req { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct group_source_req { + pub gsr_interface: u32, + pub gsr_group: sockaddr_storage, + pub gsr_source: sockaddr_storage, +} +impl Default for group_source_req { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_msfilter { + pub imsf_multiaddr: in_addr, + pub imsf_interface: in_addr, + pub imsf_fmode: u32, + pub imsf_numsrc: u32, + pub imsf_slist: [in_addr; 1usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct group_filter { + pub gf_interface: u32, + pub gf_group: sockaddr_storage, + pub gf_fmode: u32, + pub gf_numsrc: u32, + pub gf_slist: [sockaddr_storage; 1usize], +} +impl Default for group_filter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rpcent { + pub r_name: *mut ::core::ffi::c_char, + pub r_aliases: *mut *mut ::core::ffi::c_char, + pub r_number: ::core::ffi::c_int, +} +impl Default for rpcent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct netent { + pub n_name: *mut ::core::ffi::c_char, + pub n_aliases: *mut *mut ::core::ffi::c_char, + pub n_addrtype: ::core::ffi::c_int, + pub n_net: u32, +} +impl Default for netent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct hostent { + pub h_name: *mut ::core::ffi::c_char, + pub h_aliases: *mut *mut ::core::ffi::c_char, + pub h_addrtype: ::core::ffi::c_int, + pub h_length: ::core::ffi::c_int, + pub h_addr_list: *mut *mut ::core::ffi::c_char, +} +impl Default for hostent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct servent { + pub s_name: *mut ::core::ffi::c_char, + pub s_aliases: *mut *mut ::core::ffi::c_char, + pub s_port: ::core::ffi::c_int, + pub s_proto: *mut ::core::ffi::c_char, +} +impl Default for servent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct protoent { + pub p_name: *mut ::core::ffi::c_char, + pub p_aliases: *mut *mut ::core::ffi::c_char, + pub p_proto: ::core::ffi::c_int, +} +impl Default for protoent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct addrinfo { + pub ai_flags: ::core::ffi::c_int, + pub ai_family: ::core::ffi::c_int, + pub ai_socktype: ::core::ffi::c_int, + pub ai_protocol: ::core::ffi::c_int, + pub ai_addrlen: socklen_t, + pub ai_addr: *mut sockaddr, + pub ai_canonname: *mut ::core::ffi::c_char, + pub ai_next: *mut addrinfo, +} +impl Default for addrinfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SockAddr { + pub addr: sockaddr_storage, + pub salen: socklen_t, +} +impl Default for SockAddr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AddrInfo { + pub family: ::core::ffi::c_int, + pub addr: SockAddr, +} +impl Default for AddrInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ProtocolVersion = uint32; +pub type MsgType = ProtocolVersion; +pub type PacketLen = uint32; +pub type AuthRequest = uint32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct CancelRequestPacket { + pub cancelRequestCode: MsgType, + pub backendPID: uint32, + pub cancelAuthCode: uint32, +} +pub mod BackendState { + pub type Type = ::core::ffi::c_uint; + pub const STATE_UNDEFINED: Type = 0; + pub const STATE_IDLE: Type = 1; + pub const STATE_RUNNING: Type = 2; + pub const STATE_IDLEINTRANSACTION: Type = 3; + pub const STATE_FASTPATH: Type = 4; + pub const STATE_IDLEINTRANSACTION_ABORTED: Type = 5; + pub const STATE_DISABLED: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgBackendSSLStatus { + pub ssl_bits: ::core::ffi::c_int, + pub ssl_version: [::core::ffi::c_char; 64usize], + pub ssl_cipher: [::core::ffi::c_char; 64usize], + pub ssl_client_dn: [::core::ffi::c_char; 64usize], + pub ssl_client_serial: [::core::ffi::c_char; 64usize], + pub ssl_issuer_dn: [::core::ffi::c_char; 64usize], +} +impl Default for PgBackendSSLStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgBackendGSSStatus { + pub gss_princ: [::core::ffi::c_char; 64usize], + pub gss_auth: bool, + pub gss_enc: bool, + pub gss_delegation: bool, +} +impl Default for PgBackendGSSStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgBackendStatus { + pub st_changecount: ::core::ffi::c_int, + pub st_procpid: ::core::ffi::c_int, + pub st_backendType: BackendType::Type, + pub st_proc_start_timestamp: TimestampTz, + pub st_xact_start_timestamp: TimestampTz, + pub st_activity_start_timestamp: TimestampTz, + pub st_state_start_timestamp: TimestampTz, + pub st_databaseid: Oid, + pub st_userid: Oid, + pub st_clientaddr: SockAddr, + pub st_clienthostname: *mut ::core::ffi::c_char, + pub st_ssl: bool, + pub st_sslstatus: *mut PgBackendSSLStatus, + pub st_gss: bool, + pub st_gssstatus: *mut PgBackendGSSStatus, + pub st_state: BackendState::Type, + pub st_appname: *mut ::core::ffi::c_char, + pub st_activity_raw: *mut ::core::ffi::c_char, + pub st_progress_command: ProgressCommandType::Type, + pub st_progress_command_target: Oid, + pub st_progress_param: [int64; 20usize], + pub st_query_id: uint64, +} +impl Default for PgBackendStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LocalPgBackendStatus { + pub backendStatus: PgBackendStatus, + pub proc_number: ProcNumber, + pub backend_xid: TransactionId, + pub backend_xmin: TransactionId, + pub backend_subxact_count: ::core::ffi::c_int, + pub backend_subxact_overflowed: bool, +} +impl Default for LocalPgBackendStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod WaitEventActivity { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_ARCHIVER_MAIN: Type = 83886080; + pub const WAIT_EVENT_AUTOVACUUM_MAIN: Type = 83886081; + pub const WAIT_EVENT_BGWRITER_HIBERNATE: Type = 83886082; + pub const WAIT_EVENT_BGWRITER_MAIN: Type = 83886083; + pub const WAIT_EVENT_CHECKPOINTER_MAIN: Type = 83886084; + pub const WAIT_EVENT_LOGICAL_APPLY_MAIN: Type = 83886085; + pub const WAIT_EVENT_LOGICAL_LAUNCHER_MAIN: Type = 83886086; + pub const WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN: Type = 83886087; + pub const WAIT_EVENT_RECOVERY_WAL_STREAM: Type = 83886088; + pub const WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN: Type = 83886089; + pub const WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN: Type = 83886090; + pub const WAIT_EVENT_SYSLOGGER_MAIN: Type = 83886091; + pub const WAIT_EVENT_WAL_RECEIVER_MAIN: Type = 83886092; + pub const WAIT_EVENT_WAL_SENDER_MAIN: Type = 83886093; + pub const WAIT_EVENT_WAL_SUMMARIZER_WAL: Type = 83886094; + pub const WAIT_EVENT_WAL_WRITER_MAIN: Type = 83886095; +} +pub mod WaitEventBufferPin { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_BUFFER_PIN: Type = 67108864; +} +pub mod WaitEventClient { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_CLIENT_READ: Type = 100663296; + pub const WAIT_EVENT_CLIENT_WRITE: Type = 100663297; + pub const WAIT_EVENT_GSS_OPEN_SERVER: Type = 100663298; + pub const WAIT_EVENT_LIBPQWALRECEIVER_CONNECT: Type = 100663299; + pub const WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE: Type = 100663300; + pub const WAIT_EVENT_SSL_OPEN_SERVER: Type = 100663301; + pub const WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION: Type = 100663302; + pub const WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL: Type = 100663303; + pub const WAIT_EVENT_WAL_SENDER_WRITE_DATA: Type = 100663304; +} +pub mod WaitEventIO { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_BASEBACKUP_READ: Type = 167772160; + pub const WAIT_EVENT_BASEBACKUP_SYNC: Type = 167772161; + pub const WAIT_EVENT_BASEBACKUP_WRITE: Type = 167772162; + pub const WAIT_EVENT_BUFFILE_READ: Type = 167772163; + pub const WAIT_EVENT_BUFFILE_TRUNCATE: Type = 167772164; + pub const WAIT_EVENT_BUFFILE_WRITE: Type = 167772165; + pub const WAIT_EVENT_CONTROL_FILE_READ: Type = 167772166; + pub const WAIT_EVENT_CONTROL_FILE_SYNC: Type = 167772167; + pub const WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE: Type = 167772168; + pub const WAIT_EVENT_CONTROL_FILE_WRITE: Type = 167772169; + pub const WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE: Type = 167772170; + pub const WAIT_EVENT_COPY_FILE_READ: Type = 167772171; + pub const WAIT_EVENT_COPY_FILE_WRITE: Type = 167772172; + pub const WAIT_EVENT_DATA_FILE_EXTEND: Type = 167772173; + pub const WAIT_EVENT_DATA_FILE_FLUSH: Type = 167772174; + pub const WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC: Type = 167772175; + pub const WAIT_EVENT_DATA_FILE_PREFETCH: Type = 167772176; + pub const WAIT_EVENT_DATA_FILE_READ: Type = 167772177; + pub const WAIT_EVENT_DATA_FILE_SYNC: Type = 167772178; + pub const WAIT_EVENT_DATA_FILE_TRUNCATE: Type = 167772179; + pub const WAIT_EVENT_DATA_FILE_WRITE: Type = 167772180; + pub const WAIT_EVENT_DSM_ALLOCATE: Type = 167772181; + pub const WAIT_EVENT_DSM_FILL_ZERO_WRITE: Type = 167772182; + pub const WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ: Type = 167772183; + pub const WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC: Type = 167772184; + pub const WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE: Type = 167772185; + pub const WAIT_EVENT_LOCK_FILE_CREATE_READ: Type = 167772186; + pub const WAIT_EVENT_LOCK_FILE_CREATE_SYNC: Type = 167772187; + pub const WAIT_EVENT_LOCK_FILE_CREATE_WRITE: Type = 167772188; + pub const WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ: Type = 167772189; + pub const WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC: Type = 167772190; + pub const WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC: Type = 167772191; + pub const WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE: Type = 167772192; + pub const WAIT_EVENT_LOGICAL_REWRITE_SYNC: Type = 167772193; + pub const WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE: Type = 167772194; + pub const WAIT_EVENT_LOGICAL_REWRITE_WRITE: Type = 167772195; + pub const WAIT_EVENT_RELATION_MAP_READ: Type = 167772196; + pub const WAIT_EVENT_RELATION_MAP_REPLACE: Type = 167772197; + pub const WAIT_EVENT_RELATION_MAP_WRITE: Type = 167772198; + pub const WAIT_EVENT_REORDER_BUFFER_READ: Type = 167772199; + pub const WAIT_EVENT_REORDER_BUFFER_WRITE: Type = 167772200; + pub const WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ: Type = 167772201; + pub const WAIT_EVENT_REPLICATION_SLOT_READ: Type = 167772202; + pub const WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC: Type = 167772203; + pub const WAIT_EVENT_REPLICATION_SLOT_SYNC: Type = 167772204; + pub const WAIT_EVENT_REPLICATION_SLOT_WRITE: Type = 167772205; + pub const WAIT_EVENT_SLRU_FLUSH_SYNC: Type = 167772206; + pub const WAIT_EVENT_SLRU_READ: Type = 167772207; + pub const WAIT_EVENT_SLRU_SYNC: Type = 167772208; + pub const WAIT_EVENT_SLRU_WRITE: Type = 167772209; + pub const WAIT_EVENT_SNAPBUILD_READ: Type = 167772210; + pub const WAIT_EVENT_SNAPBUILD_SYNC: Type = 167772211; + pub const WAIT_EVENT_SNAPBUILD_WRITE: Type = 167772212; + pub const WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC: Type = 167772213; + pub const WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE: Type = 167772214; + pub const WAIT_EVENT_TIMELINE_HISTORY_READ: Type = 167772215; + pub const WAIT_EVENT_TIMELINE_HISTORY_SYNC: Type = 167772216; + pub const WAIT_EVENT_TIMELINE_HISTORY_WRITE: Type = 167772217; + pub const WAIT_EVENT_TWOPHASE_FILE_READ: Type = 167772218; + pub const WAIT_EVENT_TWOPHASE_FILE_SYNC: Type = 167772219; + pub const WAIT_EVENT_TWOPHASE_FILE_WRITE: Type = 167772220; + pub const WAIT_EVENT_VERSION_FILE_SYNC: Type = 167772221; + pub const WAIT_EVENT_VERSION_FILE_WRITE: Type = 167772222; + pub const WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ: Type = 167772223; + pub const WAIT_EVENT_WAL_BOOTSTRAP_SYNC: Type = 167772224; + pub const WAIT_EVENT_WAL_BOOTSTRAP_WRITE: Type = 167772225; + pub const WAIT_EVENT_WAL_COPY_READ: Type = 167772226; + pub const WAIT_EVENT_WAL_COPY_SYNC: Type = 167772227; + pub const WAIT_EVENT_WAL_COPY_WRITE: Type = 167772228; + pub const WAIT_EVENT_WAL_INIT_SYNC: Type = 167772229; + pub const WAIT_EVENT_WAL_INIT_WRITE: Type = 167772230; + pub const WAIT_EVENT_WAL_READ: Type = 167772231; + pub const WAIT_EVENT_WAL_SUMMARY_READ: Type = 167772232; + pub const WAIT_EVENT_WAL_SUMMARY_WRITE: Type = 167772233; + pub const WAIT_EVENT_WAL_SYNC: Type = 167772234; + pub const WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN: Type = 167772235; + pub const WAIT_EVENT_WAL_WRITE: Type = 167772236; +} +pub mod WaitEventIPC { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_APPEND_READY: Type = 134217728; + pub const WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND: Type = 134217729; + pub const WAIT_EVENT_ARCHIVE_COMMAND: Type = 134217730; + pub const WAIT_EVENT_BACKEND_TERMINATION: Type = 134217731; + pub const WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE: Type = 134217732; + pub const WAIT_EVENT_BGWORKER_SHUTDOWN: Type = 134217733; + pub const WAIT_EVENT_BGWORKER_STARTUP: Type = 134217734; + pub const WAIT_EVENT_BTREE_PAGE: Type = 134217735; + pub const WAIT_EVENT_BUFFER_IO: Type = 134217736; + pub const WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE: Type = 134217737; + pub const WAIT_EVENT_CHECKPOINT_DELAY_START: Type = 134217738; + pub const WAIT_EVENT_CHECKPOINT_DONE: Type = 134217739; + pub const WAIT_EVENT_CHECKPOINT_START: Type = 134217740; + pub const WAIT_EVENT_EXECUTE_GATHER: Type = 134217741; + pub const WAIT_EVENT_HASH_BATCH_ALLOCATE: Type = 134217742; + pub const WAIT_EVENT_HASH_BATCH_ELECT: Type = 134217743; + pub const WAIT_EVENT_HASH_BATCH_LOAD: Type = 134217744; + pub const WAIT_EVENT_HASH_BUILD_ALLOCATE: Type = 134217745; + pub const WAIT_EVENT_HASH_BUILD_ELECT: Type = 134217746; + pub const WAIT_EVENT_HASH_BUILD_HASH_INNER: Type = 134217747; + pub const WAIT_EVENT_HASH_BUILD_HASH_OUTER: Type = 134217748; + pub const WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: Type = 134217749; + pub const WAIT_EVENT_HASH_GROW_BATCHES_ELECT: Type = 134217750; + pub const WAIT_EVENT_HASH_GROW_BATCHES_FINISH: Type = 134217751; + pub const WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE: Type = 134217752; + pub const WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: Type = 134217753; + pub const WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: Type = 134217754; + pub const WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE: Type = 134217755; + pub const WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: Type = 134217756; + pub const WAIT_EVENT_LOGICAL_APPLY_SEND_DATA: Type = 134217757; + pub const WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE: Type = 134217758; + pub const WAIT_EVENT_LOGICAL_SYNC_DATA: Type = 134217759; + pub const WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE: Type = 134217760; + pub const WAIT_EVENT_MESSAGE_QUEUE_INTERNAL: Type = 134217761; + pub const WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE: Type = 134217762; + pub const WAIT_EVENT_MESSAGE_QUEUE_RECEIVE: Type = 134217763; + pub const WAIT_EVENT_MESSAGE_QUEUE_SEND: Type = 134217764; + pub const WAIT_EVENT_MULTIXACT_CREATION: Type = 134217765; + pub const WAIT_EVENT_PARALLEL_BITMAP_SCAN: Type = 134217766; + pub const WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN: Type = 134217767; + pub const WAIT_EVENT_PARALLEL_FINISH: Type = 134217768; + pub const WAIT_EVENT_PROCARRAY_GROUP_UPDATE: Type = 134217769; + pub const WAIT_EVENT_PROC_SIGNAL_BARRIER: Type = 134217770; + pub const WAIT_EVENT_PROMOTE: Type = 134217771; + pub const WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT: Type = 134217772; + pub const WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE: Type = 134217773; + pub const WAIT_EVENT_RECOVERY_END_COMMAND: Type = 134217774; + pub const WAIT_EVENT_RECOVERY_PAUSE: Type = 134217775; + pub const WAIT_EVENT_REPLICATION_ORIGIN_DROP: Type = 134217776; + pub const WAIT_EVENT_REPLICATION_SLOT_DROP: Type = 134217777; + pub const WAIT_EVENT_RESTORE_COMMAND: Type = 134217778; + pub const WAIT_EVENT_SAFE_SNAPSHOT: Type = 134217779; + pub const WAIT_EVENT_SYNC_REP: Type = 134217780; + pub const WAIT_EVENT_WAL_RECEIVER_EXIT: Type = 134217781; + pub const WAIT_EVENT_WAL_RECEIVER_WAIT_START: Type = 134217782; + pub const WAIT_EVENT_WAL_SUMMARY_READY: Type = 134217783; + pub const WAIT_EVENT_XACT_GROUP_UPDATE: Type = 134217784; +} +pub mod WaitEventTimeout { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_BASE_BACKUP_THROTTLE: Type = 150994944; + pub const WAIT_EVENT_CHECKPOINT_WRITE_DELAY: Type = 150994945; + pub const WAIT_EVENT_PG_SLEEP: Type = 150994946; + pub const WAIT_EVENT_RECOVERY_APPLY_DELAY: Type = 150994947; + pub const WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL: Type = 150994948; + pub const WAIT_EVENT_REGISTER_SYNC_REQUEST: Type = 150994949; + pub const WAIT_EVENT_SPIN_DELAY: Type = 150994950; + pub const WAIT_EVENT_VACUUM_DELAY: Type = 150994951; + pub const WAIT_EVENT_VACUUM_TRUNCATE: Type = 150994952; + pub const WAIT_EVENT_WAL_SUMMARIZER_ERROR: Type = 150994953; +} +pub mod PgStat_Kind { + pub type Type = ::core::ffi::c_uint; + pub const PGSTAT_KIND_INVALID: Type = 0; + pub const PGSTAT_KIND_DATABASE: Type = 1; + pub const PGSTAT_KIND_RELATION: Type = 2; + pub const PGSTAT_KIND_FUNCTION: Type = 3; + pub const PGSTAT_KIND_REPLSLOT: Type = 4; + pub const PGSTAT_KIND_SUBSCRIPTION: Type = 5; + pub const PGSTAT_KIND_ARCHIVER: Type = 6; + pub const PGSTAT_KIND_BGWRITER: Type = 7; + pub const PGSTAT_KIND_CHECKPOINTER: Type = 8; + pub const PGSTAT_KIND_IO: Type = 9; + pub const PGSTAT_KIND_SLRU: Type = 10; + pub const PGSTAT_KIND_WAL: Type = 11; +} +pub mod TrackFunctionsLevel { + pub type Type = ::core::ffi::c_uint; + pub const TRACK_FUNC_OFF: Type = 0; + pub const TRACK_FUNC_PL: Type = 1; + pub const TRACK_FUNC_ALL: Type = 2; +} +pub mod PgStat_FetchConsistency { + pub type Type = ::core::ffi::c_uint; + pub const PGSTAT_FETCH_CONSISTENCY_NONE: Type = 0; + pub const PGSTAT_FETCH_CONSISTENCY_CACHE: Type = 1; + pub const PGSTAT_FETCH_CONSISTENCY_SNAPSHOT: Type = 2; +} +pub mod SessionEndType { + pub type Type = ::core::ffi::c_uint; + pub const DISCONNECT_NOT_YET: Type = 0; + pub const DISCONNECT_NORMAL: Type = 1; + pub const DISCONNECT_CLIENT_EOF: Type = 2; + pub const DISCONNECT_FATAL: Type = 3; + pub const DISCONNECT_KILLED: Type = 4; +} +pub type PgStat_Counter = int64; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_FunctionCounts { + pub numcalls: PgStat_Counter, + pub total_time: instr_time, + pub self_time: instr_time, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_FunctionCallUsage { + pub fs: *mut PgStat_FunctionCounts, + pub save_f_total_time: instr_time, + pub save_total: instr_time, + pub start: instr_time, +} +impl Default for PgStat_FunctionCallUsage { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_BackendSubEntry { + pub apply_error_count: PgStat_Counter, + pub sync_error_count: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_TableCounts { + pub numscans: PgStat_Counter, + pub tuples_returned: PgStat_Counter, + pub tuples_fetched: PgStat_Counter, + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub tuples_hot_updated: PgStat_Counter, + pub tuples_newpage_updated: PgStat_Counter, + pub truncdropped: bool, + pub delta_live_tuples: PgStat_Counter, + pub delta_dead_tuples: PgStat_Counter, + pub changed_tuples: PgStat_Counter, + pub blocks_fetched: PgStat_Counter, + pub blocks_hit: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_TableStatus { + pub id: Oid, + pub shared: bool, + pub trans: *mut PgStat_TableXactStatus, + pub counts: PgStat_TableCounts, + pub relation: Relation, +} +impl Default for PgStat_TableStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_TableXactStatus { + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub truncdropped: bool, + pub inserted_pre_truncdrop: PgStat_Counter, + pub updated_pre_truncdrop: PgStat_Counter, + pub deleted_pre_truncdrop: PgStat_Counter, + pub nest_level: ::core::ffi::c_int, + pub upper: *mut PgStat_TableXactStatus, + pub parent: *mut PgStat_TableStatus, + pub next: *mut PgStat_TableXactStatus, +} +impl Default for PgStat_TableXactStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_ArchiverStats { + pub archived_count: PgStat_Counter, + pub last_archived_wal: [::core::ffi::c_char; 41usize], + pub last_archived_timestamp: TimestampTz, + pub failed_count: PgStat_Counter, + pub last_failed_wal: [::core::ffi::c_char; 41usize], + pub last_failed_timestamp: TimestampTz, + pub stat_reset_timestamp: TimestampTz, +} +impl Default for PgStat_ArchiverStats { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_BgWriterStats { + pub buf_written_clean: PgStat_Counter, + pub maxwritten_clean: PgStat_Counter, + pub buf_alloc: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_CheckpointerStats { + pub num_timed: PgStat_Counter, + pub num_requested: PgStat_Counter, + pub restartpoints_timed: PgStat_Counter, + pub restartpoints_requested: PgStat_Counter, + pub restartpoints_performed: PgStat_Counter, + pub write_time: PgStat_Counter, + pub sync_time: PgStat_Counter, + pub buffers_written: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +pub mod IOObject { + pub type Type = ::core::ffi::c_uint; + pub const IOOBJECT_RELATION: Type = 0; + pub const IOOBJECT_TEMP_RELATION: Type = 1; +} +pub mod IOContext { + pub type Type = ::core::ffi::c_uint; + pub const IOCONTEXT_BULKREAD: Type = 0; + pub const IOCONTEXT_BULKWRITE: Type = 1; + pub const IOCONTEXT_NORMAL: Type = 2; + pub const IOCONTEXT_VACUUM: Type = 3; +} +pub mod IOOp { + pub type Type = ::core::ffi::c_uint; + pub const IOOP_EVICT: Type = 0; + pub const IOOP_EXTEND: Type = 1; + pub const IOOP_FSYNC: Type = 2; + pub const IOOP_HIT: Type = 3; + pub const IOOP_READ: Type = 4; + pub const IOOP_REUSE: Type = 5; + pub const IOOP_WRITE: Type = 6; + pub const IOOP_WRITEBACK: Type = 7; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_BktypeIO { + pub counts: [[[PgStat_Counter; 8usize]; 4usize]; 2usize], + pub times: [[[PgStat_Counter; 8usize]; 4usize]; 2usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_IO { + pub stat_reset_timestamp: TimestampTz, + pub stats: [PgStat_BktypeIO; 16usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatDBEntry { + pub xact_commit: PgStat_Counter, + pub xact_rollback: PgStat_Counter, + pub blocks_fetched: PgStat_Counter, + pub blocks_hit: PgStat_Counter, + pub tuples_returned: PgStat_Counter, + pub tuples_fetched: PgStat_Counter, + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub last_autovac_time: TimestampTz, + pub conflict_tablespace: PgStat_Counter, + pub conflict_lock: PgStat_Counter, + pub conflict_snapshot: PgStat_Counter, + pub conflict_logicalslot: PgStat_Counter, + pub conflict_bufferpin: PgStat_Counter, + pub conflict_startup_deadlock: PgStat_Counter, + pub temp_files: PgStat_Counter, + pub temp_bytes: PgStat_Counter, + pub deadlocks: PgStat_Counter, + pub checksum_failures: PgStat_Counter, + pub last_checksum_failure: TimestampTz, + pub blk_read_time: PgStat_Counter, + pub blk_write_time: PgStat_Counter, + pub sessions: PgStat_Counter, + pub session_time: PgStat_Counter, + pub active_time: PgStat_Counter, + pub idle_in_transaction_time: PgStat_Counter, + pub sessions_abandoned: PgStat_Counter, + pub sessions_fatal: PgStat_Counter, + pub sessions_killed: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatFuncEntry { + pub numcalls: PgStat_Counter, + pub total_time: PgStat_Counter, + pub self_time: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatReplSlotEntry { + pub spill_txns: PgStat_Counter, + pub spill_count: PgStat_Counter, + pub spill_bytes: PgStat_Counter, + pub stream_txns: PgStat_Counter, + pub stream_count: PgStat_Counter, + pub stream_bytes: PgStat_Counter, + pub total_txns: PgStat_Counter, + pub total_bytes: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_SLRUStats { + pub blocks_zeroed: PgStat_Counter, + pub blocks_hit: PgStat_Counter, + pub blocks_read: PgStat_Counter, + pub blocks_written: PgStat_Counter, + pub blocks_exists: PgStat_Counter, + pub flush: PgStat_Counter, + pub truncate: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatSubEntry { + pub apply_error_count: PgStat_Counter, + pub sync_error_count: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatTabEntry { + pub numscans: PgStat_Counter, + pub lastscan: TimestampTz, + pub tuples_returned: PgStat_Counter, + pub tuples_fetched: PgStat_Counter, + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub tuples_hot_updated: PgStat_Counter, + pub tuples_newpage_updated: PgStat_Counter, + pub live_tuples: PgStat_Counter, + pub dead_tuples: PgStat_Counter, + pub mod_since_analyze: PgStat_Counter, + pub ins_since_vacuum: PgStat_Counter, + pub blocks_fetched: PgStat_Counter, + pub blocks_hit: PgStat_Counter, + pub last_vacuum_time: TimestampTz, + pub vacuum_count: PgStat_Counter, + pub last_autovacuum_time: TimestampTz, + pub autovacuum_count: PgStat_Counter, + pub last_analyze_time: TimestampTz, + pub analyze_count: PgStat_Counter, + pub last_autoanalyze_time: TimestampTz, + pub autoanalyze_count: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_WalStats { + pub wal_records: PgStat_Counter, + pub wal_fpi: PgStat_Counter, + pub wal_bytes: uint64, + pub wal_buffers_full: PgStat_Counter, + pub wal_write: PgStat_Counter, + pub wal_sync: PgStat_Counter, + pub wal_write_time: PgStat_Counter, + pub wal_sync_time: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_PendingWalStats { + pub wal_buffers_full: PgStat_Counter, + pub wal_write: PgStat_Counter, + pub wal_sync: PgStat_Counter, + pub wal_write_time: instr_time, + pub wal_sync_time: instr_time, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BackupState { + pub name: [::core::ffi::c_char; 1025usize], + pub startpoint: XLogRecPtr, + pub starttli: TimeLineID, + pub checkpointloc: XLogRecPtr, + pub starttime: pg_time_t, + pub started_in_recovery: bool, + pub istartpoint: XLogRecPtr, + pub istarttli: TimeLineID, + pub stoppoint: XLogRecPtr, + pub stoptli: TimeLineID, + pub stoptime: pg_time_t, +} +impl Default for BackupState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod WalSyncMethod { + pub type Type = ::core::ffi::c_uint; + pub const WAL_SYNC_METHOD_FSYNC: Type = 0; + pub const WAL_SYNC_METHOD_FDATASYNC: Type = 1; + pub const WAL_SYNC_METHOD_OPEN: Type = 2; + pub const WAL_SYNC_METHOD_FSYNC_WRITETHROUGH: Type = 3; + pub const WAL_SYNC_METHOD_OPEN_DSYNC: Type = 4; +} +pub mod ArchiveMode { + pub type Type = ::core::ffi::c_uint; + pub const ARCHIVE_MODE_OFF: Type = 0; + pub const ARCHIVE_MODE_ON: Type = 1; + pub const ARCHIVE_MODE_ALWAYS: Type = 2; +} +pub mod WalLevel { + pub type Type = ::core::ffi::c_uint; + pub const WAL_LEVEL_MINIMAL: Type = 0; + pub const WAL_LEVEL_REPLICA: Type = 1; + pub const WAL_LEVEL_LOGICAL: Type = 2; +} +pub mod WalCompression { + pub type Type = ::core::ffi::c_uint; + pub const WAL_COMPRESSION_NONE: Type = 0; + pub const WAL_COMPRESSION_PGLZ: Type = 1; + pub const WAL_COMPRESSION_LZ4: Type = 2; + pub const WAL_COMPRESSION_ZSTD: Type = 3; +} +pub mod RecoveryState { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_STATE_CRASH: Type = 0; + pub const RECOVERY_STATE_ARCHIVE: Type = 1; + pub const RECOVERY_STATE_DONE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct CheckpointStatsData { + pub ckpt_start_t: TimestampTz, + pub ckpt_write_t: TimestampTz, + pub ckpt_sync_t: TimestampTz, + pub ckpt_sync_end_t: TimestampTz, + pub ckpt_end_t: TimestampTz, + pub ckpt_bufs_written: ::core::ffi::c_int, + pub ckpt_segs_added: ::core::ffi::c_int, + pub ckpt_segs_removed: ::core::ffi::c_int, + pub ckpt_segs_recycled: ::core::ffi::c_int, + pub ckpt_sync_rels: ::core::ffi::c_int, + pub ckpt_longest_sync: uint64, + pub ckpt_agg_sync_time: uint64, +} +pub mod WALAvailability { + pub type Type = ::core::ffi::c_uint; + pub const WALAVAIL_INVALID_LSN: Type = 0; + pub const WALAVAIL_RESERVED: Type = 1; + pub const WALAVAIL_EXTENDED: Type = 2; + pub const WALAVAIL_UNRESERVED: Type = 3; + pub const WALAVAIL_REMOVED: Type = 4; +} +pub mod SessionBackupState { + pub type Type = ::core::ffi::c_uint; + pub const SESSION_BACKUP_NONE: Type = 0; + pub const SESSION_BACKUP_RUNNING: Type = 1; +} +pub type RmgrId = uint8; +pub mod RmgrIds { + pub type Type = ::core::ffi::c_uint; + pub const RM_XLOG_ID: Type = 0; + pub const RM_XACT_ID: Type = 1; + pub const RM_SMGR_ID: Type = 2; + pub const RM_CLOG_ID: Type = 3; + pub const RM_DBASE_ID: Type = 4; + pub const RM_TBLSPC_ID: Type = 5; + pub const RM_MULTIXACT_ID: Type = 6; + pub const RM_RELMAP_ID: Type = 7; + pub const RM_STANDBY_ID: Type = 8; + pub const RM_HEAP2_ID: Type = 9; + pub const RM_HEAP_ID: Type = 10; + pub const RM_BTREE_ID: Type = 11; + pub const RM_HASH_ID: Type = 12; + pub const RM_GIN_ID: Type = 13; + pub const RM_GIST_ID: Type = 14; + pub const RM_SEQ_ID: Type = 15; + pub const RM_SPGIST_ID: Type = 16; + pub const RM_BRIN_ID: Type = 17; + pub const RM_COMMIT_TS_ID: Type = 18; + pub const RM_REPLORIGIN_ID: Type = 19; + pub const RM_GENERIC_ID: Type = 20; + pub const RM_LOGICALMSG_ID: Type = 21; + pub const RM_NEXT_ID: Type = 22; +} +pub type pg_crc32c = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelFileLocator { + pub spcOid: Oid, + pub dbOid: Oid, + pub relNumber: RelFileNumber, +} +impl Default for RelFileLocator { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelFileLocatorBackend { + pub locator: RelFileLocator, + pub backend: ProcNumber, +} +impl Default for RelFileLocatorBackend { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecord { + pub xl_tot_len: uint32, + pub xl_xid: TransactionId, + pub xl_prev: XLogRecPtr, + pub xl_info: uint8, + pub xl_rmid: RmgrId, + pub xl_crc: pg_crc32c, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordBlockHeader { + pub id: uint8, + pub fork_flags: uint8, + pub data_length: uint16, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordBlockImageHeader { + pub length: uint16, + pub hole_offset: uint16, + pub bimg_info: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordBlockCompressHeader { + pub hole_length: uint16, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordDataHeaderShort { + pub id: uint8, + pub data_length: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordDataHeaderLong { + pub id: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WALOpenSegment { + pub ws_file: ::core::ffi::c_int, + pub ws_segno: XLogSegNo, + pub ws_tli: TimeLineID, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WALSegmentContext { + pub ws_dir: [::core::ffi::c_char; 1024usize], + pub ws_segsize: ::core::ffi::c_int, +} +impl Default for WALSegmentContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type XLogPageReadCB = ::core::option::Option< + unsafe extern "C" fn( + xlogreader: *mut XLogReaderState, + targetPagePtr: XLogRecPtr, + reqLen: ::core::ffi::c_int, + targetRecPtr: XLogRecPtr, + readBuf: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int, +>; +pub type WALSegmentOpenCB = ::core::option::Option< + unsafe extern "C" fn( + xlogreader: *mut XLogReaderState, + nextSegNo: XLogSegNo, + tli_p: *mut TimeLineID, + ), +>; +pub type WALSegmentCloseCB = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogReaderRoutine { + pub page_read: XLogPageReadCB, + pub segment_open: WALSegmentOpenCB, + pub segment_close: WALSegmentCloseCB, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DecodedBkpBlock { + pub in_use: bool, + pub rlocator: RelFileLocator, + pub forknum: ForkNumber::Type, + pub blkno: BlockNumber, + pub prefetch_buffer: Buffer, + pub flags: uint8, + pub has_image: bool, + pub apply_image: bool, + pub bkp_image: *mut ::core::ffi::c_char, + pub hole_offset: uint16, + pub hole_length: uint16, + pub bimg_len: uint16, + pub bimg_info: uint8, + pub has_data: bool, + pub data: *mut ::core::ffi::c_char, + pub data_len: uint16, + pub data_bufsz: uint16, +} +impl Default for DecodedBkpBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct DecodedXLogRecord { + pub size: usize, + pub oversized: bool, + pub next: *mut DecodedXLogRecord, + pub lsn: XLogRecPtr, + pub next_lsn: XLogRecPtr, + pub header: XLogRecord, + pub record_origin: RepOriginId, + pub toplevel_xid: TransactionId, + pub main_data: *mut ::core::ffi::c_char, + pub main_data_len: uint32, + pub max_block_id: ::core::ffi::c_int, + pub blocks: __IncompleteArrayField, +} +impl Default for DecodedXLogRecord { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XLogReaderState { + pub routine: XLogReaderRoutine, + pub system_identifier: uint64, + pub private_data: *mut ::core::ffi::c_void, + pub ReadRecPtr: XLogRecPtr, + pub EndRecPtr: XLogRecPtr, + pub abortedRecPtr: XLogRecPtr, + pub missingContrecPtr: XLogRecPtr, + pub overwrittenRecPtr: XLogRecPtr, + pub DecodeRecPtr: XLogRecPtr, + pub NextRecPtr: XLogRecPtr, + pub PrevRecPtr: XLogRecPtr, + pub record: *mut DecodedXLogRecord, + pub decode_buffer: *mut ::core::ffi::c_char, + pub decode_buffer_size: usize, + pub free_decode_buffer: bool, + pub decode_buffer_head: *mut ::core::ffi::c_char, + pub decode_buffer_tail: *mut ::core::ffi::c_char, + pub decode_queue_head: *mut DecodedXLogRecord, + pub decode_queue_tail: *mut DecodedXLogRecord, + pub readBuf: *mut ::core::ffi::c_char, + pub readLen: uint32, + pub segcxt: WALSegmentContext, + pub seg: WALOpenSegment, + pub segoff: uint32, + pub latestPagePtr: XLogRecPtr, + pub latestPageTLI: TimeLineID, + pub currRecPtr: XLogRecPtr, + pub currTLI: TimeLineID, + pub currTLIValidUntil: XLogRecPtr, + pub nextTLI: TimeLineID, + pub readRecordBuf: *mut ::core::ffi::c_char, + pub readRecordBufSize: uint32, + pub errormsg_buf: *mut ::core::ffi::c_char, + pub errormsg_deferred: bool, + pub nonblocking: bool, +} +impl Default for XLogReaderState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod XLogPageReadResult { + pub type Type = ::core::ffi::c_int; + pub const XLREAD_SUCCESS: Type = 0; + pub const XLREAD_FAIL: Type = -1; + pub const XLREAD_WOULDBLOCK: Type = -2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WALReadError { + pub wre_errno: ::core::ffi::c_int, + pub wre_off: ::core::ffi::c_int, + pub wre_req: ::core::ffi::c_int, + pub wre_read: ::core::ffi::c_int, + pub wre_seg: WALOpenSegment, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_class { + pub oid: Oid, + pub relname: NameData, + pub relnamespace: Oid, + pub reltype: Oid, + pub reloftype: Oid, + pub relowner: Oid, + pub relam: Oid, + pub relfilenode: Oid, + pub reltablespace: Oid, + pub relpages: int32, + pub reltuples: float4, + pub relallvisible: int32, + pub reltoastrelid: Oid, + pub relhasindex: bool, + pub relisshared: bool, + pub relpersistence: ::core::ffi::c_char, + pub relkind: ::core::ffi::c_char, + pub relnatts: int16, + pub relchecks: int16, + pub relhasrules: bool, + pub relhastriggers: bool, + pub relhassubclass: bool, + pub relrowsecurity: bool, + pub relforcerowsecurity: bool, + pub relispopulated: bool, + pub relreplident: ::core::ffi::c_char, + pub relispartition: bool, + pub relrewrite: Oid, + pub relfrozenxid: TransactionId, + pub relminmxid: TransactionId, +} +impl Default for FormData_pg_class { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_class = *mut FormData_pg_class; +#[repr(C)] +#[derive(Debug)] +pub struct FormData_pg_index { + pub indexrelid: Oid, + pub indrelid: Oid, + pub indnatts: int16, + pub indnkeyatts: int16, + pub indisunique: bool, + pub indnullsnotdistinct: bool, + pub indisprimary: bool, + pub indisexclusion: bool, + pub indimmediate: bool, + pub indisclustered: bool, + pub indisvalid: bool, + pub indcheckxmin: bool, + pub indisready: bool, + pub indislive: bool, + pub indisreplident: bool, + pub indkey: int2vector, +} +impl Default for FormData_pg_index { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_index = *mut FormData_pg_index; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectAddress { + pub classId: Oid, + pub objectId: Oid, + pub objectSubId: int32, +} +impl Default for ObjectAddress { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_publication { + pub oid: Oid, + pub pubname: NameData, + pub pubowner: Oid, + pub puballtables: bool, + pub pubinsert: bool, + pub pubupdate: bool, + pub pubdelete: bool, + pub pubtruncate: bool, + pub pubviaroot: bool, +} +impl Default for FormData_pg_publication { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_publication = *mut FormData_pg_publication; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PublicationActions { + pub pubinsert: bool, + pub pubupdate: bool, + pub pubdelete: bool, + pub pubtruncate: bool, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PublicationDesc { + pub pubactions: PublicationActions, + pub rf_valid_for_update: bool, + pub rf_valid_for_delete: bool, + pub cols_valid_for_update: bool, + pub cols_valid_for_delete: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Publication { + pub oid: Oid, + pub name: *mut ::core::ffi::c_char, + pub alltables: bool, + pub pubviaroot: bool, + pub pubactions: PublicationActions, +} +impl Default for Publication { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PublicationRelInfo { + pub relation: Relation, + pub whereClause: *mut Node, + pub columns: *mut List, +} +impl Default for PublicationRelInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PublicationPartOpt { + pub type Type = ::core::ffi::c_uint; + pub const PUBLICATION_PART_ROOT: Type = 0; + pub const PUBLICATION_PART_LEAF: Type = 1; + pub const PUBLICATION_PART_ALL: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RewriteRule { + pub ruleId: Oid, + pub event: CmdType::Type, + pub qual: *mut Node, + pub actions: *mut List, + pub enabled: ::core::ffi::c_char, + pub isInstead: bool, +} +impl Default for RewriteRule { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RuleLock { + pub numLocks: ::core::ffi::c_int, + pub rules: *mut *mut RewriteRule, +} +impl Default for RuleLock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SMgrRelationData { + pub smgr_rlocator: RelFileLocatorBackend, + pub smgr_targblock: BlockNumber, + pub smgr_cached_nblocks: [BlockNumber; 4usize], + pub smgr_which: ::core::ffi::c_int, + pub md_num_open_segs: [::core::ffi::c_int; 4usize], + pub md_seg_fds: [*mut _MdfdVec; 4usize], + pub pincount: ::core::ffi::c_int, + pub node: dlist_node, +} +impl Default for SMgrRelationData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SMgrRelation = *mut SMgrRelationData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRelId { + pub relId: Oid, + pub dbId: Oid, +} +impl Default for LockRelId { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockInfoData { + pub lockRelId: LockRelId, +} +impl Default for LockInfoData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LockInfo = *mut LockInfoData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelationData { + pub rd_locator: RelFileLocator, + pub rd_smgr: SMgrRelation, + pub rd_refcnt: ::core::ffi::c_int, + pub rd_backend: ProcNumber, + pub rd_islocaltemp: bool, + pub rd_isnailed: bool, + pub rd_isvalid: bool, + pub rd_indexvalid: bool, + pub rd_statvalid: bool, + pub rd_createSubid: SubTransactionId, + pub rd_newRelfilelocatorSubid: SubTransactionId, + pub rd_firstRelfilelocatorSubid: SubTransactionId, + pub rd_droppedSubid: SubTransactionId, + pub rd_rel: Form_pg_class, + pub rd_att: TupleDesc, + pub rd_id: Oid, + pub rd_lockInfo: LockInfoData, + pub rd_rules: *mut RuleLock, + pub rd_rulescxt: MemoryContext, + pub trigdesc: *mut TriggerDesc, + pub rd_rsdesc: *mut RowSecurityDesc, + pub rd_fkeylist: *mut List, + pub rd_fkeyvalid: bool, + pub rd_partkey: PartitionKey, + pub rd_partkeycxt: MemoryContext, + pub rd_partdesc: PartitionDesc, + pub rd_pdcxt: MemoryContext, + pub rd_partdesc_nodetached: PartitionDesc, + pub rd_pddcxt: MemoryContext, + pub rd_partdesc_nodetached_xmin: TransactionId, + pub rd_partcheck: *mut List, + pub rd_partcheckvalid: bool, + pub rd_partcheckcxt: MemoryContext, + pub rd_indexlist: *mut List, + pub rd_pkindex: Oid, + pub rd_ispkdeferrable: bool, + pub rd_replidindex: Oid, + pub rd_statlist: *mut List, + pub rd_attrsvalid: bool, + pub rd_keyattr: *mut Bitmapset, + pub rd_pkattr: *mut Bitmapset, + pub rd_idattr: *mut Bitmapset, + pub rd_hotblockingattr: *mut Bitmapset, + pub rd_summarizedattr: *mut Bitmapset, + pub rd_pubdesc: *mut PublicationDesc, + pub rd_options: *mut bytea, + pub rd_amhandler: Oid, + pub rd_tableam: *const TableAmRoutine, + pub rd_index: Form_pg_index, + pub rd_indextuple: *mut HeapTupleData, + pub rd_indexcxt: MemoryContext, + pub rd_indam: *mut IndexAmRoutine, + pub rd_opfamily: *mut Oid, + pub rd_opcintype: *mut Oid, + pub rd_support: *mut RegProcedure, + pub rd_supportinfo: *mut FmgrInfo, + pub rd_indoption: *mut int16, + pub rd_indexprs: *mut List, + pub rd_indpred: *mut List, + pub rd_exclops: *mut Oid, + pub rd_exclprocs: *mut Oid, + pub rd_exclstrats: *mut uint16, + pub rd_indcollation: *mut Oid, + pub rd_opcoptions: *mut *mut bytea, + pub rd_amcache: *mut ::core::ffi::c_void, + pub rd_fdwroutine: *mut FdwRoutine, + pub rd_toastoid: Oid, + pub pgstat_enabled: bool, + pub pgstat_info: *mut PgStat_TableStatus, +} +impl Default for RelationData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignKeyCacheInfo { + pub type_: NodeTag, + pub conoid: Oid, + pub conrelid: Oid, + pub confrelid: Oid, + pub nkeys: ::core::ffi::c_int, + pub conkey: [AttrNumber; 32usize], + pub confkey: [AttrNumber; 32usize], + pub conpfeqop: [Oid; 32usize], +} +impl Default for ForeignKeyCacheInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AutoVacOpts { + pub enabled: bool, + pub vacuum_threshold: ::core::ffi::c_int, + pub vacuum_ins_threshold: ::core::ffi::c_int, + pub analyze_threshold: ::core::ffi::c_int, + pub vacuum_cost_limit: ::core::ffi::c_int, + pub freeze_min_age: ::core::ffi::c_int, + pub freeze_max_age: ::core::ffi::c_int, + pub freeze_table_age: ::core::ffi::c_int, + pub multixact_freeze_min_age: ::core::ffi::c_int, + pub multixact_freeze_max_age: ::core::ffi::c_int, + pub multixact_freeze_table_age: ::core::ffi::c_int, + pub log_min_duration: ::core::ffi::c_int, + pub vacuum_cost_delay: float8, + pub vacuum_scale_factor: float8, + pub vacuum_ins_scale_factor: float8, + pub analyze_scale_factor: float8, +} +pub mod StdRdOptIndexCleanup { + pub type Type = ::core::ffi::c_uint; + pub const STDRD_OPTION_VACUUM_INDEX_CLEANUP_AUTO: Type = 0; + pub const STDRD_OPTION_VACUUM_INDEX_CLEANUP_OFF: Type = 1; + pub const STDRD_OPTION_VACUUM_INDEX_CLEANUP_ON: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StdRdOptions { + pub vl_len_: int32, + pub fillfactor: ::core::ffi::c_int, + pub toast_tuple_target: ::core::ffi::c_int, + pub autovacuum: AutoVacOpts, + pub user_catalog_table: bool, + pub parallel_workers: ::core::ffi::c_int, + pub vacuum_index_cleanup: StdRdOptIndexCleanup::Type, + pub vacuum_truncate: bool, +} +impl Default for StdRdOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ViewOptCheckOption { + pub type Type = ::core::ffi::c_uint; + pub const VIEW_OPTION_CHECK_OPTION_NOT_SET: Type = 0; + pub const VIEW_OPTION_CHECK_OPTION_LOCAL: Type = 1; + pub const VIEW_OPTION_CHECK_OPTION_CASCADED: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ViewOptions { + pub vl_len_: int32, + pub security_barrier: bool, + pub security_invoker: bool, + pub check_option: ViewOptCheckOption::Type, +} +impl Default for ViewOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GenericXLogState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GinStatsData { + pub nPendingPages: BlockNumber, + pub nTotalPages: BlockNumber, + pub nEntryPages: BlockNumber, + pub nDataPages: BlockNumber, + pub nEntries: int64, + pub ginVersion: int32, +} +pub type GinTernaryValue = ::core::ffi::c_char; +pub type GistNSN = XLogRecPtr; +pub type PageGistNSN = PageXLogRecPtr; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GISTPageOpaqueData { + pub nsn: PageGistNSN, + pub rightlink: BlockNumber, + pub flags: uint16, + pub gist_page_id: uint16, +} +pub type GISTPageOpaque = *mut GISTPageOpaqueData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GIST_SPLITVEC { + pub spl_left: *mut OffsetNumber, + pub spl_nleft: ::core::ffi::c_int, + pub spl_ldatum: Datum, + pub spl_ldatum_exists: bool, + pub spl_right: *mut OffsetNumber, + pub spl_nright: ::core::ffi::c_int, + pub spl_rdatum: Datum, + pub spl_rdatum_exists: bool, +} +impl Default for GIST_SPLITVEC { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GISTENTRY { + pub key: Datum, + pub rel: Relation, + pub page: Page, + pub offset: OffsetNumber, + pub leafkey: bool, +} +impl Default for GISTENTRY { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GISTDeletedPageContents { + pub deleteXid: FullTransactionId, +} +#[repr(C)] +#[derive(Debug)] +pub struct GistEntryVector { + pub n: int32, + pub vector: __IncompleteArrayField, +} +impl Default for GistEntryVector { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableScanDescData { + pub rs_rd: Relation, + pub rs_snapshot: *mut SnapshotData, + pub rs_nkeys: ::core::ffi::c_int, + pub rs_key: *mut ScanKeyData, + pub rs_mintid: ItemPointerData, + pub rs_maxtid: ItemPointerData, + pub rs_flags: uint32, + pub rs_parallel: *mut ParallelTableScanDescData, +} +impl Default for TableScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TableScanDesc = *mut TableScanDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelTableScanDescData { + pub phs_relid: Oid, + pub phs_syncscan: bool, + pub phs_snapshot_any: bool, + pub phs_snapshot_off: Size, +} +impl Default for ParallelTableScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParallelTableScanDesc = *mut ParallelTableScanDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelBlockTableScanDescData { + pub base: ParallelTableScanDescData, + pub phs_nblocks: BlockNumber, + pub phs_mutex: slock_t, + pub phs_startblock: BlockNumber, + pub phs_nallocated: pg_atomic_uint64, +} +impl Default for ParallelBlockTableScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParallelBlockTableScanDesc = *mut ParallelBlockTableScanDescData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ParallelBlockTableScanWorkerData { + pub phsw_nallocated: uint64, + pub phsw_chunk_remaining: uint32, + pub phsw_chunk_size: uint32, +} +pub type ParallelBlockTableScanWorker = *mut ParallelBlockTableScanWorkerData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexFetchTableData { + pub rel: Relation, +} +impl Default for IndexFetchTableData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexScanDescData { + pub heapRelation: Relation, + pub indexRelation: Relation, + pub xs_snapshot: *mut SnapshotData, + pub numberOfKeys: ::core::ffi::c_int, + pub numberOfOrderBys: ::core::ffi::c_int, + pub keyData: *mut ScanKeyData, + pub orderByData: *mut ScanKeyData, + pub xs_want_itup: bool, + pub xs_temp_snap: bool, + pub kill_prior_tuple: bool, + pub ignore_killed_tuples: bool, + pub xactStartedInRecovery: bool, + pub opaque: *mut ::core::ffi::c_void, + pub xs_itup: IndexTuple, + pub xs_itupdesc: *mut TupleDescData, + pub xs_hitup: HeapTuple, + pub xs_hitupdesc: *mut TupleDescData, + pub xs_heaptid: ItemPointerData, + pub xs_heap_continue: bool, + pub xs_heapfetch: *mut IndexFetchTableData, + pub xs_recheck: bool, + pub xs_orderbyvals: *mut Datum, + pub xs_orderbynulls: *mut bool, + pub xs_recheckorderby: bool, + pub parallel_scan: *mut ParallelIndexScanDescData, +} +impl Default for IndexScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct ParallelIndexScanDescData { + pub ps_relid: Oid, + pub ps_indexid: Oid, + pub ps_offset: Size, + pub ps_snapshot_data: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for ParallelIndexScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SysScanDescData { + pub heap_rel: Relation, + pub irel: Relation, + pub scan: *mut TableScanDescData, + pub iscan: *mut IndexScanDescData, + pub snapshot: *mut SnapshotData, + pub slot: *mut TupleTableSlot, +} +impl Default for SysScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalCatcacheMsg { + pub id: int8, + pub dbId: Oid, + pub hashValue: uint32, +} +impl Default for SharedInvalCatcacheMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalCatalogMsg { + pub id: int8, + pub dbId: Oid, + pub catId: Oid, +} +impl Default for SharedInvalCatalogMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalRelcacheMsg { + pub id: int8, + pub dbId: Oid, + pub relId: Oid, +} +impl Default for SharedInvalRelcacheMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalSmgrMsg { + pub id: int8, + pub backend_hi: int8, + pub backend_lo: uint16, + pub rlocator: RelFileLocator, +} +impl Default for SharedInvalSmgrMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalRelmapMsg { + pub id: int8, + pub dbId: Oid, +} +impl Default for SharedInvalRelmapMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalSnapshotMsg { + pub id: int8, + pub dbId: Oid, + pub relId: Oid, +} +impl Default for SharedInvalSnapshotMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union SharedInvalidationMessage { + pub id: int8, + pub cc: SharedInvalCatcacheMsg, + pub cat: SharedInvalCatalogMsg, + pub rc: SharedInvalRelcacheMsg, + pub sm: SharedInvalSmgrMsg, + pub rm: SharedInvalRelmapMsg, + pub sn: SharedInvalSnapshotMsg, +} +impl Default for SharedInvalidationMessage { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SyncCommitLevel { + pub type Type = ::core::ffi::c_uint; + pub const SYNCHRONOUS_COMMIT_OFF: Type = 0; + pub const SYNCHRONOUS_COMMIT_LOCAL_FLUSH: Type = 1; + pub const SYNCHRONOUS_COMMIT_REMOTE_WRITE: Type = 2; + pub const SYNCHRONOUS_COMMIT_REMOTE_FLUSH: Type = 3; + pub const SYNCHRONOUS_COMMIT_REMOTE_APPLY: Type = 4; +} +pub mod XactEvent { + pub type Type = ::core::ffi::c_uint; + pub const XACT_EVENT_COMMIT: Type = 0; + pub const XACT_EVENT_PARALLEL_COMMIT: Type = 1; + pub const XACT_EVENT_ABORT: Type = 2; + pub const XACT_EVENT_PARALLEL_ABORT: Type = 3; + pub const XACT_EVENT_PREPARE: Type = 4; + pub const XACT_EVENT_PRE_COMMIT: Type = 5; + pub const XACT_EVENT_PARALLEL_PRE_COMMIT: Type = 6; + pub const XACT_EVENT_PRE_PREPARE: Type = 7; +} +pub type XactCallback = ::core::option::Option< + unsafe extern "C" fn(event: XactEvent::Type, arg: *mut ::core::ffi::c_void), +>; +pub mod SubXactEvent { + pub type Type = ::core::ffi::c_uint; + pub const SUBXACT_EVENT_START_SUB: Type = 0; + pub const SUBXACT_EVENT_COMMIT_SUB: Type = 1; + pub const SUBXACT_EVENT_ABORT_SUB: Type = 2; + pub const SUBXACT_EVENT_PRE_COMMIT_SUB: Type = 3; +} +pub type SubXactCallback = ::core::option::Option< + unsafe extern "C" fn( + event: SubXactEvent::Type, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + arg: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SavedTransactionCharacteristics { + pub save_XactIsoLevel: ::core::ffi::c_int, + pub save_XactReadOnly: bool, + pub save_XactDeferrable: bool, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct xl_xact_assignment { + pub xtop: TransactionId, + pub nsubxacts: ::core::ffi::c_int, + pub xsub: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_xinfo { + pub xinfo: uint32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_dbinfo { + pub dbId: Oid, + pub tsId: Oid, +} +impl Default for xl_xact_dbinfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct xl_xact_subxacts { + pub nsubxacts: ::core::ffi::c_int, + pub subxacts: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_xact_relfilelocators { + pub nrels: ::core::ffi::c_int, + pub xlocators: __IncompleteArrayField, +} +impl Default for xl_xact_relfilelocators { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_stats_item { + pub kind: ::core::ffi::c_int, + pub dboid: Oid, + pub objoid: Oid, +} +impl Default for xl_xact_stats_item { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_xact_stats_items { + pub nitems: ::core::ffi::c_int, + pub items: __IncompleteArrayField, +} +impl Default for xl_xact_stats_items { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +pub struct xl_xact_invals { + pub nmsgs: ::core::ffi::c_int, + pub msgs: __IncompleteArrayField, +} +impl Default for xl_xact_invals { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_twophase { + pub xid: TransactionId, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_origin { + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_commit { + pub xact_time: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_abort { + pub xact_time: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_prepare { + pub magic: uint32, + pub total_len: uint32, + pub xid: TransactionId, + pub database: Oid, + pub prepared_at: TimestampTz, + pub owner: Oid, + pub nsubxacts: int32, + pub ncommitrels: int32, + pub nabortrels: int32, + pub ncommitstats: int32, + pub nabortstats: int32, + pub ninvalmsgs: int32, + pub initfileinval: bool, + pub gidlen: uint16, + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +impl Default for xl_xact_prepare { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_parsed_commit { + pub xact_time: TimestampTz, + pub xinfo: uint32, + pub dbId: Oid, + pub tsId: Oid, + pub nsubxacts: ::core::ffi::c_int, + pub subxacts: *mut TransactionId, + pub nrels: ::core::ffi::c_int, + pub xlocators: *mut RelFileLocator, + pub nstats: ::core::ffi::c_int, + pub stats: *mut xl_xact_stats_item, + pub nmsgs: ::core::ffi::c_int, + pub msgs: *mut SharedInvalidationMessage, + pub twophase_xid: TransactionId, + pub twophase_gid: [::core::ffi::c_char; 200usize], + pub nabortrels: ::core::ffi::c_int, + pub abortlocators: *mut RelFileLocator, + pub nabortstats: ::core::ffi::c_int, + pub abortstats: *mut xl_xact_stats_item, + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +impl Default for xl_xact_parsed_commit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type xl_xact_parsed_prepare = xl_xact_parsed_commit; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_parsed_abort { + pub xact_time: TimestampTz, + pub xinfo: uint32, + pub dbId: Oid, + pub tsId: Oid, + pub nsubxacts: ::core::ffi::c_int, + pub subxacts: *mut TransactionId, + pub nrels: ::core::ffi::c_int, + pub xlocators: *mut RelFileLocator, + pub nstats: ::core::ffi::c_int, + pub stats: *mut xl_xact_stats_item, + pub twophase_xid: TransactionId, + pub twophase_gid: [::core::ffi::c_char; 200usize], + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +impl Default for xl_xact_parsed_abort { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResourceOwnerData { + _unused: [u8; 0], +} +pub type ResourceOwner = *mut ResourceOwnerData; +pub mod ResourceReleasePhase { + pub type Type = ::core::ffi::c_uint; + pub const RESOURCE_RELEASE_BEFORE_LOCKS: Type = 1; + pub const RESOURCE_RELEASE_LOCKS: Type = 2; + pub const RESOURCE_RELEASE_AFTER_LOCKS: Type = 3; +} +pub type ResourceReleasePriority = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResourceOwnerDesc { + pub name: *const ::core::ffi::c_char, + pub release_phase: ResourceReleasePhase::Type, + pub release_priority: ResourceReleasePriority, + pub ReleaseResource: ::core::option::Option, + pub DebugPrint: + ::core::option::Option *mut ::core::ffi::c_char>, +} +impl Default for ResourceOwnerDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ResourceReleaseCallback = ::core::option::Option< + unsafe extern "C" fn( + phase: ResourceReleasePhase::Type, + isCommit: bool, + isTopLevel: bool, + arg: *mut ::core::ffi::c_void, + ), +>; +pub type Block = *mut ::core::ffi::c_void; +pub mod BufferAccessStrategyType { + pub type Type = ::core::ffi::c_uint; + pub const BAS_NORMAL: Type = 0; + pub const BAS_BULKREAD: Type = 1; + pub const BAS_BULKWRITE: Type = 2; + pub const BAS_VACUUM: Type = 3; +} +pub mod ReadBufferMode { + pub type Type = ::core::ffi::c_uint; + pub const RBM_NORMAL: Type = 0; + pub const RBM_ZERO_AND_LOCK: Type = 1; + pub const RBM_ZERO_AND_CLEANUP_LOCK: Type = 2; + pub const RBM_ZERO_ON_ERROR: Type = 3; + pub const RBM_NORMAL_NO_LOG: Type = 4; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PrefetchBufferResult { + pub recent_buffer: Buffer, + pub initiated_io: bool, +} +pub mod ExtendBufferedFlags { + pub type Type = ::core::ffi::c_uint; + pub const EB_SKIP_EXTENSION_LOCK: Type = 1; + pub const EB_PERFORMING_RECOVERY: Type = 2; + pub const EB_CREATE_FORK_IF_NEEDED: Type = 4; + pub const EB_LOCK_FIRST: Type = 8; + pub const EB_CLEAR_SIZE_CACHE: Type = 16; + pub const EB_LOCK_TARGET: Type = 32; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufferManagerRelation { + pub rel: Relation, + pub smgr: *mut SMgrRelationData, + pub relpersistence: ::core::ffi::c_char, +} +impl Default for BufferManagerRelation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReadBuffersOperation { + pub rel: Relation, + pub smgr: *mut SMgrRelationData, + pub smgr_persistence: ::core::ffi::c_char, + pub forknum: ForkNumber::Type, + pub strategy: BufferAccessStrategy, + pub buffers: *mut Buffer, + pub blocknum: BlockNumber, + pub flags: ::core::ffi::c_int, + pub nblocks: int16, + pub io_buffers_len: int16, +} +impl Default for ReadBuffersOperation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WritebackContext { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReadStream { + _unused: [u8; 0], +} +pub type ReadStreamBlockNumberCB = ::core::option::Option< + unsafe extern "C" fn( + stream: *mut ReadStream, + callback_private_data: *mut ::core::ffi::c_void, + per_buffer_data: *mut ::core::ffi::c_void, + ) -> BlockNumber, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BulkInsertStateData { + _unused: [u8; 0], +} +pub mod ScanOptions { + pub type Type = ::core::ffi::c_uint; + pub const SO_TYPE_SEQSCAN: Type = 1; + pub const SO_TYPE_BITMAPSCAN: Type = 2; + pub const SO_TYPE_SAMPLESCAN: Type = 4; + pub const SO_TYPE_TIDSCAN: Type = 8; + pub const SO_TYPE_TIDRANGESCAN: Type = 16; + pub const SO_TYPE_ANALYZE: Type = 32; + pub const SO_ALLOW_STRAT: Type = 64; + pub const SO_ALLOW_SYNC: Type = 128; + pub const SO_ALLOW_PAGEMODE: Type = 256; + pub const SO_TEMP_SNAPSHOT: Type = 512; + pub const SO_NEED_TUPLES: Type = 1024; +} +pub mod TM_Result { + pub type Type = ::core::ffi::c_uint; + pub const TM_Ok: Type = 0; + pub const TM_Invisible: Type = 1; + pub const TM_SelfModified: Type = 2; + pub const TM_Updated: Type = 3; + pub const TM_Deleted: Type = 4; + pub const TM_BeingModified: Type = 5; + pub const TM_WouldBlock: Type = 6; +} +pub mod TU_UpdateIndexes { + pub type Type = ::core::ffi::c_uint; + pub const TU_None: Type = 0; + pub const TU_All: Type = 1; + pub const TU_Summarizing: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TM_FailureData { + pub ctid: ItemPointerData, + pub xmax: TransactionId, + pub cmax: CommandId, + pub traversed: bool, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TM_IndexDelete { + pub tid: ItemPointerData, + pub id: int16, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TM_IndexStatus { + pub idxoffnum: OffsetNumber, + pub knowndeletable: bool, + pub promising: bool, + pub freespace: int16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TM_IndexDeleteOp { + pub irel: Relation, + pub iblknum: BlockNumber, + pub bottomup: bool, + pub bottomupfreespace: ::core::ffi::c_int, + pub ndeltids: ::core::ffi::c_int, + pub deltids: *mut TM_IndexDelete, + pub status: *mut TM_IndexStatus, +} +impl Default for TM_IndexDeleteOp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type IndexBuildCallback = ::core::option::Option< + unsafe extern "C" fn( + index: Relation, + tid: ItemPointer, + values: *mut Datum, + isnull: *mut bool, + tupleIsAlive: bool, + state: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableAmRoutine { + pub type_: NodeTag, + pub slot_callbacks: + ::core::option::Option *const TupleTableSlotOps>, + pub scan_begin: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: *mut ScanKeyData, + pscan: ParallelTableScanDesc, + flags: uint32, + ) -> TableScanDesc, + >, + pub scan_end: ::core::option::Option, + pub scan_rescan: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + key: *mut ScanKeyData, + set_params: bool, + allow_strat: bool, + allow_sync: bool, + allow_pagemode: bool, + ), + >, + pub scan_getnextslot: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub scan_set_tidrange: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, mintid: ItemPointer, maxtid: ItemPointer), + >, + pub scan_getnextslot_tidrange: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub parallelscan_estimate: ::core::option::Option Size>, + pub parallelscan_initialize: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, pscan: ParallelTableScanDesc) -> Size, + >, + pub parallelscan_reinitialize: + ::core::option::Option, + pub index_fetch_begin: + ::core::option::Option *mut IndexFetchTableData>, + pub index_fetch_reset: + ::core::option::Option, + pub index_fetch_end: + ::core::option::Option, + pub index_fetch_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: *mut IndexFetchTableData, + tid: ItemPointer, + snapshot: Snapshot, + slot: *mut TupleTableSlot, + call_again: *mut bool, + all_dead: *mut bool, + ) -> bool, + >, + pub tuple_fetch_row_version: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + tid: ItemPointer, + snapshot: Snapshot, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub tuple_tid_valid: + ::core::option::Option bool>, + pub tuple_get_latest_tid: + ::core::option::Option, + pub tuple_satisfies_snapshot: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, snapshot: Snapshot) -> bool, + >, + pub index_delete_tuples: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, delstate: *mut TM_IndexDeleteOp) -> TransactionId, + >, + pub tuple_insert: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slot: *mut TupleTableSlot, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: *mut BulkInsertStateData, + ), + >, + pub tuple_insert_speculative: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slot: *mut TupleTableSlot, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: *mut BulkInsertStateData, + specToken: uint32, + ), + >, + pub tuple_complete_speculative: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slot: *mut TupleTableSlot, + specToken: uint32, + succeeded: bool, + ), + >, + pub multi_insert: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slots: *mut *mut TupleTableSlot, + nslots: ::core::ffi::c_int, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: *mut BulkInsertStateData, + ), + >, + pub tuple_delete: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + tid: ItemPointer, + cid: CommandId, + snapshot: Snapshot, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + changingPart: bool, + ) -> TM_Result::Type, + >, + pub tuple_update: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + otid: ItemPointer, + slot: *mut TupleTableSlot, + cid: CommandId, + snapshot: Snapshot, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + lockmode: *mut LockTupleMode::Type, + update_indexes: *mut TU_UpdateIndexes::Type, + ) -> TM_Result::Type, + >, + pub tuple_lock: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + tid: ItemPointer, + snapshot: Snapshot, + slot: *mut TupleTableSlot, + cid: CommandId, + mode: LockTupleMode::Type, + wait_policy: LockWaitPolicy::Type, + flags: uint8, + tmfd: *mut TM_FailureData, + ) -> TM_Result::Type, + >, + pub finish_bulk_insert: + ::core::option::Option, + pub relation_set_new_filelocator: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + newrlocator: *const RelFileLocator, + persistence: ::core::ffi::c_char, + freezeXid: *mut TransactionId, + minmulti: *mut MultiXactId, + ), + >, + pub relation_nontransactional_truncate: + ::core::option::Option, + pub relation_copy_data: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, newrlocator: *const RelFileLocator), + >, + pub relation_copy_for_cluster: ::core::option::Option< + unsafe extern "C" fn( + OldTable: Relation, + NewTable: Relation, + OldIndex: Relation, + use_sort: bool, + OldestXmin: TransactionId, + xid_cutoff: *mut TransactionId, + multi_cutoff: *mut MultiXactId, + num_tuples: *mut f64, + tups_vacuumed: *mut f64, + tups_recently_dead: *mut f64, + ), + >, + pub relation_vacuum: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + params: *mut VacuumParams, + bstrategy: BufferAccessStrategy, + ), + >, + pub scan_analyze_next_block: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, stream: *mut ReadStream) -> bool, + >, + pub scan_analyze_next_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + OldestXmin: TransactionId, + liverows: *mut f64, + deadrows: *mut f64, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub index_build_range_scan: ::core::option::Option< + unsafe extern "C" fn( + table_rel: Relation, + index_rel: Relation, + index_info: *mut IndexInfo, + allow_sync: bool, + anyvisible: bool, + progress: bool, + start_blockno: BlockNumber, + numblocks: BlockNumber, + callback: IndexBuildCallback, + callback_state: *mut ::core::ffi::c_void, + scan: TableScanDesc, + ) -> f64, + >, + pub index_validate_scan: ::core::option::Option< + unsafe extern "C" fn( + table_rel: Relation, + index_rel: Relation, + index_info: *mut IndexInfo, + snapshot: Snapshot, + state: *mut ValidateIndexState, + ), + >, + pub relation_size: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, forkNumber: ForkNumber::Type) -> uint64, + >, + pub relation_needs_toast_table: + ::core::option::Option bool>, + pub relation_toast_am: ::core::option::Option Oid>, + pub relation_fetch_toast_slice: ::core::option::Option< + unsafe extern "C" fn( + toastrel: Relation, + valueid: Oid, + attrsize: int32, + sliceoffset: int32, + slicelength: int32, + result: *mut varlena, + ), + >, + pub relation_estimate_size: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + attr_widths: *mut int32, + pages: *mut BlockNumber, + tuples: *mut f64, + allvisfrac: *mut f64, + ), + >, + pub scan_bitmap_next_block: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, tbmres: *mut TBMIterateResult) -> bool, + >, + pub scan_bitmap_next_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + tbmres: *mut TBMIterateResult, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub scan_sample_next_block: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, scanstate: *mut SampleScanState) -> bool, + >, + pub scan_sample_next_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + scanstate: *mut SampleScanState, + slot: *mut TupleTableSlot, + ) -> bool, + >, +} +impl Default for TableAmRoutine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ShmemIndexEnt { + pub key: [::core::ffi::c_char; 48usize], + pub location: *mut ::core::ffi::c_void, + pub size: Size, + pub allocated_size: Size, +} +impl Default for ShmemIndexEnt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_toc { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct shm_toc_estimator { + pub space_for_chunks: Size, + pub number_of_keys: Size, +} +pub type BulkInsertState = *mut BulkInsertStateData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeapScanDescData { + pub rs_base: TableScanDescData, + pub rs_nblocks: BlockNumber, + pub rs_startblock: BlockNumber, + pub rs_numblocks: BlockNumber, + pub rs_inited: bool, + pub rs_coffset: OffsetNumber, + pub rs_cblock: BlockNumber, + pub rs_cbuf: Buffer, + pub rs_strategy: BufferAccessStrategy, + pub rs_ctup: HeapTupleData, + pub rs_read_stream: *mut ReadStream, + pub rs_dir: ScanDirection::Type, + pub rs_prefetch_block: BlockNumber, + pub rs_parallelworkerdata: *mut ParallelBlockTableScanWorkerData, + pub rs_vmbuffer: Buffer, + pub rs_empty_tuples_pending: ::core::ffi::c_int, + pub rs_cindex: ::core::ffi::c_int, + pub rs_ntuples: ::core::ffi::c_int, + pub rs_vistuples: [OffsetNumber; 291usize], +} +impl Default for HeapScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type HeapScanDesc = *mut HeapScanDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexFetchHeapData { + pub xs_base: IndexFetchTableData, + pub xs_cbuf: Buffer, +} +impl Default for IndexFetchHeapData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod HTSV_Result { + pub type Type = ::core::ffi::c_uint; + pub const HEAPTUPLE_DEAD: Type = 0; + pub const HEAPTUPLE_LIVE: Type = 1; + pub const HEAPTUPLE_RECENTLY_DEAD: Type = 2; + pub const HEAPTUPLE_INSERT_IN_PROGRESS: Type = 3; + pub const HEAPTUPLE_DELETE_IN_PROGRESS: Type = 4; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HeapTupleFreeze { + pub xmax: TransactionId, + pub t_infomask2: uint16, + pub t_infomask: uint16, + pub frzflags: uint8, + pub checkflags: uint8, + pub offset: OffsetNumber, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HeapPageFreeze { + pub freeze_required: bool, + pub FreezePageRelfrozenXid: TransactionId, + pub FreezePageRelminMxid: MultiXactId, + pub NoFreezePageRelfrozenXid: TransactionId, + pub NoFreezePageRelminMxid: MultiXactId, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PruneFreezeResult { + pub ndeleted: ::core::ffi::c_int, + pub nnewlpdead: ::core::ffi::c_int, + pub nfrozen: ::core::ffi::c_int, + pub live_tuples: ::core::ffi::c_int, + pub recently_dead_tuples: ::core::ffi::c_int, + pub all_visible: bool, + pub all_frozen: bool, + pub vm_conflict_horizon: TransactionId, + pub hastup: bool, + pub lpdead_items: ::core::ffi::c_int, + pub deadoffsets: [OffsetNumber; 291usize], +} +impl Default for PruneFreezeResult { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PruneReason { + pub type Type = ::core::ffi::c_uint; + pub const PRUNE_ON_ACCESS: Type = 0; + pub const PRUNE_VACUUM_SCAN: Type = 1; + pub const PRUNE_VACUUM_CLEANUP: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GlobalVisState { + _unused: [u8; 0], +} +pub mod SyncRequestType { + pub type Type = ::core::ffi::c_uint; + pub const SYNC_REQUEST: Type = 0; + pub const SYNC_UNLINK_REQUEST: Type = 1; + pub const SYNC_FORGET_REQUEST: Type = 2; + pub const SYNC_FILTER_REQUEST: Type = 3; +} +pub mod SyncRequestHandler { + pub type Type = ::core::ffi::c_uint; + pub const SYNC_HANDLER_MD: Type = 0; + pub const SYNC_HANDLER_CLOG: Type = 1; + pub const SYNC_HANDLER_COMMIT_TS: Type = 2; + pub const SYNC_HANDLER_MULTIXACT_OFFSET: Type = 3; + pub const SYNC_HANDLER_MULTIXACT_MEMBER: Type = 4; + pub const SYNC_HANDLER_NONE: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FileTag { + pub handler: int16, + pub forknum: int16, + pub rlocator: RelFileLocator, + pub segno: uint64, +} +impl Default for FileTag { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MultiXactStatus { + pub type Type = ::core::ffi::c_uint; + pub const MultiXactStatusForKeyShare: Type = 0; + pub const MultiXactStatusForShare: Type = 1; + pub const MultiXactStatusForNoKeyUpdate: Type = 2; + pub const MultiXactStatusForUpdate: Type = 3; + pub const MultiXactStatusNoKeyUpdate: Type = 4; + pub const MultiXactStatusUpdate: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MultiXactMember { + pub xid: TransactionId, + pub status: MultiXactStatus::Type, +} +impl Default for MultiXactMember { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_multixact_create { + pub mid: MultiXactId, + pub moff: MultiXactOffset, + pub nmembers: int32, + pub members: __IncompleteArrayField, +} +impl Default for xl_multixact_create { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_multixact_truncate { + pub oldestMultiDB: Oid, + pub startTruncOff: MultiXactId, + pub endTruncOff: MultiXactId, + pub startTruncMemb: MultiXactOffset, + pub endTruncMemb: MultiXactOffset, +} +impl Default for xl_multixact_truncate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LWLockWaitState { + pub type Type = ::core::ffi::c_uint; + pub const LW_WS_NOT_WAITING: Type = 0; + pub const LW_WS_WAITING: Type = 1; + pub const LW_WS_PENDING_WAKEUP: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LWLock { + pub tranche: uint16, + pub state: pg_atomic_uint32, + pub waiters: proclist_head, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union LWLockPadded { + pub lock: LWLock, + pub pad: [::core::ffi::c_char; 128usize], +} +impl Default for LWLockPadded { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedLWLockTranche { + pub trancheId: ::core::ffi::c_int, + pub trancheName: *mut ::core::ffi::c_char, +} +impl Default for NamedLWLockTranche { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LWLockMode { + pub type Type = ::core::ffi::c_uint; + pub const LW_EXCLUSIVE: Type = 0; + pub const LW_SHARED: Type = 1; + pub const LW_WAIT_UNTIL_FREE: Type = 2; +} +pub mod BuiltinTrancheIds { + pub type Type = ::core::ffi::c_uint; + pub const LWTRANCHE_XACT_BUFFER: Type = 53; + pub const LWTRANCHE_COMMITTS_BUFFER: Type = 54; + pub const LWTRANCHE_SUBTRANS_BUFFER: Type = 55; + pub const LWTRANCHE_MULTIXACTOFFSET_BUFFER: Type = 56; + pub const LWTRANCHE_MULTIXACTMEMBER_BUFFER: Type = 57; + pub const LWTRANCHE_NOTIFY_BUFFER: Type = 58; + pub const LWTRANCHE_SERIAL_BUFFER: Type = 59; + pub const LWTRANCHE_WAL_INSERT: Type = 60; + pub const LWTRANCHE_BUFFER_CONTENT: Type = 61; + pub const LWTRANCHE_REPLICATION_ORIGIN_STATE: Type = 62; + pub const LWTRANCHE_REPLICATION_SLOT_IO: Type = 63; + pub const LWTRANCHE_LOCK_FASTPATH: Type = 64; + pub const LWTRANCHE_BUFFER_MAPPING: Type = 65; + pub const LWTRANCHE_LOCK_MANAGER: Type = 66; + pub const LWTRANCHE_PREDICATE_LOCK_MANAGER: Type = 67; + pub const LWTRANCHE_PARALLEL_HASH_JOIN: Type = 68; + pub const LWTRANCHE_PARALLEL_QUERY_DSA: Type = 69; + pub const LWTRANCHE_PER_SESSION_DSA: Type = 70; + pub const LWTRANCHE_PER_SESSION_RECORD_TYPE: Type = 71; + pub const LWTRANCHE_PER_SESSION_RECORD_TYPMOD: Type = 72; + pub const LWTRANCHE_SHARED_TUPLESTORE: Type = 73; + pub const LWTRANCHE_SHARED_TIDBITMAP: Type = 74; + pub const LWTRANCHE_PARALLEL_APPEND: Type = 75; + pub const LWTRANCHE_PER_XACT_PREDICATE_LIST: Type = 76; + pub const LWTRANCHE_PGSTATS_DSA: Type = 77; + pub const LWTRANCHE_PGSTATS_HASH: Type = 78; + pub const LWTRANCHE_PGSTATS_DATA: Type = 79; + pub const LWTRANCHE_LAUNCHER_DSA: Type = 80; + pub const LWTRANCHE_LAUNCHER_HASH: Type = 81; + pub const LWTRANCHE_DSM_REGISTRY_DSA: Type = 82; + pub const LWTRANCHE_DSM_REGISTRY_HASH: Type = 83; + pub const LWTRANCHE_COMMITTS_SLRU: Type = 84; + pub const LWTRANCHE_MULTIXACTMEMBER_SLRU: Type = 85; + pub const LWTRANCHE_MULTIXACTOFFSET_SLRU: Type = 86; + pub const LWTRANCHE_NOTIFY_SLRU: Type = 87; + pub const LWTRANCHE_SERIAL_SLRU: Type = 88; + pub const LWTRANCHE_SUBTRANS_SLRU: Type = 89; + pub const LWTRANCHE_XACT_SLRU: Type = 90; + pub const LWTRANCHE_PARALLEL_VACUUM_DSA: Type = 91; + pub const LWTRANCHE_FIRST_USER_DEFINED: Type = 92; +} +pub type LWLockId = *mut LWLock; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct VirtualTransactionId { + pub procNumber: ProcNumber, + pub localTransactionId: LocalTransactionId, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockMethodData { + pub numLockModes: ::core::ffi::c_int, + pub conflictTab: *const LOCKMASK, + pub lockModeNames: *const *const ::core::ffi::c_char, + pub trace_flag: *const bool, +} +impl Default for LockMethodData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LockMethod = *const LockMethodData; +pub type LOCKMETHODID = uint16; +pub mod LockTagType { + pub type Type = ::core::ffi::c_uint; + pub const LOCKTAG_RELATION: Type = 0; + pub const LOCKTAG_RELATION_EXTEND: Type = 1; + pub const LOCKTAG_DATABASE_FROZEN_IDS: Type = 2; + pub const LOCKTAG_PAGE: Type = 3; + pub const LOCKTAG_TUPLE: Type = 4; + pub const LOCKTAG_TRANSACTION: Type = 5; + pub const LOCKTAG_VIRTUALTRANSACTION: Type = 6; + pub const LOCKTAG_SPECULATIVE_TOKEN: Type = 7; + pub const LOCKTAG_OBJECT: Type = 8; + pub const LOCKTAG_USERLOCK: Type = 9; + pub const LOCKTAG_ADVISORY: Type = 10; + pub const LOCKTAG_APPLY_TRANSACTION: Type = 11; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LOCKTAG { + pub locktag_field1: uint32, + pub locktag_field2: uint32, + pub locktag_field3: uint32, + pub locktag_field4: uint16, + pub locktag_type: uint8, + pub locktag_lockmethodid: uint8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LOCK { + pub tag: LOCKTAG, + pub grantMask: LOCKMASK, + pub waitMask: LOCKMASK, + pub procLocks: dlist_head, + pub waitProcs: dclist_head, + pub requested: [::core::ffi::c_int; 10usize], + pub nRequested: ::core::ffi::c_int, + pub granted: [::core::ffi::c_int; 10usize], + pub nGranted: ::core::ffi::c_int, +} +impl Default for LOCK { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PROCLOCKTAG { + pub myLock: *mut LOCK, + pub myProc: *mut PGPROC, +} +impl Default for PROCLOCKTAG { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PROCLOCK { + pub tag: PROCLOCKTAG, + pub groupLeader: *mut PGPROC, + pub holdMask: LOCKMASK, + pub releaseMask: LOCKMASK, + pub lockLink: dlist_node, + pub procLink: dlist_node, +} +impl Default for PROCLOCK { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LOCALLOCKTAG { + pub lock: LOCKTAG, + pub mode: LOCKMODE, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LOCALLOCKOWNER { + pub owner: *mut ResourceOwnerData, + pub nLocks: int64, +} +impl Default for LOCALLOCKOWNER { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LOCALLOCK { + pub tag: LOCALLOCKTAG, + pub hashcode: uint32, + pub lock: *mut LOCK, + pub proclock: *mut PROCLOCK, + pub nLocks: int64, + pub numLockOwners: ::core::ffi::c_int, + pub maxLockOwners: ::core::ffi::c_int, + pub lockOwners: *mut LOCALLOCKOWNER, + pub holdsStrongLockCount: bool, + pub lockCleared: bool, +} +impl Default for LOCALLOCK { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LockInstanceData { + pub locktag: LOCKTAG, + pub holdMask: LOCKMASK, + pub waitLockMode: LOCKMODE, + pub vxid: VirtualTransactionId, + pub waitStart: TimestampTz, + pub pid: ::core::ffi::c_int, + pub leaderPid: ::core::ffi::c_int, + pub fastpath: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockData { + pub nelements: ::core::ffi::c_int, + pub locks: *mut LockInstanceData, +} +impl Default for LockData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BlockedProcData { + pub pid: ::core::ffi::c_int, + pub first_lock: ::core::ffi::c_int, + pub num_locks: ::core::ffi::c_int, + pub first_waiter: ::core::ffi::c_int, + pub num_waiters: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BlockedProcsData { + pub procs: *mut BlockedProcData, + pub locks: *mut LockInstanceData, + pub waiter_pids: *mut ::core::ffi::c_int, + pub nprocs: ::core::ffi::c_int, + pub maxprocs: ::core::ffi::c_int, + pub nlocks: ::core::ffi::c_int, + pub maxlocks: ::core::ffi::c_int, + pub npids: ::core::ffi::c_int, + pub maxpids: ::core::ffi::c_int, +} +impl Default for BlockedProcsData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LockAcquireResult { + pub type Type = ::core::ffi::c_uint; + pub const LOCKACQUIRE_NOT_AVAIL: Type = 0; + pub const LOCKACQUIRE_OK: Type = 1; + pub const LOCKACQUIRE_ALREADY_HELD: Type = 2; + pub const LOCKACQUIRE_ALREADY_CLEAR: Type = 3; +} +pub mod DeadLockState { + pub type Type = ::core::ffi::c_uint; + pub const DS_NOT_YET_CHECKED: Type = 0; + pub const DS_NO_DEADLOCK: Type = 1; + pub const DS_SOFT_DEADLOCK: Type = 2; + pub const DS_HARD_DEADLOCK: Type = 3; + pub const DS_BLOCKED_BY_AUTOVACUUM: Type = 4; +} +pub mod relopt_type { + pub type Type = ::core::ffi::c_uint; + pub const RELOPT_TYPE_BOOL: Type = 0; + pub const RELOPT_TYPE_INT: Type = 1; + pub const RELOPT_TYPE_REAL: Type = 2; + pub const RELOPT_TYPE_ENUM: Type = 3; + pub const RELOPT_TYPE_STRING: Type = 4; +} +pub mod relopt_kind { + pub type Type = ::core::ffi::c_uint; + pub const RELOPT_KIND_LOCAL: Type = 0; + pub const RELOPT_KIND_HEAP: Type = 1; + pub const RELOPT_KIND_TOAST: Type = 2; + pub const RELOPT_KIND_BTREE: Type = 4; + pub const RELOPT_KIND_HASH: Type = 8; + pub const RELOPT_KIND_GIN: Type = 16; + pub const RELOPT_KIND_GIST: Type = 32; + pub const RELOPT_KIND_ATTRIBUTE: Type = 64; + pub const RELOPT_KIND_TABLESPACE: Type = 128; + pub const RELOPT_KIND_SPGIST: Type = 256; + pub const RELOPT_KIND_VIEW: Type = 512; + pub const RELOPT_KIND_BRIN: Type = 1024; + pub const RELOPT_KIND_PARTITIONED: Type = 2048; + pub const RELOPT_KIND_LAST_DEFAULT: Type = 2048; + pub const RELOPT_KIND_MAX: Type = 1073741824; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_gen { + pub name: *const ::core::ffi::c_char, + pub desc: *const ::core::ffi::c_char, + pub kinds: bits32, + pub lockmode: LOCKMODE, + pub namelen: ::core::ffi::c_int, + pub type_: relopt_type::Type, +} +impl Default for relopt_gen { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct relopt_value { + pub gen: *mut relopt_gen, + pub isset: bool, + pub values: relopt_value__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union relopt_value__bindgen_ty_1 { + pub bool_val: bool, + pub int_val: ::core::ffi::c_int, + pub real_val: f64, + pub enum_val: ::core::ffi::c_int, + pub string_val: *mut ::core::ffi::c_char, +} +impl Default for relopt_value__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for relopt_value { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_bool { + pub gen: relopt_gen, + pub default_val: bool, +} +impl Default for relopt_bool { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_int { + pub gen: relopt_gen, + pub default_val: ::core::ffi::c_int, + pub min: ::core::ffi::c_int, + pub max: ::core::ffi::c_int, +} +impl Default for relopt_int { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_real { + pub gen: relopt_gen, + pub default_val: f64, + pub min: f64, + pub max: f64, +} +impl Default for relopt_real { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_enum_elt_def { + pub string_val: *const ::core::ffi::c_char, + pub symbol_val: ::core::ffi::c_int, +} +impl Default for relopt_enum_elt_def { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_enum { + pub gen: relopt_gen, + pub members: *mut relopt_enum_elt_def, + pub default_val: ::core::ffi::c_int, + pub detailmsg: *const ::core::ffi::c_char, +} +impl Default for relopt_enum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type validate_string_relopt = + ::core::option::Option; +pub type fill_string_relopt = ::core::option::Option< + unsafe extern "C" fn(value: *const ::core::ffi::c_char, ptr: *mut ::core::ffi::c_void) -> Size, +>; +pub type relopts_validator = ::core::option::Option< + unsafe extern "C" fn( + parsed_options: *mut ::core::ffi::c_void, + vals: *mut relopt_value, + nvals: ::core::ffi::c_int, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_string { + pub gen: relopt_gen, + pub default_len: ::core::ffi::c_int, + pub default_isnull: bool, + pub validate_cb: validate_string_relopt, + pub fill_cb: fill_string_relopt, + pub default_val: *mut ::core::ffi::c_char, +} +impl Default for relopt_string { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_parse_elt { + pub optname: *const ::core::ffi::c_char, + pub opttype: relopt_type::Type, + pub offset: ::core::ffi::c_int, +} +impl Default for relopt_parse_elt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct local_relopt { + pub option: *mut relopt_gen, + pub offset: ::core::ffi::c_int, +} +impl Default for local_relopt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct local_relopts { + pub options: *mut List, + pub validators: *mut List, + pub relopt_struct_size: Size, +} +impl Default for local_relopts { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogPageHeaderData { + pub xlp_magic: uint16, + pub xlp_info: uint16, + pub xlp_tli: TimeLineID, + pub xlp_pageaddr: XLogRecPtr, + pub xlp_rem_len: uint32, +} +pub type XLogPageHeader = *mut XLogPageHeaderData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogLongPageHeaderData { + pub std: XLogPageHeaderData, + pub xlp_sysid: uint64, + pub xlp_seg_size: uint32, + pub xlp_xlog_blcksz: uint32, +} +pub type XLogLongPageHeader = *mut XLogLongPageHeaderData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_parameter_change { + pub MaxConnections: ::core::ffi::c_int, + pub max_worker_processes: ::core::ffi::c_int, + pub max_wal_senders: ::core::ffi::c_int, + pub max_prepared_xacts: ::core::ffi::c_int, + pub max_locks_per_xact: ::core::ffi::c_int, + pub wal_level: ::core::ffi::c_int, + pub wal_log_hints: bool, + pub track_commit_timestamp: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_restore_point { + pub rp_time: TimestampTz, + pub rp_name: [::core::ffi::c_char; 64usize], +} +impl Default for xl_restore_point { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_overwrite_contrecord { + pub overwritten_lsn: XLogRecPtr, + pub overwrite_time: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_end_of_recovery { + pub end_time: TimestampTz, + pub ThisTimeLineID: TimeLineID, + pub PrevTimeLineID: TimeLineID, + pub wal_level: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XLogRecData { + pub next: *mut XLogRecData, + pub data: *mut ::core::ffi::c_char, + pub len: uint32, +} +impl Default for XLogRecData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RecoveryTargetAction { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_TARGET_ACTION_PAUSE: Type = 0; + pub const RECOVERY_TARGET_ACTION_PROMOTE: Type = 1; + pub const RECOVERY_TARGET_ACTION_SHUTDOWN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XLogRecordBuffer { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RmgrData { + pub rm_name: *const ::core::ffi::c_char, + pub rm_redo: ::core::option::Option, + pub rm_desc: + ::core::option::Option, + pub rm_identify: + ::core::option::Option *const ::core::ffi::c_char>, + pub rm_startup: ::core::option::Option, + pub rm_cleanup: ::core::option::Option, + pub rm_mask: ::core::option::Option< + unsafe extern "C" fn(pagedata: *mut ::core::ffi::c_char, blkno: BlockNumber), + >, + pub rm_decode: ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, buf: *mut XLogRecordBuffer), + >, +} +impl Default for RmgrData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CheckPoint { + pub redo: XLogRecPtr, + pub ThisTimeLineID: TimeLineID, + pub PrevTimeLineID: TimeLineID, + pub fullPageWrites: bool, + pub wal_level: ::core::ffi::c_int, + pub nextXid: FullTransactionId, + pub nextOid: Oid, + pub nextMulti: MultiXactId, + pub nextMultiOffset: MultiXactOffset, + pub oldestXid: TransactionId, + pub oldestXidDB: Oid, + pub oldestMulti: MultiXactId, + pub oldestMultiDB: Oid, + pub time: pg_time_t, + pub oldestCommitTsXid: TransactionId, + pub newestCommitTsXid: TransactionId, + pub oldestActiveXid: TransactionId, +} +impl Default for CheckPoint { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DBState { + pub type Type = ::core::ffi::c_uint; + pub const DB_STARTUP: Type = 0; + pub const DB_SHUTDOWNED: Type = 1; + pub const DB_SHUTDOWNED_IN_RECOVERY: Type = 2; + pub const DB_SHUTDOWNING: Type = 3; + pub const DB_IN_CRASH_RECOVERY: Type = 4; + pub const DB_IN_ARCHIVE_RECOVERY: Type = 5; + pub const DB_IN_PRODUCTION: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ControlFileData { + pub system_identifier: uint64, + pub pg_control_version: uint32, + pub catalog_version_no: uint32, + pub state: DBState::Type, + pub time: pg_time_t, + pub checkPoint: XLogRecPtr, + pub checkPointCopy: CheckPoint, + pub unloggedLSN: XLogRecPtr, + pub minRecoveryPoint: XLogRecPtr, + pub minRecoveryPointTLI: TimeLineID, + pub backupStartPoint: XLogRecPtr, + pub backupEndPoint: XLogRecPtr, + pub backupEndRequired: bool, + pub wal_level: ::core::ffi::c_int, + pub wal_log_hints: bool, + pub MaxConnections: ::core::ffi::c_int, + pub max_worker_processes: ::core::ffi::c_int, + pub max_wal_senders: ::core::ffi::c_int, + pub max_prepared_xacts: ::core::ffi::c_int, + pub max_locks_per_xact: ::core::ffi::c_int, + pub track_commit_timestamp: bool, + pub maxAlign: uint32, + pub floatFormat: f64, + pub blcksz: uint32, + pub relseg_size: uint32, + pub xlog_blcksz: uint32, + pub xlog_seg_size: uint32, + pub nameDataLen: uint32, + pub indexMaxKeys: uint32, + pub toast_max_chunk_size: uint32, + pub loblksize: uint32, + pub float8ByVal: bool, + pub data_checksum_version: uint32, + pub mock_authentication_nonce: [::core::ffi::c_char; 32usize], + pub crc: pg_crc32c, +} +impl Default for ControlFileData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RecoveryTargetType { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_TARGET_UNSET: Type = 0; + pub const RECOVERY_TARGET_XID: Type = 1; + pub const RECOVERY_TARGET_TIME: Type = 2; + pub const RECOVERY_TARGET_NAME: Type = 3; + pub const RECOVERY_TARGET_LSN: Type = 4; + pub const RECOVERY_TARGET_IMMEDIATE: Type = 5; +} +pub mod RecoveryTargetTimeLineGoal { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_TARGET_TIMELINE_CONTROLFILE: Type = 0; + pub const RECOVERY_TARGET_TIMELINE_LATEST: Type = 1; + pub const RECOVERY_TARGET_TIMELINE_NUMERIC: Type = 2; +} +pub mod RecoveryPauseState { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_NOT_PAUSED: Type = 0; + pub const RECOVERY_PAUSE_REQUESTED: Type = 1; + pub const RECOVERY_PAUSED: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EndOfWalRecoveryInfo { + pub lastRec: XLogRecPtr, + pub lastRecTLI: TimeLineID, + pub endOfLog: XLogRecPtr, + pub endOfLogTLI: TimeLineID, + pub lastPageBeginPtr: XLogRecPtr, + pub lastPage: *mut ::core::ffi::c_char, + pub abortedRecPtr: XLogRecPtr, + pub missingContrecPtr: XLogRecPtr, + pub recoveryStopReason: *mut ::core::ffi::c_char, + pub standby_signal_file_found: bool, + pub recovery_signal_file_found: bool, +} +impl Default for EndOfWalRecoveryInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod HotStandbyState { + pub type Type = ::core::ffi::c_uint; + pub const STANDBY_DISABLED: Type = 0; + pub const STANDBY_INITIALIZED: Type = 1; + pub const STANDBY_SNAPSHOT_PENDING: Type = 2; + pub const STANDBY_SNAPSHOT_READY: Type = 3; +} +pub mod XLogRedoAction { + pub type Type = ::core::ffi::c_uint; + pub const BLK_NEEDS_REDO: Type = 0; + pub const BLK_DONE: Type = 1; + pub const BLK_RESTORED: Type = 2; + pub const BLK_NOTFOUND: Type = 3; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ReadLocalXLogPageNoWaitPrivate { + pub end_of_wal: bool, +} +pub mod DependencyType { + pub type Type = ::core::ffi::c_uint; + pub const DEPENDENCY_NORMAL: Type = 110; + pub const DEPENDENCY_AUTO: Type = 97; + pub const DEPENDENCY_INTERNAL: Type = 105; + pub const DEPENDENCY_PARTITION_PRI: Type = 80; + pub const DEPENDENCY_PARTITION_SEC: Type = 83; + pub const DEPENDENCY_EXTENSION: Type = 101; + pub const DEPENDENCY_AUTO_EXTENSION: Type = 120; +} +pub mod SharedDependencyType { + pub type Type = ::core::ffi::c_uint; + pub const SHARED_DEPENDENCY_OWNER: Type = 111; + pub const SHARED_DEPENDENCY_ACL: Type = 97; + pub const SHARED_DEPENDENCY_INITACL: Type = 105; + pub const SHARED_DEPENDENCY_POLICY: Type = 114; + pub const SHARED_DEPENDENCY_TABLESPACE: Type = 116; + pub const SHARED_DEPENDENCY_INVALID: Type = 0; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectAddresses { + _unused: [u8; 0], +} +pub mod IndexStateFlagsAction { + pub type Type = ::core::ffi::c_uint; + pub const INDEX_CREATE_SET_READY: Type = 0; + pub const INDEX_CREATE_SET_VALID: Type = 1; + pub const INDEX_DROP_CLEAR_VALID: Type = 2; + pub const INDEX_DROP_SET_DEAD: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReindexParams { + pub options: bits32, + pub tablespaceOid: Oid, +} +impl Default for ReindexParams { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ValidateIndexState { + pub tuplesort: *mut Tuplesortstate, + pub htups: f64, + pub itups: f64, + pub tups_inserted: f64, +} +impl Default for ValidateIndexState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatalogIndexState = *mut ResultRelInfo; +#[repr(C)] +#[derive(Debug)] +pub struct _FuncCandidateList { + pub next: *mut _FuncCandidateList, + pub pathpos: ::core::ffi::c_int, + pub oid: Oid, + pub nominalnargs: ::core::ffi::c_int, + pub nargs: ::core::ffi::c_int, + pub nvargs: ::core::ffi::c_int, + pub ndargs: ::core::ffi::c_int, + pub argnumbers: *mut ::core::ffi::c_int, + pub args: __IncompleteArrayField, +} +impl Default for _FuncCandidateList { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type FuncCandidateList = *mut _FuncCandidateList; +pub mod TempNamespaceStatus { + pub type Type = ::core::ffi::c_uint; + pub const TEMP_NAMESPACE_NOT_TEMP: Type = 0; + pub const TEMP_NAMESPACE_IDLE: Type = 1; + pub const TEMP_NAMESPACE_IN_USE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SearchPathMatcher { + pub schemas: *mut List, + pub addCatalog: bool, + pub addTemp: bool, + pub generation: uint64, +} +impl Default for SearchPathMatcher { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RVROption { + pub type Type = ::core::ffi::c_uint; + pub const RVR_MISSING_OK: Type = 1; + pub const RVR_NOWAIT: Type = 2; + pub const RVR_SKIP_LOCKED: Type = 4; +} +pub type RangeVarGetRelidCallback = ::core::option::Option< + unsafe extern "C" fn( + relation: *const RangeVar, + relId: Oid, + oldRelId: Oid, + callback_arg: *mut ::core::ffi::c_void, + ), +>; +pub mod ObjectAccessType { + pub type Type = ::core::ffi::c_uint; + pub const OAT_POST_CREATE: Type = 0; + pub const OAT_DROP: Type = 1; + pub const OAT_POST_ALTER: Type = 2; + pub const OAT_NAMESPACE_SEARCH: Type = 3; + pub const OAT_FUNCTION_EXECUTE: Type = 4; + pub const OAT_TRUNCATE: Type = 5; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ObjectAccessPostCreate { + pub is_internal: bool, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ObjectAccessDrop { + pub dropflags: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectAccessPostAlter { + pub auxiliary_id: Oid, + pub is_internal: bool, +} +impl Default for ObjectAccessPostAlter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ObjectAccessNamespaceSearch { + pub ereport_on_violation: bool, + pub result: bool, +} +pub type object_access_hook_type = ::core::option::Option< + unsafe extern "C" fn( + access: ObjectAccessType::Type, + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + arg: *mut ::core::ffi::c_void, + ), +>; +pub type object_access_hook_type_str = ::core::option::Option< + unsafe extern "C" fn( + access: ObjectAccessType::Type, + classId: Oid, + objectStr: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + arg: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_am { + pub oid: Oid, + pub amname: NameData, + pub amhandler: regproc, + pub amtype: ::core::ffi::c_char, +} +impl Default for FormData_pg_am { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_am = *mut FormData_pg_am; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_amop { + pub oid: Oid, + pub amopfamily: Oid, + pub amoplefttype: Oid, + pub amoprighttype: Oid, + pub amopstrategy: int16, + pub amoppurpose: ::core::ffi::c_char, + pub amopopr: Oid, + pub amopmethod: Oid, + pub amopsortfamily: Oid, +} +impl Default for FormData_pg_amop { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_amop = *mut FormData_pg_amop; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_amproc { + pub oid: Oid, + pub amprocfamily: Oid, + pub amproclefttype: Oid, + pub amprocrighttype: Oid, + pub amprocnum: int16, + pub amproc: regproc, +} +impl Default for FormData_pg_amproc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_amproc = *mut FormData_pg_amproc; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_authid { + pub oid: Oid, + pub rolname: NameData, + pub rolsuper: bool, + pub rolinherit: bool, + pub rolcreaterole: bool, + pub rolcreatedb: bool, + pub rolcanlogin: bool, + pub rolreplication: bool, + pub rolbypassrls: bool, + pub rolconnlimit: int32, +} +impl Default for FormData_pg_authid { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_authid = *mut FormData_pg_authid; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_collation { + pub oid: Oid, + pub collname: NameData, + pub collnamespace: Oid, + pub collowner: Oid, + pub collprovider: ::core::ffi::c_char, + pub collisdeterministic: bool, + pub collencoding: int32, +} +impl Default for FormData_pg_collation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_collation = *mut FormData_pg_collation; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_database { + pub oid: Oid, + pub datname: NameData, + pub datdba: Oid, + pub encoding: int32, + pub datlocprovider: ::core::ffi::c_char, + pub datistemplate: bool, + pub datallowconn: bool, + pub dathasloginevt: bool, + pub datconnlimit: int32, + pub datfrozenxid: TransactionId, + pub datminmxid: TransactionId, + pub dattablespace: Oid, +} +impl Default for FormData_pg_database { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_database = *mut FormData_pg_database; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_enum { + pub oid: Oid, + pub enumtypid: Oid, + pub enumsortorder: float4, + pub enumlabel: NameData, +} +impl Default for FormData_pg_enum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_enum = *mut FormData_pg_enum; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_extension { + pub oid: Oid, + pub extname: NameData, + pub extowner: Oid, + pub extnamespace: Oid, + pub extrelocatable: bool, +} +impl Default for FormData_pg_extension { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_extension = *mut FormData_pg_extension; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_foreign_data_wrapper { + pub oid: Oid, + pub fdwname: NameData, + pub fdwowner: Oid, + pub fdwhandler: Oid, + pub fdwvalidator: Oid, +} +impl Default for FormData_pg_foreign_data_wrapper { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_foreign_data_wrapper = *mut FormData_pg_foreign_data_wrapper; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_foreign_server { + pub oid: Oid, + pub srvname: NameData, + pub srvowner: Oid, + pub srvfdw: Oid, +} +impl Default for FormData_pg_foreign_server { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_foreign_server = *mut FormData_pg_foreign_server; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_foreign_table { + pub ftrelid: Oid, + pub ftserver: Oid, +} +impl Default for FormData_pg_foreign_table { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_foreign_table = *mut FormData_pg_foreign_table; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_operator { + pub oid: Oid, + pub oprname: NameData, + pub oprnamespace: Oid, + pub oprowner: Oid, + pub oprkind: ::core::ffi::c_char, + pub oprcanmerge: bool, + pub oprcanhash: bool, + pub oprleft: Oid, + pub oprright: Oid, + pub oprresult: Oid, + pub oprcom: Oid, + pub oprnegate: Oid, + pub oprcode: regproc, + pub oprrest: regproc, + pub oprjoin: regproc, +} +impl Default for FormData_pg_operator { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_operator = *mut FormData_pg_operator; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_opclass { + pub oid: Oid, + pub opcmethod: Oid, + pub opcname: NameData, + pub opcnamespace: Oid, + pub opcowner: Oid, + pub opcfamily: Oid, + pub opcintype: Oid, + pub opcdefault: bool, + pub opckeytype: Oid, +} +impl Default for FormData_pg_opclass { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_opclass = *mut FormData_pg_opclass; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_opfamily { + pub oid: Oid, + pub opfmethod: Oid, + pub opfname: NameData, + pub opfnamespace: Oid, + pub opfowner: Oid, +} +impl Default for FormData_pg_opfamily { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_opfamily = *mut FormData_pg_opfamily; +#[repr(C)] +#[derive(Debug)] +pub struct FormData_pg_proc { + pub oid: Oid, + pub proname: NameData, + pub pronamespace: Oid, + pub proowner: Oid, + pub prolang: Oid, + pub procost: float4, + pub prorows: float4, + pub provariadic: Oid, + pub prosupport: regproc, + pub prokind: ::core::ffi::c_char, + pub prosecdef: bool, + pub proleakproof: bool, + pub proisstrict: bool, + pub proretset: bool, + pub provolatile: ::core::ffi::c_char, + pub proparallel: ::core::ffi::c_char, + pub pronargs: int16, + pub pronargdefaults: int16, + pub prorettype: Oid, + pub proargtypes: oidvector, +} +impl Default for FormData_pg_proc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_proc = *mut FormData_pg_proc; +pub mod ParseExprKind { + pub type Type = ::core::ffi::c_uint; + pub const EXPR_KIND_NONE: Type = 0; + pub const EXPR_KIND_OTHER: Type = 1; + pub const EXPR_KIND_JOIN_ON: Type = 2; + pub const EXPR_KIND_JOIN_USING: Type = 3; + pub const EXPR_KIND_FROM_SUBSELECT: Type = 4; + pub const EXPR_KIND_FROM_FUNCTION: Type = 5; + pub const EXPR_KIND_WHERE: Type = 6; + pub const EXPR_KIND_HAVING: Type = 7; + pub const EXPR_KIND_FILTER: Type = 8; + pub const EXPR_KIND_WINDOW_PARTITION: Type = 9; + pub const EXPR_KIND_WINDOW_ORDER: Type = 10; + pub const EXPR_KIND_WINDOW_FRAME_RANGE: Type = 11; + pub const EXPR_KIND_WINDOW_FRAME_ROWS: Type = 12; + pub const EXPR_KIND_WINDOW_FRAME_GROUPS: Type = 13; + pub const EXPR_KIND_SELECT_TARGET: Type = 14; + pub const EXPR_KIND_INSERT_TARGET: Type = 15; + pub const EXPR_KIND_UPDATE_SOURCE: Type = 16; + pub const EXPR_KIND_UPDATE_TARGET: Type = 17; + pub const EXPR_KIND_MERGE_WHEN: Type = 18; + pub const EXPR_KIND_GROUP_BY: Type = 19; + pub const EXPR_KIND_ORDER_BY: Type = 20; + pub const EXPR_KIND_DISTINCT_ON: Type = 21; + pub const EXPR_KIND_LIMIT: Type = 22; + pub const EXPR_KIND_OFFSET: Type = 23; + pub const EXPR_KIND_RETURNING: Type = 24; + pub const EXPR_KIND_MERGE_RETURNING: Type = 25; + pub const EXPR_KIND_VALUES: Type = 26; + pub const EXPR_KIND_VALUES_SINGLE: Type = 27; + pub const EXPR_KIND_CHECK_CONSTRAINT: Type = 28; + pub const EXPR_KIND_DOMAIN_CHECK: Type = 29; + pub const EXPR_KIND_COLUMN_DEFAULT: Type = 30; + pub const EXPR_KIND_FUNCTION_DEFAULT: Type = 31; + pub const EXPR_KIND_INDEX_EXPRESSION: Type = 32; + pub const EXPR_KIND_INDEX_PREDICATE: Type = 33; + pub const EXPR_KIND_STATS_EXPRESSION: Type = 34; + pub const EXPR_KIND_ALTER_COL_TRANSFORM: Type = 35; + pub const EXPR_KIND_EXECUTE_PARAMETER: Type = 36; + pub const EXPR_KIND_TRIGGER_WHEN: Type = 37; + pub const EXPR_KIND_POLICY: Type = 38; + pub const EXPR_KIND_PARTITION_BOUND: Type = 39; + pub const EXPR_KIND_PARTITION_EXPRESSION: Type = 40; + pub const EXPR_KIND_CALL_ARGUMENT: Type = 41; + pub const EXPR_KIND_COPY_WHERE: Type = 42; + pub const EXPR_KIND_GENERATED_COLUMN: Type = 43; + pub const EXPR_KIND_CYCLE_MARK: Type = 44; +} +pub type PreParseColumnRefHook = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, cref: *mut ColumnRef) -> *mut Node, +>; +pub type PostParseColumnRefHook = ::core::option::Option< + unsafe extern "C" fn( + pstate: *mut ParseState, + cref: *mut ColumnRef, + var: *mut Node, + ) -> *mut Node, +>; +pub type ParseParamRefHook = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, pref: *mut ParamRef) -> *mut Node, +>; +pub type CoerceParamHook = ::core::option::Option< + unsafe extern "C" fn( + pstate: *mut ParseState, + param: *mut Param, + targetTypeId: Oid, + targetTypeMod: int32, + location: ::core::ffi::c_int, + ) -> *mut Node, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseState { + pub parentParseState: *mut ParseState, + pub p_sourcetext: *const ::core::ffi::c_char, + pub p_rtable: *mut List, + pub p_rteperminfos: *mut List, + pub p_joinexprs: *mut List, + pub p_nullingrels: *mut List, + pub p_joinlist: *mut List, + pub p_namespace: *mut List, + pub p_lateral_active: bool, + pub p_ctenamespace: *mut List, + pub p_future_ctes: *mut List, + pub p_parent_cte: *mut CommonTableExpr, + pub p_target_relation: Relation, + pub p_target_nsitem: *mut ParseNamespaceItem, + pub p_is_insert: bool, + pub p_windowdefs: *mut List, + pub p_expr_kind: ParseExprKind::Type, + pub p_next_resno: ::core::ffi::c_int, + pub p_multiassign_exprs: *mut List, + pub p_locking_clause: *mut List, + pub p_locked_from_parent: bool, + pub p_resolve_unknowns: bool, + pub p_queryEnv: *mut QueryEnvironment, + pub p_hasAggs: bool, + pub p_hasWindowFuncs: bool, + pub p_hasTargetSRFs: bool, + pub p_hasSubLinks: bool, + pub p_hasModifyingCTE: bool, + pub p_last_srf: *mut Node, + pub p_pre_columnref_hook: PreParseColumnRefHook, + pub p_post_columnref_hook: PostParseColumnRefHook, + pub p_paramref_hook: ParseParamRefHook, + pub p_coerce_param_hook: CoerceParamHook, + pub p_ref_hook_state: *mut ::core::ffi::c_void, +} +impl Default for ParseState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseNamespaceItem { + pub p_names: *mut Alias, + pub p_rte: *mut RangeTblEntry, + pub p_rtindex: ::core::ffi::c_int, + pub p_perminfo: *mut RTEPermissionInfo, + pub p_nscolumns: *mut ParseNamespaceColumn, + pub p_rel_visible: bool, + pub p_cols_visible: bool, + pub p_lateral_only: bool, + pub p_lateral_ok: bool, +} +impl Default for ParseNamespaceItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseNamespaceColumn { + pub p_varno: Index, + pub p_varattno: AttrNumber, + pub p_vartype: Oid, + pub p_vartypmod: int32, + pub p_varcollid: Oid, + pub p_varnosyn: Index, + pub p_varattnosyn: AttrNumber, + pub p_dontexpand: bool, +} +impl Default for ParseNamespaceColumn { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseCallbackState { + pub pstate: *mut ParseState, + pub location: ::core::ffi::c_int, + pub errcallback: ErrorContextCallback, +} +impl Default for ParseCallbackState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AclItem { + pub ai_grantee: Oid, + pub ai_grantor: Oid, + pub ai_privs: AclMode, +} +impl Default for AclItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Acl = ArrayType; +pub mod AclMaskHow { + pub type Type = ::core::ffi::c_uint; + pub const ACLMASK_ALL: Type = 0; + pub const ACLMASK_ANY: Type = 1; +} +pub mod AclResult { + pub type Type = ::core::ffi::c_uint; + pub const ACLCHECK_OK: Type = 0; + pub const ACLCHECK_NO_PRIV: Type = 1; + pub const ACLCHECK_NOT_OWNER: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_namespace { + pub oid: Oid, + pub nspname: NameData, + pub nspowner: Oid, +} +impl Default for FormData_pg_namespace { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_namespace = *mut FormData_pg_namespace; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_seclabel { + pub objoid: Oid, + pub classoid: Oid, + pub objsubid: int32, +} +impl Default for FormData_pg_seclabel { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_tablespace { + pub oid: Oid, + pub spcname: NameData, + pub spcowner: Oid, +} +impl Default for FormData_pg_tablespace { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_tablespace = *mut FormData_pg_tablespace; +#[repr(C)] +#[derive(Debug)] +pub struct FormData_pg_trigger { + pub oid: Oid, + pub tgrelid: Oid, + pub tgparentid: Oid, + pub tgname: NameData, + pub tgfoid: Oid, + pub tgtype: int16, + pub tgenabled: ::core::ffi::c_char, + pub tgisinternal: bool, + pub tgconstrrelid: Oid, + pub tgconstrindid: Oid, + pub tgconstraint: Oid, + pub tgdeferrable: bool, + pub tginitdeferred: bool, + pub tgnargs: int16, + pub tgattr: int2vector, +} +impl Default for FormData_pg_trigger { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_trigger = *mut FormData_pg_trigger; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_type { + pub oid: Oid, + pub typname: NameData, + pub typnamespace: Oid, + pub typowner: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typtype: ::core::ffi::c_char, + pub typcategory: ::core::ffi::c_char, + pub typispreferred: bool, + pub typisdefined: bool, + pub typdelim: ::core::ffi::c_char, + pub typrelid: Oid, + pub typsubscript: regproc, + pub typelem: Oid, + pub typarray: Oid, + pub typinput: regproc, + pub typoutput: regproc, + pub typreceive: regproc, + pub typsend: regproc, + pub typmodin: regproc, + pub typmodout: regproc, + pub typanalyze: regproc, + pub typalign: ::core::ffi::c_char, + pub typstorage: ::core::ffi::c_char, + pub typnotnull: bool, + pub typbasetype: Oid, + pub typtypmod: int32, + pub typndims: int32, + pub typcollation: Oid, +} +impl Default for FormData_pg_type { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_type = *mut FormData_pg_type; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_user_mapping { + pub oid: Oid, + pub umuser: Oid, + pub umserver: Oid, +} +impl Default for FormData_pg_user_mapping { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_user_mapping = *mut FormData_pg_user_mapping; +pub mod CopyHeaderChoice { + pub type Type = ::core::ffi::c_uint; + pub const COPY_HEADER_FALSE: Type = 0; + pub const COPY_HEADER_TRUE: Type = 1; + pub const COPY_HEADER_MATCH: Type = 2; +} +pub mod CopyOnErrorChoice { + pub type Type = ::core::ffi::c_uint; + pub const COPY_ON_ERROR_STOP: Type = 0; + pub const COPY_ON_ERROR_IGNORE: Type = 1; +} +pub mod CopyLogVerbosityChoice { + pub type Type = ::core::ffi::c_uint; + pub const COPY_LOG_VERBOSITY_DEFAULT: Type = 0; + pub const COPY_LOG_VERBOSITY_VERBOSE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyFormatOptions { + pub file_encoding: ::core::ffi::c_int, + pub binary: bool, + pub freeze: bool, + pub csv_mode: bool, + pub header_line: CopyHeaderChoice::Type, + pub null_print: *mut ::core::ffi::c_char, + pub null_print_len: ::core::ffi::c_int, + pub null_print_client: *mut ::core::ffi::c_char, + pub default_print: *mut ::core::ffi::c_char, + pub default_print_len: ::core::ffi::c_int, + pub delim: *mut ::core::ffi::c_char, + pub quote: *mut ::core::ffi::c_char, + pub escape: *mut ::core::ffi::c_char, + pub force_quote: *mut List, + pub force_quote_all: bool, + pub force_quote_flags: *mut bool, + pub force_notnull: *mut List, + pub force_notnull_all: bool, + pub force_notnull_flags: *mut bool, + pub force_null: *mut List, + pub force_null_all: bool, + pub force_null_flags: *mut bool, + pub convert_selectively: bool, + pub on_error: CopyOnErrorChoice::Type, + pub log_verbosity: CopyLogVerbosityChoice::Type, + pub convert_select: *mut List, +} +impl Default for CopyFormatOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyFromStateData { + _unused: [u8; 0], +} +pub type CopyFromState = *mut CopyFromStateData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyToStateData { + _unused: [u8; 0], +} +pub type CopyToState = *mut CopyToStateData; +pub type copy_data_source_cb = ::core::option::Option< + unsafe extern "C" fn( + outbuf: *mut ::core::ffi::c_void, + minread: ::core::ffi::c_int, + maxread: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type copy_data_dest_cb = ::core::option::Option< + unsafe extern "C" fn(data: *mut ::core::ffi::c_void, len: ::core::ffi::c_int), +>; +pub type EOM_get_flat_size_method = + ::core::option::Option Size>; +pub type EOM_flatten_into_method = ::core::option::Option< + unsafe extern "C" fn( + eohptr: *mut ExpandedObjectHeader, + result: *mut ::core::ffi::c_void, + allocated_size: Size, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExpandedObjectMethods { + pub get_flat_size: EOM_get_flat_size_method, + pub flatten_into: EOM_flatten_into_method, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedObjectHeader { + pub vl_len_: int32, + pub eoh_methods: *const ExpandedObjectMethods, + pub eoh_context: MemoryContext, + pub eoh_rw_ptr: [::core::ffi::c_char; 10usize], + pub eoh_ro_ptr: [::core::ffi::c_char; 10usize], +} +impl Default for ExpandedObjectHeader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayType { + pub vl_len_: int32, + pub ndim: ::core::ffi::c_int, + pub dataoffset: int32, + pub elemtype: Oid, +} +impl Default for ArrayType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedArrayHeader { + pub hdr: ExpandedObjectHeader, + pub ea_magic: ::core::ffi::c_int, + pub ndims: ::core::ffi::c_int, + pub dims: *mut ::core::ffi::c_int, + pub lbound: *mut ::core::ffi::c_int, + pub element_type: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub dvalues: *mut Datum, + pub dnulls: *mut bool, + pub dvalueslen: ::core::ffi::c_int, + pub nelems: ::core::ffi::c_int, + pub flat_size: Size, + pub fvalue: *mut ArrayType, + pub fstartptr: *mut ::core::ffi::c_char, + pub fendptr: *mut ::core::ffi::c_char, +} +impl Default for ExpandedArrayHeader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union AnyArrayType { + pub flt: ArrayType, + pub xpn: ExpandedArrayHeader, +} +impl Default for AnyArrayType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayBuildState { + pub mcontext: MemoryContext, + pub dvalues: *mut Datum, + pub dnulls: *mut bool, + pub alen: ::core::ffi::c_int, + pub nelems: ::core::ffi::c_int, + pub element_type: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub private_cxt: bool, +} +impl Default for ArrayBuildState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayBuildStateArr { + pub mcontext: MemoryContext, + pub data: *mut ::core::ffi::c_char, + pub nullbitmap: *mut bits8, + pub abytes: ::core::ffi::c_int, + pub nbytes: ::core::ffi::c_int, + pub aitems: ::core::ffi::c_int, + pub nitems: ::core::ffi::c_int, + pub ndims: ::core::ffi::c_int, + pub dims: [::core::ffi::c_int; 6usize], + pub lbs: [::core::ffi::c_int; 6usize], + pub array_type: Oid, + pub element_type: Oid, + pub private_cxt: bool, +} +impl Default for ArrayBuildStateArr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayBuildStateAny { + pub scalarstate: *mut ArrayBuildState, + pub arraystate: *mut ArrayBuildStateArr, +} +impl Default for ArrayBuildStateAny { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayMetaState { + pub element_type: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub typdelim: ::core::ffi::c_char, + pub typioparam: Oid, + pub typiofunc: Oid, + pub proc_: FmgrInfo, +} +impl Default for ArrayMetaState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayMapState { + pub inp_extra: ArrayMetaState, + pub ret_extra: ArrayMetaState, +} +impl Default for ArrayMapState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayIteratorData { + _unused: [u8; 0], +} +pub type ArrayIterator = *mut ArrayIteratorData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_event_trigger { + pub oid: Oid, + pub evtname: NameData, + pub evtevent: NameData, + pub evtowner: Oid, + pub evtfoid: Oid, + pub evtenabled: ::core::ffi::c_char, +} +impl Default for FormData_pg_event_trigger { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_event_trigger = *mut FormData_pg_event_trigger; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InternalGrant { + pub is_grant: bool, + pub objtype: ObjectType::Type, + pub objects: *mut List, + pub all_privs: bool, + pub privileges: AclMode, + pub col_privs: *mut List, + pub grantees: *mut List, + pub grant_option: bool, + pub behavior: DropBehavior::Type, +} +impl Default for InternalGrant { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CollectedCommandType { + pub type Type = ::core::ffi::c_uint; + pub const SCT_Simple: Type = 0; + pub const SCT_AlterTable: Type = 1; + pub const SCT_Grant: Type = 2; + pub const SCT_AlterOpFamily: Type = 3; + pub const SCT_AlterDefaultPrivileges: Type = 4; + pub const SCT_CreateOpClass: Type = 5; + pub const SCT_AlterTSConfig: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedATSubcmd { + pub address: ObjectAddress, + pub parsetree: *mut Node, +} +impl Default for CollectedATSubcmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct CollectedCommand { + pub type_: CollectedCommandType::Type, + pub in_extension: bool, + pub parsetree: *mut Node, + pub d: CollectedCommand__bindgen_ty_1, + pub parent: *mut CollectedCommand, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union CollectedCommand__bindgen_ty_1 { + pub simple: CollectedCommand__bindgen_ty_1__bindgen_ty_1, + pub alterTable: CollectedCommand__bindgen_ty_1__bindgen_ty_2, + pub grant: CollectedCommand__bindgen_ty_1__bindgen_ty_3, + pub opfam: CollectedCommand__bindgen_ty_1__bindgen_ty_4, + pub createopc: CollectedCommand__bindgen_ty_1__bindgen_ty_5, + pub atscfg: CollectedCommand__bindgen_ty_1__bindgen_ty_6, + pub defprivs: CollectedCommand__bindgen_ty_1__bindgen_ty_7, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_1 { + pub address: ObjectAddress, + pub secondaryObject: ObjectAddress, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_2 { + pub objectId: Oid, + pub classId: Oid, + pub subcmds: *mut List, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_3 { + pub istmt: *mut InternalGrant, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_4 { + pub address: ObjectAddress, + pub operators: *mut List, + pub procedures: *mut List, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_4 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_5 { + pub address: ObjectAddress, + pub operators: *mut List, + pub procedures: *mut List, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_6 { + pub address: ObjectAddress, + pub dictIds: *mut Oid, + pub ndicts: ::core::ffi::c_int, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_6 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_7 { + pub objtype: ObjectType::Type, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for CollectedCommand__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for CollectedCommand { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EventTriggerData { + pub type_: NodeTag, + pub event: *const ::core::ffi::c_char, + pub parsetree: *mut Node, + pub tag: CommandTag::Type, +} +impl Default for EventTriggerData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ExplainSerializeOption { + pub type Type = ::core::ffi::c_uint; + pub const EXPLAIN_SERIALIZE_NONE: Type = 0; + pub const EXPLAIN_SERIALIZE_TEXT: Type = 1; + pub const EXPLAIN_SERIALIZE_BINARY: Type = 2; +} +pub mod ExplainFormat { + pub type Type = ::core::ffi::c_uint; + pub const EXPLAIN_FORMAT_TEXT: Type = 0; + pub const EXPLAIN_FORMAT_XML: Type = 1; + pub const EXPLAIN_FORMAT_JSON: Type = 2; + pub const EXPLAIN_FORMAT_YAML: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExplainWorkersState { + pub num_workers: ::core::ffi::c_int, + pub worker_inited: *mut bool, + pub worker_str: *mut StringInfoData, + pub worker_state_save: *mut ::core::ffi::c_int, + pub prev_str: StringInfo, +} +impl Default for ExplainWorkersState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExplainState { + pub str_: StringInfo, + pub verbose: bool, + pub analyze: bool, + pub costs: bool, + pub buffers: bool, + pub wal: bool, + pub timing: bool, + pub summary: bool, + pub memory: bool, + pub settings: bool, + pub generic: bool, + pub serialize: ExplainSerializeOption::Type, + pub format: ExplainFormat::Type, + pub indent: ::core::ffi::c_int, + pub grouping_stack: *mut List, + pub pstmt: *mut PlannedStmt, + pub rtable: *mut List, + pub rtable_names: *mut List, + pub deparse_cxt: *mut List, + pub printed_subplans: *mut Bitmapset, + pub hide_workers: bool, + pub workers_state: *mut ExplainWorkersState, +} +impl Default for ExplainState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExplainOneQuery_hook_type = ::core::option::Option< + unsafe extern "C" fn( + query: *mut Query, + cursorOptions: ::core::ffi::c_int, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ), +>; +pub type explain_get_index_name_hook_type = + ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut SearchPathMatcher, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type check_object_relabel_type = ::core::option::Option< + unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), +>; +#[repr(C)] +#[derive(Debug)] +pub struct xl_tblspc_create_rec { + pub ts_id: Oid, + pub ts_path: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for xl_tblspc_create_rec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_tblspc_drop_rec { + pub ts_id: Oid, +} +impl Default for xl_tblspc_drop_rec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TableSpaceOpts { + pub vl_len_: int32, + pub random_page_cost: float8, + pub seq_page_cost: float8, + pub effective_io_concurrency: ::core::ffi::c_int, + pub maintenance_io_concurrency: ::core::ffi::c_int, +} +pub type TriggerEvent = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TriggerData { + pub type_: NodeTag, + pub tg_event: TriggerEvent, + pub tg_relation: Relation, + pub tg_trigtuple: HeapTuple, + pub tg_newtuple: HeapTuple, + pub tg_trigger: *mut Trigger, + pub tg_trigslot: *mut TupleTableSlot, + pub tg_newslot: *mut TupleTableSlot, + pub tg_oldtable: *mut Tuplestorestate, + pub tg_newtable: *mut Tuplestorestate, + pub tg_updatedcols: *const Bitmapset, +} +impl Default for TriggerData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AfterTriggersTableData { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TransitionCaptureState { + pub tcs_delete_old_table: bool, + pub tcs_update_old_table: bool, + pub tcs_update_new_table: bool, + pub tcs_insert_new_table: bool, + pub tcs_original_insert_tuple: *mut TupleTableSlot, + pub tcs_private: *mut AfterTriggersTableData, +} +impl Default for TransitionCaptureState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PasswordType { + pub type Type = ::core::ffi::c_uint; + pub const PASSWORD_TYPE_PLAINTEXT: Type = 0; + pub const PASSWORD_TYPE_MD5: Type = 1; + pub const PASSWORD_TYPE_SCRAM_SHA_256: Type = 2; +} +pub mod GucContext { + pub type Type = ::core::ffi::c_uint; + pub const PGC_INTERNAL: Type = 0; + pub const PGC_POSTMASTER: Type = 1; + pub const PGC_SIGHUP: Type = 2; + pub const PGC_SU_BACKEND: Type = 3; + pub const PGC_BACKEND: Type = 4; + pub const PGC_SUSET: Type = 5; + pub const PGC_USERSET: Type = 6; +} +pub mod GucSource { + pub type Type = ::core::ffi::c_uint; + pub const PGC_S_DEFAULT: Type = 0; + pub const PGC_S_DYNAMIC_DEFAULT: Type = 1; + pub const PGC_S_ENV_VAR: Type = 2; + pub const PGC_S_FILE: Type = 3; + pub const PGC_S_ARGV: Type = 4; + pub const PGC_S_GLOBAL: Type = 5; + pub const PGC_S_DATABASE: Type = 6; + pub const PGC_S_USER: Type = 7; + pub const PGC_S_DATABASE_USER: Type = 8; + pub const PGC_S_CLIENT: Type = 9; + pub const PGC_S_OVERRIDE: Type = 10; + pub const PGC_S_INTERACTIVE: Type = 11; + pub const PGC_S_TEST: Type = 12; + pub const PGC_S_SESSION: Type = 13; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConfigVariable { + pub name: *mut ::core::ffi::c_char, + pub value: *mut ::core::ffi::c_char, + pub errmsg: *mut ::core::ffi::c_char, + pub filename: *mut ::core::ffi::c_char, + pub sourceline: ::core::ffi::c_int, + pub ignore: bool, + pub applied: bool, + pub next: *mut ConfigVariable, +} +impl Default for ConfigVariable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct config_generic { + _unused: [u8; 0], +} +pub type config_handle = config_generic; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct config_enum_entry { + pub name: *const ::core::ffi::c_char, + pub val: ::core::ffi::c_int, + pub hidden: bool, +} +impl Default for config_enum_entry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type GucBoolCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut bool, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucIntCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut ::core::ffi::c_int, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucRealCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut f64, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucStringCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut *mut ::core::ffi::c_char, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucEnumCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut ::core::ffi::c_int, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucBoolAssignHook = + ::core::option::Option; +pub type GucIntAssignHook = ::core::option::Option< + unsafe extern "C" fn(newval: ::core::ffi::c_int, extra: *mut ::core::ffi::c_void), +>; +pub type GucRealAssignHook = + ::core::option::Option; +pub type GucStringAssignHook = ::core::option::Option< + unsafe extern "C" fn(newval: *const ::core::ffi::c_char, extra: *mut ::core::ffi::c_void), +>; +pub type GucEnumAssignHook = ::core::option::Option< + unsafe extern "C" fn(newval: ::core::ffi::c_int, extra: *mut ::core::ffi::c_void), +>; +pub type GucShowHook = ::core::option::Option *const ::core::ffi::c_char>; +pub mod GucAction { + pub type Type = ::core::ffi::c_uint; + pub const GUC_ACTION_SET: Type = 0; + pub const GUC_ACTION_LOCAL: Type = 1; + pub const GUC_ACTION_SAVE: Type = 2; +} +pub type check_password_hook_type = ::core::option::Option< + unsafe extern "C" fn( + username: *const ::core::ffi::c_char, + shadow_pass: *const ::core::ffi::c_char, + password_type: PasswordType::Type, + validuntil_time: Datum, + validuntil_null: bool, + ), +>; +pub type bgworker_main_type = ::core::option::Option; +pub mod BgWorkerStartTime { + pub type Type = ::core::ffi::c_uint; + pub const BgWorkerStart_PostmasterStart: Type = 0; + pub const BgWorkerStart_ConsistentState: Type = 1; + pub const BgWorkerStart_RecoveryFinished: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BackgroundWorker { + pub bgw_name: [::core::ffi::c_char; 96usize], + pub bgw_type: [::core::ffi::c_char; 96usize], + pub bgw_flags: ::core::ffi::c_int, + pub bgw_start_time: BgWorkerStartTime::Type, + pub bgw_restart_time: ::core::ffi::c_int, + pub bgw_library_name: [::core::ffi::c_char; 1024usize], + pub bgw_function_name: [::core::ffi::c_char; 96usize], + pub bgw_main_arg: Datum, + pub bgw_extra: [::core::ffi::c_char; 128usize], + pub bgw_notify_pid: pid_t, +} +impl Default for BackgroundWorker { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BgwHandleStatus { + pub type Type = ::core::ffi::c_uint; + pub const BGWH_STARTED: Type = 0; + pub const BGWH_NOT_YET_STARTED: Type = 1; + pub const BGWH_STOPPED: Type = 2; + pub const BGWH_POSTMASTER_DIED: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BackgroundWorkerHandle { + _unused: [u8; 0], +} +pub type XidStatus = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_clog_truncate { + pub pageno: int64, + pub oldestXact: TransactionId, + pub oldestXactDb: Oid, +} +impl Default for xl_clog_truncate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Latch { + pub is_set: sig_atomic_t, + pub maybe_sleeping: sig_atomic_t, + pub is_shared: bool, + pub owner_pid: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WaitEvent { + pub pos: ::core::ffi::c_int, + pub events: uint32, + pub fd: pgsocket, + pub user_data: *mut ::core::ffi::c_void, +} +impl Default for WaitEvent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PGSemaphoreData { + _unused: [u8; 0], +} +pub type PGSemaphore = *mut PGSemaphoreData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XidCacheStatus { + pub count: uint8, + pub overflowed: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XidCache { + pub xids: [TransactionId; 64usize], +} +impl Default for XidCache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ProcWaitStatus { + pub type Type = ::core::ffi::c_uint; + pub const PROC_WAIT_STATUS_OK: Type = 0; + pub const PROC_WAIT_STATUS_WAITING: Type = 1; + pub const PROC_WAIT_STATUS_ERROR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PGPROC { + pub links: dlist_node, + pub procgloballist: *mut dlist_head, + pub sem: PGSemaphore, + pub waitStatus: ProcWaitStatus::Type, + pub procLatch: Latch, + pub xid: TransactionId, + pub xmin: TransactionId, + pub pid: ::core::ffi::c_int, + pub pgxactoff: ::core::ffi::c_int, + pub vxid: PGPROC__bindgen_ty_1, + pub databaseId: Oid, + pub roleId: Oid, + pub tempNamespaceId: Oid, + pub isBackgroundWorker: bool, + pub recoveryConflictPending: bool, + pub lwWaiting: uint8, + pub lwWaitMode: uint8, + pub lwWaitLink: proclist_node, + pub cvWaitLink: proclist_node, + pub waitLock: *mut LOCK, + pub waitProcLock: *mut PROCLOCK, + pub waitLockMode: LOCKMODE, + pub heldLocks: LOCKMASK, + pub waitStart: pg_atomic_uint64, + pub delayChkptFlags: ::core::ffi::c_int, + pub statusFlags: uint8, + pub waitLSN: XLogRecPtr, + pub syncRepState: ::core::ffi::c_int, + pub syncRepLinks: dlist_node, + pub myProcLocks: [dlist_head; 16usize], + pub subxidStatus: XidCacheStatus, + pub subxids: XidCache, + pub procArrayGroupMember: bool, + pub procArrayGroupNext: pg_atomic_uint32, + pub procArrayGroupMemberXid: TransactionId, + pub wait_event_info: uint32, + pub clogGroupMember: bool, + pub clogGroupNext: pg_atomic_uint32, + pub clogGroupMemberXid: TransactionId, + pub clogGroupMemberXidStatus: XidStatus, + pub clogGroupMemberPage: int64, + pub clogGroupMemberLsn: XLogRecPtr, + pub fpInfoLock: LWLock, + pub fpLockBits: uint64, + pub fpRelId: [Oid; 16usize], + pub fpVXIDLock: bool, + pub fpLocalTransactionId: LocalTransactionId, + pub lockGroupLeader: *mut PGPROC, + pub lockGroupMembers: dlist_head, + pub lockGroupLink: dlist_node, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PGPROC__bindgen_ty_1 { + pub procNumber: ProcNumber, + pub lxid: LocalTransactionId, +} +impl Default for PGPROC { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PROC_HDR { + pub allProcs: *mut PGPROC, + pub xids: *mut TransactionId, + pub subxidStates: *mut XidCacheStatus, + pub statusFlags: *mut uint8, + pub allProcCount: uint32, + pub freeProcs: dlist_head, + pub autovacFreeProcs: dlist_head, + pub bgworkerFreeProcs: dlist_head, + pub walsenderFreeProcs: dlist_head, + pub procArrayGroupFirst: pg_atomic_uint32, + pub clogGroupFirst: pg_atomic_uint32, + pub walwriterLatch: *mut Latch, + pub checkpointerLatch: *mut Latch, + pub spins_per_delay: ::core::ffi::c_int, + pub startupBufferPinWaitBufId: ::core::ffi::c_int, +} +impl Default for PROC_HDR { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_mq { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_mq_handle { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_mq_iovec { + pub data: *const ::core::ffi::c_char, + pub len: Size, +} +impl Default for shm_mq_iovec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod shm_mq_result { + pub type Type = ::core::ffi::c_uint; + pub const SHM_MQ_SUCCESS: Type = 0; + pub const SHM_MQ_WOULD_BLOCK: Type = 1; + pub const SHM_MQ_DETACHED: Type = 2; +} +pub type parallel_worker_main_type = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelWorkerInfo { + pub bgwhandle: *mut BackgroundWorkerHandle, + pub error_mqh: *mut shm_mq_handle, +} +impl Default for ParallelWorkerInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelContext { + pub node: dlist_node, + pub subid: SubTransactionId, + pub nworkers: ::core::ffi::c_int, + pub nworkers_to_launch: ::core::ffi::c_int, + pub nworkers_launched: ::core::ffi::c_int, + pub library_name: *mut ::core::ffi::c_char, + pub function_name: *mut ::core::ffi::c_char, + pub error_context_stack: *mut ErrorContextCallback, + pub estimator: shm_toc_estimator, + pub seg: *mut dsm_segment, + pub private_memory: *mut ::core::ffi::c_void, + pub toc: *mut shm_toc, + pub worker: *mut ParallelWorkerInfo, + pub nknown_attached_workers: ::core::ffi::c_int, + pub known_attached_workers: *mut bool, +} +impl Default for ParallelContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelWorkerContext { + pub seg: *mut dsm_segment, + pub toc: *mut shm_toc, +} +impl Default for ParallelWorkerContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidStore { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidStoreIter { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidStoreIterResult { + pub blkno: BlockNumber, + pub max_offset: ::core::ffi::c_int, + pub num_offsets: ::core::ffi::c_int, + pub offsets: *mut OffsetNumber, +} +impl Default for TidStoreIterResult { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_statistic { + pub starelid: Oid, + pub staattnum: int16, + pub stainherit: bool, + pub stanullfrac: float4, + pub stawidth: int32, + pub stadistinct: float4, + pub stakind1: int16, + pub stakind2: int16, + pub stakind3: int16, + pub stakind4: int16, + pub stakind5: int16, + pub staop1: Oid, + pub staop2: Oid, + pub staop3: Oid, + pub staop4: Oid, + pub staop5: Oid, + pub stacoll1: Oid, + pub stacoll2: Oid, + pub stacoll3: Oid, + pub stacoll4: Oid, + pub stacoll5: Oid, +} +impl Default for FormData_pg_statistic { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_statistic = *mut FormData_pg_statistic; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelVacuumState { + _unused: [u8; 0], +} +pub type VacAttrStatsP = *mut VacAttrStats; +pub type AnalyzeAttrFetchFunc = ::core::option::Option< + unsafe extern "C" fn( + stats: VacAttrStatsP, + rownum: ::core::ffi::c_int, + isNull: *mut bool, + ) -> Datum, +>; +pub type AnalyzeAttrComputeStatsFunc = ::core::option::Option< + unsafe extern "C" fn( + stats: VacAttrStatsP, + fetchfunc: AnalyzeAttrFetchFunc, + samplerows: ::core::ffi::c_int, + totalrows: f64, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacAttrStats { + pub attstattarget: ::core::ffi::c_int, + pub attrtypid: Oid, + pub attrtypmod: int32, + pub attrtype: Form_pg_type, + pub attrcollid: Oid, + pub anl_context: MemoryContext, + pub compute_stats: AnalyzeAttrComputeStatsFunc, + pub minrows: ::core::ffi::c_int, + pub extra_data: *mut ::core::ffi::c_void, + pub stats_valid: bool, + pub stanullfrac: float4, + pub stawidth: int32, + pub stadistinct: float4, + pub stakind: [int16; 5usize], + pub staop: [Oid; 5usize], + pub stacoll: [Oid; 5usize], + pub numnumbers: [::core::ffi::c_int; 5usize], + pub stanumbers: [*mut float4; 5usize], + pub numvalues: [::core::ffi::c_int; 5usize], + pub stavalues: [*mut Datum; 5usize], + pub statypid: [Oid; 5usize], + pub statyplen: [int16; 5usize], + pub statypbyval: [bool; 5usize], + pub statypalign: [::core::ffi::c_char; 5usize], + pub tupattnum: ::core::ffi::c_int, + pub rows: *mut HeapTuple, + pub tupDesc: TupleDesc, + pub exprvals: *mut Datum, + pub exprnulls: *mut bool, + pub rowstride: ::core::ffi::c_int, +} +impl Default for VacAttrStats { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod VacOptValue { + pub type Type = ::core::ffi::c_uint; + pub const VACOPTVALUE_UNSPECIFIED: Type = 0; + pub const VACOPTVALUE_AUTO: Type = 1; + pub const VACOPTVALUE_DISABLED: Type = 2; + pub const VACOPTVALUE_ENABLED: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacuumParams { + pub options: bits32, + pub freeze_min_age: ::core::ffi::c_int, + pub freeze_table_age: ::core::ffi::c_int, + pub multixact_freeze_min_age: ::core::ffi::c_int, + pub multixact_freeze_table_age: ::core::ffi::c_int, + pub is_wraparound: bool, + pub log_min_duration: ::core::ffi::c_int, + pub index_cleanup: VacOptValue::Type, + pub truncate: VacOptValue::Type, + pub toast_parent: Oid, + pub nworkers: ::core::ffi::c_int, +} +impl Default for VacuumParams { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct VacuumCutoffs { + pub relfrozenxid: TransactionId, + pub relminmxid: MultiXactId, + pub OldestXmin: TransactionId, + pub OldestMxact: MultiXactId, + pub FreezeLimit: TransactionId, + pub MultiXactCutoff: MultiXactId, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct VacDeadItemsInfo { + pub max_bytes: usize, + pub num_items: int64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConfigData { + pub name: *mut ::core::ffi::c_char, + pub setting: *mut ::core::ffi::c_char, +} +impl Default for ConfigData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub aggsortrequired: bool, + pub numInputs: ::core::ffi::c_int, + pub numTransInputs: ::core::ffi::c_int, + pub transfn_oid: Oid, + pub serialfn_oid: Oid, + pub deserialfn_oid: Oid, + pub aggtranstype: Oid, + pub transfn: FmgrInfo, + pub serialfn: FmgrInfo, + pub deserialfn: FmgrInfo, + pub aggCollation: Oid, + pub numSortCols: ::core::ffi::c_int, + pub numDistinctCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub sortCollations: *mut Oid, + pub sortNullsFirst: *mut bool, + pub equalfnOne: FmgrInfo, + pub equalfnMulti: *mut ExprState, + pub initValue: Datum, + pub initValueIsNull: bool, + pub inputtypeLen: int16, + pub transtypeLen: int16, + pub inputtypeByVal: bool, + pub transtypeByVal: bool, + pub sortslot: *mut TupleTableSlot, + pub uniqslot: *mut TupleTableSlot, + pub sortdesc: TupleDesc, + pub lastdatum: Datum, + pub lastisnull: bool, + pub haslast: bool, + pub sortstates: *mut *mut Tuplesortstate, + pub transfn_fcinfo: FunctionCallInfo, + pub serialfn_fcinfo: FunctionCallInfo, + pub deserialfn_fcinfo: FunctionCallInfo, +} +impl Default for AggStatePerTransData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerAggData { + pub aggref: *mut Aggref, + pub transno: ::core::ffi::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::core::ffi::c_int, + pub aggdirectargs: *mut List, + pub resulttypeLen: int16, + pub resulttypeByVal: bool, + pub shareable: bool, +} +impl Default for AggStatePerAggData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerGroupData { + pub transValue: Datum, + pub transValueIsNull: bool, + pub noTransValue: bool, +} +impl Default for AggStatePerGroupData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy::Type, + pub numsets: ::core::ffi::c_int, + pub gset_lengths: *mut ::core::ffi::c_int, + pub grouped_cols: *mut *mut Bitmapset, + pub eqfunctions: *mut *mut ExprState, + pub aggnode: *mut Agg, + pub sortnode: *mut Sort, + pub evaltrans: *mut ExprState, + pub evaltrans_cache: [[*mut ExprState; 2usize]; 2usize], +} +impl Default for AggStatePerPhaseData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerHashData { + pub hashtable: TupleHashTable, + pub hashiter: TupleHashIterator, + pub hashslot: *mut TupleTableSlot, + pub hashfunctions: *mut FmgrInfo, + pub eqfuncoids: *mut Oid, + pub numCols: ::core::ffi::c_int, + pub numhashGrpCols: ::core::ffi::c_int, + pub largestGrpColIdx: ::core::ffi::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScalarArrayOpExprHashTable { + _unused: [u8; 0], +} +pub type ExecEvalSubroutine = ::core::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +pub type ExecEvalBoolSubroutine = ::core::option::Option< + unsafe extern "C" fn( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ) -> bool, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalRowtypeCache { + pub cacheptr: *mut ::core::ffi::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ExprEvalOp { + pub type Type = ::core::ffi::c_uint; + pub const EEOP_DONE: Type = 0; + pub const EEOP_INNER_FETCHSOME: Type = 1; + pub const EEOP_OUTER_FETCHSOME: Type = 2; + pub const EEOP_SCAN_FETCHSOME: Type = 3; + pub const EEOP_INNER_VAR: Type = 4; + pub const EEOP_OUTER_VAR: Type = 5; + pub const EEOP_SCAN_VAR: Type = 6; + pub const EEOP_INNER_SYSVAR: Type = 7; + pub const EEOP_OUTER_SYSVAR: Type = 8; + pub const EEOP_SCAN_SYSVAR: Type = 9; + pub const EEOP_WHOLEROW: Type = 10; + pub const EEOP_ASSIGN_INNER_VAR: Type = 11; + pub const EEOP_ASSIGN_OUTER_VAR: Type = 12; + pub const EEOP_ASSIGN_SCAN_VAR: Type = 13; + pub const EEOP_ASSIGN_TMP: Type = 14; + pub const EEOP_ASSIGN_TMP_MAKE_RO: Type = 15; + pub const EEOP_CONST: Type = 16; + pub const EEOP_FUNCEXPR: Type = 17; + pub const EEOP_FUNCEXPR_STRICT: Type = 18; + pub const EEOP_FUNCEXPR_FUSAGE: Type = 19; + pub const EEOP_FUNCEXPR_STRICT_FUSAGE: Type = 20; + pub const EEOP_BOOL_AND_STEP_FIRST: Type = 21; + pub const EEOP_BOOL_AND_STEP: Type = 22; + pub const EEOP_BOOL_AND_STEP_LAST: Type = 23; + pub const EEOP_BOOL_OR_STEP_FIRST: Type = 24; + pub const EEOP_BOOL_OR_STEP: Type = 25; + pub const EEOP_BOOL_OR_STEP_LAST: Type = 26; + pub const EEOP_BOOL_NOT_STEP: Type = 27; + pub const EEOP_QUAL: Type = 28; + pub const EEOP_JUMP: Type = 29; + pub const EEOP_JUMP_IF_NULL: Type = 30; + pub const EEOP_JUMP_IF_NOT_NULL: Type = 31; + pub const EEOP_JUMP_IF_NOT_TRUE: Type = 32; + pub const EEOP_NULLTEST_ISNULL: Type = 33; + pub const EEOP_NULLTEST_ISNOTNULL: Type = 34; + pub const EEOP_NULLTEST_ROWISNULL: Type = 35; + pub const EEOP_NULLTEST_ROWISNOTNULL: Type = 36; + pub const EEOP_BOOLTEST_IS_TRUE: Type = 37; + pub const EEOP_BOOLTEST_IS_NOT_TRUE: Type = 38; + pub const EEOP_BOOLTEST_IS_FALSE: Type = 39; + pub const EEOP_BOOLTEST_IS_NOT_FALSE: Type = 40; + pub const EEOP_PARAM_EXEC: Type = 41; + pub const EEOP_PARAM_EXTERN: Type = 42; + pub const EEOP_PARAM_CALLBACK: Type = 43; + pub const EEOP_CASE_TESTVAL: Type = 44; + pub const EEOP_MAKE_READONLY: Type = 45; + pub const EEOP_IOCOERCE: Type = 46; + pub const EEOP_IOCOERCE_SAFE: Type = 47; + pub const EEOP_DISTINCT: Type = 48; + pub const EEOP_NOT_DISTINCT: Type = 49; + pub const EEOP_NULLIF: Type = 50; + pub const EEOP_SQLVALUEFUNCTION: Type = 51; + pub const EEOP_CURRENTOFEXPR: Type = 52; + pub const EEOP_NEXTVALUEEXPR: Type = 53; + pub const EEOP_ARRAYEXPR: Type = 54; + pub const EEOP_ARRAYCOERCE: Type = 55; + pub const EEOP_ROW: Type = 56; + pub const EEOP_ROWCOMPARE_STEP: Type = 57; + pub const EEOP_ROWCOMPARE_FINAL: Type = 58; + pub const EEOP_MINMAX: Type = 59; + pub const EEOP_FIELDSELECT: Type = 60; + pub const EEOP_FIELDSTORE_DEFORM: Type = 61; + pub const EEOP_FIELDSTORE_FORM: Type = 62; + pub const EEOP_SBSREF_SUBSCRIPTS: Type = 63; + pub const EEOP_SBSREF_OLD: Type = 64; + pub const EEOP_SBSREF_ASSIGN: Type = 65; + pub const EEOP_SBSREF_FETCH: Type = 66; + pub const EEOP_DOMAIN_TESTVAL: Type = 67; + pub const EEOP_DOMAIN_NOTNULL: Type = 68; + pub const EEOP_DOMAIN_CHECK: Type = 69; + pub const EEOP_CONVERT_ROWTYPE: Type = 70; + pub const EEOP_SCALARARRAYOP: Type = 71; + pub const EEOP_HASHED_SCALARARRAYOP: Type = 72; + pub const EEOP_XMLEXPR: Type = 73; + pub const EEOP_JSON_CONSTRUCTOR: Type = 74; + pub const EEOP_IS_JSON: Type = 75; + pub const EEOP_JSONEXPR_PATH: Type = 76; + pub const EEOP_JSONEXPR_COERCION: Type = 77; + pub const EEOP_JSONEXPR_COERCION_FINISH: Type = 78; + pub const EEOP_AGGREF: Type = 79; + pub const EEOP_GROUPING_FUNC: Type = 80; + pub const EEOP_WINDOW_FUNC: Type = 81; + pub const EEOP_MERGE_SUPPORT_FUNC: Type = 82; + pub const EEOP_SUBPLAN: Type = 83; + pub const EEOP_AGG_STRICT_DESERIALIZE: Type = 84; + pub const EEOP_AGG_DESERIALIZE: Type = 85; + pub const EEOP_AGG_STRICT_INPUT_CHECK_ARGS: Type = 86; + pub const EEOP_AGG_STRICT_INPUT_CHECK_NULLS: Type = 87; + pub const EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: Type = 88; + pub const EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: Type = 89; + pub const EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: Type = 90; + pub const EEOP_AGG_PLAIN_TRANS_BYVAL: Type = 91; + pub const EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: Type = 92; + pub const EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: Type = 93; + pub const EEOP_AGG_PLAIN_TRANS_BYREF: Type = 94; + pub const EEOP_AGG_PRESORTED_DISTINCT_SINGLE: Type = 95; + pub const EEOP_AGG_PRESORTED_DISTINCT_MULTI: Type = 96; + pub const EEOP_AGG_ORDERED_TRANS_DATUM: Type = 97; + pub const EEOP_AGG_ORDERED_TRANS_TUPLE: Type = 98; + pub const EEOP_LAST: Type = 99; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ExprEvalStep { + pub opcode: isize, + pub resvalue: *mut Datum, + pub resnull: *mut bool, + pub d: ExprEvalStep__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ExprEvalStep__bindgen_ty_1 { + pub fetch: ExprEvalStep__bindgen_ty_1__bindgen_ty_1, + pub var: ExprEvalStep__bindgen_ty_1__bindgen_ty_2, + pub wholerow: ExprEvalStep__bindgen_ty_1__bindgen_ty_3, + pub assign_var: ExprEvalStep__bindgen_ty_1__bindgen_ty_4, + pub assign_tmp: ExprEvalStep__bindgen_ty_1__bindgen_ty_5, + pub constval: ExprEvalStep__bindgen_ty_1__bindgen_ty_6, + pub func: ExprEvalStep__bindgen_ty_1__bindgen_ty_7, + pub boolexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_8, + pub qualexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_9, + pub jump: ExprEvalStep__bindgen_ty_1__bindgen_ty_10, + pub nulltest_row: ExprEvalStep__bindgen_ty_1__bindgen_ty_11, + pub param: ExprEvalStep__bindgen_ty_1__bindgen_ty_12, + pub cparam: ExprEvalStep__bindgen_ty_1__bindgen_ty_13, + pub casetest: ExprEvalStep__bindgen_ty_1__bindgen_ty_14, + pub make_readonly: ExprEvalStep__bindgen_ty_1__bindgen_ty_15, + pub iocoerce: ExprEvalStep__bindgen_ty_1__bindgen_ty_16, + pub sqlvaluefunction: ExprEvalStep__bindgen_ty_1__bindgen_ty_17, + pub nextvalueexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_18, + pub arrayexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_19, + pub arraycoerce: ExprEvalStep__bindgen_ty_1__bindgen_ty_20, + pub row: ExprEvalStep__bindgen_ty_1__bindgen_ty_21, + pub rowcompare_step: ExprEvalStep__bindgen_ty_1__bindgen_ty_22, + pub rowcompare_final: ExprEvalStep__bindgen_ty_1__bindgen_ty_23, + pub minmax: ExprEvalStep__bindgen_ty_1__bindgen_ty_24, + pub fieldselect: ExprEvalStep__bindgen_ty_1__bindgen_ty_25, + pub fieldstore: ExprEvalStep__bindgen_ty_1__bindgen_ty_26, + pub sbsref_subscript: ExprEvalStep__bindgen_ty_1__bindgen_ty_27, + pub sbsref: ExprEvalStep__bindgen_ty_1__bindgen_ty_28, + pub domaincheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_29, + pub convert_rowtype: ExprEvalStep__bindgen_ty_1__bindgen_ty_30, + pub scalararrayop: ExprEvalStep__bindgen_ty_1__bindgen_ty_31, + pub hashedscalararrayop: ExprEvalStep__bindgen_ty_1__bindgen_ty_32, + pub xmlexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_33, + pub json_constructor: ExprEvalStep__bindgen_ty_1__bindgen_ty_34, + pub aggref: ExprEvalStep__bindgen_ty_1__bindgen_ty_35, + pub grouping_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_36, + pub window_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_37, + pub subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_38, + pub agg_deserialize: ExprEvalStep__bindgen_ty_1__bindgen_ty_39, + pub agg_strict_input_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_40, + pub agg_plain_pergroup_nullcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_41, + pub agg_presorted_distinctcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_42, + pub agg_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_43, + pub is_json: ExprEvalStep__bindgen_ty_1__bindgen_ty_44, + pub jsonexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_45, + pub jsonexpr_coercion: ExprEvalStep__bindgen_ty_1__bindgen_ty_46, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::core::ffi::c_int, + pub fixed: bool, + pub known_desc: TupleDesc, + pub kind: *const TupleTableSlotOps, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + pub attnum: ::core::ffi::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_3 { + pub var: *mut Var, + pub first: bool, + pub slow: bool, + pub tupdesc: TupleDesc, + pub junkFilter: *mut JunkFilter, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_4 { + pub resultnum: ::core::ffi::c_int, + pub attnum: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_6 { + pub value: Datum, + pub isnull: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_6 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, + pub nargs: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + pub anynull: *mut bool, + pub jumpdone: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_9 { + pub jumpdone: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_11 { + pub rowcache: ExprEvalRowtypeCache, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_11 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + pub paramid: ::core::ffi::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + pub paramfunc: ExecEvalSubroutine, + pub paramarg: *mut ::core::ffi::c_void, + pub paramid: ::core::ffi::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_14 { + pub value: *mut Datum, + pub isnull: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_14 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_15 { + pub value: *mut Datum, + pub isnull: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_15 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_16 { + pub finfo_out: *mut FmgrInfo, + pub fcinfo_data_out: FunctionCallInfo, + pub finfo_in: *mut FmgrInfo, + pub fcinfo_data_in: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_16 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_17 { + pub svf: *mut SQLValueFunction, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_17 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_18 { + pub seqid: Oid, + pub seqtypid: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_18 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + pub elemvalues: *mut Datum, + pub elemnulls: *mut bool, + pub nelems: ::core::ffi::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::core::ffi::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_20 { + pub elemexprstate: *mut ExprState, + pub resultelemtype: Oid, + pub amstate: *mut ArrayMapState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_20 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_21 { + pub tupdesc: TupleDesc, + pub elemvalues: *mut Datum, + pub elemnulls: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_21 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, + pub jumpnull: ::core::ffi::c_int, + pub jumpdone: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + pub rctype: RowCompareType::Type, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + pub values: *mut Datum, + pub nulls: *mut bool, + pub nelems: ::core::ffi::c_int, + pub op: MinMaxOp::Type, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_25 { + pub fieldnum: AttrNumber, + pub resulttype: Oid, + pub rowcache: ExprEvalRowtypeCache, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_25 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + pub fstore: *mut FieldStore, + pub rowcache: *mut ExprEvalRowtypeCache, + pub values: *mut Datum, + pub nulls: *mut bool, + pub ncolumns: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + pub subscriptfunc: ExecEvalBoolSubroutine, + pub state: *mut SubscriptingRefState, + pub jumpdone: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_28 { + pub subscriptfunc: ExecEvalSubroutine, + pub state: *mut SubscriptingRefState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_28 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + pub constraintname: *mut ::core::ffi::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, + pub escontext: *mut ErrorSaveContext, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_30 { + pub inputtype: Oid, + pub outputtype: Oid, + pub incache: *mut ExprEvalRowtypeCache, + pub outcache: *mut ExprEvalRowtypeCache, + pub map: *mut TupleConversionMap, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_30 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_31 { + pub element_type: Oid, + pub useOr: bool, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_31 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_32 { + pub has_nulls: bool, + pub inclause: bool, + pub elements_tab: *mut ScalarArrayOpExprHashTable, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub saop: *mut ScalarArrayOpExpr, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_32 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_33 { + pub xexpr: *mut XmlExpr, + pub named_argvalue: *mut Datum, + pub named_argnull: *mut bool, + pub argvalue: *mut Datum, + pub argnull: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_33 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_34 { + pub jcstate: *mut JsonConstructorExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_34 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + pub aggno: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + pub clauses: *mut List, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + pub wfstate: *mut WindowFuncExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + pub sstate: *mut SubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + pub fcinfo_data: FunctionCallInfo, + pub jumpnull: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_40 { + pub args: *mut NullableDatum, + pub nulls: *mut bool, + pub nargs: ::core::ffi::c_int, + pub jumpnull: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_40 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + pub setoff: ::core::ffi::c_int, + pub jumpnull: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_42 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub jumpdistinct: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_42 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_43 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::core::ffi::c_int, + pub transno: ::core::ffi::c_int, + pub setoff: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_43 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_44 { + pub pred: *mut JsonIsPredicate, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_44 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_45 { + pub jsestate: *mut JsonExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_45 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_46 { + pub targettype: Oid, + pub targettypmod: int32, + pub omit_quotes: bool, + pub exists_coerce: bool, + pub exists_cast_to_int: bool, + pub exists_check_domain: bool, + pub json_coercion_cache: *mut ::core::ffi::c_void, + pub escontext: *mut ErrorSaveContext, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_46 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubscriptingRefState { + pub isassignment: bool, + pub workspace: *mut ::core::ffi::c_void, + pub numupper: ::core::ffi::c_int, + pub upperprovided: *mut bool, + pub upperindex: *mut Datum, + pub upperindexnull: *mut bool, + pub numlower: ::core::ffi::c_int, + pub lowerprovided: *mut bool, + pub lowerindex: *mut Datum, + pub lowerindexnull: *mut bool, + pub replacevalue: Datum, + pub replacenull: bool, + pub prevvalue: Datum, + pub prevnull: bool, +} +impl Default for SubscriptingRefState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SubscriptExecSteps { + pub sbs_check_subscripts: ExecEvalBoolSubroutine, + pub sbs_fetch: ExecEvalSubroutine, + pub sbs_assign: ExecEvalSubroutine, + pub sbs_fetch_old: ExecEvalSubroutine, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExprState { + pub constructor: *mut JsonConstructorExpr, + pub arg_values: *mut Datum, + pub arg_nulls: *mut bool, + pub arg_types: *mut Oid, + pub arg_type_cache: *mut JsonConstructorExprState__bindgen_ty_1, + pub nargs: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExprState__bindgen_ty_1 { + pub category: ::core::ffi::c_int, + pub outfuncid: Oid, +} +impl Default for JsonConstructorExprState__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonConstructorExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RawParseMode { + pub type Type = ::core::ffi::c_uint; + pub const RAW_PARSE_DEFAULT: Type = 0; + pub const RAW_PARSE_TYPE_NAME: Type = 1; + pub const RAW_PARSE_PLPGSQL_EXPR: Type = 2; + pub const RAW_PARSE_PLPGSQL_ASSIGN1: Type = 3; + pub const RAW_PARSE_PLPGSQL_ASSIGN2: Type = 4; + pub const RAW_PARSE_PLPGSQL_ASSIGN3: Type = 5; +} +pub mod BackslashQuoteType { + pub type Type = ::core::ffi::c_uint; + pub const BACKSLASH_QUOTE_OFF: Type = 0; + pub const BACKSLASH_QUOTE_ON: Type = 1; + pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; +} +pub mod PortalStrategy { + pub type Type = ::core::ffi::c_uint; + pub const PORTAL_ONE_SELECT: Type = 0; + pub const PORTAL_ONE_RETURNING: Type = 1; + pub const PORTAL_ONE_MOD_WITH: Type = 2; + pub const PORTAL_UTIL_SELECT: Type = 3; + pub const PORTAL_MULTI_QUERY: Type = 4; +} +pub mod PortalStatus { + pub type Type = ::core::ffi::c_uint; + pub const PORTAL_NEW: Type = 0; + pub const PORTAL_DEFINED: Type = 1; + pub const PORTAL_READY: Type = 2; + pub const PORTAL_ACTIVE: Type = 3; + pub const PORTAL_DONE: Type = 4; + pub const PORTAL_FAILED: Type = 5; +} +pub type Portal = *mut PortalData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PortalData { + pub name: *const ::core::ffi::c_char, + pub prepStmtName: *const ::core::ffi::c_char, + pub portalContext: MemoryContext, + pub resowner: ResourceOwner, + pub cleanup: ::core::option::Option, + pub createSubid: SubTransactionId, + pub activeSubid: SubTransactionId, + pub createLevel: ::core::ffi::c_int, + pub sourceText: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub qc: QueryCompletion, + pub stmts: *mut List, + pub cplan: *mut CachedPlan, + pub portalParams: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, + pub strategy: PortalStrategy::Type, + pub cursorOptions: ::core::ffi::c_int, + pub run_once: bool, + pub status: PortalStatus::Type, + pub portalPinned: bool, + pub autoHeld: bool, + pub queryDesc: *mut QueryDesc, + pub tupDesc: TupleDesc, + pub formats: *mut int16, + pub portalSnapshot: Snapshot, + pub holdStore: *mut Tuplestorestate, + pub holdContext: MemoryContext, + pub holdSnapshot: Snapshot, + pub atStart: bool, + pub atEnd: bool, + pub portalPos: uint64, + pub creation_time: TimestampTz, + pub visible: bool, +} +impl Default for PortalData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPITupleTable { + pub tupdesc: TupleDesc, + pub vals: *mut HeapTuple, + pub numvals: uint64, + pub alloced: uint64, + pub tuptabcxt: MemoryContext, + pub next: slist_node, + pub subid: SubTransactionId, +} +impl Default for SPITupleTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPIPrepareOptions { + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub parseMode: RawParseMode::Type, + pub cursorOptions: ::core::ffi::c_int, +} +impl Default for SPIPrepareOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPIExecuteOptions { + pub params: ParamListInfo, + pub read_only: bool, + pub allow_nonatomic: bool, + pub must_return_tuples: bool, + pub tcount: uint64, + pub dest: *mut DestReceiver, + pub owner: ResourceOwner, +} +impl Default for SPIExecuteOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPIParseOpenOptions { + pub params: ParamListInfo, + pub cursorOptions: ::core::ffi::c_int, + pub read_only: bool, +} +impl Default for SPIParseOpenOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SPI_plan { + _unused: [u8; 0], +} +pub type SPIPlanPtr = *mut _SPI_plan; +pub type Relids = *mut Bitmapset; +pub mod CostSelector { + pub type Type = ::core::ffi::c_uint; + pub const STARTUP_COST: Type = 0; + pub const TOTAL_COST: Type = 1; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct QualCost { + pub startup: Cost, + pub per_tuple: Cost, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AggClauseCosts { + pub transCost: QualCost, + pub finalCost: QualCost, + pub transitionSpace: Size, +} +pub mod UpperRelationKind { + pub type Type = ::core::ffi::c_uint; + pub const UPPERREL_SETOP: Type = 0; + pub const UPPERREL_PARTIAL_GROUP_AGG: Type = 1; + pub const UPPERREL_GROUP_AGG: Type = 2; + pub const UPPERREL_WINDOW: Type = 3; + pub const UPPERREL_PARTIAL_DISTINCT: Type = 4; + pub const UPPERREL_DISTINCT: Type = 5; + pub const UPPERREL_ORDERED: Type = 6; + pub const UPPERREL_FINAL: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannerGlobal { + pub type_: NodeTag, + pub boundParams: ParamListInfo, + pub subplans: *mut List, + pub subpaths: *mut List, + pub subroots: *mut List, + pub rewindPlanIDs: *mut Bitmapset, + pub finalrtable: *mut List, + pub finalrteperminfos: *mut List, + pub finalrowmarks: *mut List, + pub resultRelations: *mut List, + pub appendRelations: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub paramExecTypes: *mut List, + pub lastPHId: Index, + pub lastRowMarkId: Index, + pub lastPlanNodeId: ::core::ffi::c_int, + pub transientPlan: bool, + pub dependsOnRole: bool, + pub parallelModeOK: bool, + pub parallelModeNeeded: bool, + pub maxParallelHazard: ::core::ffi::c_char, + pub partition_directory: PartitionDirectory, +} +impl Default for PlannerGlobal { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannerInfo { + pub type_: NodeTag, + pub parse: *mut Query, + pub glob: *mut PlannerGlobal, + pub query_level: Index, + pub parent_root: *mut PlannerInfo, + pub plan_params: *mut List, + pub outer_params: *mut Bitmapset, + pub simple_rel_array: *mut *mut RelOptInfo, + pub simple_rel_array_size: ::core::ffi::c_int, + pub simple_rte_array: *mut *mut RangeTblEntry, + pub append_rel_array: *mut *mut AppendRelInfo, + pub all_baserels: Relids, + pub outer_join_rels: Relids, + pub all_query_rels: Relids, + pub join_rel_list: *mut List, + pub join_rel_hash: *mut HTAB, + pub join_rel_level: *mut *mut List, + pub join_cur_level: ::core::ffi::c_int, + pub init_plans: *mut List, + pub cte_plan_ids: *mut List, + pub multiexpr_params: *mut List, + pub join_domains: *mut List, + pub eq_classes: *mut List, + pub ec_merging_done: bool, + pub canon_pathkeys: *mut List, + pub left_join_clauses: *mut List, + pub right_join_clauses: *mut List, + pub full_join_clauses: *mut List, + pub join_info_list: *mut List, + pub last_rinfo_serial: ::core::ffi::c_int, + pub all_result_relids: Relids, + pub leaf_result_relids: Relids, + pub append_rel_list: *mut List, + pub row_identity_vars: *mut List, + pub rowMarks: *mut List, + pub placeholder_list: *mut List, + pub placeholder_array: *mut *mut PlaceHolderInfo, + pub placeholder_array_size: ::core::ffi::c_int, + pub fkey_list: *mut List, + pub query_pathkeys: *mut List, + pub group_pathkeys: *mut List, + pub num_groupby_pathkeys: ::core::ffi::c_int, + pub window_pathkeys: *mut List, + pub distinct_pathkeys: *mut List, + pub sort_pathkeys: *mut List, + pub setop_pathkeys: *mut List, + pub part_schemes: *mut List, + pub initial_rels: *mut List, + pub upper_rels: [*mut List; 8usize], + pub upper_targets: [*mut PathTarget; 8usize], + pub processed_groupClause: *mut List, + pub processed_distinctClause: *mut List, + pub processed_tlist: *mut List, + pub update_colnos: *mut List, + pub grouping_map: *mut AttrNumber, + pub minmax_aggs: *mut List, + pub planner_cxt: MemoryContext, + pub total_table_pages: Cardinality, + pub tuple_fraction: Selectivity, + pub limit_tuples: Cardinality, + pub qual_security_level: Index, + pub hasJoinRTEs: bool, + pub hasLateralRTEs: bool, + pub hasHavingQual: bool, + pub hasPseudoConstantQuals: bool, + pub hasAlternativeSubPlans: bool, + pub placeholdersFrozen: bool, + pub hasRecursion: bool, + pub agginfos: *mut List, + pub aggtransinfos: *mut List, + pub numOrderedAggs: ::core::ffi::c_int, + pub hasNonPartialAggs: bool, + pub hasNonSerialAggs: bool, + pub wt_param_id: ::core::ffi::c_int, + pub non_recursive_path: *mut Path, + pub curOuterRels: Relids, + pub curOuterParams: *mut List, + pub isAltSubplan: *mut bool, + pub isUsedSubplan: *mut bool, + pub join_search_private: *mut ::core::ffi::c_void, + pub partColsUpdated: bool, +} +impl Default for PlannerInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionSchemeData { + pub strategy: ::core::ffi::c_char, + pub partnatts: int16, + pub partopfamily: *mut Oid, + pub partopcintype: *mut Oid, + pub partcollation: *mut Oid, + pub parttyplen: *mut int16, + pub parttypbyval: *mut bool, + pub partsupfunc: *mut FmgrInfo, +} +impl Default for PartitionSchemeData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type PartitionScheme = *mut PartitionSchemeData; +pub mod RelOptKind { + pub type Type = ::core::ffi::c_uint; + pub const RELOPT_BASEREL: Type = 0; + pub const RELOPT_JOINREL: Type = 1; + pub const RELOPT_OTHER_MEMBER_REL: Type = 2; + pub const RELOPT_OTHER_JOINREL: Type = 3; + pub const RELOPT_UPPER_REL: Type = 4; + pub const RELOPT_OTHER_UPPER_REL: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelOptInfo { + pub type_: NodeTag, + pub reloptkind: RelOptKind::Type, + pub relids: Relids, + pub rows: Cardinality, + pub consider_startup: bool, + pub consider_param_startup: bool, + pub consider_parallel: bool, + pub reltarget: *mut PathTarget, + pub pathlist: *mut List, + pub ppilist: *mut List, + pub partial_pathlist: *mut List, + pub cheapest_startup_path: *mut Path, + pub cheapest_total_path: *mut Path, + pub cheapest_unique_path: *mut Path, + pub cheapest_parameterized_paths: *mut List, + pub direct_lateral_relids: Relids, + pub lateral_relids: Relids, + pub relid: Index, + pub reltablespace: Oid, + pub rtekind: RTEKind::Type, + pub min_attr: AttrNumber, + pub max_attr: AttrNumber, + pub attr_needed: *mut Relids, + pub attr_widths: *mut int32, + pub notnullattnums: *mut Bitmapset, + pub nulling_relids: Relids, + pub lateral_vars: *mut List, + pub lateral_referencers: Relids, + pub indexlist: *mut List, + pub statlist: *mut List, + pub pages: BlockNumber, + pub tuples: Cardinality, + pub allvisfrac: f64, + pub eclass_indexes: *mut Bitmapset, + pub subroot: *mut PlannerInfo, + pub subplan_params: *mut List, + pub rel_parallel_workers: ::core::ffi::c_int, + pub amflags: uint32, + pub serverid: Oid, + pub userid: Oid, + pub useridiscurrent: bool, + pub fdwroutine: *mut FdwRoutine, + pub fdw_private: *mut ::core::ffi::c_void, + pub unique_for_rels: *mut List, + pub non_unique_for_rels: *mut List, + pub baserestrictinfo: *mut List, + pub baserestrictcost: QualCost, + pub baserestrict_min_security: Index, + pub joininfo: *mut List, + pub has_eclass_joins: bool, + pub consider_partitionwise_join: bool, + pub parent: *mut RelOptInfo, + pub top_parent: *mut RelOptInfo, + pub top_parent_relids: Relids, + pub part_scheme: PartitionScheme, + pub nparts: ::core::ffi::c_int, + pub boundinfo: *mut PartitionBoundInfoData, + pub partbounds_merged: bool, + pub partition_qual: *mut List, + pub part_rels: *mut *mut RelOptInfo, + pub live_parts: *mut Bitmapset, + pub all_partrels: Relids, + pub partexprs: *mut *mut List, + pub nullable_partexprs: *mut *mut List, +} +impl Default for RelOptInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexOptInfo { + pub type_: NodeTag, + pub indexoid: Oid, + pub reltablespace: Oid, + pub rel: *mut RelOptInfo, + pub pages: BlockNumber, + pub tuples: Cardinality, + pub tree_height: ::core::ffi::c_int, + pub ncolumns: ::core::ffi::c_int, + pub nkeycolumns: ::core::ffi::c_int, + pub indexkeys: *mut ::core::ffi::c_int, + pub indexcollations: *mut Oid, + pub opfamily: *mut Oid, + pub opcintype: *mut Oid, + pub sortopfamily: *mut Oid, + pub reverse_sort: *mut bool, + pub nulls_first: *mut bool, + pub opclassoptions: *mut *mut bytea, + pub canreturn: *mut bool, + pub relam: Oid, + pub indexprs: *mut List, + pub indpred: *mut List, + pub indextlist: *mut List, + pub indrestrictinfo: *mut List, + pub predOK: bool, + pub unique: bool, + pub immediate: bool, + pub hypothetical: bool, + pub amcanorderbyop: bool, + pub amoptionalkey: bool, + pub amsearcharray: bool, + pub amsearchnulls: bool, + pub amhasgettuple: bool, + pub amhasgetbitmap: bool, + pub amcanparallel: bool, + pub amcanmarkpos: bool, + pub amcostestimate: ::core::option::Option, +} +impl Default for IndexOptInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignKeyOptInfo { + pub type_: NodeTag, + pub con_relid: Index, + pub ref_relid: Index, + pub nkeys: ::core::ffi::c_int, + pub conkey: [AttrNumber; 32usize], + pub confkey: [AttrNumber; 32usize], + pub conpfeqop: [Oid; 32usize], + pub nmatched_ec: ::core::ffi::c_int, + pub nconst_ec: ::core::ffi::c_int, + pub nmatched_rcols: ::core::ffi::c_int, + pub nmatched_ri: ::core::ffi::c_int, + pub eclass: [*mut EquivalenceClass; 32usize], + pub fk_eclass_member: [*mut EquivalenceMember; 32usize], + pub rinfos: [*mut List; 32usize], +} +impl Default for ForeignKeyOptInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StatisticExtInfo { + pub type_: NodeTag, + pub statOid: Oid, + pub inherit: bool, + pub rel: *mut RelOptInfo, + pub kind: ::core::ffi::c_char, + pub keys: *mut Bitmapset, + pub exprs: *mut List, +} +impl Default for StatisticExtInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinDomain { + pub type_: NodeTag, + pub jd_relids: Relids, +} +impl Default for JoinDomain { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EquivalenceClass { + pub type_: NodeTag, + pub ec_opfamilies: *mut List, + pub ec_collation: Oid, + pub ec_members: *mut List, + pub ec_sources: *mut List, + pub ec_derives: *mut List, + pub ec_relids: Relids, + pub ec_has_const: bool, + pub ec_has_volatile: bool, + pub ec_broken: bool, + pub ec_sortref: Index, + pub ec_min_security: Index, + pub ec_max_security: Index, + pub ec_merged: *mut EquivalenceClass, +} +impl Default for EquivalenceClass { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EquivalenceMember { + pub type_: NodeTag, + pub em_expr: *mut Expr, + pub em_relids: Relids, + pub em_is_const: bool, + pub em_is_child: bool, + pub em_datatype: Oid, + pub em_jdomain: *mut JoinDomain, + pub em_parent: *mut EquivalenceMember, +} +impl Default for EquivalenceMember { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PathKey { + pub type_: NodeTag, + pub pk_eclass: *mut EquivalenceClass, + pub pk_opfamily: Oid, + pub pk_strategy: ::core::ffi::c_int, + pub pk_nulls_first: bool, +} +impl Default for PathKey { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupByOrdering { + pub type_: NodeTag, + pub pathkeys: *mut List, + pub clauses: *mut List, +} +impl Default for GroupByOrdering { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod VolatileFunctionStatus { + pub type Type = ::core::ffi::c_uint; + pub const VOLATILITY_UNKNOWN: Type = 0; + pub const VOLATILITY_VOLATILE: Type = 1; + pub const VOLATILITY_NOVOLATILE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PathTarget { + pub type_: NodeTag, + pub exprs: *mut List, + pub sortgrouprefs: *mut Index, + pub cost: QualCost, + pub width: ::core::ffi::c_int, + pub has_volatile_expr: VolatileFunctionStatus::Type, +} +impl Default for PathTarget { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamPathInfo { + pub type_: NodeTag, + pub ppi_req_outer: Relids, + pub ppi_rows: Cardinality, + pub ppi_clauses: *mut List, + pub ppi_serials: *mut Bitmapset, +} +impl Default for ParamPathInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Path { + pub type_: NodeTag, + pub pathtype: NodeTag, + pub parent: *mut RelOptInfo, + pub pathtarget: *mut PathTarget, + pub param_info: *mut ParamPathInfo, + pub parallel_aware: bool, + pub parallel_safe: bool, + pub parallel_workers: ::core::ffi::c_int, + pub rows: Cardinality, + pub startup_cost: Cost, + pub total_cost: Cost, + pub pathkeys: *mut List, +} +impl Default for Path { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexPath { + pub path: Path, + pub indexinfo: *mut IndexOptInfo, + pub indexclauses: *mut List, + pub indexorderbys: *mut List, + pub indexorderbycols: *mut List, + pub indexscandir: ScanDirection::Type, + pub indextotalcost: Cost, + pub indexselectivity: Selectivity, +} +impl Default for IndexPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexClause { + pub type_: NodeTag, + pub rinfo: *mut RestrictInfo, + pub indexquals: *mut List, + pub lossy: bool, + pub indexcol: AttrNumber, + pub indexcols: *mut List, +} +impl Default for IndexClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapHeapPath { + pub path: Path, + pub bitmapqual: *mut Path, +} +impl Default for BitmapHeapPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapAndPath { + pub path: Path, + pub bitmapquals: *mut List, + pub bitmapselectivity: Selectivity, +} +impl Default for BitmapAndPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapOrPath { + pub path: Path, + pub bitmapquals: *mut List, + pub bitmapselectivity: Selectivity, +} +impl Default for BitmapOrPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidPath { + pub path: Path, + pub tidquals: *mut List, +} +impl Default for TidPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidRangePath { + pub path: Path, + pub tidrangequals: *mut List, +} +impl Default for TidRangePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubqueryScanPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for SubqueryScanPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignPath { + pub path: Path, + pub fdw_outerpath: *mut Path, + pub fdw_restrictinfo: *mut List, + pub fdw_private: *mut List, +} +impl Default for ForeignPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomPath { + pub path: Path, + pub flags: uint32, + pub custom_paths: *mut List, + pub custom_restrictinfo: *mut List, + pub custom_private: *mut List, + pub methods: *const CustomPathMethods, +} +impl Default for CustomPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AppendPath { + pub path: Path, + pub subpaths: *mut List, + pub first_partial_path: ::core::ffi::c_int, + pub limit_tuples: Cardinality, +} +impl Default for AppendPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAppendPath { + pub path: Path, + pub subpaths: *mut List, + pub limit_tuples: Cardinality, +} +impl Default for MergeAppendPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupResultPath { + pub path: Path, + pub quals: *mut List, +} +impl Default for GroupResultPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MaterialPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for MaterialPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizePath { + pub path: Path, + pub subpath: *mut Path, + pub hash_operators: *mut List, + pub param_exprs: *mut List, + pub singlerow: bool, + pub binary_mode: bool, + pub calls: Cardinality, + pub est_entries: uint32, +} +impl Default for MemoizePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod UniquePathMethod { + pub type Type = ::core::ffi::c_uint; + pub const UNIQUE_PATH_NOOP: Type = 0; + pub const UNIQUE_PATH_HASH: Type = 1; + pub const UNIQUE_PATH_SORT: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UniquePath { + pub path: Path, + pub subpath: *mut Path, + pub umethod: UniquePathMethod::Type, + pub in_operators: *mut List, + pub uniq_exprs: *mut List, +} +impl Default for UniquePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherPath { + pub path: Path, + pub subpath: *mut Path, + pub single_copy: bool, + pub num_workers: ::core::ffi::c_int, +} +impl Default for GatherPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherMergePath { + pub path: Path, + pub subpath: *mut Path, + pub num_workers: ::core::ffi::c_int, +} +impl Default for GatherMergePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinPath { + pub path: Path, + pub jointype: JoinType::Type, + pub inner_unique: bool, + pub outerjoinpath: *mut Path, + pub innerjoinpath: *mut Path, + pub joinrestrictinfo: *mut List, +} +impl Default for JoinPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestPath { + pub jpath: JoinPath, +} +impl Default for NestPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergePath { + pub jpath: JoinPath, + pub path_mergeclauses: *mut List, + pub outersortkeys: *mut List, + pub innersortkeys: *mut List, + pub skip_mark_restore: bool, + pub materialize_inner: bool, +} +impl Default for MergePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashPath { + pub jpath: JoinPath, + pub path_hashclauses: *mut List, + pub num_batches: ::core::ffi::c_int, + pub inner_rows_total: Cardinality, +} +impl Default for HashPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectionPath { + pub path: Path, + pub subpath: *mut Path, + pub dummypp: bool, +} +impl Default for ProjectionPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectSetPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for ProjectSetPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for SortPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IncrementalSortPath { + pub spath: SortPath, + pub nPresortedCols: ::core::ffi::c_int, +} +impl Default for IncrementalSortPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupPath { + pub path: Path, + pub subpath: *mut Path, + pub groupClause: *mut List, + pub qual: *mut List, +} +impl Default for GroupPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UpperUniquePath { + pub path: Path, + pub subpath: *mut Path, + pub numkeys: ::core::ffi::c_int, +} +impl Default for UpperUniquePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggPath { + pub path: Path, + pub subpath: *mut Path, + pub aggstrategy: AggStrategy::Type, + pub aggsplit: AggSplit::Type, + pub numGroups: Cardinality, + pub transitionSpace: uint64, + pub groupClause: *mut List, + pub qual: *mut List, +} +impl Default for AggPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingSetData { + pub type_: NodeTag, + pub set: *mut List, + pub numGroups: Cardinality, +} +impl Default for GroupingSetData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RollupData { + pub type_: NodeTag, + pub groupClause: *mut List, + pub gsets: *mut List, + pub gsets_data: *mut List, + pub numGroups: Cardinality, + pub hashable: bool, + pub is_hashed: bool, +} +impl Default for RollupData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingSetsPath { + pub path: Path, + pub subpath: *mut Path, + pub aggstrategy: AggStrategy::Type, + pub rollups: *mut List, + pub qual: *mut List, + pub transitionSpace: uint64, +} +impl Default for GroupingSetsPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinMaxAggPath { + pub path: Path, + pub mmaggregates: *mut List, + pub quals: *mut List, +} +impl Default for MinMaxAggPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowAggPath { + pub path: Path, + pub subpath: *mut Path, + pub winclause: *mut WindowClause, + pub qual: *mut List, + pub runCondition: *mut List, + pub topwindow: bool, +} +impl Default for WindowAggPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOpPath { + pub path: Path, + pub subpath: *mut Path, + pub cmd: SetOpCmd::Type, + pub strategy: SetOpStrategy::Type, + pub distinctList: *mut List, + pub flagColIdx: AttrNumber, + pub firstFlag: ::core::ffi::c_int, + pub numGroups: Cardinality, +} +impl Default for SetOpPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RecursiveUnionPath { + pub path: Path, + pub leftpath: *mut Path, + pub rightpath: *mut Path, + pub distinctList: *mut List, + pub wtParam: ::core::ffi::c_int, + pub numGroups: Cardinality, +} +impl Default for RecursiveUnionPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRowsPath { + pub path: Path, + pub subpath: *mut Path, + pub rowMarks: *mut List, + pub epqParam: ::core::ffi::c_int, +} +impl Default for LockRowsPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ModifyTablePath { + pub path: Path, + pub subpath: *mut Path, + pub operation: CmdType::Type, + pub canSetTag: bool, + pub nominalRelation: Index, + pub rootRelation: Index, + pub partColsUpdated: bool, + pub resultRelations: *mut List, + pub updateColnosLists: *mut List, + pub withCheckOptionLists: *mut List, + pub returningLists: *mut List, + pub rowMarks: *mut List, + pub onconflict: *mut OnConflictExpr, + pub epqParam: ::core::ffi::c_int, + pub mergeActionLists: *mut List, + pub mergeJoinConditions: *mut List, +} +impl Default for ModifyTablePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LimitPath { + pub path: Path, + pub subpath: *mut Path, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, +} +impl Default for LimitPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RestrictInfo { + pub type_: NodeTag, + pub clause: *mut Expr, + pub is_pushed_down: bool, + pub can_join: bool, + pub pseudoconstant: bool, + pub has_clone: bool, + pub is_clone: bool, + pub leakproof: bool, + pub has_volatile: VolatileFunctionStatus::Type, + pub security_level: Index, + pub num_base_rels: ::core::ffi::c_int, + pub clause_relids: Relids, + pub required_relids: Relids, + pub incompatible_relids: Relids, + pub outer_relids: Relids, + pub left_relids: Relids, + pub right_relids: Relids, + pub orclause: *mut Expr, + pub rinfo_serial: ::core::ffi::c_int, + pub parent_ec: *mut EquivalenceClass, + pub eval_cost: QualCost, + pub norm_selec: Selectivity, + pub outer_selec: Selectivity, + pub mergeopfamilies: *mut List, + pub left_ec: *mut EquivalenceClass, + pub right_ec: *mut EquivalenceClass, + pub left_em: *mut EquivalenceMember, + pub right_em: *mut EquivalenceMember, + pub scansel_cache: *mut List, + pub outer_is_left: bool, + pub hashjoinoperator: Oid, + pub left_bucketsize: Selectivity, + pub right_bucketsize: Selectivity, + pub left_mcvfreq: Selectivity, + pub right_mcvfreq: Selectivity, + pub left_hasheqoperator: Oid, + pub right_hasheqoperator: Oid, +} +impl Default for RestrictInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeScanSelCache { + pub opfamily: Oid, + pub collation: Oid, + pub strategy: ::core::ffi::c_int, + pub nulls_first: bool, + pub leftstartsel: Selectivity, + pub leftendsel: Selectivity, + pub rightstartsel: Selectivity, + pub rightendsel: Selectivity, +} +impl Default for MergeScanSelCache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlaceHolderVar { + pub xpr: Expr, + pub phexpr: *mut Expr, + pub phrels: Relids, + pub phnullingrels: Relids, + pub phid: Index, + pub phlevelsup: Index, +} +impl Default for PlaceHolderVar { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SpecialJoinInfo { + pub type_: NodeTag, + pub min_lefthand: Relids, + pub min_righthand: Relids, + pub syn_lefthand: Relids, + pub syn_righthand: Relids, + pub jointype: JoinType::Type, + pub ojrelid: Index, + pub commute_above_l: Relids, + pub commute_above_r: Relids, + pub commute_below_l: Relids, + pub commute_below_r: Relids, + pub lhs_strict: bool, + pub semi_can_btree: bool, + pub semi_can_hash: bool, + pub semi_operators: *mut List, + pub semi_rhs_exprs: *mut List, +} +impl Default for SpecialJoinInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OuterJoinClauseInfo { + pub type_: NodeTag, + pub rinfo: *mut RestrictInfo, + pub sjinfo: *mut SpecialJoinInfo, +} +impl Default for OuterJoinClauseInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AppendRelInfo { + pub type_: NodeTag, + pub parent_relid: Index, + pub child_relid: Index, + pub parent_reltype: Oid, + pub child_reltype: Oid, + pub translated_vars: *mut List, + pub num_child_cols: ::core::ffi::c_int, + pub parent_colnos: *mut AttrNumber, + pub parent_reloid: Oid, +} +impl Default for AppendRelInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowIdentityVarInfo { + pub type_: NodeTag, + pub rowidvar: *mut Var, + pub rowidwidth: int32, + pub rowidname: *mut ::core::ffi::c_char, + pub rowidrels: Relids, +} +impl Default for RowIdentityVarInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlaceHolderInfo { + pub type_: NodeTag, + pub phid: Index, + pub ph_var: *mut PlaceHolderVar, + pub ph_eval_at: Relids, + pub ph_lateral: Relids, + pub ph_needed: Relids, + pub ph_width: int32, +} +impl Default for PlaceHolderInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinMaxAggInfo { + pub type_: NodeTag, + pub aggfnoid: Oid, + pub aggsortop: Oid, + pub target: *mut Expr, + pub subroot: *mut PlannerInfo, + pub path: *mut Path, + pub pathcost: Cost, + pub param: *mut Param, +} +impl Default for MinMaxAggInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannerParamItem { + pub type_: NodeTag, + pub item: *mut Node, + pub paramId: ::core::ffi::c_int, +} +impl Default for PlannerParamItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SemiAntiJoinFactors { + pub outer_match_frac: Selectivity, + pub match_count: Selectivity, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinPathExtraData { + pub restrictlist: *mut List, + pub mergeclause_list: *mut List, + pub inner_unique: bool, + pub sjinfo: *mut SpecialJoinInfo, + pub semifactors: SemiAntiJoinFactors, + pub param_source_rels: Relids, +} +impl Default for JoinPathExtraData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionwiseAggregateType { + pub type Type = ::core::ffi::c_uint; + pub const PARTITIONWISE_AGGREGATE_NONE: Type = 0; + pub const PARTITIONWISE_AGGREGATE_FULL: Type = 1; + pub const PARTITIONWISE_AGGREGATE_PARTIAL: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupPathExtraData { + pub flags: ::core::ffi::c_int, + pub partial_costs_set: bool, + pub agg_partial_costs: AggClauseCosts, + pub agg_final_costs: AggClauseCosts, + pub target_parallel_safe: bool, + pub havingQual: *mut Node, + pub targetList: *mut List, + pub patype: PartitionwiseAggregateType::Type, +} +impl Default for GroupPathExtraData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct FinalPathExtraData { + pub limit_needed: bool, + pub limit_tuples: Cardinality, + pub count_est: int64, + pub offset_est: int64, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JoinCostWorkspace { + pub startup_cost: Cost, + pub total_cost: Cost, + pub run_cost: Cost, + pub inner_run_cost: Cost, + pub inner_rescan_run_cost: Cost, + pub outer_rows: Cardinality, + pub inner_rows: Cardinality, + pub outer_skip_rows: Cardinality, + pub inner_skip_rows: Cardinality, + pub numbuckets: ::core::ffi::c_int, + pub numbatches: ::core::ffi::c_int, + pub inner_rows_total: Cardinality, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggInfo { + pub type_: NodeTag, + pub aggrefs: *mut List, + pub transno: ::core::ffi::c_int, + pub shareable: bool, + pub finalfn_oid: Oid, +} +impl Default for AggInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggTransInfo { + pub type_: NodeTag, + pub args: *mut List, + pub aggfilter: *mut Expr, + pub transfn_oid: Oid, + pub serialfn_oid: Oid, + pub deserialfn_oid: Oid, + pub combinefn_oid: Oid, + pub aggtranstype: Oid, + pub aggtranstypmod: int32, + pub transtypeLen: ::core::ffi::c_int, + pub transtypeByVal: bool, + pub aggtransspace: int32, + pub initValue: Datum, + pub initValueIsNull: bool, +} +impl Default for AggTransInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type GetForeignRelSize_function = ::core::option::Option< + unsafe extern "C" fn(root: *mut PlannerInfo, baserel: *mut RelOptInfo, foreigntableid: Oid), +>; +pub type GetForeignPaths_function = ::core::option::Option< + unsafe extern "C" fn(root: *mut PlannerInfo, baserel: *mut RelOptInfo, foreigntableid: Oid), +>; +pub type GetForeignPlan_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + foreigntableid: Oid, + best_path: *mut ForeignPath, + tlist: *mut List, + scan_clauses: *mut List, + outer_plan: *mut Plan, + ) -> *mut ForeignScan, +>; +pub type BeginForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, eflags: ::core::ffi::c_int), +>; +pub type IterateForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState) -> *mut TupleTableSlot, +>; +pub type RecheckForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, slot: *mut TupleTableSlot) -> bool, +>; +pub type ReScanForeignScan_function = + ::core::option::Option; +pub type EndForeignScan_function = + ::core::option::Option; +pub type GetForeignJoinPaths_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + extra: *mut JoinPathExtraData, + ), +>; +pub type GetForeignUpperPaths_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + stage: UpperRelationKind::Type, + input_rel: *mut RelOptInfo, + output_rel: *mut RelOptInfo, + extra: *mut ::core::ffi::c_void, + ), +>; +pub type AddForeignUpdateTargets_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rtindex: Index, + target_rte: *mut RangeTblEntry, + target_relation: Relation, + ), +>; +pub type PlanForeignModify_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + plan: *mut ModifyTable, + resultRelation: Index, + subplan_index: ::core::ffi::c_int, + ) -> *mut List, +>; +pub type BeginForeignModify_function = ::core::option::Option< + unsafe extern "C" fn( + mtstate: *mut ModifyTableState, + rinfo: *mut ResultRelInfo, + fdw_private: *mut List, + subplan_index: ::core::ffi::c_int, + eflags: ::core::ffi::c_int, + ), +>; +pub type ExecForeignInsert_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + planSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot, +>; +pub type ExecForeignBatchInsert_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slots: *mut *mut TupleTableSlot, + planSlots: *mut *mut TupleTableSlot, + numSlots: *mut ::core::ffi::c_int, + ) -> *mut *mut TupleTableSlot, +>; +pub type GetForeignModifyBatchSize_function = + ::core::option::Option ::core::ffi::c_int>; +pub type ExecForeignUpdate_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + planSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot, +>; +pub type ExecForeignDelete_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + planSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot, +>; +pub type EndForeignModify_function = + ::core::option::Option; +pub type BeginForeignInsert_function = ::core::option::Option< + unsafe extern "C" fn(mtstate: *mut ModifyTableState, rinfo: *mut ResultRelInfo), +>; +pub type EndForeignInsert_function = + ::core::option::Option; +pub type IsForeignRelUpdatable_function = + ::core::option::Option ::core::ffi::c_int>; +pub type PlanDirectModify_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + plan: *mut ModifyTable, + resultRelation: Index, + subplan_index: ::core::ffi::c_int, + ) -> bool, +>; +pub type BeginDirectModify_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, eflags: ::core::ffi::c_int), +>; +pub type IterateDirectModify_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState) -> *mut TupleTableSlot, +>; +pub type EndDirectModify_function = + ::core::option::Option; +pub type GetForeignRowMarkType_function = ::core::option::Option< + unsafe extern "C" fn( + rte: *mut RangeTblEntry, + strength: LockClauseStrength::Type, + ) -> RowMarkType::Type, +>; +pub type RefetchForeignRow_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + erm: *mut ExecRowMark, + rowid: Datum, + slot: *mut TupleTableSlot, + updated: *mut bool, + ), +>; +pub type ExplainForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, es: *mut ExplainState), +>; +pub type ExplainForeignModify_function = ::core::option::Option< + unsafe extern "C" fn( + mtstate: *mut ModifyTableState, + rinfo: *mut ResultRelInfo, + fdw_private: *mut List, + subplan_index: ::core::ffi::c_int, + es: *mut ExplainState, + ), +>; +pub type ExplainDirectModify_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, es: *mut ExplainState), +>; +pub type AcquireSampleRowsFunc = ::core::option::Option< + unsafe extern "C" fn( + relation: Relation, + elevel: ::core::ffi::c_int, + rows: *mut HeapTuple, + targrows: ::core::ffi::c_int, + totalrows: *mut f64, + totaldeadrows: *mut f64, + ) -> ::core::ffi::c_int, +>; +pub type AnalyzeForeignTable_function = ::core::option::Option< + unsafe extern "C" fn( + relation: Relation, + func: *mut AcquireSampleRowsFunc, + totalpages: *mut BlockNumber, + ) -> bool, +>; +pub type ImportForeignSchema_function = ::core::option::Option< + unsafe extern "C" fn(stmt: *mut ImportForeignSchemaStmt, serverOid: Oid) -> *mut List, +>; +pub type ExecForeignTruncate_function = ::core::option::Option< + unsafe extern "C" fn(rels: *mut List, behavior: DropBehavior::Type, restart_seqs: bool), +>; +pub type EstimateDSMForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, pcxt: *mut ParallelContext) -> Size, +>; +pub type InitializeDSMForeignScan_function = ::core::option::Option< + unsafe extern "C" fn( + node: *mut ForeignScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), +>; +pub type ReInitializeDSMForeignScan_function = ::core::option::Option< + unsafe extern "C" fn( + node: *mut ForeignScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), +>; +pub type InitializeWorkerForeignScan_function = ::core::option::Option< + unsafe extern "C" fn( + node: *mut ForeignScanState, + toc: *mut shm_toc, + coordinate: *mut ::core::ffi::c_void, + ), +>; +pub type ShutdownForeignScan_function = + ::core::option::Option; +pub type IsForeignScanParallelSafe_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + rte: *mut RangeTblEntry, + ) -> bool, +>; +pub type ReparameterizeForeignPathByChild_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + fdw_private: *mut List, + child_rel: *mut RelOptInfo, + ) -> *mut List, +>; +pub type IsForeignPathAsyncCapable_function = + ::core::option::Option bool>; +pub type ForeignAsyncRequest_function = + ::core::option::Option; +pub type ForeignAsyncConfigureWait_function = + ::core::option::Option; +pub type ForeignAsyncNotify_function = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FdwRoutine { + pub type_: NodeTag, + pub GetForeignRelSize: GetForeignRelSize_function, + pub GetForeignPaths: GetForeignPaths_function, + pub GetForeignPlan: GetForeignPlan_function, + pub BeginForeignScan: BeginForeignScan_function, + pub IterateForeignScan: IterateForeignScan_function, + pub ReScanForeignScan: ReScanForeignScan_function, + pub EndForeignScan: EndForeignScan_function, + pub GetForeignJoinPaths: GetForeignJoinPaths_function, + pub GetForeignUpperPaths: GetForeignUpperPaths_function, + pub AddForeignUpdateTargets: AddForeignUpdateTargets_function, + pub PlanForeignModify: PlanForeignModify_function, + pub BeginForeignModify: BeginForeignModify_function, + pub ExecForeignInsert: ExecForeignInsert_function, + pub ExecForeignBatchInsert: ExecForeignBatchInsert_function, + pub GetForeignModifyBatchSize: GetForeignModifyBatchSize_function, + pub ExecForeignUpdate: ExecForeignUpdate_function, + pub ExecForeignDelete: ExecForeignDelete_function, + pub EndForeignModify: EndForeignModify_function, + pub BeginForeignInsert: BeginForeignInsert_function, + pub EndForeignInsert: EndForeignInsert_function, + pub IsForeignRelUpdatable: IsForeignRelUpdatable_function, + pub PlanDirectModify: PlanDirectModify_function, + pub BeginDirectModify: BeginDirectModify_function, + pub IterateDirectModify: IterateDirectModify_function, + pub EndDirectModify: EndDirectModify_function, + pub GetForeignRowMarkType: GetForeignRowMarkType_function, + pub RefetchForeignRow: RefetchForeignRow_function, + pub RecheckForeignScan: RecheckForeignScan_function, + pub ExplainForeignScan: ExplainForeignScan_function, + pub ExplainForeignModify: ExplainForeignModify_function, + pub ExplainDirectModify: ExplainDirectModify_function, + pub AnalyzeForeignTable: AnalyzeForeignTable_function, + pub ImportForeignSchema: ImportForeignSchema_function, + pub ExecForeignTruncate: ExecForeignTruncate_function, + pub IsForeignScanParallelSafe: IsForeignScanParallelSafe_function, + pub EstimateDSMForeignScan: EstimateDSMForeignScan_function, + pub InitializeDSMForeignScan: InitializeDSMForeignScan_function, + pub ReInitializeDSMForeignScan: ReInitializeDSMForeignScan_function, + pub InitializeWorkerForeignScan: InitializeWorkerForeignScan_function, + pub ShutdownForeignScan: ShutdownForeignScan_function, + pub ReparameterizeForeignPathByChild: ReparameterizeForeignPathByChild_function, + pub IsForeignPathAsyncCapable: IsForeignPathAsyncCapable_function, + pub ForeignAsyncRequest: ForeignAsyncRequest_function, + pub ForeignAsyncConfigureWait: ForeignAsyncConfigureWait_function, + pub ForeignAsyncNotify: ForeignAsyncNotify_function, +} +impl Default for FdwRoutine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignDataWrapper { + pub fdwid: Oid, + pub owner: Oid, + pub fdwname: *mut ::core::ffi::c_char, + pub fdwhandler: Oid, + pub fdwvalidator: Oid, + pub options: *mut List, +} +impl Default for ForeignDataWrapper { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignServer { + pub serverid: Oid, + pub fdwid: Oid, + pub owner: Oid, + pub servername: *mut ::core::ffi::c_char, + pub servertype: *mut ::core::ffi::c_char, + pub serverversion: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for ForeignServer { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UserMapping { + pub umid: Oid, + pub userid: Oid, + pub serverid: Oid, + pub options: *mut List, +} +impl Default for UserMapping { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignTable { + pub relid: Oid, + pub serverid: Oid, + pub options: *mut List, +} +impl Default for ForeignTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JitInstrumentation { + pub created_functions: usize, + pub generation_counter: instr_time, + pub deform_counter: instr_time, + pub inlining_counter: instr_time, + pub optimization_counter: instr_time, + pub emission_counter: instr_time, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedJitInstrumentation { + pub num_workers: ::core::ffi::c_int, + pub jit_instr: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JitContext { + pub flags: ::core::ffi::c_int, + pub instr: JitInstrumentation, +} +pub type JitProviderInit = + ::core::option::Option; +pub type JitProviderResetAfterErrorCB = ::core::option::Option; +pub type JitProviderReleaseContextCB = + ::core::option::Option; +pub type JitProviderCompileExprCB = + ::core::option::Option bool>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JitProviderCallbacks { + pub reset_after_error: JitProviderResetAfterErrorCB, + pub release_context: JitProviderReleaseContextCB, + pub compile_expr: JitProviderCompileExprCB, +} +pub type pg_wchar = ::core::ffi::c_uint; +pub mod pg_enc { + pub type Type = ::core::ffi::c_uint; + pub const PG_SQL_ASCII: Type = 0; + pub const PG_EUC_JP: Type = 1; + pub const PG_EUC_CN: Type = 2; + pub const PG_EUC_KR: Type = 3; + pub const PG_EUC_TW: Type = 4; + pub const PG_EUC_JIS_2004: Type = 5; + pub const PG_UTF8: Type = 6; + pub const PG_MULE_INTERNAL: Type = 7; + pub const PG_LATIN1: Type = 8; + pub const PG_LATIN2: Type = 9; + pub const PG_LATIN3: Type = 10; + pub const PG_LATIN4: Type = 11; + pub const PG_LATIN5: Type = 12; + pub const PG_LATIN6: Type = 13; + pub const PG_LATIN7: Type = 14; + pub const PG_LATIN8: Type = 15; + pub const PG_LATIN9: Type = 16; + pub const PG_LATIN10: Type = 17; + pub const PG_WIN1256: Type = 18; + pub const PG_WIN1258: Type = 19; + pub const PG_WIN866: Type = 20; + pub const PG_WIN874: Type = 21; + pub const PG_KOI8R: Type = 22; + pub const PG_WIN1251: Type = 23; + pub const PG_WIN1252: Type = 24; + pub const PG_ISO_8859_5: Type = 25; + pub const PG_ISO_8859_6: Type = 26; + pub const PG_ISO_8859_7: Type = 27; + pub const PG_ISO_8859_8: Type = 28; + pub const PG_WIN1250: Type = 29; + pub const PG_WIN1253: Type = 30; + pub const PG_WIN1254: Type = 31; + pub const PG_WIN1255: Type = 32; + pub const PG_WIN1257: Type = 33; + pub const PG_KOI8U: Type = 34; + pub const PG_SJIS: Type = 35; + pub const PG_BIG5: Type = 36; + pub const PG_GBK: Type = 37; + pub const PG_UHC: Type = 38; + pub const PG_GB18030: Type = 39; + pub const PG_JOHAB: Type = 40; + pub const PG_SHIFT_JIS_2004: Type = 41; + pub const _PG_LAST_ENCODING_: Type = 42; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_enc2name { + pub name: *const ::core::ffi::c_char, + pub encoding: pg_enc::Type, +} +impl Default for pg_enc2name { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type mb2wchar_with_len_converter = ::core::option::Option< + unsafe extern "C" fn( + from: *const ::core::ffi::c_uchar, + to: *mut pg_wchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type wchar2mb_with_len_converter = ::core::option::Option< + unsafe extern "C" fn( + from: *const pg_wchar, + to: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type mblen_converter = ::core::option::Option< + unsafe extern "C" fn(mbstr: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int, +>; +pub type mbdisplaylen_converter = ::core::option::Option< + unsafe extern "C" fn(mbstr: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int, +>; +pub type mbcharacter_incrementer = ::core::option::Option< + unsafe extern "C" fn(mbstr: *mut ::core::ffi::c_uchar, len: ::core::ffi::c_int) -> bool, +>; +pub type mbchar_verifier = ::core::option::Option< + unsafe extern "C" fn( + mbstr: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type mbstr_verifier = ::core::option::Option< + unsafe extern "C" fn( + mbstr: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_wchar_tbl { + pub mb2wchar_with_len: mb2wchar_with_len_converter, + pub wchar2mb_with_len: wchar2mb_with_len_converter, + pub mblen: mblen_converter, + pub dsplen: mbdisplaylen_converter, + pub mbverifychar: mbchar_verifier, + pub mbverifystr: mbstr_verifier, + pub maxmblen: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_mb_radix_tree { + pub chars16: *const uint16, + pub chars32: *const uint32, + pub b1root: uint32, + pub b1_lower: uint8, + pub b1_upper: uint8, + pub b2root: uint32, + pub b2_1_lower: uint8, + pub b2_1_upper: uint8, + pub b2_2_lower: uint8, + pub b2_2_upper: uint8, + pub b3root: uint32, + pub b3_1_lower: uint8, + pub b3_1_upper: uint8, + pub b3_2_lower: uint8, + pub b3_2_upper: uint8, + pub b3_3_lower: uint8, + pub b3_3_upper: uint8, + pub b4root: uint32, + pub b4_1_lower: uint8, + pub b4_1_upper: uint8, + pub b4_2_lower: uint8, + pub b4_2_upper: uint8, + pub b4_3_lower: uint8, + pub b4_3_upper: uint8, + pub b4_4_lower: uint8, + pub b4_4_upper: uint8, +} +impl Default for pg_mb_radix_tree { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_utf_to_local_combined { + pub utf1: uint32, + pub utf2: uint32, + pub code: uint32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_local_to_utf_combined { + pub code: uint32, + pub utf1: uint32, + pub utf2: uint32, +} +pub type utf_local_conversion_func = + ::core::option::Option uint32>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExtensibleNode { + pub type_: NodeTag, + pub extnodename: *const ::core::ffi::c_char, +} +impl Default for ExtensibleNode { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExtensibleNodeMethods { + pub extnodename: *const ::core::ffi::c_char, + pub node_size: Size, + pub nodeCopy: ::core::option::Option< + unsafe extern "C" fn(newnode: *mut ExtensibleNode, oldnode: *const ExtensibleNode), + >, + pub nodeEqual: ::core::option::Option< + unsafe extern "C" fn(a: *const ExtensibleNode, b: *const ExtensibleNode) -> bool, + >, + pub nodeOut: ::core::option::Option< + unsafe extern "C" fn(str_: *mut StringInfoData, node: *const ExtensibleNode), + >, + pub nodeRead: ::core::option::Option, +} +impl Default for ExtensibleNodeMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomPathMethods { + pub CustomName: *const ::core::ffi::c_char, + pub PlanCustomPath: ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + best_path: *mut CustomPath, + tlist: *mut List, + clauses: *mut List, + custom_plans: *mut List, + ) -> *mut Plan, + >, + pub ReparameterizeCustomPathByChild: ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + custom_private: *mut List, + child_rel: *mut RelOptInfo, + ) -> *mut List, + >, +} +impl Default for CustomPathMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomScanMethods { + pub CustomName: *const ::core::ffi::c_char, + pub CreateCustomScanState: + ::core::option::Option *mut Node>, +} +impl Default for CustomScanMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomExecMethods { + pub CustomName: *const ::core::ffi::c_char, + pub BeginCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + estate: *mut EState, + eflags: ::core::ffi::c_int, + ), + >, + pub ExecCustomScan: ::core::option::Option< + unsafe extern "C" fn(node: *mut CustomScanState) -> *mut TupleTableSlot, + >, + pub EndCustomScan: ::core::option::Option, + pub ReScanCustomScan: ::core::option::Option, + pub MarkPosCustomScan: ::core::option::Option, + pub RestrPosCustomScan: + ::core::option::Option, + pub EstimateDSMCustomScan: ::core::option::Option< + unsafe extern "C" fn(node: *mut CustomScanState, pcxt: *mut ParallelContext) -> Size, + >, + pub InitializeDSMCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), + >, + pub ReInitializeDSMCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), + >, + pub InitializeWorkerCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + toc: *mut shm_toc, + coordinate: *mut ::core::ffi::c_void, + ), + >, + pub ShutdownCustomScan: + ::core::option::Option, + pub ExplainCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + ancestors: *mut List, + es: *mut ExplainState, + ), + >, +} +impl Default for CustomExecMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type check_function_callback = ::core::option::Option< + unsafe extern "C" fn(func_id: Oid, context: *mut ::core::ffi::c_void) -> bool, +>; +pub type tree_walker_callback = ::core::option::Option< + unsafe extern "C" fn(node: *mut Node, context: *mut ::core::ffi::c_void) -> bool, +>; +pub type planstate_tree_walker_callback = ::core::option::Option< + unsafe extern "C" fn(planstate: *mut PlanState, context: *mut ::core::ffi::c_void) -> bool, +>; +pub type tree_mutator_callback = ::core::option::Option< + unsafe extern "C" fn(node: *mut Node, context: *mut ::core::ffi::c_void) -> *mut Node, +>; +pub mod ReplicationKind { + pub type Type = ::core::ffi::c_uint; + pub const REPLICATION_KIND_PHYSICAL: Type = 0; + pub const REPLICATION_KIND_LOGICAL: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IdentifySystemCmd { + pub type_: NodeTag, +} +impl Default for IdentifySystemCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BaseBackupCmd { + pub type_: NodeTag, + pub options: *mut List, +} +impl Default for BaseBackupCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, + pub kind: ReplicationKind::Type, + pub plugin: *mut ::core::ffi::c_char, + pub temporary: bool, + pub options: *mut List, +} +impl Default for CreateReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, + pub wait: bool, +} +impl Default for DropReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StartReplicationCmd { + pub type_: NodeTag, + pub kind: ReplicationKind::Type, + pub slotname: *mut ::core::ffi::c_char, + pub timeline: TimeLineID, + pub startpoint: XLogRecPtr, + pub options: *mut List, +} +impl Default for StartReplicationCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReadReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, +} +impl Default for ReadReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TimeLineHistoryCmd { + pub type_: NodeTag, + pub timeline: TimeLineID, +} +impl Default for TimeLineHistoryCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UploadManifestCmd { + pub type_: NodeTag, +} +impl Default for UploadManifestCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SubscriptTransform = ::core::option::Option< + unsafe extern "C" fn( + sbsref: *mut SubscriptingRef, + indirection: *mut List, + pstate: *mut ParseState, + isSlice: bool, + isAssignment: bool, + ), +>; +pub type SubscriptExecSetup = ::core::option::Option< + unsafe extern "C" fn( + sbsref: *const SubscriptingRef, + sbsrefstate: *mut SubscriptingRefState, + methods: *mut SubscriptExecSteps, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SubscriptRoutines { + pub transform: SubscriptTransform, + pub exec_setup: SubscriptExecSetup, + pub fetch_strict: bool, + pub fetch_leakproof: bool, + pub store_leakproof: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestSimplify { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub fcall: *mut FuncExpr, +} +impl Default for SupportRequestSimplify { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestSelectivity { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub args: *mut List, + pub inputcollid: Oid, + pub is_join: bool, + pub varRelid: ::core::ffi::c_int, + pub jointype: JoinType::Type, + pub sjinfo: *mut SpecialJoinInfo, + pub selectivity: Selectivity, +} +impl Default for SupportRequestSelectivity { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestCost { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub node: *mut Node, + pub startup: Cost, + pub per_tuple: Cost, +} +impl Default for SupportRequestCost { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestRows { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub node: *mut Node, + pub rows: f64, +} +impl Default for SupportRequestRows { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestIndexCondition { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub node: *mut Node, + pub indexarg: ::core::ffi::c_int, + pub index: *mut IndexOptInfo, + pub indexcol: ::core::ffi::c_int, + pub opfamily: Oid, + pub indexcollation: Oid, + pub lossy: bool, +} +impl Default for SupportRequestIndexCondition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestWFuncMonotonic { + pub type_: NodeTag, + pub window_func: *mut WindowFunc, + pub window_clause: *mut WindowClause, + pub monotonic: MonotonicFunction::Type, +} +impl Default for SupportRequestWFuncMonotonic { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestOptimizeWindowClause { + pub type_: NodeTag, + pub window_func: *mut WindowFunc, + pub window_clause: *mut WindowClause, + pub frameOptions: ::core::ffi::c_int, +} +impl Default for SupportRequestOptimizeWindowClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFuncLists { + pub numWindowFuncs: ::core::ffi::c_int, + pub maxWinRef: Index, + pub windowFuncs: *mut *mut List, +} +impl Default for WindowFuncLists { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ConstraintExclusionType { + pub type Type = ::core::ffi::c_uint; + pub const CONSTRAINT_EXCLUSION_OFF: Type = 0; + pub const CONSTRAINT_EXCLUSION_ON: Type = 1; + pub const CONSTRAINT_EXCLUSION_PARTITION: Type = 2; +} +pub mod DebugParallelMode { + pub type Type = ::core::ffi::c_uint; + pub const DEBUG_PARALLEL_OFF: Type = 0; + pub const DEBUG_PARALLEL_ON: Type = 1; + pub const DEBUG_PARALLEL_REGRESS: Type = 2; +} +pub type set_rel_pathlist_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + rti: Index, + rte: *mut RangeTblEntry, + ), +>; +pub type set_join_pathlist_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + extra: *mut JoinPathExtraData, + ), +>; +pub type join_search_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + levels_needed: ::core::ffi::c_int, + initial_rels: *mut List, + ) -> *mut RelOptInfo, +>; +pub type ec_matches_callback_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + ec: *mut EquivalenceClass, + em: *mut EquivalenceMember, + arg: *mut ::core::ffi::c_void, + ) -> bool, +>; +pub mod PathKeysComparison { + pub type Type = ::core::ffi::c_uint; + pub const PATHKEYS_EQUAL: Type = 0; + pub const PATHKEYS_BETTER1: Type = 1; + pub const PATHKEYS_BETTER2: Type = 2; + pub const PATHKEYS_DIFFERENT: Type = 3; +} +pub type get_relation_info_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + relationObjectId: Oid, + inhparent: bool, + rel: *mut RelOptInfo, + ), +>; +pub type query_pathkeys_callback = ::core::option::Option< + unsafe extern "C" fn(root: *mut PlannerInfo, extra: *mut ::core::ffi::c_void), +>; +pub type planner_hook_type = ::core::option::Option< + unsafe extern "C" fn( + parse: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut PlannedStmt, +>; +pub type create_upper_paths_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + stage: UpperRelationKind::Type, + input_rel: *mut RelOptInfo, + output_rel: *mut RelOptInfo, + extra: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LocationLen { + pub location: ::core::ffi::c_int, + pub length: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JumbleState { + pub jumble: *mut ::core::ffi::c_uchar, + pub jumble_len: Size, + pub clocations: *mut LocationLen, + pub clocations_buf_size: ::core::ffi::c_int, + pub clocations_count: ::core::ffi::c_int, + pub highest_extern_param_id: ::core::ffi::c_int, +} +impl Default for JumbleState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ComputeQueryIdType { + pub type Type = ::core::ffi::c_uint; + pub const COMPUTE_QUERY_ID_OFF: Type = 0; + pub const COMPUTE_QUERY_ID_ON: Type = 1; + pub const COMPUTE_QUERY_ID_AUTO: Type = 2; + pub const COMPUTE_QUERY_ID_REGRESS: Type = 3; +} +pub type post_parse_analyze_hook_type = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, query: *mut Query, jstate: *mut JumbleState), +>; +pub mod FuncDetailCode { + pub type Type = ::core::ffi::c_uint; + pub const FUNCDETAIL_NOTFOUND: Type = 0; + pub const FUNCDETAIL_MULTIPLE: Type = 1; + pub const FUNCDETAIL_NORMAL: Type = 2; + pub const FUNCDETAIL_PROCEDURE: Type = 3; + pub const FUNCDETAIL_AGGREGATE: Type = 4; + pub const FUNCDETAIL_WINDOWFUNC: Type = 5; + pub const FUNCDETAIL_COERCION: Type = 6; +} +pub type Operator = HeapTuple; +pub type Type = HeapTuple; +pub type TYPCATEGORY = ::core::ffi::c_char; +pub mod CoercionPathType { + pub type Type = ::core::ffi::c_uint; + pub const COERCION_PATH_NONE: Type = 0; + pub const COERCION_PATH_FUNC: Type = 1; + pub const COERCION_PATH_RELABELTYPE: Type = 2; + pub const COERCION_PATH_ARRAYCOERCE: Type = 3; + pub const COERCION_PATH_COERCEVIAIO: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedRecordHeader { + pub hdr: ExpandedObjectHeader, + pub er_magic: ::core::ffi::c_int, + pub flags: ::core::ffi::c_int, + pub er_decltypeid: Oid, + pub er_typeid: Oid, + pub er_typmod: int32, + pub er_tupdesc: TupleDesc, + pub er_tupdesc_id: uint64, + pub dvalues: *mut Datum, + pub dnulls: *mut bool, + pub nfields: ::core::ffi::c_int, + pub flat_size: Size, + pub data_len: Size, + pub hoff: ::core::ffi::c_int, + pub hasnull: bool, + pub fvalue: HeapTuple, + pub fstartptr: *mut ::core::ffi::c_char, + pub fendptr: *mut ::core::ffi::c_char, + pub er_short_term_cxt: MemoryContext, + pub er_dummy_header: *mut ExpandedRecordHeader, + pub er_domaininfo: *mut ::core::ffi::c_void, + pub er_mcb: MemoryContextCallback, +} +impl Default for ExpandedRecordHeader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedRecordFieldInfo { + pub fnumber: ::core::ffi::c_int, + pub ftypeid: Oid, + pub ftypmod: int32, + pub fcollation: Oid, +} +impl Default for ExpandedRecordFieldInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PLpgSQL_nsitem_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_NSTYPE_LABEL: Type = 0; + pub const PLPGSQL_NSTYPE_VAR: Type = 1; + pub const PLPGSQL_NSTYPE_REC: Type = 2; +} +pub mod PLpgSQL_label_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_LABEL_BLOCK: Type = 0; + pub const PLPGSQL_LABEL_LOOP: Type = 1; + pub const PLPGSQL_LABEL_OTHER: Type = 2; +} +pub mod PLpgSQL_datum_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_DTYPE_VAR: Type = 0; + pub const PLPGSQL_DTYPE_ROW: Type = 1; + pub const PLPGSQL_DTYPE_REC: Type = 2; + pub const PLPGSQL_DTYPE_RECFIELD: Type = 3; + pub const PLPGSQL_DTYPE_PROMISE: Type = 4; +} +pub mod PLpgSQL_promise_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_PROMISE_NONE: Type = 0; + pub const PLPGSQL_PROMISE_TG_NAME: Type = 1; + pub const PLPGSQL_PROMISE_TG_WHEN: Type = 2; + pub const PLPGSQL_PROMISE_TG_LEVEL: Type = 3; + pub const PLPGSQL_PROMISE_TG_OP: Type = 4; + pub const PLPGSQL_PROMISE_TG_RELID: Type = 5; + pub const PLPGSQL_PROMISE_TG_TABLE_NAME: Type = 6; + pub const PLPGSQL_PROMISE_TG_TABLE_SCHEMA: Type = 7; + pub const PLPGSQL_PROMISE_TG_NARGS: Type = 8; + pub const PLPGSQL_PROMISE_TG_ARGV: Type = 9; + pub const PLPGSQL_PROMISE_TG_EVENT: Type = 10; + pub const PLPGSQL_PROMISE_TG_TAG: Type = 11; +} +pub mod PLpgSQL_type_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_TTYPE_SCALAR: Type = 0; + pub const PLPGSQL_TTYPE_REC: Type = 1; + pub const PLPGSQL_TTYPE_PSEUDO: Type = 2; +} +pub mod PLpgSQL_stmt_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_STMT_BLOCK: Type = 0; + pub const PLPGSQL_STMT_ASSIGN: Type = 1; + pub const PLPGSQL_STMT_IF: Type = 2; + pub const PLPGSQL_STMT_CASE: Type = 3; + pub const PLPGSQL_STMT_LOOP: Type = 4; + pub const PLPGSQL_STMT_WHILE: Type = 5; + pub const PLPGSQL_STMT_FORI: Type = 6; + pub const PLPGSQL_STMT_FORS: Type = 7; + pub const PLPGSQL_STMT_FORC: Type = 8; + pub const PLPGSQL_STMT_FOREACH_A: Type = 9; + pub const PLPGSQL_STMT_EXIT: Type = 10; + pub const PLPGSQL_STMT_RETURN: Type = 11; + pub const PLPGSQL_STMT_RETURN_NEXT: Type = 12; + pub const PLPGSQL_STMT_RETURN_QUERY: Type = 13; + pub const PLPGSQL_STMT_RAISE: Type = 14; + pub const PLPGSQL_STMT_ASSERT: Type = 15; + pub const PLPGSQL_STMT_EXECSQL: Type = 16; + pub const PLPGSQL_STMT_DYNEXECUTE: Type = 17; + pub const PLPGSQL_STMT_DYNFORS: Type = 18; + pub const PLPGSQL_STMT_GETDIAG: Type = 19; + pub const PLPGSQL_STMT_OPEN: Type = 20; + pub const PLPGSQL_STMT_FETCH: Type = 21; + pub const PLPGSQL_STMT_CLOSE: Type = 22; + pub const PLPGSQL_STMT_PERFORM: Type = 23; + pub const PLPGSQL_STMT_CALL: Type = 24; + pub const PLPGSQL_STMT_COMMIT: Type = 25; + pub const PLPGSQL_STMT_ROLLBACK: Type = 26; +} +pub mod _bindgen_ty_22 { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_RC_OK: Type = 0; + pub const PLPGSQL_RC_EXIT: Type = 1; + pub const PLPGSQL_RC_RETURN: Type = 2; + pub const PLPGSQL_RC_CONTINUE: Type = 3; +} +pub mod PLpgSQL_getdiag_kind { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_GETDIAG_ROW_COUNT: Type = 0; + pub const PLPGSQL_GETDIAG_ROUTINE_OID: Type = 1; + pub const PLPGSQL_GETDIAG_CONTEXT: Type = 2; + pub const PLPGSQL_GETDIAG_ERROR_CONTEXT: Type = 3; + pub const PLPGSQL_GETDIAG_ERROR_DETAIL: Type = 4; + pub const PLPGSQL_GETDIAG_ERROR_HINT: Type = 5; + pub const PLPGSQL_GETDIAG_RETURNED_SQLSTATE: Type = 6; + pub const PLPGSQL_GETDIAG_COLUMN_NAME: Type = 7; + pub const PLPGSQL_GETDIAG_CONSTRAINT_NAME: Type = 8; + pub const PLPGSQL_GETDIAG_DATATYPE_NAME: Type = 9; + pub const PLPGSQL_GETDIAG_MESSAGE_TEXT: Type = 10; + pub const PLPGSQL_GETDIAG_TABLE_NAME: Type = 11; + pub const PLPGSQL_GETDIAG_SCHEMA_NAME: Type = 12; +} +pub mod PLpgSQL_raise_option_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_RAISEOPTION_ERRCODE: Type = 0; + pub const PLPGSQL_RAISEOPTION_MESSAGE: Type = 1; + pub const PLPGSQL_RAISEOPTION_DETAIL: Type = 2; + pub const PLPGSQL_RAISEOPTION_HINT: Type = 3; + pub const PLPGSQL_RAISEOPTION_COLUMN: Type = 4; + pub const PLPGSQL_RAISEOPTION_CONSTRAINT: Type = 5; + pub const PLPGSQL_RAISEOPTION_DATATYPE: Type = 6; + pub const PLPGSQL_RAISEOPTION_TABLE: Type = 7; + pub const PLPGSQL_RAISEOPTION_SCHEMA: Type = 8; +} +pub mod PLpgSQL_resolve_option { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_RESOLVE_ERROR: Type = 0; + pub const PLPGSQL_RESOLVE_VARIABLE: Type = 1; + pub const PLPGSQL_RESOLVE_COLUMN: Type = 2; +} +#[doc = " Node and structure definitions"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_type { + pub typname: *mut ::core::ffi::c_char, + pub typoid: Oid, + pub ttype: PLpgSQL_type_type::Type, + pub typlen: int16, + pub typbyval: bool, + pub typtype: ::core::ffi::c_char, + pub collation: Oid, + pub typisarray: bool, + pub atttypmod: int32, + pub origtypname: *mut TypeName, + pub tcache: *mut TypeCacheEntry, + pub tupdesc_id: uint64, +} +impl Default for PLpgSQL_type { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_expr { + pub query: *mut ::core::ffi::c_char, + pub parseMode: RawParseMode::Type, + pub plan: SPIPlanPtr, + pub paramnos: *mut Bitmapset, + pub func: *mut PLpgSQL_function, + pub ns: *mut PLpgSQL_nsitem, + pub expr_simple_expr: *mut Expr, + pub expr_simple_type: Oid, + pub expr_simple_typmod: int32, + pub expr_simple_mutable: bool, + pub target_param: ::core::ffi::c_int, + pub expr_rw_param: *mut Param, + pub expr_simple_plansource: *mut CachedPlanSource, + pub expr_simple_plan: *mut CachedPlan, + pub expr_simple_plan_lxid: LocalTransactionId, + pub expr_simple_state: *mut ExprState, + pub expr_simple_in_use: bool, + pub expr_simple_lxid: LocalTransactionId, +} +impl Default for PLpgSQL_expr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_datum { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, +} +impl Default for PLpgSQL_datum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_variable { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_variable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_var { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, + pub datatype: *mut PLpgSQL_type, + pub cursor_explicit_expr: *mut PLpgSQL_expr, + pub cursor_explicit_argrow: ::core::ffi::c_int, + pub cursor_options: ::core::ffi::c_int, + pub value: Datum, + pub isnull: bool, + pub freeval: bool, + pub promise: PLpgSQL_promise_type::Type, +} +impl Default for PLpgSQL_var { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_row { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, + pub rowtupdesc: TupleDesc, + pub nfields: ::core::ffi::c_int, + pub fieldnames: *mut *mut ::core::ffi::c_char, + pub varnos: *mut ::core::ffi::c_int, +} +impl Default for PLpgSQL_row { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_rec { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, + pub datatype: *mut PLpgSQL_type, + pub rectypeid: Oid, + pub firstfield: ::core::ffi::c_int, + pub erh: *mut ExpandedRecordHeader, +} +impl Default for PLpgSQL_rec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_recfield { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub fieldname: *mut ::core::ffi::c_char, + pub recparentno: ::core::ffi::c_int, + pub nextfield: ::core::ffi::c_int, + pub rectupledescid: uint64, + pub finfo: ExpandedRecordFieldInfo, +} +impl Default for PLpgSQL_recfield { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct PLpgSQL_nsitem { + pub itemtype: PLpgSQL_nsitem_type::Type, + pub itemno: ::core::ffi::c_int, + pub prev: *mut PLpgSQL_nsitem, + pub name: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for PLpgSQL_nsitem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, +} +impl Default for PLpgSQL_stmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_condition { + pub sqlerrstate: ::core::ffi::c_int, + pub condname: *mut ::core::ffi::c_char, + pub next: *mut PLpgSQL_condition, +} +impl Default for PLpgSQL_condition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_exception_block { + pub sqlstate_varno: ::core::ffi::c_int, + pub sqlerrm_varno: ::core::ffi::c_int, + pub exc_list: *mut List, +} +impl Default for PLpgSQL_exception_block { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_exception { + pub lineno: ::core::ffi::c_int, + pub conditions: *mut PLpgSQL_condition, + pub action: *mut List, +} +impl Default for PLpgSQL_exception { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_block { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub body: *mut List, + pub n_initvars: ::core::ffi::c_int, + pub initvarnos: *mut ::core::ffi::c_int, + pub exceptions: *mut PLpgSQL_exception_block, +} +impl Default for PLpgSQL_stmt_block { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_assign { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub varno: ::core::ffi::c_int, + pub expr: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_assign { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_perform { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_perform { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_call { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, + pub is_call: bool, + pub target: *mut PLpgSQL_variable, +} +impl Default for PLpgSQL_stmt_call { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_commit { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub chain: bool, +} +impl Default for PLpgSQL_stmt_commit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_rollback { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub chain: bool, +} +impl Default for PLpgSQL_stmt_rollback { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_diag_item { + pub kind: PLpgSQL_getdiag_kind::Type, + pub target: ::core::ffi::c_int, +} +impl Default for PLpgSQL_diag_item { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_getdiag { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub is_stacked: bool, + pub diag_items: *mut List, +} +impl Default for PLpgSQL_stmt_getdiag { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_if { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub cond: *mut PLpgSQL_expr, + pub then_body: *mut List, + pub elsif_list: *mut List, + pub else_body: *mut List, +} +impl Default for PLpgSQL_stmt_if { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_if_elsif { + pub lineno: ::core::ffi::c_int, + pub cond: *mut PLpgSQL_expr, + pub stmts: *mut List, +} +impl Default for PLpgSQL_if_elsif { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_case { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub t_expr: *mut PLpgSQL_expr, + pub t_varno: ::core::ffi::c_int, + pub case_when_list: *mut List, + pub have_else: bool, + pub else_stmts: *mut List, +} +impl Default for PLpgSQL_stmt_case { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_case_when { + pub lineno: ::core::ffi::c_int, + pub expr: *mut PLpgSQL_expr, + pub stmts: *mut List, +} +impl Default for PLpgSQL_case_when { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_loop { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_loop { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_while { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub cond: *mut PLpgSQL_expr, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_while { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_fori { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_var, + pub lower: *mut PLpgSQL_expr, + pub upper: *mut PLpgSQL_expr, + pub step: *mut PLpgSQL_expr, + pub reverse: ::core::ffi::c_int, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_fori { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_forq { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_forq { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_fors { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, + pub query: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_fors { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_forc { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, + pub curvar: ::core::ffi::c_int, + pub argquery: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_forc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_dynfors { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, + pub query: *mut PLpgSQL_expr, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_dynfors { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_foreach_a { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub varno: ::core::ffi::c_int, + pub slice: ::core::ffi::c_int, + pub expr: *mut PLpgSQL_expr, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_foreach_a { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_open { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub curvar: ::core::ffi::c_int, + pub cursor_options: ::core::ffi::c_int, + pub argquery: *mut PLpgSQL_expr, + pub query: *mut PLpgSQL_expr, + pub dynquery: *mut PLpgSQL_expr, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_open { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_fetch { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub target: *mut PLpgSQL_variable, + pub curvar: ::core::ffi::c_int, + pub direction: FetchDirection::Type, + pub how_many: ::core::ffi::c_long, + pub expr: *mut PLpgSQL_expr, + pub is_move: bool, + pub returns_multiple_rows: bool, +} +impl Default for PLpgSQL_stmt_fetch { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_close { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub curvar: ::core::ffi::c_int, +} +impl Default for PLpgSQL_stmt_close { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_exit { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub is_exit: bool, + pub label: *mut ::core::ffi::c_char, + pub cond: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_exit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_return { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, + pub retvarno: ::core::ffi::c_int, +} +impl Default for PLpgSQL_stmt_return { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_return_next { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, + pub retvarno: ::core::ffi::c_int, +} +impl Default for PLpgSQL_stmt_return_next { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_return_query { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub query: *mut PLpgSQL_expr, + pub dynquery: *mut PLpgSQL_expr, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_return_query { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_raise { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub elog_level: ::core::ffi::c_int, + pub condname: *mut ::core::ffi::c_char, + pub message: *mut ::core::ffi::c_char, + pub params: *mut List, + pub options: *mut List, +} +impl Default for PLpgSQL_stmt_raise { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_raise_option { + pub opt_type: PLpgSQL_raise_option_type::Type, + pub expr: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_raise_option { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_assert { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub cond: *mut PLpgSQL_expr, + pub message: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_assert { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_execsql { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub sqlstmt: *mut PLpgSQL_expr, + pub mod_stmt: bool, + pub mod_stmt_set: bool, + pub into: bool, + pub strict: bool, + pub target: *mut PLpgSQL_variable, +} +impl Default for PLpgSQL_stmt_execsql { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_dynexecute { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub query: *mut PLpgSQL_expr, + pub into: bool, + pub strict: bool, + pub target: *mut PLpgSQL_variable, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_dynexecute { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_func_hashkey { + pub funcOid: Oid, + pub isTrigger: bool, + pub isEventTrigger: bool, + pub trigOid: Oid, + pub inputCollation: Oid, + pub argtypes: [Oid; 100usize], +} +impl Default for PLpgSQL_func_hashkey { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PLpgSQL_trigtype { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_DML_TRIGGER: Type = 0; + pub const PLPGSQL_EVENT_TRIGGER: Type = 1; + pub const PLPGSQL_NOT_TRIGGER: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_function { + pub fn_signature: *mut ::core::ffi::c_char, + pub fn_oid: Oid, + pub fn_xmin: TransactionId, + pub fn_tid: ItemPointerData, + pub fn_is_trigger: PLpgSQL_trigtype::Type, + pub fn_input_collation: Oid, + pub fn_hashkey: *mut PLpgSQL_func_hashkey, + pub fn_cxt: MemoryContext, + pub fn_rettype: Oid, + pub fn_rettyplen: ::core::ffi::c_int, + pub fn_retbyval: bool, + pub fn_retistuple: bool, + pub fn_retisdomain: bool, + pub fn_retset: bool, + pub fn_readonly: bool, + pub fn_prokind: ::core::ffi::c_char, + pub fn_nargs: ::core::ffi::c_int, + pub fn_argvarnos: [::core::ffi::c_int; 100usize], + pub out_param_varno: ::core::ffi::c_int, + pub found_varno: ::core::ffi::c_int, + pub new_varno: ::core::ffi::c_int, + pub old_varno: ::core::ffi::c_int, + pub resolve_option: PLpgSQL_resolve_option::Type, + pub print_strict_params: bool, + pub extra_warnings: ::core::ffi::c_int, + pub extra_errors: ::core::ffi::c_int, + pub ndatums: ::core::ffi::c_int, + pub datums: *mut *mut PLpgSQL_datum, + pub copiable_size: Size, + pub action: *mut PLpgSQL_stmt_block, + pub nstatements: ::core::ffi::c_uint, + pub requires_procedure_resowner: bool, + pub cur_estate: *mut PLpgSQL_execstate, + pub use_count: ::core::ffi::c_ulong, +} +impl Default for PLpgSQL_function { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_execstate { + pub func: *mut PLpgSQL_function, + pub trigdata: *mut TriggerData, + pub evtrigdata: *mut EventTriggerData, + pub retval: Datum, + pub retisnull: bool, + pub rettype: Oid, + pub fn_rettype: Oid, + pub retistuple: bool, + pub retisset: bool, + pub readonly_func: bool, + pub atomic: bool, + pub exitlabel: *mut ::core::ffi::c_char, + pub cur_error: *mut ErrorData, + pub tuple_store: *mut Tuplestorestate, + pub tuple_store_desc: TupleDesc, + pub tuple_store_cxt: MemoryContext, + pub tuple_store_owner: ResourceOwner, + pub rsi: *mut ReturnSetInfo, + pub found_varno: ::core::ffi::c_int, + pub ndatums: ::core::ffi::c_int, + pub datums: *mut *mut PLpgSQL_datum, + pub datum_context: MemoryContext, + pub paramLI: ParamListInfo, + pub simple_eval_estate: *mut EState, + pub simple_eval_resowner: ResourceOwner, + pub procedure_resowner: ResourceOwner, + pub cast_hash: *mut HTAB, + pub stmt_mcontext: MemoryContext, + pub stmt_mcontext_parent: MemoryContext, + pub eval_tuptable: *mut SPITupleTable, + pub eval_processed: uint64, + pub eval_econtext: *mut ExprContext, + pub err_stmt: *mut PLpgSQL_stmt, + pub err_var: *mut PLpgSQL_variable, + pub err_text: *const ::core::ffi::c_char, + pub plugin_info: *mut ::core::ffi::c_void, +} +impl Default for PLpgSQL_execstate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PLpgSQL_plugin { + pub func_setup: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, func: *mut PLpgSQL_function), + >, + pub func_beg: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, func: *mut PLpgSQL_function), + >, + pub func_end: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, func: *mut PLpgSQL_function), + >, + pub stmt_beg: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, stmt: *mut PLpgSQL_stmt), + >, + pub stmt_end: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, stmt: *mut PLpgSQL_stmt), + >, + pub error_callback: ::core::option::Option, + pub assign_expr: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + target: *mut PLpgSQL_datum, + expr: *mut PLpgSQL_expr, + ), + >, + pub assign_value: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + target: *mut PLpgSQL_datum, + value: Datum, + isNull: bool, + valtype: Oid, + valtypmod: int32, + ), + >, + pub eval_datum: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + datum: *mut PLpgSQL_datum, + typeId: *mut Oid, + typetypmod: *mut int32, + value: *mut Datum, + isnull: *mut bool, + ), + >, + pub cast_value: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + value: Datum, + isnull: *mut bool, + valtype: Oid, + valtypmod: int32, + reqtype: Oid, + reqtypmod: int32, + ) -> Datum, + >, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLword { + pub ident: *mut ::core::ffi::c_char, + pub quoted: bool, +} +impl Default for PLword { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLcword { + pub idents: *mut List, +} +impl Default for PLcword { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLwdatum { + pub datum: *mut PLpgSQL_datum, + pub ident: *mut ::core::ffi::c_char, + pub quoted: bool, + pub idents: *mut List, +} +impl Default for PLwdatum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod IdentifierLookup { + #[doc = " Global variable declarations"] + pub type Type = ::core::ffi::c_uint; + pub const IDENTIFIER_LOOKUP_NORMAL: Type = 0; + pub const IDENTIFIER_LOOKUP_DECLARE: Type = 1; + pub const IDENTIFIER_LOOKUP_EXPR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClientSocket { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct PipeProtoHeader { + pub nuls: [::core::ffi::c_char; 2usize], + pub len: uint16, + pub pid: int32, + pub flags: bits8, + pub data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +pub union PipeProtoChunk { + pub proto: ::core::mem::ManuallyDrop, + pub filler: ::core::mem::ManuallyDrop<[::core::ffi::c_char; 4096usize]>, +} +impl Default for PipeProtoChunk { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DebugLogicalRepStreamingMode { + pub type Type = ::core::ffi::c_uint; + pub const DEBUG_LOGICAL_REP_STREAMING_BUFFERED: Type = 0; + pub const DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE: Type = 1; +} +pub mod ReorderBufferChangeType { + pub type Type = ::core::ffi::c_uint; + pub const REORDER_BUFFER_CHANGE_INSERT: Type = 0; + pub const REORDER_BUFFER_CHANGE_UPDATE: Type = 1; + pub const REORDER_BUFFER_CHANGE_DELETE: Type = 2; + pub const REORDER_BUFFER_CHANGE_MESSAGE: Type = 3; + pub const REORDER_BUFFER_CHANGE_INVALIDATION: Type = 4; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT: Type = 5; + pub const REORDER_BUFFER_CHANGE_INTERNAL_COMMAND_ID: Type = 6; + pub const REORDER_BUFFER_CHANGE_INTERNAL_TUPLECID: Type = 7; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT: Type = 8; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM: Type = 9; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT: Type = 10; + pub const REORDER_BUFFER_CHANGE_TRUNCATE: Type = 11; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ReorderBufferChange { + pub lsn: XLogRecPtr, + pub action: ReorderBufferChangeType::Type, + pub txn: *mut ReorderBufferTXN, + pub origin_id: RepOriginId, + pub data: ReorderBufferChange__bindgen_ty_1, + pub node: dlist_node, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ReorderBufferChange__bindgen_ty_1 { + pub tp: ReorderBufferChange__bindgen_ty_1__bindgen_ty_1, + pub truncate: ReorderBufferChange__bindgen_ty_1__bindgen_ty_2, + pub msg: ReorderBufferChange__bindgen_ty_1__bindgen_ty_3, + pub snapshot: Snapshot, + pub command_id: CommandId, + pub tuplecid: ReorderBufferChange__bindgen_ty_1__bindgen_ty_4, + pub inval: ReorderBufferChange__bindgen_ty_1__bindgen_ty_5, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_1 { + pub rlocator: RelFileLocator, + pub clear_toast_afterwards: bool, + pub oldtuple: HeapTuple, + pub newtuple: HeapTuple, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_2 { + pub nrelids: Size, + pub cascade: bool, + pub restart_seqs: bool, + pub relids: *mut Oid, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_3 { + pub prefix: *mut ::core::ffi::c_char, + pub message_size: Size, + pub message: *mut ::core::ffi::c_char, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_4 { + pub locator: RelFileLocator, + pub tid: ItemPointerData, + pub cmin: CommandId, + pub cmax: CommandId, + pub combocid: CommandId, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_4 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_5 { + pub ninvalidations: uint32, + pub invalidations: *mut SharedInvalidationMessage, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ReorderBufferChange__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ReorderBufferChange { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ReorderBufferTXN { + pub txn_flags: bits32, + pub xid: TransactionId, + pub toplevel_xid: TransactionId, + pub gid: *mut ::core::ffi::c_char, + pub first_lsn: XLogRecPtr, + pub final_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub toptxn: *mut ReorderBufferTXN, + pub restart_decoding_lsn: XLogRecPtr, + pub origin_id: RepOriginId, + pub origin_lsn: XLogRecPtr, + pub xact_time: ReorderBufferTXN__bindgen_ty_1, + pub base_snapshot: Snapshot, + pub base_snapshot_lsn: XLogRecPtr, + pub base_snapshot_node: dlist_node, + pub snapshot_now: Snapshot, + pub command_id: CommandId, + pub nentries: uint64, + pub nentries_mem: uint64, + pub changes: dlist_head, + pub tuplecids: dlist_head, + pub ntuplecids: uint64, + pub tuplecid_hash: *mut HTAB, + pub toast_hash: *mut HTAB, + pub subtxns: dlist_head, + pub nsubtxns: uint32, + pub ninvalidations: uint32, + pub invalidations: *mut SharedInvalidationMessage, + pub node: dlist_node, + pub catchange_node: dlist_node, + pub txn_node: pairingheap_node, + pub size: Size, + pub total_size: Size, + pub concurrent_abort: bool, + pub output_plugin_private: *mut ::core::ffi::c_void, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ReorderBufferTXN__bindgen_ty_1 { + pub commit_time: TimestampTz, + pub prepare_time: TimestampTz, + pub abort_time: TimestampTz, +} +impl Default for ReorderBufferTXN__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ReorderBufferTXN { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ReorderBufferApplyChangeCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferApplyTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferBeginCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN), +>; +pub type ReorderBufferCommitCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferMessageCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + sz: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type ReorderBufferBeginPrepareCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN), +>; +pub type ReorderBufferPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferCommitPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferRollbackPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + prepare_end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + ), +>; +pub type ReorderBufferStreamStartCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, first_lsn: XLogRecPtr), +>; +pub type ReorderBufferStreamStopCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, last_lsn: XLogRecPtr), +>; +pub type ReorderBufferStreamAbortCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, abort_lsn: XLogRecPtr), +>; +pub type ReorderBufferStreamPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferStreamCommitCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferStreamChangeCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferStreamMessageCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + sz: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type ReorderBufferStreamTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferUpdateProgressTxnCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, lsn: XLogRecPtr), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBuffer { + pub by_txn: *mut HTAB, + pub toplevel_by_lsn: dlist_head, + pub txns_by_base_snapshot_lsn: dlist_head, + pub catchange_txns: dclist_head, + pub by_txn_last_xid: TransactionId, + pub by_txn_last_txn: *mut ReorderBufferTXN, + pub begin: ReorderBufferBeginCB, + pub apply_change: ReorderBufferApplyChangeCB, + pub apply_truncate: ReorderBufferApplyTruncateCB, + pub commit: ReorderBufferCommitCB, + pub message: ReorderBufferMessageCB, + pub begin_prepare: ReorderBufferBeginCB, + pub prepare: ReorderBufferPrepareCB, + pub commit_prepared: ReorderBufferCommitPreparedCB, + pub rollback_prepared: ReorderBufferRollbackPreparedCB, + pub stream_start: ReorderBufferStreamStartCB, + pub stream_stop: ReorderBufferStreamStopCB, + pub stream_abort: ReorderBufferStreamAbortCB, + pub stream_prepare: ReorderBufferStreamPrepareCB, + pub stream_commit: ReorderBufferStreamCommitCB, + pub stream_change: ReorderBufferStreamChangeCB, + pub stream_message: ReorderBufferStreamMessageCB, + pub stream_truncate: ReorderBufferStreamTruncateCB, + pub update_progress_txn: ReorderBufferUpdateProgressTxnCB, + pub private_data: *mut ::core::ffi::c_void, + pub output_rewrites: bool, + pub context: MemoryContext, + pub change_context: MemoryContext, + pub txn_context: MemoryContext, + pub tup_context: MemoryContext, + pub current_restart_decoding_lsn: XLogRecPtr, + pub outbuf: *mut ::core::ffi::c_char, + pub outbufsize: Size, + pub size: Size, + pub txn_heap: *mut pairingheap, + pub spillTxns: int64, + pub spillCount: int64, + pub spillBytes: int64, + pub streamTxns: int64, + pub streamCount: int64, + pub streamBytes: int64, + pub totalTxns: int64, + pub totalBytes: int64, +} +impl Default for ReorderBuffer { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod OutputPluginOutputType { + pub type Type = ::core::ffi::c_uint; + pub const OUTPUT_PLUGIN_BINARY_OUTPUT: Type = 0; + pub const OUTPUT_PLUGIN_TEXTUAL_OUTPUT: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OutputPluginOptions { + pub output_type: OutputPluginOutputType::Type, + pub receive_rewrites: bool, +} +impl Default for OutputPluginOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LogicalOutputPluginInit = + ::core::option::Option; +pub type LogicalDecodeStartupCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + options: *mut OutputPluginOptions, + is_init: bool, + ), +>; +pub type LogicalDecodeBeginCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodeChangeCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type LogicalDecodeTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type LogicalDecodeCommitCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeMessageCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + message_size: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type LogicalDecodeFilterByOriginCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, origin_id: RepOriginId) -> bool, +>; +pub type LogicalDecodeShutdownCB = + ::core::option::Option; +pub type LogicalDecodeFilterPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + xid: TransactionId, + gid: *const ::core::ffi::c_char, + ) -> bool, +>; +pub type LogicalDecodeBeginPrepareCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodePrepareCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeCommitPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeRollbackPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + prepare_end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + ), +>; +pub type LogicalDecodeStreamStartCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodeStreamStopCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodeStreamAbortCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + abort_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeStreamPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeStreamCommitCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeStreamChangeCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type LogicalDecodeStreamMessageCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + message_size: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type LogicalDecodeStreamTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct OutputPluginCallbacks { + pub startup_cb: LogicalDecodeStartupCB, + pub begin_cb: LogicalDecodeBeginCB, + pub change_cb: LogicalDecodeChangeCB, + pub truncate_cb: LogicalDecodeTruncateCB, + pub commit_cb: LogicalDecodeCommitCB, + pub message_cb: LogicalDecodeMessageCB, + pub filter_by_origin_cb: LogicalDecodeFilterByOriginCB, + pub shutdown_cb: LogicalDecodeShutdownCB, + pub filter_prepare_cb: LogicalDecodeFilterPrepareCB, + pub begin_prepare_cb: LogicalDecodeBeginPrepareCB, + pub prepare_cb: LogicalDecodePrepareCB, + pub commit_prepared_cb: LogicalDecodeCommitPreparedCB, + pub rollback_prepared_cb: LogicalDecodeRollbackPreparedCB, + pub stream_start_cb: LogicalDecodeStreamStartCB, + pub stream_stop_cb: LogicalDecodeStreamStopCB, + pub stream_abort_cb: LogicalDecodeStreamAbortCB, + pub stream_prepare_cb: LogicalDecodeStreamPrepareCB, + pub stream_commit_cb: LogicalDecodeStreamCommitCB, + pub stream_change_cb: LogicalDecodeStreamChangeCB, + pub stream_message_cb: LogicalDecodeStreamMessageCB, + pub stream_truncate_cb: LogicalDecodeStreamTruncateCB, +} +pub mod LogicalRepMsgType { + pub type Type = ::core::ffi::c_uint; + pub const LOGICAL_REP_MSG_BEGIN: Type = 66; + pub const LOGICAL_REP_MSG_COMMIT: Type = 67; + pub const LOGICAL_REP_MSG_ORIGIN: Type = 79; + pub const LOGICAL_REP_MSG_INSERT: Type = 73; + pub const LOGICAL_REP_MSG_UPDATE: Type = 85; + pub const LOGICAL_REP_MSG_DELETE: Type = 68; + pub const LOGICAL_REP_MSG_TRUNCATE: Type = 84; + pub const LOGICAL_REP_MSG_RELATION: Type = 82; + pub const LOGICAL_REP_MSG_TYPE: Type = 89; + pub const LOGICAL_REP_MSG_MESSAGE: Type = 77; + pub const LOGICAL_REP_MSG_BEGIN_PREPARE: Type = 98; + pub const LOGICAL_REP_MSG_PREPARE: Type = 80; + pub const LOGICAL_REP_MSG_COMMIT_PREPARED: Type = 75; + pub const LOGICAL_REP_MSG_ROLLBACK_PREPARED: Type = 114; + pub const LOGICAL_REP_MSG_STREAM_START: Type = 83; + pub const LOGICAL_REP_MSG_STREAM_STOP: Type = 69; + pub const LOGICAL_REP_MSG_STREAM_COMMIT: Type = 99; + pub const LOGICAL_REP_MSG_STREAM_ABORT: Type = 65; + pub const LOGICAL_REP_MSG_STREAM_PREPARE: Type = 112; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepTupleData { + pub colvalues: *mut StringInfoData, + pub colstatus: *mut ::core::ffi::c_char, + pub ncols: ::core::ffi::c_int, +} +impl Default for LogicalRepTupleData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LogicalRepRelId = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepRelation { + pub remoteid: LogicalRepRelId, + pub nspname: *mut ::core::ffi::c_char, + pub relname: *mut ::core::ffi::c_char, + pub natts: ::core::ffi::c_int, + pub attnames: *mut *mut ::core::ffi::c_char, + pub atttyps: *mut Oid, + pub replident: ::core::ffi::c_char, + pub relkind: ::core::ffi::c_char, + pub attkeys: *mut Bitmapset, +} +impl Default for LogicalRepRelation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepTyp { + pub remoteid: Oid, + pub nspname: *mut ::core::ffi::c_char, + pub typname: *mut ::core::ffi::c_char, +} +impl Default for LogicalRepTyp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LogicalRepBeginData { + pub final_lsn: XLogRecPtr, + pub committime: TimestampTz, + pub xid: TransactionId, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LogicalRepCommitData { + pub commit_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub committime: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepPreparedTxnData { + pub prepare_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub prepare_time: TimestampTz, + pub xid: TransactionId, + pub gid: [::core::ffi::c_char; 200usize], +} +impl Default for LogicalRepPreparedTxnData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepCommitPreparedTxnData { + pub commit_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub commit_time: TimestampTz, + pub xid: TransactionId, + pub gid: [::core::ffi::c_char; 200usize], +} +impl Default for LogicalRepCommitPreparedTxnData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepRollbackPreparedTxnData { + pub prepare_end_lsn: XLogRecPtr, + pub rollback_end_lsn: XLogRecPtr, + pub prepare_time: TimestampTz, + pub rollback_time: TimestampTz, + pub xid: TransactionId, + pub gid: [::core::ffi::c_char; 200usize], +} +impl Default for LogicalRepRollbackPreparedTxnData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LogicalRepStreamAbortData { + pub xid: TransactionId, + pub subxid: TransactionId, + pub abort_lsn: XLogRecPtr, + pub abort_time: TimestampTz, +} +pub mod CRSSnapshotAction { + pub type Type = ::core::ffi::c_uint; + pub const CRS_EXPORT_SNAPSHOT: Type = 0; + pub const CRS_NOEXPORT_SNAPSHOT: Type = 1; + pub const CRS_USE_SNAPSHOT: Type = 2; +} +pub mod WalRcvState { + pub type Type = ::core::ffi::c_uint; + pub const WALRCV_STOPPED: Type = 0; + pub const WALRCV_STARTING: Type = 1; + pub const WALRCV_STREAMING: Type = 2; + pub const WALRCV_WAITING: Type = 3; + pub const WALRCV_RESTARTING: Type = 4; + pub const WALRCV_STOPPING: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalRcvData { + pub pid: pid_t, + pub walRcvState: WalRcvState::Type, + pub walRcvStoppedCV: ConditionVariable, + pub startTime: pg_time_t, + pub receiveStart: XLogRecPtr, + pub receiveStartTLI: TimeLineID, + pub flushedUpto: XLogRecPtr, + pub receivedTLI: TimeLineID, + pub latestChunkStart: XLogRecPtr, + pub lastMsgSendTime: TimestampTz, + pub lastMsgReceiptTime: TimestampTz, + pub latestWalEnd: XLogRecPtr, + pub latestWalEndTime: TimestampTz, + pub conninfo: [::core::ffi::c_char; 1024usize], + pub sender_host: [::core::ffi::c_char; 1025usize], + pub sender_port: ::core::ffi::c_int, + pub slotname: [::core::ffi::c_char; 64usize], + pub is_temp_slot: bool, + pub ready_to_display: bool, + pub latch: *mut Latch, + pub mutex: slock_t, + pub writtenUpto: pg_atomic_uint64, + pub force_reply: sig_atomic_t, +} +impl Default for WalRcvData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct WalRcvStreamOptions { + pub logical: bool, + pub slotname: *mut ::core::ffi::c_char, + pub startpoint: XLogRecPtr, + pub proto: WalRcvStreamOptions__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union WalRcvStreamOptions__bindgen_ty_1 { + pub physical: WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_1, + pub logical: WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_1 { + pub startpointTLI: TimeLineID, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_2 { + pub proto_version: uint32, + pub publication_names: *mut List, + pub binary: bool, + pub streaming_str: *mut ::core::ffi::c_char, + pub twophase: bool, + pub origin: *mut ::core::ffi::c_char, +} +impl Default for WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for WalRcvStreamOptions__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for WalRcvStreamOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalReceiverConn { + _unused: [u8; 0], +} +pub mod WalRcvExecStatus { + pub type Type = ::core::ffi::c_uint; + pub const WALRCV_ERROR: Type = 0; + pub const WALRCV_OK_COMMAND: Type = 1; + pub const WALRCV_OK_TUPLES: Type = 2; + pub const WALRCV_OK_COPY_IN: Type = 3; + pub const WALRCV_OK_COPY_OUT: Type = 4; + pub const WALRCV_OK_COPY_BOTH: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalRcvExecResult { + pub status: WalRcvExecStatus::Type, + pub sqlstate: ::core::ffi::c_int, + pub err: *mut ::core::ffi::c_char, + pub tuplestore: *mut Tuplestorestate, + pub tupledesc: TupleDesc, +} +impl Default for WalRcvExecResult { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type walrcv_connect_fn = ::core::option::Option< + unsafe extern "C" fn( + conninfo: *const ::core::ffi::c_char, + replication: bool, + logical: bool, + must_use_password: bool, + appname: *const ::core::ffi::c_char, + err: *mut *mut ::core::ffi::c_char, + ) -> *mut WalReceiverConn, +>; +pub type walrcv_check_conninfo_fn = ::core::option::Option< + unsafe extern "C" fn(conninfo: *const ::core::ffi::c_char, must_use_password: bool), +>; +pub type walrcv_get_conninfo_fn = ::core::option::Option< + unsafe extern "C" fn(conn: *mut WalReceiverConn) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_get_senderinfo_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + sender_host: *mut *mut ::core::ffi::c_char, + sender_port: *mut ::core::ffi::c_int, + ), +>; +pub type walrcv_identify_system_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + primary_tli: *mut TimeLineID, + ) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_get_dbname_from_conninfo_fn = ::core::option::Option< + unsafe extern "C" fn(conninfo: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_server_version_fn = + ::core::option::Option ::core::ffi::c_int>; +pub type walrcv_readtimelinehistoryfile_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + tli: TimeLineID, + filename: *mut *mut ::core::ffi::c_char, + content: *mut *mut ::core::ffi::c_char, + size: *mut ::core::ffi::c_int, + ), +>; +pub type walrcv_startstreaming_fn = ::core::option::Option< + unsafe extern "C" fn(conn: *mut WalReceiverConn, options: *const WalRcvStreamOptions) -> bool, +>; +pub type walrcv_endstreaming_fn = ::core::option::Option< + unsafe extern "C" fn(conn: *mut WalReceiverConn, next_tli: *mut TimeLineID), +>; +pub type walrcv_receive_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + buffer: *mut *mut ::core::ffi::c_char, + wait_fd: *mut pgsocket, + ) -> ::core::ffi::c_int, +>; +pub type walrcv_send_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + buffer: *const ::core::ffi::c_char, + nbytes: ::core::ffi::c_int, + ), +>; +pub type walrcv_create_slot_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + slotname: *const ::core::ffi::c_char, + temporary: bool, + two_phase: bool, + failover: bool, + snapshot_action: CRSSnapshotAction::Type, + lsn: *mut XLogRecPtr, + ) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_alter_slot_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + slotname: *const ::core::ffi::c_char, + failover: bool, + ), +>; +pub type walrcv_get_backend_pid_fn = + ::core::option::Option pid_t>; +pub type walrcv_exec_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + query: *const ::core::ffi::c_char, + nRetTypes: ::core::ffi::c_int, + retTypes: *const Oid, + ) -> *mut WalRcvExecResult, +>; +pub type walrcv_disconnect_fn = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WalReceiverFunctionsType { + pub walrcv_connect: walrcv_connect_fn, + pub walrcv_check_conninfo: walrcv_check_conninfo_fn, + pub walrcv_get_conninfo: walrcv_get_conninfo_fn, + pub walrcv_get_senderinfo: walrcv_get_senderinfo_fn, + pub walrcv_identify_system: walrcv_identify_system_fn, + pub walrcv_get_dbname_from_conninfo: walrcv_get_dbname_from_conninfo_fn, + pub walrcv_server_version: walrcv_server_version_fn, + pub walrcv_readtimelinehistoryfile: walrcv_readtimelinehistoryfile_fn, + pub walrcv_startstreaming: walrcv_startstreaming_fn, + pub walrcv_endstreaming: walrcv_endstreaming_fn, + pub walrcv_receive: walrcv_receive_fn, + pub walrcv_send: walrcv_send_fn, + pub walrcv_create_slot: walrcv_create_slot_fn, + pub walrcv_alter_slot: walrcv_alter_slot_fn, + pub walrcv_get_backend_pid: walrcv_get_backend_pid_fn, + pub walrcv_exec: walrcv_exec_fn, + pub walrcv_disconnect: walrcv_disconnect_fn, +} +pub mod ReplicationSlotPersistency { + pub type Type = ::core::ffi::c_uint; + pub const RS_PERSISTENT: Type = 0; + pub const RS_EPHEMERAL: Type = 1; + pub const RS_TEMPORARY: Type = 2; +} +pub mod ReplicationSlotInvalidationCause { + pub type Type = ::core::ffi::c_uint; + pub const RS_INVAL_NONE: Type = 0; + pub const RS_INVAL_WAL_REMOVED: Type = 1; + pub const RS_INVAL_HORIZON: Type = 2; + pub const RS_INVAL_WAL_LEVEL: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicationSlotPersistentData { + pub name: NameData, + pub database: Oid, + pub persistency: ReplicationSlotPersistency::Type, + pub xmin: TransactionId, + pub catalog_xmin: TransactionId, + pub restart_lsn: XLogRecPtr, + pub invalidated: ReplicationSlotInvalidationCause::Type, + pub confirmed_flush: XLogRecPtr, + pub two_phase_at: XLogRecPtr, + pub two_phase: bool, + pub plugin: NameData, + pub synced: ::core::ffi::c_char, + pub failover: bool, +} +impl Default for ReplicationSlotPersistentData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicationSlot { + pub mutex: slock_t, + pub in_use: bool, + pub active_pid: pid_t, + pub just_dirtied: bool, + pub dirty: bool, + pub effective_xmin: TransactionId, + pub effective_catalog_xmin: TransactionId, + pub data: ReplicationSlotPersistentData, + pub io_in_progress_lock: LWLock, + pub active_cv: ConditionVariable, + pub candidate_catalog_xmin: TransactionId, + pub candidate_xmin_lsn: XLogRecPtr, + pub candidate_restart_valid: XLogRecPtr, + pub candidate_restart_lsn: XLogRecPtr, + pub last_saved_confirmed_flush: XLogRecPtr, + pub inactive_since: TimestampTz, +} +impl Default for ReplicationSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicationSlotCtlData { + pub replication_slots: [ReplicationSlot; 1usize], +} +impl Default for ReplicationSlotCtlData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LogicalOutputPluginWriterWrite = ::core::option::Option< + unsafe extern "C" fn( + lr: *mut LogicalDecodingContext, + Ptr: XLogRecPtr, + xid: TransactionId, + last_write: bool, + ), +>; +pub type LogicalOutputPluginWriterPrepareWrite = LogicalOutputPluginWriterWrite; +pub type LogicalOutputPluginWriterUpdateProgress = ::core::option::Option< + unsafe extern "C" fn( + lr: *mut LogicalDecodingContext, + Ptr: XLogRecPtr, + xid: TransactionId, + skipped_xact: bool, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalDecodingContext { + pub context: MemoryContext, + pub slot: *mut ReplicationSlot, + pub reader: *mut XLogReaderState, + pub reorder: *mut ReorderBuffer, + pub snapshot_builder: *mut SnapBuild, + pub fast_forward: bool, + pub callbacks: OutputPluginCallbacks, + pub options: OutputPluginOptions, + pub output_plugin_options: *mut List, + pub prepare_write: LogicalOutputPluginWriterPrepareWrite, + pub write: LogicalOutputPluginWriterWrite, + pub update_progress: LogicalOutputPluginWriterUpdateProgress, + pub out: StringInfo, + pub output_plugin_private: *mut ::core::ffi::c_void, + pub output_writer_private: *mut ::core::ffi::c_void, + pub streaming: bool, + pub twophase: bool, + pub twophase_opt_given: bool, + pub accept_writes: bool, + pub prepared_write: bool, + pub write_location: XLogRecPtr, + pub write_xid: TransactionId, + pub end_xact: bool, + pub processing_required: bool, +} +impl Default for LogicalDecodingContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowSecurityPolicy { + pub policy_name: *mut ::core::ffi::c_char, + pub polcmd: ::core::ffi::c_char, + pub roles: *mut ArrayType, + pub permissive: bool, + pub qual: *mut Expr, + pub with_check_qual: *mut Expr, + pub hassublinks: bool, +} +impl Default for RowSecurityPolicy { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowSecurityDesc { + pub rscxt: MemoryContext, + pub policies: *mut List, +} +impl Default for RowSecurityDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type row_security_policy_hook_type = ::core::option::Option< + unsafe extern "C" fn(cmdtype: CmdType::Type, relation: Relation) -> *mut List, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufFile { + _unused: [u8; 0], +} +pub type pg_on_exit_callback = + ::core::option::Option; +pub type shmem_startup_hook_type = ::core::option::Option; +pub mod XLTW_Oper { + pub type Type = ::core::ffi::c_uint; + pub const XLTW_None: Type = 0; + pub const XLTW_Update: Type = 1; + pub const XLTW_Delete: Type = 2; + pub const XLTW_Lock: Type = 3; + pub const XLTW_LockUpdated: Type = 4; + pub const XLTW_InsertIndex: Type = 5; + pub const XLTW_InsertIndexUnique: Type = 6; + pub const XLTW_FetchUpdated: Type = 7; + pub const XLTW_RecheckExclusionConstr: Type = 8; +} +pub mod ProcSignalReason { + pub type Type = ::core::ffi::c_uint; + pub const PROCSIG_CATCHUP_INTERRUPT: Type = 0; + pub const PROCSIG_NOTIFY_INTERRUPT: Type = 1; + pub const PROCSIG_PARALLEL_MESSAGE: Type = 2; + pub const PROCSIG_WALSND_INIT_STOPPING: Type = 3; + pub const PROCSIG_BARRIER: Type = 4; + pub const PROCSIG_LOG_MEMORY_CONTEXT: Type = 5; + pub const PROCSIG_PARALLEL_APPLY_MESSAGE: Type = 6; + pub const PROCSIG_RECOVERY_CONFLICT_FIRST: Type = 7; + pub const PROCSIG_RECOVERY_CONFLICT_DATABASE: Type = 7; + pub const PROCSIG_RECOVERY_CONFLICT_TABLESPACE: Type = 8; + pub const PROCSIG_RECOVERY_CONFLICT_LOCK: Type = 9; + pub const PROCSIG_RECOVERY_CONFLICT_SNAPSHOT: Type = 10; + pub const PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT: Type = 11; + pub const PROCSIG_RECOVERY_CONFLICT_BUFFERPIN: Type = 12; + pub const PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK: Type = 13; + pub const PROCSIG_RECOVERY_CONFLICT_LAST: Type = 13; + pub const NUM_PROCSIGNALS: Type = 14; +} +pub mod ProcSignalBarrierType { + pub type Type = ::core::ffi::c_uint; + pub const PROCSIGNAL_BARRIER_SMGRRELEASE: Type = 0; +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_standby_locks { + pub nlocks: ::core::ffi::c_int, + pub locks: __IncompleteArrayField, +} +impl Default for xl_standby_locks { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct xl_running_xacts { + pub xcnt: ::core::ffi::c_int, + pub subxcnt: ::core::ffi::c_int, + pub subxid_overflow: bool, + pub nextXid: TransactionId, + pub oldestRunningXid: TransactionId, + pub latestCompletedXid: TransactionId, + pub xids: __IncompleteArrayField, +} +#[repr(C)] +pub struct xl_invalidations { + pub dbId: Oid, + pub tsId: Oid, + pub relcacheInitFileInval: bool, + pub nmsgs: ::core::ffi::c_int, + pub msgs: __IncompleteArrayField, +} +impl Default for xl_invalidations { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod subxids_array_status { + pub type Type = ::core::ffi::c_uint; + pub const SUBXIDS_IN_ARRAY: Type = 0; + pub const SUBXIDS_MISSING: Type = 1; + pub const SUBXIDS_IN_SUBTRANS: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RunningTransactionsData { + pub xcnt: ::core::ffi::c_int, + pub subxcnt: ::core::ffi::c_int, + pub subxid_status: subxids_array_status::Type, + pub nextXid: TransactionId, + pub oldestRunningXid: TransactionId, + pub oldestDatabaseRunningXid: TransactionId, + pub latestCompletedXid: TransactionId, + pub xids: *mut TransactionId, +} +impl Default for RunningTransactionsData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type RunningTransactions = *mut RunningTransactionsData; +pub mod LogStmtLevel { + pub type Type = ::core::ffi::c_uint; + pub const LOGSTMT_NONE: Type = 0; + pub const LOGSTMT_DDL: Type = 1; + pub const LOGSTMT_MOD: Type = 2; + pub const LOGSTMT_ALL: Type = 3; +} +pub mod ProcessUtilityContext { + pub type Type = ::core::ffi::c_uint; + pub const PROCESS_UTILITY_TOPLEVEL: Type = 0; + pub const PROCESS_UTILITY_QUERY: Type = 1; + pub const PROCESS_UTILITY_QUERY_NONATOMIC: Type = 2; + pub const PROCESS_UTILITY_SUBCOMMAND: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableUtilityContext { + pub pstmt: *mut PlannedStmt, + pub queryString: *const ::core::ffi::c_char, + pub relid: Oid, + pub params: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, +} +impl Default for AlterTableUtilityContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ProcessUtility_hook_type = ::core::option::Option< + unsafe extern "C" fn( + pstmt: *mut PlannedStmt, + queryString: *const ::core::ffi::c_char, + readOnlyTree: bool, + context: ProcessUtilityContext::Type, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WordEntry { + pub _bitfield_align_1: [u32; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +} +impl WordEntry { + #[inline] + pub fn haspos(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } + } + #[inline] + pub fn set_haspos(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 1u8, val as u64) + } + } + #[inline] + pub fn len(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 11u8) as u32) } + } + #[inline] + pub fn set_len(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(1usize, 11u8, val as u64) + } + } + #[inline] + pub fn pos(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 20u8) as u32) } + } + #[inline] + pub fn set_pos(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(12usize, 20u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + haspos: uint32, + len: uint32, + pos: uint32, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 1u8, { + let haspos: u32 = unsafe { ::core::mem::transmute(haspos) }; + haspos as u64 + }); + __bindgen_bitfield_unit.set(1usize, 11u8, { + let len: u32 = unsafe { ::core::mem::transmute(len) }; + len as u64 + }); + __bindgen_bitfield_unit.set(12usize, 20u8, { + let pos: u32 = unsafe { ::core::mem::transmute(pos) }; + pos as u64 + }); + __bindgen_bitfield_unit + } +} +pub type WordEntryPos = uint16; +#[repr(C)] +#[derive(Debug, Default)] +pub struct WordEntryPosVector { + pub npos: uint16, + pub pos: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WordEntryPosVector1 { + pub npos: uint16, + pub pos: [WordEntryPos; 1usize], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TSVectorData { + pub vl_len_: int32, + pub size: int32, + pub entries: __IncompleteArrayField, +} +pub type TSVector = *mut TSVectorData; +pub type QueryItemType = int8; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct QueryOperand { + pub type_: QueryItemType, + pub weight: uint8, + pub prefix: bool, + pub valcrc: int32, + pub _bitfield_align_1: [u32; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +} +impl QueryOperand { + #[inline] + pub fn length(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 12u8) as u32) } + } + #[inline] + pub fn set_length(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 12u8, val as u64) + } + } + #[inline] + pub fn distance(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 20u8) as u32) } + } + #[inline] + pub fn set_distance(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(12usize, 20u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1(length: uint32, distance: uint32) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 12u8, { + let length: u32 = unsafe { ::core::mem::transmute(length) }; + length as u64 + }); + __bindgen_bitfield_unit.set(12usize, 20u8, { + let distance: u32 = unsafe { ::core::mem::transmute(distance) }; + distance as u64 + }); + __bindgen_bitfield_unit + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct QueryOperator { + pub type_: QueryItemType, + pub oper: int8, + pub distance: int16, + pub left: uint32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union QueryItem { + pub type_: QueryItemType, + pub qoperator: QueryOperator, + pub qoperand: QueryOperand, +} +impl Default for QueryItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TSQueryData { + pub vl_len_: int32, + pub size: int32, + pub data: __IncompleteArrayField<::core::ffi::c_char>, +} +pub type TSQuery = *mut TSQueryData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LexDescr { + pub lexid: ::core::ffi::c_int, + pub alias: *mut ::core::ffi::c_char, + pub descr: *mut ::core::ffi::c_char, +} +impl Default for LexDescr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeadlineWordEntry { + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub pos: WordEntryPos, + pub word: *mut ::core::ffi::c_char, + pub item: *mut QueryOperand, +} +impl Default for HeadlineWordEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl HeadlineWordEntry { + #[inline] + pub fn selected(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } + } + #[inline] + pub fn set_selected(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 1u8, val as u64) + } + } + #[inline] + pub fn in_(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } + } + #[inline] + pub fn set_in(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(1usize, 1u8, val as u64) + } + } + #[inline] + pub fn replace(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) } + } + #[inline] + pub fn set_replace(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(2usize, 1u8, val as u64) + } + } + #[inline] + pub fn repeated(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) } + } + #[inline] + pub fn set_repeated(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(3usize, 1u8, val as u64) + } + } + #[inline] + pub fn skip(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) } + } + #[inline] + pub fn set_skip(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(4usize, 1u8, val as u64) + } + } + #[inline] + pub fn unused(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 3u8) as u32) } + } + #[inline] + pub fn set_unused(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(5usize, 3u8, val as u64) + } + } + #[inline] + pub fn type_(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 8u8) as u32) } + } + #[inline] + pub fn set_type(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(8usize, 8u8, val as u64) + } + } + #[inline] + pub fn len(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_len(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + selected: uint32, + in_: uint32, + replace: uint32, + repeated: uint32, + skip: uint32, + unused: uint32, + type_: uint32, + len: uint32, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 1u8, { + let selected: u32 = unsafe { ::core::mem::transmute(selected) }; + selected as u64 + }); + __bindgen_bitfield_unit.set(1usize, 1u8, { + let in_: u32 = unsafe { ::core::mem::transmute(in_) }; + in_ as u64 + }); + __bindgen_bitfield_unit.set(2usize, 1u8, { + let replace: u32 = unsafe { ::core::mem::transmute(replace) }; + replace as u64 + }); + __bindgen_bitfield_unit.set(3usize, 1u8, { + let repeated: u32 = unsafe { ::core::mem::transmute(repeated) }; + repeated as u64 + }); + __bindgen_bitfield_unit.set(4usize, 1u8, { + let skip: u32 = unsafe { ::core::mem::transmute(skip) }; + skip as u64 + }); + __bindgen_bitfield_unit.set(5usize, 3u8, { + let unused: u32 = unsafe { ::core::mem::transmute(unused) }; + unused as u64 + }); + __bindgen_bitfield_unit.set(8usize, 8u8, { + let type_: u32 = unsafe { ::core::mem::transmute(type_) }; + type_ as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let len: u32 = unsafe { ::core::mem::transmute(len) }; + len as u64 + }); + __bindgen_bitfield_unit + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeadlineParsedText { + pub words: *mut HeadlineWordEntry, + pub lenwords: int32, + pub curwords: int32, + pub vectorpos: int32, + pub startsel: *mut ::core::ffi::c_char, + pub stopsel: *mut ::core::ffi::c_char, + pub fragdelim: *mut ::core::ffi::c_char, + pub startsellen: int16, + pub stopsellen: int16, + pub fragdelimlen: int16, +} +impl Default for HeadlineParsedText { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StopList { + pub len: ::core::ffi::c_int, + pub stop: *mut *mut ::core::ffi::c_char, +} +impl Default for StopList { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TSLexeme { + pub nvariant: uint16, + pub flags: uint16, + pub lexeme: *mut ::core::ffi::c_char, +} +impl Default for TSLexeme { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DictSubState { + pub isend: bool, + pub getnext: bool, + pub private_state: *mut ::core::ffi::c_void, +} +impl Default for DictSubState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TSVectorParseStateData { + _unused: [u8; 0], +} +pub type TSVectorParseState = *mut TSVectorParseStateData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TSQueryParserStateData { + _unused: [u8; 0], +} +pub type TSQueryParserState = *mut TSQueryParserStateData; +pub type PushFunction = ::core::option::Option< + unsafe extern "C" fn( + opaque: Datum, + state: TSQueryParserState, + token: *mut ::core::ffi::c_char, + tokenlen: ::core::ffi::c_int, + tokenweights: int16, + prefix: bool, + ), +>; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ParsedWord { + pub flags: uint16, + pub len: uint16, + pub nvariant: uint16, + pub alen: uint16, + pub pos: ParsedWord__bindgen_ty_1, + pub word: *mut ::core::ffi::c_char, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ParsedWord__bindgen_ty_1 { + pub pos: uint16, + pub apos: *mut uint16, +} +impl Default for ParsedWord__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ParsedWord { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParsedText { + pub words: *mut ParsedWord, + pub lenwords: int32, + pub curwords: int32, + pub pos: int32, +} +impl Default for ParsedText { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TSTernaryValue { + pub type Type = ::core::ffi::c_uint; + pub const TS_NO: Type = 0; + pub const TS_YES: Type = 1; + pub const TS_MAYBE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecPhraseData { + pub npos: ::core::ffi::c_int, + pub allocated: bool, + pub negate: bool, + pub pos: *mut WordEntryPos, + pub width: ::core::ffi::c_int, +} +impl Default for ExecPhraseData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TSExecuteCallback = ::core::option::Option< + unsafe extern "C" fn( + arg: *mut ::core::ffi::c_void, + val: *mut QueryOperand, + data: *mut ExecPhraseData, + ) -> TSTernaryValue::Type, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QTNode { + pub valnode: *mut QueryItem, + pub flags: uint32, + pub nchild: int32, + pub word: *mut ::core::ffi::c_char, + pub sign: uint32, + pub child: *mut *mut QTNode, +} +impl Default for QTNode { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TSQuerySign = uint64; +pub type DateADT = int32; +pub type TimeADT = int64; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TimeTzADT { + pub time: TimeADT, + pub zone: int32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tzEntry { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct datetkn { + pub token: [::core::ffi::c_char; 11usize], + pub type_: ::core::ffi::c_char, + pub value: int32, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TimeZoneAbbrevTable { + pub tblsize: Size, + pub numabbrevs: ::core::ffi::c_int, + pub abbrevs: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug)] +pub struct DynamicZoneAbbrev { + pub tz: *mut pg_tz, + pub zone: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for DynamicZoneAbbrev { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DateTimeErrorExtra { + pub dtee_timezone: *const ::core::ffi::c_char, + pub dtee_abbrev: *const ::core::ffi::c_char, +} +impl Default for DateTimeErrorExtra { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Point { + pub x: float8, + pub y: float8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LSEG { + pub p: [Point; 2usize], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct PATH { + pub vl_len_: int32, + pub npts: int32, + pub closed: int32, + pub dummy: int32, + pub p: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LINE { + pub A: float8, + pub B: float8, + pub C: float8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BOX { + pub high: Point, + pub low: Point, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct POLYGON { + pub vl_len_: int32, + pub npts: int32, + pub boundbox: BOX, + pub p: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct CIRCLE { + pub center: Point, + pub radius: float8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_prng_state { + pub s0: uint64, + pub s1: uint64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NumericData { + _unused: [u8; 0], +} +pub type Numeric = *mut NumericData; +pub mod JsonbIteratorToken { + pub type Type = ::core::ffi::c_uint; + pub const WJB_DONE: Type = 0; + pub const WJB_KEY: Type = 1; + pub const WJB_VALUE: Type = 2; + pub const WJB_ELEM: Type = 3; + pub const WJB_BEGIN_ARRAY: Type = 4; + pub const WJB_END_ARRAY: Type = 5; + pub const WJB_BEGIN_OBJECT: Type = 6; + pub const WJB_END_OBJECT: Type = 7; +} +pub type JEntry = uint32; +#[repr(C)] +#[derive(Debug, Default)] +pub struct JsonbContainer { + pub header: uint32, + pub children: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct Jsonb { + pub vl_len_: int32, + pub root: JsonbContainer, +} +pub mod jbvType { + pub type Type = ::core::ffi::c_uint; + pub const jbvNull: Type = 0; + pub const jbvString: Type = 1; + pub const jbvNumeric: Type = 2; + pub const jbvBool: Type = 3; + pub const jbvArray: Type = 16; + pub const jbvObject: Type = 17; + pub const jbvBinary: Type = 18; + pub const jbvDatetime: Type = 32; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct JsonbValue { + pub type_: jbvType::Type, + pub val: JsonbValue__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union JsonbValue__bindgen_ty_1 { + pub numeric: Numeric, + pub boolean: bool, + pub string: JsonbValue__bindgen_ty_1__bindgen_ty_1, + pub array: JsonbValue__bindgen_ty_1__bindgen_ty_2, + pub object: JsonbValue__bindgen_ty_1__bindgen_ty_3, + pub binary: JsonbValue__bindgen_ty_1__bindgen_ty_4, + pub datetime: JsonbValue__bindgen_ty_1__bindgen_ty_5, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_1 { + pub len: ::core::ffi::c_int, + pub val: *mut ::core::ffi::c_char, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_2 { + pub nElems: ::core::ffi::c_int, + pub elems: *mut JsonbValue, + pub rawScalar: bool, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_3 { + pub nPairs: ::core::ffi::c_int, + pub pairs: *mut JsonbPair, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_4 { + pub len: ::core::ffi::c_int, + pub data: *mut JsonbContainer, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_4 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_5 { + pub value: Datum, + pub typid: Oid, + pub typmod: int32, + pub tz: ::core::ffi::c_int, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonbValue__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonbValue { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct JsonbPair { + pub key: JsonbValue, + pub value: JsonbValue, + pub order: uint32, +} +impl Default for JsonbPair { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct JsonbParseState { + pub contVal: JsonbValue, + pub size: Size, + pub next: *mut JsonbParseState, + pub unique_keys: bool, + pub skip_nulls: bool, +} +impl Default for JsonbParseState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonbIterState { + pub type Type = ::core::ffi::c_uint; + pub const JBI_ARRAY_START: Type = 0; + pub const JBI_ARRAY_ELEM: Type = 1; + pub const JBI_OBJECT_START: Type = 2; + pub const JBI_OBJECT_KEY: Type = 3; + pub const JBI_OBJECT_VALUE: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbIterator { + pub container: *mut JsonbContainer, + pub nElems: uint32, + pub isScalar: bool, + pub children: *mut JEntry, + pub dataProper: *mut ::core::ffi::c_char, + pub curIndex: ::core::ffi::c_int, + pub curDataOffset: uint32, + pub curValueOffset: uint32, + pub state: JsonbIterState::Type, + pub parent: *mut JsonbIterator, +} +impl Default for JsonbIterator { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OpBtreeInterpretation { + pub opfamily_id: Oid, + pub strategy: ::core::ffi::c_int, + pub oplefttype: Oid, + pub oprighttype: Oid, +} +impl Default for OpBtreeInterpretation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod IOFuncSelector { + pub type Type = ::core::ffi::c_uint; + pub const IOFunc_input: Type = 0; + pub const IOFunc_output: Type = 1; + pub const IOFunc_receive: Type = 2; + pub const IOFunc_send: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttStatsSlot { + pub staop: Oid, + pub stacoll: Oid, + pub valuetype: Oid, + pub values: *mut Datum, + pub nvalues: ::core::ffi::c_int, + pub numbers: *mut float4, + pub nnumbers: ::core::ffi::c_int, + pub values_arr: *mut ::core::ffi::c_void, + pub numbers_arr: *mut ::core::ffi::c_void, +} +impl Default for AttStatsSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type get_attavgwidth_hook_type = + ::core::option::Option int32>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BlockSamplerData { + pub N: BlockNumber, + pub n: ::core::ffi::c_int, + pub t: BlockNumber, + pub m: ::core::ffi::c_int, + pub randstate: pg_prng_state, +} +pub type BlockSampler = *mut BlockSamplerData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ReservoirStateData { + pub W: f64, + pub randstate: pg_prng_state, +} +pub type ReservoirState = *mut ReservoirStateData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct EstimationInfo { + pub flags: uint32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VariableStatData { + pub var: *mut Node, + pub rel: *mut RelOptInfo, + pub statsTuple: HeapTuple, + pub freefunc: ::core::option::Option, + pub vartype: Oid, + pub atttype: Oid, + pub atttypmod: int32, + pub isunique: bool, + pub acl_ok: bool, +} +impl Default for VariableStatData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GenericCosts { + pub indexStartupCost: Cost, + pub indexTotalCost: Cost, + pub indexSelectivity: Selectivity, + pub indexCorrelation: f64, + pub numIndexPages: f64, + pub numIndexTuples: f64, + pub spc_random_page_cost: f64, + pub num_sa_scans: f64, +} +pub type get_relation_stats_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rte: *mut RangeTblEntry, + attnum: AttrNumber, + vardata: *mut VariableStatData, + ) -> bool, +>; +pub type get_index_stats_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + indexOid: Oid, + indexattnum: AttrNumber, + vardata: *mut VariableStatData, + ) -> bool, +>; +pub type CCHashFN = ::core::option::Option uint32>; +pub type CCFastEqualFN = ::core::option::Option bool>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct catcache { + pub id: ::core::ffi::c_int, + pub cc_nbuckets: ::core::ffi::c_int, + pub cc_tupdesc: TupleDesc, + pub cc_bucket: *mut dlist_head, + pub cc_hashfunc: [CCHashFN; 4usize], + pub cc_fastequal: [CCFastEqualFN; 4usize], + pub cc_keyno: [::core::ffi::c_int; 4usize], + pub cc_nkeys: ::core::ffi::c_int, + pub cc_ntup: ::core::ffi::c_int, + pub cc_nlist: ::core::ffi::c_int, + pub cc_nlbuckets: ::core::ffi::c_int, + pub cc_lbucket: *mut dlist_head, + pub cc_relname: *const ::core::ffi::c_char, + pub cc_reloid: Oid, + pub cc_indexoid: Oid, + pub cc_relisshared: bool, + pub cc_next: slist_node, + pub cc_skey: [ScanKeyData; 4usize], +} +impl Default for catcache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCache = catcache; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct catctup { + pub ct_magic: ::core::ffi::c_int, + pub hash_value: uint32, + pub keys: [Datum; 4usize], + pub cache_elem: dlist_node, + pub refcount: ::core::ffi::c_int, + pub dead: bool, + pub negative: bool, + pub tuple: HeapTupleData, + pub c_list: *mut catclist, + pub my_cache: *mut CatCache, +} +impl Default for catctup { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCTup = catctup; +#[repr(C)] +#[derive(Debug)] +pub struct catclist { + pub cl_magic: ::core::ffi::c_int, + pub hash_value: uint32, + pub cache_elem: dlist_node, + pub keys: [Datum; 4usize], + pub refcount: ::core::ffi::c_int, + pub dead: bool, + pub ordered: bool, + pub nkeys: ::core::ffi::c_short, + pub n_members: ::core::ffi::c_int, + pub my_cache: *mut CatCache, + pub members: __IncompleteArrayField<*mut CatCTup>, +} +impl Default for catclist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCList = catclist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct catcacheheader { + pub ch_caches: slist_head, + pub ch_ntup: ::core::ffi::c_int, +} +impl Default for catcacheheader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCacheHeader = catcacheheader; +pub mod SysCacheIdentifier { + pub type Type = ::core::ffi::c_uint; + pub const AGGFNOID: Type = 0; + pub const AMNAME: Type = 1; + pub const AMOID: Type = 2; + pub const AMOPOPID: Type = 3; + pub const AMOPSTRATEGY: Type = 4; + pub const AMPROCNUM: Type = 5; + pub const ATTNAME: Type = 6; + pub const ATTNUM: Type = 7; + pub const AUTHMEMMEMROLE: Type = 8; + pub const AUTHMEMROLEMEM: Type = 9; + pub const AUTHNAME: Type = 10; + pub const AUTHOID: Type = 11; + pub const CASTSOURCETARGET: Type = 12; + pub const CLAAMNAMENSP: Type = 13; + pub const CLAOID: Type = 14; + pub const COLLNAMEENCNSP: Type = 15; + pub const COLLOID: Type = 16; + pub const CONDEFAULT: Type = 17; + pub const CONNAMENSP: Type = 18; + pub const CONSTROID: Type = 19; + pub const CONVOID: Type = 20; + pub const DATABASEOID: Type = 21; + pub const DEFACLROLENSPOBJ: Type = 22; + pub const ENUMOID: Type = 23; + pub const ENUMTYPOIDNAME: Type = 24; + pub const EVENTTRIGGERNAME: Type = 25; + pub const EVENTTRIGGEROID: Type = 26; + pub const FOREIGNDATAWRAPPERNAME: Type = 27; + pub const FOREIGNDATAWRAPPEROID: Type = 28; + pub const FOREIGNSERVERNAME: Type = 29; + pub const FOREIGNSERVEROID: Type = 30; + pub const FOREIGNTABLEREL: Type = 31; + pub const INDEXRELID: Type = 32; + pub const LANGNAME: Type = 33; + pub const LANGOID: Type = 34; + pub const NAMESPACENAME: Type = 35; + pub const NAMESPACEOID: Type = 36; + pub const OPERNAMENSP: Type = 37; + pub const OPEROID: Type = 38; + pub const OPFAMILYAMNAMENSP: Type = 39; + pub const OPFAMILYOID: Type = 40; + pub const PARAMETERACLNAME: Type = 41; + pub const PARAMETERACLOID: Type = 42; + pub const PARTRELID: Type = 43; + pub const PROCNAMEARGSNSP: Type = 44; + pub const PROCOID: Type = 45; + pub const PUBLICATIONNAME: Type = 46; + pub const PUBLICATIONNAMESPACE: Type = 47; + pub const PUBLICATIONNAMESPACEMAP: Type = 48; + pub const PUBLICATIONOID: Type = 49; + pub const PUBLICATIONREL: Type = 50; + pub const PUBLICATIONRELMAP: Type = 51; + pub const RANGEMULTIRANGE: Type = 52; + pub const RANGETYPE: Type = 53; + pub const RELNAMENSP: Type = 54; + pub const RELOID: Type = 55; + pub const REPLORIGIDENT: Type = 56; + pub const REPLORIGNAME: Type = 57; + pub const RULERELNAME: Type = 58; + pub const SEQRELID: Type = 59; + pub const STATEXTDATASTXOID: Type = 60; + pub const STATEXTNAMENSP: Type = 61; + pub const STATEXTOID: Type = 62; + pub const STATRELATTINH: Type = 63; + pub const SUBSCRIPTIONNAME: Type = 64; + pub const SUBSCRIPTIONOID: Type = 65; + pub const SUBSCRIPTIONRELMAP: Type = 66; + pub const TABLESPACEOID: Type = 67; + pub const TRFOID: Type = 68; + pub const TRFTYPELANG: Type = 69; + pub const TSCONFIGMAP: Type = 70; + pub const TSCONFIGNAMENSP: Type = 71; + pub const TSCONFIGOID: Type = 72; + pub const TSDICTNAMENSP: Type = 73; + pub const TSDICTOID: Type = 74; + pub const TSPARSERNAMENSP: Type = 75; + pub const TSPARSEROID: Type = 76; + pub const TSTEMPLATENAMENSP: Type = 77; + pub const TSTEMPLATEOID: Type = 78; + pub const TYPENAMENSP: Type = 79; + pub const TYPEOID: Type = 80; + pub const USERMAPPINGOID: Type = 81; + pub const USERMAPPINGUSERSERVER: Type = 82; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeType { + pub vl_len_: int32, + pub rangetypid: Oid, +} +impl Default for RangeType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeBound { + pub val: Datum, + pub infinite: bool, + pub inclusive: bool, + pub lower: bool, +} +impl Default for RangeBound { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClosestMatchState { + pub source: *const ::core::ffi::c_char, + pub min_d: ::core::ffi::c_int, + pub max_d: ::core::ffi::c_int, + pub match_: *const ::core::ffi::c_char, +} +impl Default for ClosestMatchState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __locale_data { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AttrMissing { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PartitionTupleRouting { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WaitEventSet { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct binaryheap { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TsmRoutine { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TableFuncRoutine { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct memoize_hash { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HashAggSpill { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WindowObjectData { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ParallelExecutorInfo { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TupleQueueReader { + pub _address: u8, +} +pub type __uint128_t = u128; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _MdfdVec { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SnapBuild { + pub _address: u8, +} +extern "C" { + pub static mut stdin: *mut FILE; + pub static mut stdout: *mut FILE; + pub static mut stderr: *mut FILE; + pub fn remove(__filename: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn rename( + __old: *const ::core::ffi::c_char, + __new: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn renameat( + __oldfd: ::core::ffi::c_int, + __old: *const ::core::ffi::c_char, + __newfd: ::core::ffi::c_int, + __new: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; + pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fopen( + __filename: *const ::core::ffi::c_char, + __modes: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn freopen( + __filename: *const ::core::ffi::c_char, + __modes: *const ::core::ffi::c_char, + __stream: *mut FILE, + ) -> *mut FILE; + pub fn fdopen(__fd: ::core::ffi::c_int, __modes: *const ::core::ffi::c_char) -> *mut FILE; + pub fn fmemopen( + __s: *mut ::core::ffi::c_void, + __len: usize, + __modes: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn open_memstream( + __bufloc: *mut *mut ::core::ffi::c_char, + __sizeloc: *mut usize, + ) -> *mut FILE; + pub fn setbuf(__stream: *mut FILE, __buf: *mut ::core::ffi::c_char); + pub fn setvbuf( + __stream: *mut FILE, + __buf: *mut ::core::ffi::c_char, + __modes: ::core::ffi::c_int, + __n: usize, + ) -> ::core::ffi::c_int; + pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::core::ffi::c_char, __size: usize); + pub fn setlinebuf(__stream: *mut FILE); + pub fn fprintf( + __stream: *mut FILE, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn printf(__format: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn sprintf( + __s: *mut ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn vfprintf( + __s: *mut FILE, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + pub fn vprintf( + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + pub fn vsprintf( + __s: *mut ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + pub fn snprintf( + __s: *mut ::core::ffi::c_char, + __maxlen: ::core::ffi::c_ulong, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn vsnprintf( + __s: *mut ::core::ffi::c_char, + __maxlen: ::core::ffi::c_ulong, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + pub fn vdprintf( + __fd: ::core::ffi::c_int, + __fmt: *const ::core::ffi::c_char, + __arg: __gnuc_va_list, + ) -> ::core::ffi::c_int; + pub fn dprintf( + __fd: ::core::ffi::c_int, + __fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn fscanf( + __stream: *mut FILE, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn scanf(__format: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn sscanf( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_fscanf"] + pub fn fscanf1( + __stream: *mut FILE, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_scanf"] + pub fn scanf1(__format: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_sscanf"] + pub fn sscanf1( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn vfscanf( + __s: *mut FILE, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + pub fn vscanf(__format: *const ::core::ffi::c_char, __arg: [u64; 4usize]) + -> ::core::ffi::c_int; + pub fn vsscanf( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_vfscanf"] + pub fn vfscanf1( + __s: *mut FILE, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_vscanf"] + pub fn vscanf1( + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_vsscanf"] + pub fn vsscanf1( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + __arg: [u64; 4usize], + ) -> ::core::ffi::c_int; + pub fn fgetc(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn getc(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn getchar() -> ::core::ffi::c_int; + pub fn getc_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn getchar_unlocked() -> ::core::ffi::c_int; + pub fn fgetc_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fputc(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putc(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putchar(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn fputc_unlocked(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putc_unlocked(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putchar_unlocked(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn getw(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putw(__w: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fgets( + __s: *mut ::core::ffi::c_char, + __n: ::core::ffi::c_int, + __stream: *mut FILE, + ) -> *mut ::core::ffi::c_char; + pub fn __getdelim( + __lineptr: *mut *mut ::core::ffi::c_char, + __n: *mut usize, + __delimiter: ::core::ffi::c_int, + __stream: *mut FILE, + ) -> __ssize_t; + pub fn getdelim( + __lineptr: *mut *mut ::core::ffi::c_char, + __n: *mut usize, + __delimiter: ::core::ffi::c_int, + __stream: *mut FILE, + ) -> __ssize_t; + pub fn getline( + __lineptr: *mut *mut ::core::ffi::c_char, + __n: *mut usize, + __stream: *mut FILE, + ) -> __ssize_t; + pub fn fputs(__s: *const ::core::ffi::c_char, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn puts(__s: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn ungetc(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fread( + __ptr: *mut ::core::ffi::c_void, + __size: ::core::ffi::c_ulong, + __n: ::core::ffi::c_ulong, + __stream: *mut FILE, + ) -> ::core::ffi::c_ulong; + pub fn fwrite( + __ptr: *const ::core::ffi::c_void, + __size: ::core::ffi::c_ulong, + __n: ::core::ffi::c_ulong, + __s: *mut FILE, + ) -> ::core::ffi::c_ulong; + pub fn fread_unlocked( + __ptr: *mut ::core::ffi::c_void, + __size: usize, + __n: usize, + __stream: *mut FILE, + ) -> usize; + pub fn fwrite_unlocked( + __ptr: *const ::core::ffi::c_void, + __size: usize, + __n: usize, + __stream: *mut FILE, + ) -> usize; + pub fn fseek( + __stream: *mut FILE, + __off: ::core::ffi::c_long, + __whence: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ftell(__stream: *mut FILE) -> ::core::ffi::c_long; + pub fn rewind(__stream: *mut FILE); + pub fn fseeko( + __stream: *mut FILE, + __off: __off_t, + __whence: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ftello(__stream: *mut FILE) -> __off_t; + pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::core::ffi::c_int; + pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::core::ffi::c_int; + pub fn clearerr(__stream: *mut FILE); + pub fn feof(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn ferror(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn clearerr_unlocked(__stream: *mut FILE); + pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn perror(__s: *const ::core::ffi::c_char); + pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn popen( + __command: *const ::core::ffi::c_char, + __modes: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn flockfile(__stream: *mut FILE); + pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn funlockfile(__stream: *mut FILE); + pub fn __uflow(arg1: *mut FILE) -> ::core::ffi::c_int; + pub fn __overflow(arg1: *mut FILE, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn __ctype_get_mb_cur_max() -> usize; + pub fn atof(__nptr: *const ::core::ffi::c_char) -> f64; + pub fn atoi(__nptr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn atol(__nptr: *const ::core::ffi::c_char) -> ::core::ffi::c_long; + pub fn atoll(__nptr: *const ::core::ffi::c_char) -> ::core::ffi::c_longlong; + pub fn strtod( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + ) -> f64; + pub fn strtof( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + ) -> f32; + pub fn strtold( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + ) -> u128; + pub fn strtol( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_long; + pub fn strtoul( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_ulong; + pub fn strtoq( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_longlong; + pub fn strtouq( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_ulonglong; + pub fn strtoll( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_longlong; + pub fn strtoull( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_ulonglong; + pub fn l64a(__n: ::core::ffi::c_long) -> *mut ::core::ffi::c_char; + pub fn a64l(__s: *const ::core::ffi::c_char) -> ::core::ffi::c_long; + pub fn select( + __nfds: ::core::ffi::c_int, + __readfds: *mut fd_set, + __writefds: *mut fd_set, + __exceptfds: *mut fd_set, + __timeout: *mut timeval, + ) -> ::core::ffi::c_int; + pub fn pselect( + __nfds: ::core::ffi::c_int, + __readfds: *mut fd_set, + __writefds: *mut fd_set, + __exceptfds: *mut fd_set, + __timeout: *const timespec, + __sigmask: *const __sigset_t, + ) -> ::core::ffi::c_int; + pub fn random() -> ::core::ffi::c_long; + pub fn srandom(__seed: ::core::ffi::c_uint); + pub fn initstate( + __seed: ::core::ffi::c_uint, + __statebuf: *mut ::core::ffi::c_char, + __statelen: usize, + ) -> *mut ::core::ffi::c_char; + pub fn setstate(__statebuf: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::core::ffi::c_int; + pub fn srandom_r(__seed: ::core::ffi::c_uint, __buf: *mut random_data) -> ::core::ffi::c_int; + pub fn initstate_r( + __seed: ::core::ffi::c_uint, + __statebuf: *mut ::core::ffi::c_char, + __statelen: usize, + __buf: *mut random_data, + ) -> ::core::ffi::c_int; + pub fn setstate_r( + __statebuf: *mut ::core::ffi::c_char, + __buf: *mut random_data, + ) -> ::core::ffi::c_int; + pub fn rand() -> ::core::ffi::c_int; + pub fn srand(__seed: ::core::ffi::c_uint); + pub fn rand_r(__seed: *mut ::core::ffi::c_uint) -> ::core::ffi::c_int; + pub fn drand48() -> f64; + pub fn erand48(__xsubi: *mut ::core::ffi::c_ushort) -> f64; + pub fn lrand48() -> ::core::ffi::c_long; + pub fn nrand48(__xsubi: *mut ::core::ffi::c_ushort) -> ::core::ffi::c_long; + pub fn mrand48() -> ::core::ffi::c_long; + pub fn jrand48(__xsubi: *mut ::core::ffi::c_ushort) -> ::core::ffi::c_long; + pub fn srand48(__seedval: ::core::ffi::c_long); + pub fn seed48(__seed16v: *mut ::core::ffi::c_ushort) -> *mut ::core::ffi::c_ushort; + pub fn lcong48(__param: *mut ::core::ffi::c_ushort); + pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::core::ffi::c_int; + pub fn erand48_r( + __xsubi: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + __result: *mut f64, + ) -> ::core::ffi::c_int; + pub fn lrand48_r( + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn nrand48_r( + __xsubi: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn mrand48_r( + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn jrand48_r( + __xsubi: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn srand48_r( + __seedval: ::core::ffi::c_long, + __buffer: *mut drand48_data, + ) -> ::core::ffi::c_int; + pub fn seed48_r( + __seed16v: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + ) -> ::core::ffi::c_int; + pub fn lcong48_r( + __param: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; + pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; + pub fn calloc( + __nmemb: ::core::ffi::c_ulong, + __size: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn realloc( + __ptr: *mut ::core::ffi::c_void, + __size: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; + pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; + pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; + pub fn posix_memalign( + __memptr: *mut *mut ::core::ffi::c_void, + __alignment: usize, + __size: usize, + ) -> ::core::ffi::c_int; + pub fn aligned_alloc( + __alignment: ::core::ffi::c_ulong, + __size: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn abort() -> !; + pub fn atexit(__func: ::core::option::Option) -> ::core::ffi::c_int; + pub fn at_quick_exit( + __func: ::core::option::Option, + ) -> ::core::ffi::c_int; + pub fn on_exit( + __func: ::core::option::Option< + unsafe extern "C" fn(__status: ::core::ffi::c_int, __arg: *mut ::core::ffi::c_void), + >, + __arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn exit(__status: ::core::ffi::c_int) -> !; + pub fn quick_exit(__status: ::core::ffi::c_int) -> !; + pub fn _Exit(__status: ::core::ffi::c_int) -> !; + pub fn getenv(__name: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn putenv(__string: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn setenv( + __name: *const ::core::ffi::c_char, + __value: *const ::core::ffi::c_char, + __replace: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn unsetenv(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn clearenv() -> ::core::ffi::c_int; + pub fn mkstemp(__template: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn mkstemps( + __template: *mut ::core::ffi::c_char, + __suffixlen: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn mkdtemp(__template: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn system(__command: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn realpath( + __name: *const ::core::ffi::c_char, + __resolved: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn bsearch( + __key: *const ::core::ffi::c_void, + __base: *const ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + __compar: __compar_fn_t, + ) -> *mut ::core::ffi::c_void; + pub fn qsort( + __base: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + __compar: __compar_fn_t, + ); + pub fn abs(__x: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn labs(__x: ::core::ffi::c_long) -> ::core::ffi::c_long; + pub fn llabs(__x: ::core::ffi::c_longlong) -> ::core::ffi::c_longlong; + pub fn div(__numer: ::core::ffi::c_int, __denom: ::core::ffi::c_int) -> div_t; + pub fn ldiv(__numer: ::core::ffi::c_long, __denom: ::core::ffi::c_long) -> ldiv_t; + pub fn lldiv(__numer: ::core::ffi::c_longlong, __denom: ::core::ffi::c_longlong) -> lldiv_t; + pub fn ecvt( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn fcvt( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn gcvt( + __value: f64, + __ndigit: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn qecvt( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn qfcvt( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn qgcvt( + __value: u128, + __ndigit: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn ecvt_r( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn fcvt_r( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn qecvt_r( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn qfcvt_r( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn mblen(__s: *const ::core::ffi::c_char, __n: usize) -> ::core::ffi::c_int; + pub fn mbtowc( + __pwc: *mut wchar_t, + __s: *const ::core::ffi::c_char, + __n: usize, + ) -> ::core::ffi::c_int; + pub fn wctomb(__s: *mut ::core::ffi::c_char, __wchar: wchar_t) -> ::core::ffi::c_int; + pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const ::core::ffi::c_char, __n: usize) -> usize; + pub fn wcstombs(__s: *mut ::core::ffi::c_char, __pwcs: *const wchar_t, __n: usize) -> usize; + pub fn rpmatch(__response: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getsubopt( + __optionp: *mut *mut ::core::ffi::c_char, + __tokens: *const *mut ::core::ffi::c_char, + __valuep: *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn getloadavg(__loadavg: *mut f64, __nelem: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn memcpy( + __dest: *mut ::core::ffi::c_void, + __src: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memmove( + __dest: *mut ::core::ffi::c_void, + __src: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memccpy( + __dest: *mut ::core::ffi::c_void, + __src: *const ::core::ffi::c_void, + __c: ::core::ffi::c_int, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memset( + __s: *mut ::core::ffi::c_void, + __c: ::core::ffi::c_int, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memcmp( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; + pub fn memchr( + __s: *const ::core::ffi::c_void, + __c: ::core::ffi::c_int, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn strcpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strncpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn strcat( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strncat( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn strcmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn strncmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn strcoll( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn strxfrm( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_ulong; + pub fn strcoll_l( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __l: locale_t, + ) -> ::core::ffi::c_int; + pub fn strxfrm_l( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: usize, + __l: locale_t, + ) -> usize; + pub fn strdup(__s: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn strndup( + __string: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn strchr( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn strrchr( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn strcspn( + __s: *const ::core::ffi::c_char, + __reject: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_ulong; + pub fn strspn( + __s: *const ::core::ffi::c_char, + __accept: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_ulong; + pub fn strpbrk( + __s: *const ::core::ffi::c_char, + __accept: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strstr( + __haystack: *const ::core::ffi::c_char, + __needle: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strtok( + __s: *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn __strtok_r( + __s: *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + __save_ptr: *mut *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strtok_r( + __s: *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + __save_ptr: *mut *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strlen(__s: *const ::core::ffi::c_char) -> ::core::ffi::c_ulong; + pub fn strnlen(__string: *const ::core::ffi::c_char, __maxlen: usize) -> usize; + pub fn strerror(__errnum: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + #[link_name = "\u{1}__xpg_strerror_r"] + pub fn strerror_r( + __errnum: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + ) -> ::core::ffi::c_int; + pub fn strerror_l(__errnum: ::core::ffi::c_int, __l: locale_t) -> *mut ::core::ffi::c_char; + pub fn bcmp( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn bcopy(__src: *const ::core::ffi::c_void, __dest: *mut ::core::ffi::c_void, __n: usize); + pub fn bzero(__s: *mut ::core::ffi::c_void, __n: ::core::ffi::c_ulong); + pub fn index( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn rindex( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn ffs(__i: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ffsl(__l: ::core::ffi::c_long) -> ::core::ffi::c_int; + pub fn ffsll(__ll: ::core::ffi::c_longlong) -> ::core::ffi::c_int; + pub fn strcasecmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn strncasecmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn strcasecmp_l( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __loc: locale_t, + ) -> ::core::ffi::c_int; + pub fn strncasecmp_l( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __n: usize, + __loc: locale_t, + ) -> ::core::ffi::c_int; + pub fn explicit_bzero(__s: *mut ::core::ffi::c_void, __n: usize); + pub fn strsep( + __stringp: *mut *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strsignal(__sig: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn __stpcpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn stpcpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn __stpncpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: usize, + ) -> *mut ::core::ffi::c_char; + pub fn stpncpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn __errno_location() -> *mut ::core::ffi::c_int; + pub fn setlocale( + __category: ::core::ffi::c_int, + __locale: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn localeconv() -> *mut lconv; + pub fn newlocale( + __category_mask: ::core::ffi::c_int, + __locale: *const ::core::ffi::c_char, + __base: locale_t, + ) -> locale_t; + pub fn duplocale(__dataset: locale_t) -> locale_t; + pub fn freelocale(__dataset: locale_t); + pub fn uselocale(__dataset: locale_t) -> locale_t; + pub fn gettext(__msgid: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn dgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn __dgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn dcgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + __category: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn __dcgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + __category: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn ngettext( + __msgid1: *const ::core::ffi::c_char, + __msgid2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn dngettext( + __domainname: *const ::core::ffi::c_char, + __msgid1: *const ::core::ffi::c_char, + __msgid2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn dcngettext( + __domainname: *const ::core::ffi::c_char, + __msgid1: *const ::core::ffi::c_char, + __msgid2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + __category: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn textdomain(__domainname: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn bindtextdomain( + __domainname: *const ::core::ffi::c_char, + __dirname: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn bind_textdomain_codeset( + __domainname: *const ::core::ffi::c_char, + __codeset: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn ExceptionalCondition( + conditionName: *const ::core::ffi::c_char, + fileName: *const ::core::ffi::c_char, + lineNumber: ::core::ffi::c_int, + ) -> !; + pub fn __ctype_b_loc() -> *mut *const ::core::ffi::c_ushort; + pub fn __ctype_tolower_loc() -> *mut *const __int32_t; + pub fn __ctype_toupper_loc() -> *mut *const __int32_t; + pub fn isalnum(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isalpha(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn iscntrl(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isdigit(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn islower(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isgraph(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isprint(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ispunct(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isspace(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isupper(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isxdigit(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn tolower(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn toupper(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isblank(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isascii(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn toascii(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn _toupper(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn _tolower(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isalnum_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isalpha_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn iscntrl_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isdigit_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn islower_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isgraph_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isprint_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn ispunct_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isspace_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isupper_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isxdigit_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isblank_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn __tolower_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn tolower_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn __toupper_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn toupper_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn pg_set_noblock(sock: pgsocket) -> bool; + pub fn pg_set_block(sock: pgsocket) -> bool; + pub fn has_drive_prefix(path: *const ::core::ffi::c_char) -> bool; + pub fn first_dir_separator(filename: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn last_dir_separator(filename: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn first_path_var_separator( + pathlist: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn join_path_components( + ret_path: *mut ::core::ffi::c_char, + head: *const ::core::ffi::c_char, + tail: *const ::core::ffi::c_char, + ); + pub fn canonicalize_path(path: *mut ::core::ffi::c_char); + pub fn make_native_path(filename: *mut ::core::ffi::c_char); + pub fn cleanup_path(path: *mut ::core::ffi::c_char); + pub fn path_contains_parent_reference(path: *const ::core::ffi::c_char) -> bool; + pub fn path_is_relative_and_below_cwd(path: *const ::core::ffi::c_char) -> bool; + pub fn path_is_prefix_of_path( + path1: *const ::core::ffi::c_char, + path2: *const ::core::ffi::c_char, + ) -> bool; + pub fn make_absolute_path(path: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn get_progname(argv0: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char; + pub fn get_share_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_etc_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_include_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_pkginclude_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_includeserver_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_lib_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_pkglib_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_locale_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_doc_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_html_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_man_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_home_path(ret_path: *mut ::core::ffi::c_char) -> bool; + pub fn get_parent_directory(path: *mut ::core::ffi::c_char); + pub fn pgfnames(path: *const ::core::ffi::c_char) -> *mut *mut ::core::ffi::c_char; + pub fn pgfnames_cleanup(filenames: *mut *mut ::core::ffi::c_char); + pub fn set_pglocale_pgservice( + argv0: *const ::core::ffi::c_char, + app: *const ::core::ffi::c_char, + ); + pub fn validate_exec(path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn find_my_exec( + argv0: *const ::core::ffi::c_char, + retpath: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn find_other_exec( + argv0: *const ::core::ffi::c_char, + target: *const ::core::ffi::c_char, + versionstr: *const ::core::ffi::c_char, + retpath: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pipe_read_line(cmd: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn pg_usleep(microsec: ::core::ffi::c_long); + pub fn pg_strcasecmp( + s1: *const ::core::ffi::c_char, + s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_strncasecmp( + s1: *const ::core::ffi::c_char, + s2: *const ::core::ffi::c_char, + n: usize, + ) -> ::core::ffi::c_int; + pub fn pg_toupper(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_tolower(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_ascii_toupper(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_ascii_tolower(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_snprintf( + str_: *mut ::core::ffi::c_char, + count: usize, + fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn pg_sprintf( + str_: *mut ::core::ffi::c_char, + fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn pg_fprintf( + stream: *mut FILE, + fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn pg_printf(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn pg_strfromd( + str_: *mut ::core::ffi::c_char, + count: usize, + precision: ::core::ffi::c_int, + value: f64, + ) -> ::core::ffi::c_int; + pub fn pg_strerror(errnum: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn pg_strerror_r( + errnum: ::core::ffi::c_int, + buf: *mut ::core::ffi::c_char, + buflen: usize, + ) -> *mut ::core::ffi::c_char; + pub fn pg_strsignal(signum: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pclose_check(stream: *mut FILE) -> ::core::ffi::c_int; + pub fn rmtree(path: *const ::core::ffi::c_char, rmtopdir: bool) -> bool; + pub fn getpeereid( + sock: ::core::ffi::c_int, + uid: *mut uid_t, + gid: *mut gid_t, + ) -> ::core::ffi::c_int; + pub fn __fpclassify(__value: f64) -> ::core::ffi::c_int; + pub fn __signbit(__value: f64) -> ::core::ffi::c_int; + pub fn __isinf(__value: f64) -> ::core::ffi::c_int; + pub fn __finite(__value: f64) -> ::core::ffi::c_int; + pub fn __isnan(__value: f64) -> ::core::ffi::c_int; + pub fn __iseqsig(__x: f64, __y: f64) -> ::core::ffi::c_int; + pub fn __issignaling(__value: f64) -> ::core::ffi::c_int; + pub fn acos(__x: f64) -> f64; + pub fn __acos(__x: f64) -> f64; + pub fn asin(__x: f64) -> f64; + pub fn __asin(__x: f64) -> f64; + pub fn atan(__x: f64) -> f64; + pub fn __atan(__x: f64) -> f64; + pub fn atan2(__y: f64, __x: f64) -> f64; + pub fn __atan2(__y: f64, __x: f64) -> f64; + pub fn cos(__x: f64) -> f64; + pub fn __cos(__x: f64) -> f64; + pub fn sin(__x: f64) -> f64; + pub fn __sin(__x: f64) -> f64; + pub fn tan(__x: f64) -> f64; + pub fn __tan(__x: f64) -> f64; + pub fn cosh(__x: f64) -> f64; + pub fn __cosh(__x: f64) -> f64; + pub fn sinh(__x: f64) -> f64; + pub fn __sinh(__x: f64) -> f64; + pub fn tanh(__x: f64) -> f64; + pub fn __tanh(__x: f64) -> f64; + pub fn acosh(__x: f64) -> f64; + pub fn __acosh(__x: f64) -> f64; + pub fn asinh(__x: f64) -> f64; + pub fn __asinh(__x: f64) -> f64; + pub fn atanh(__x: f64) -> f64; + pub fn __atanh(__x: f64) -> f64; + pub fn exp(__x: f64) -> f64; + pub fn __exp(__x: f64) -> f64; + pub fn frexp(__x: f64, __exponent: *mut ::core::ffi::c_int) -> f64; + pub fn __frexp(__x: f64, __exponent: *mut ::core::ffi::c_int) -> f64; + pub fn ldexp(__x: f64, __exponent: ::core::ffi::c_int) -> f64; + pub fn __ldexp(__x: f64, __exponent: ::core::ffi::c_int) -> f64; + pub fn __log(__x: f64) -> f64; + pub fn log10(__x: f64) -> f64; + pub fn __log10(__x: f64) -> f64; + pub fn modf(__x: f64, __iptr: *mut f64) -> f64; + pub fn __modf(__x: f64, __iptr: *mut f64) -> f64; + pub fn expm1(__x: f64) -> f64; + pub fn __expm1(__x: f64) -> f64; + pub fn log1p(__x: f64) -> f64; + pub fn __log1p(__x: f64) -> f64; + pub fn logb(__x: f64) -> f64; + pub fn __logb(__x: f64) -> f64; + pub fn exp2(__x: f64) -> f64; + pub fn __exp2(__x: f64) -> f64; + pub fn log2(__x: f64) -> f64; + pub fn __log2(__x: f64) -> f64; + pub fn pow(__x: f64, __y: f64) -> f64; + pub fn __pow(__x: f64, __y: f64) -> f64; + pub fn sqrt(__x: f64) -> f64; + pub fn __sqrt(__x: f64) -> f64; + pub fn hypot(__x: f64, __y: f64) -> f64; + pub fn __hypot(__x: f64, __y: f64) -> f64; + pub fn cbrt(__x: f64) -> f64; + pub fn __cbrt(__x: f64) -> f64; + pub fn ceil(__x: f64) -> f64; + pub fn __ceil(__x: f64) -> f64; + pub fn fabs(__x: f64) -> f64; + pub fn __fabs(__x: f64) -> f64; + pub fn floor(__x: f64) -> f64; + pub fn __floor(__x: f64) -> f64; + pub fn fmod(__x: f64, __y: f64) -> f64; + pub fn __fmod(__x: f64, __y: f64) -> f64; + pub fn isinf(__value: f64) -> ::core::ffi::c_int; + pub fn finite(__value: f64) -> ::core::ffi::c_int; + pub fn drem(__x: f64, __y: f64) -> f64; + pub fn __drem(__x: f64, __y: f64) -> f64; + pub fn significand(__x: f64) -> f64; + pub fn __significand(__x: f64) -> f64; + pub fn copysign(__x: f64, __y: f64) -> f64; + pub fn __copysign(__x: f64, __y: f64) -> f64; + pub fn nan(__tagb: *const ::core::ffi::c_char) -> f64; + pub fn __nan(__tagb: *const ::core::ffi::c_char) -> f64; + pub fn isnan(__value: f64) -> ::core::ffi::c_int; + pub fn j0(arg1: f64) -> f64; + pub fn __j0(arg1: f64) -> f64; + pub fn j1(arg1: f64) -> f64; + pub fn __j1(arg1: f64) -> f64; + pub fn jn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn __jn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn y0(arg1: f64) -> f64; + pub fn __y0(arg1: f64) -> f64; + pub fn y1(arg1: f64) -> f64; + pub fn __y1(arg1: f64) -> f64; + pub fn yn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn __yn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn erf(arg1: f64) -> f64; + pub fn __erf(arg1: f64) -> f64; + pub fn erfc(arg1: f64) -> f64; + pub fn __erfc(arg1: f64) -> f64; + pub fn lgamma(arg1: f64) -> f64; + pub fn __lgamma(arg1: f64) -> f64; + pub fn tgamma(arg1: f64) -> f64; + pub fn __tgamma(arg1: f64) -> f64; + pub fn gamma(arg1: f64) -> f64; + pub fn __gamma(arg1: f64) -> f64; + pub fn lgamma_r(arg1: f64, __signgamp: *mut ::core::ffi::c_int) -> f64; + pub fn __lgamma_r(arg1: f64, __signgamp: *mut ::core::ffi::c_int) -> f64; + pub fn rint(__x: f64) -> f64; + pub fn __rint(__x: f64) -> f64; + pub fn nextafter(__x: f64, __y: f64) -> f64; + pub fn __nextafter(__x: f64, __y: f64) -> f64; + pub fn nexttoward(__x: f64, __y: u128) -> f64; + pub fn __nexttoward(__x: f64, __y: u128) -> f64; + pub fn remainder(__x: f64, __y: f64) -> f64; + pub fn __remainder(__x: f64, __y: f64) -> f64; + pub fn scalbn(__x: f64, __n: ::core::ffi::c_int) -> f64; + pub fn __scalbn(__x: f64, __n: ::core::ffi::c_int) -> f64; + pub fn ilogb(__x: f64) -> ::core::ffi::c_int; + pub fn __ilogb(__x: f64) -> ::core::ffi::c_int; + pub fn scalbln(__x: f64, __n: ::core::ffi::c_long) -> f64; + pub fn __scalbln(__x: f64, __n: ::core::ffi::c_long) -> f64; + pub fn nearbyint(__x: f64) -> f64; + pub fn __nearbyint(__x: f64) -> f64; + pub fn round(__x: f64) -> f64; + pub fn __round(__x: f64) -> f64; + pub fn trunc(__x: f64) -> f64; + pub fn __trunc(__x: f64) -> f64; + pub fn remquo(__x: f64, __y: f64, __quo: *mut ::core::ffi::c_int) -> f64; + pub fn __remquo(__x: f64, __y: f64, __quo: *mut ::core::ffi::c_int) -> f64; + pub fn lrint(__x: f64) -> ::core::ffi::c_long; + pub fn __lrint(__x: f64) -> ::core::ffi::c_long; + pub fn llrint(__x: f64) -> ::core::ffi::c_longlong; + pub fn __llrint(__x: f64) -> ::core::ffi::c_longlong; + pub fn lround(__x: f64) -> ::core::ffi::c_long; + pub fn __lround(__x: f64) -> ::core::ffi::c_long; + pub fn llround(__x: f64) -> ::core::ffi::c_longlong; + pub fn __llround(__x: f64) -> ::core::ffi::c_longlong; + pub fn fdim(__x: f64, __y: f64) -> f64; + pub fn __fdim(__x: f64, __y: f64) -> f64; + pub fn fmax(__x: f64, __y: f64) -> f64; + pub fn __fmax(__x: f64, __y: f64) -> f64; + pub fn fmin(__x: f64, __y: f64) -> f64; + pub fn __fmin(__x: f64, __y: f64) -> f64; + pub fn fma(__x: f64, __y: f64, __z: f64) -> f64; + pub fn __fma(__x: f64, __y: f64, __z: f64) -> f64; + pub fn scalb(__x: f64, __n: f64) -> f64; + pub fn __scalb(__x: f64, __n: f64) -> f64; + pub fn __fpclassifyf(__value: f32) -> ::core::ffi::c_int; + pub fn __signbitf(__value: f32) -> ::core::ffi::c_int; + pub fn __isinff(__value: f32) -> ::core::ffi::c_int; + pub fn __finitef(__value: f32) -> ::core::ffi::c_int; + pub fn __isnanf(__value: f32) -> ::core::ffi::c_int; + pub fn __iseqsigf(__x: f32, __y: f32) -> ::core::ffi::c_int; + pub fn __issignalingf(__value: f32) -> ::core::ffi::c_int; + pub fn acosf(__x: f32) -> f32; + pub fn __acosf(__x: f32) -> f32; + pub fn asinf(__x: f32) -> f32; + pub fn __asinf(__x: f32) -> f32; + pub fn atanf(__x: f32) -> f32; + pub fn __atanf(__x: f32) -> f32; + pub fn atan2f(__y: f32, __x: f32) -> f32; + pub fn __atan2f(__y: f32, __x: f32) -> f32; + pub fn cosf(__x: f32) -> f32; + pub fn __cosf(__x: f32) -> f32; + pub fn sinf(__x: f32) -> f32; + pub fn __sinf(__x: f32) -> f32; + pub fn tanf(__x: f32) -> f32; + pub fn __tanf(__x: f32) -> f32; + pub fn coshf(__x: f32) -> f32; + pub fn __coshf(__x: f32) -> f32; + pub fn sinhf(__x: f32) -> f32; + pub fn __sinhf(__x: f32) -> f32; + pub fn tanhf(__x: f32) -> f32; + pub fn __tanhf(__x: f32) -> f32; + pub fn acoshf(__x: f32) -> f32; + pub fn __acoshf(__x: f32) -> f32; + pub fn asinhf(__x: f32) -> f32; + pub fn __asinhf(__x: f32) -> f32; + pub fn atanhf(__x: f32) -> f32; + pub fn __atanhf(__x: f32) -> f32; + pub fn expf(__x: f32) -> f32; + pub fn __expf(__x: f32) -> f32; + pub fn frexpf(__x: f32, __exponent: *mut ::core::ffi::c_int) -> f32; + pub fn __frexpf(__x: f32, __exponent: *mut ::core::ffi::c_int) -> f32; + pub fn ldexpf(__x: f32, __exponent: ::core::ffi::c_int) -> f32; + pub fn __ldexpf(__x: f32, __exponent: ::core::ffi::c_int) -> f32; + pub fn logf(__x: f32) -> f32; + pub fn __logf(__x: f32) -> f32; + pub fn log10f(__x: f32) -> f32; + pub fn __log10f(__x: f32) -> f32; + pub fn modff(__x: f32, __iptr: *mut f32) -> f32; + pub fn __modff(__x: f32, __iptr: *mut f32) -> f32; + pub fn expm1f(__x: f32) -> f32; + pub fn __expm1f(__x: f32) -> f32; + pub fn log1pf(__x: f32) -> f32; + pub fn __log1pf(__x: f32) -> f32; + pub fn logbf(__x: f32) -> f32; + pub fn __logbf(__x: f32) -> f32; + pub fn exp2f(__x: f32) -> f32; + pub fn __exp2f(__x: f32) -> f32; + pub fn log2f(__x: f32) -> f32; + pub fn __log2f(__x: f32) -> f32; + pub fn powf(__x: f32, __y: f32) -> f32; + pub fn __powf(__x: f32, __y: f32) -> f32; + pub fn sqrtf(__x: f32) -> f32; + pub fn __sqrtf(__x: f32) -> f32; + pub fn hypotf(__x: f32, __y: f32) -> f32; + pub fn __hypotf(__x: f32, __y: f32) -> f32; + pub fn cbrtf(__x: f32) -> f32; + pub fn __cbrtf(__x: f32) -> f32; + pub fn ceilf(__x: f32) -> f32; + pub fn __ceilf(__x: f32) -> f32; + pub fn fabsf(__x: f32) -> f32; + pub fn __fabsf(__x: f32) -> f32; + pub fn floorf(__x: f32) -> f32; + pub fn __floorf(__x: f32) -> f32; + pub fn fmodf(__x: f32, __y: f32) -> f32; + pub fn __fmodf(__x: f32, __y: f32) -> f32; + pub fn isinff(__value: f32) -> ::core::ffi::c_int; + pub fn finitef(__value: f32) -> ::core::ffi::c_int; + pub fn dremf(__x: f32, __y: f32) -> f32; + pub fn __dremf(__x: f32, __y: f32) -> f32; + pub fn significandf(__x: f32) -> f32; + pub fn __significandf(__x: f32) -> f32; + pub fn copysignf(__x: f32, __y: f32) -> f32; + pub fn __copysignf(__x: f32, __y: f32) -> f32; + pub fn nanf(__tagb: *const ::core::ffi::c_char) -> f32; + pub fn __nanf(__tagb: *const ::core::ffi::c_char) -> f32; + pub fn isnanf(__value: f32) -> ::core::ffi::c_int; + pub fn j0f(arg1: f32) -> f32; + pub fn __j0f(arg1: f32) -> f32; + pub fn j1f(arg1: f32) -> f32; + pub fn __j1f(arg1: f32) -> f32; + pub fn jnf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn __jnf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn y0f(arg1: f32) -> f32; + pub fn __y0f(arg1: f32) -> f32; + pub fn y1f(arg1: f32) -> f32; + pub fn __y1f(arg1: f32) -> f32; + pub fn ynf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn __ynf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn erff(arg1: f32) -> f32; + pub fn __erff(arg1: f32) -> f32; + pub fn erfcf(arg1: f32) -> f32; + pub fn __erfcf(arg1: f32) -> f32; + pub fn lgammaf(arg1: f32) -> f32; + pub fn __lgammaf(arg1: f32) -> f32; + pub fn tgammaf(arg1: f32) -> f32; + pub fn __tgammaf(arg1: f32) -> f32; + pub fn gammaf(arg1: f32) -> f32; + pub fn __gammaf(arg1: f32) -> f32; + pub fn lgammaf_r(arg1: f32, __signgamp: *mut ::core::ffi::c_int) -> f32; + pub fn __lgammaf_r(arg1: f32, __signgamp: *mut ::core::ffi::c_int) -> f32; + pub fn rintf(__x: f32) -> f32; + pub fn __rintf(__x: f32) -> f32; + pub fn nextafterf(__x: f32, __y: f32) -> f32; + pub fn __nextafterf(__x: f32, __y: f32) -> f32; + pub fn nexttowardf(__x: f32, __y: u128) -> f32; + pub fn __nexttowardf(__x: f32, __y: u128) -> f32; + pub fn remainderf(__x: f32, __y: f32) -> f32; + pub fn __remainderf(__x: f32, __y: f32) -> f32; + pub fn scalbnf(__x: f32, __n: ::core::ffi::c_int) -> f32; + pub fn __scalbnf(__x: f32, __n: ::core::ffi::c_int) -> f32; + pub fn ilogbf(__x: f32) -> ::core::ffi::c_int; + pub fn __ilogbf(__x: f32) -> ::core::ffi::c_int; + pub fn scalblnf(__x: f32, __n: ::core::ffi::c_long) -> f32; + pub fn __scalblnf(__x: f32, __n: ::core::ffi::c_long) -> f32; + pub fn nearbyintf(__x: f32) -> f32; + pub fn __nearbyintf(__x: f32) -> f32; + pub fn roundf(__x: f32) -> f32; + pub fn __roundf(__x: f32) -> f32; + pub fn truncf(__x: f32) -> f32; + pub fn __truncf(__x: f32) -> f32; + pub fn remquof(__x: f32, __y: f32, __quo: *mut ::core::ffi::c_int) -> f32; + pub fn __remquof(__x: f32, __y: f32, __quo: *mut ::core::ffi::c_int) -> f32; + pub fn lrintf(__x: f32) -> ::core::ffi::c_long; + pub fn __lrintf(__x: f32) -> ::core::ffi::c_long; + pub fn llrintf(__x: f32) -> ::core::ffi::c_longlong; + pub fn __llrintf(__x: f32) -> ::core::ffi::c_longlong; + pub fn lroundf(__x: f32) -> ::core::ffi::c_long; + pub fn __lroundf(__x: f32) -> ::core::ffi::c_long; + pub fn llroundf(__x: f32) -> ::core::ffi::c_longlong; + pub fn __llroundf(__x: f32) -> ::core::ffi::c_longlong; + pub fn fdimf(__x: f32, __y: f32) -> f32; + pub fn __fdimf(__x: f32, __y: f32) -> f32; + pub fn fmaxf(__x: f32, __y: f32) -> f32; + pub fn __fmaxf(__x: f32, __y: f32) -> f32; + pub fn fminf(__x: f32, __y: f32) -> f32; + pub fn __fminf(__x: f32, __y: f32) -> f32; + pub fn fmaf(__x: f32, __y: f32, __z: f32) -> f32; + pub fn __fmaf(__x: f32, __y: f32, __z: f32) -> f32; + pub fn scalbf(__x: f32, __n: f32) -> f32; + pub fn __scalbf(__x: f32, __n: f32) -> f32; + pub fn __fpclassifyl(__value: u128) -> ::core::ffi::c_int; + pub fn __signbitl(__value: u128) -> ::core::ffi::c_int; + pub fn __isinfl(__value: u128) -> ::core::ffi::c_int; + pub fn __finitel(__value: u128) -> ::core::ffi::c_int; + pub fn __isnanl(__value: u128) -> ::core::ffi::c_int; + pub fn __iseqsigl(__x: u128, __y: u128) -> ::core::ffi::c_int; + pub fn __issignalingl(__value: u128) -> ::core::ffi::c_int; + pub fn acosl(__x: u128) -> u128; + pub fn __acosl(__x: u128) -> u128; + pub fn asinl(__x: u128) -> u128; + pub fn __asinl(__x: u128) -> u128; + pub fn atanl(__x: u128) -> u128; + pub fn __atanl(__x: u128) -> u128; + pub fn atan2l(__y: u128, __x: u128) -> u128; + pub fn __atan2l(__y: u128, __x: u128) -> u128; + pub fn cosl(__x: u128) -> u128; + pub fn __cosl(__x: u128) -> u128; + pub fn sinl(__x: u128) -> u128; + pub fn __sinl(__x: u128) -> u128; + pub fn tanl(__x: u128) -> u128; + pub fn __tanl(__x: u128) -> u128; + pub fn coshl(__x: u128) -> u128; + pub fn __coshl(__x: u128) -> u128; + pub fn sinhl(__x: u128) -> u128; + pub fn __sinhl(__x: u128) -> u128; + pub fn tanhl(__x: u128) -> u128; + pub fn __tanhl(__x: u128) -> u128; + pub fn acoshl(__x: u128) -> u128; + pub fn __acoshl(__x: u128) -> u128; + pub fn asinhl(__x: u128) -> u128; + pub fn __asinhl(__x: u128) -> u128; + pub fn atanhl(__x: u128) -> u128; + pub fn __atanhl(__x: u128) -> u128; + pub fn expl(__x: u128) -> u128; + pub fn __expl(__x: u128) -> u128; + pub fn frexpl(__x: u128, __exponent: *mut ::core::ffi::c_int) -> u128; + pub fn __frexpl(__x: u128, __exponent: *mut ::core::ffi::c_int) -> u128; + pub fn ldexpl(__x: u128, __exponent: ::core::ffi::c_int) -> u128; + pub fn __ldexpl(__x: u128, __exponent: ::core::ffi::c_int) -> u128; + pub fn logl(__x: u128) -> u128; + pub fn __logl(__x: u128) -> u128; + pub fn log10l(__x: u128) -> u128; + pub fn __log10l(__x: u128) -> u128; + pub fn modfl(__x: u128, __iptr: *mut u128) -> u128; + pub fn __modfl(__x: u128, __iptr: *mut u128) -> u128; + pub fn expm1l(__x: u128) -> u128; + pub fn __expm1l(__x: u128) -> u128; + pub fn log1pl(__x: u128) -> u128; + pub fn __log1pl(__x: u128) -> u128; + pub fn logbl(__x: u128) -> u128; + pub fn __logbl(__x: u128) -> u128; + pub fn exp2l(__x: u128) -> u128; + pub fn __exp2l(__x: u128) -> u128; + pub fn log2l(__x: u128) -> u128; + pub fn __log2l(__x: u128) -> u128; + pub fn powl(__x: u128, __y: u128) -> u128; + pub fn __powl(__x: u128, __y: u128) -> u128; + pub fn sqrtl(__x: u128) -> u128; + pub fn __sqrtl(__x: u128) -> u128; + pub fn hypotl(__x: u128, __y: u128) -> u128; + pub fn __hypotl(__x: u128, __y: u128) -> u128; + pub fn cbrtl(__x: u128) -> u128; + pub fn __cbrtl(__x: u128) -> u128; + pub fn ceill(__x: u128) -> u128; + pub fn __ceill(__x: u128) -> u128; + pub fn fabsl(__x: u128) -> u128; + pub fn __fabsl(__x: u128) -> u128; + pub fn floorl(__x: u128) -> u128; + pub fn __floorl(__x: u128) -> u128; + pub fn fmodl(__x: u128, __y: u128) -> u128; + pub fn __fmodl(__x: u128, __y: u128) -> u128; + pub fn isinfl(__value: u128) -> ::core::ffi::c_int; + pub fn finitel(__value: u128) -> ::core::ffi::c_int; + pub fn dreml(__x: u128, __y: u128) -> u128; + pub fn __dreml(__x: u128, __y: u128) -> u128; + pub fn significandl(__x: u128) -> u128; + pub fn __significandl(__x: u128) -> u128; + pub fn copysignl(__x: u128, __y: u128) -> u128; + pub fn __copysignl(__x: u128, __y: u128) -> u128; + pub fn nanl(__tagb: *const ::core::ffi::c_char) -> u128; + pub fn __nanl(__tagb: *const ::core::ffi::c_char) -> u128; + pub fn isnanl(__value: u128) -> ::core::ffi::c_int; + pub fn j0l(arg1: u128) -> u128; + pub fn __j0l(arg1: u128) -> u128; + pub fn j1l(arg1: u128) -> u128; + pub fn __j1l(arg1: u128) -> u128; + pub fn jnl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn __jnl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn y0l(arg1: u128) -> u128; + pub fn __y0l(arg1: u128) -> u128; + pub fn y1l(arg1: u128) -> u128; + pub fn __y1l(arg1: u128) -> u128; + pub fn ynl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn __ynl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn erfl(arg1: u128) -> u128; + pub fn __erfl(arg1: u128) -> u128; + pub fn erfcl(arg1: u128) -> u128; + pub fn __erfcl(arg1: u128) -> u128; + pub fn lgammal(arg1: u128) -> u128; + pub fn __lgammal(arg1: u128) -> u128; + pub fn tgammal(arg1: u128) -> u128; + pub fn __tgammal(arg1: u128) -> u128; + pub fn gammal(arg1: u128) -> u128; + pub fn __gammal(arg1: u128) -> u128; + pub fn lgammal_r(arg1: u128, __signgamp: *mut ::core::ffi::c_int) -> u128; + pub fn __lgammal_r(arg1: u128, __signgamp: *mut ::core::ffi::c_int) -> u128; + pub fn rintl(__x: u128) -> u128; + pub fn __rintl(__x: u128) -> u128; + pub fn nextafterl(__x: u128, __y: u128) -> u128; + pub fn __nextafterl(__x: u128, __y: u128) -> u128; + pub fn nexttowardl(__x: u128, __y: u128) -> u128; + pub fn __nexttowardl(__x: u128, __y: u128) -> u128; + pub fn remainderl(__x: u128, __y: u128) -> u128; + pub fn __remainderl(__x: u128, __y: u128) -> u128; + pub fn scalbnl(__x: u128, __n: ::core::ffi::c_int) -> u128; + pub fn __scalbnl(__x: u128, __n: ::core::ffi::c_int) -> u128; + pub fn ilogbl(__x: u128) -> ::core::ffi::c_int; + pub fn __ilogbl(__x: u128) -> ::core::ffi::c_int; + pub fn scalblnl(__x: u128, __n: ::core::ffi::c_long) -> u128; + pub fn __scalblnl(__x: u128, __n: ::core::ffi::c_long) -> u128; + pub fn nearbyintl(__x: u128) -> u128; + pub fn __nearbyintl(__x: u128) -> u128; + pub fn roundl(__x: u128) -> u128; + pub fn __roundl(__x: u128) -> u128; + pub fn truncl(__x: u128) -> u128; + pub fn __truncl(__x: u128) -> u128; + pub fn remquol(__x: u128, __y: u128, __quo: *mut ::core::ffi::c_int) -> u128; + pub fn __remquol(__x: u128, __y: u128, __quo: *mut ::core::ffi::c_int) -> u128; + pub fn lrintl(__x: u128) -> ::core::ffi::c_long; + pub fn __lrintl(__x: u128) -> ::core::ffi::c_long; + pub fn llrintl(__x: u128) -> ::core::ffi::c_longlong; + pub fn __llrintl(__x: u128) -> ::core::ffi::c_longlong; + pub fn lroundl(__x: u128) -> ::core::ffi::c_long; + pub fn __lroundl(__x: u128) -> ::core::ffi::c_long; + pub fn llroundl(__x: u128) -> ::core::ffi::c_longlong; + pub fn __llroundl(__x: u128) -> ::core::ffi::c_longlong; + pub fn fdiml(__x: u128, __y: u128) -> u128; + pub fn __fdiml(__x: u128, __y: u128) -> u128; + pub fn fmaxl(__x: u128, __y: u128) -> u128; + pub fn __fmaxl(__x: u128, __y: u128) -> u128; + pub fn fminl(__x: u128, __y: u128) -> u128; + pub fn __fminl(__x: u128, __y: u128) -> u128; + pub fn fmal(__x: u128, __y: u128, __z: u128) -> u128; + pub fn __fmal(__x: u128, __y: u128, __z: u128) -> u128; + pub fn scalbl(__x: u128, __n: u128) -> u128; + pub fn __scalbl(__x: u128, __n: u128) -> u128; + pub static mut signgam: ::core::ffi::c_int; + pub fn strlcat( + dst: *mut ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + siz: usize, + ) -> usize; + pub fn strlcpy( + dst: *mut ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + siz: usize, + ) -> usize; + pub fn pg_get_user_name( + user_id: uid_t, + buffer: *mut ::core::ffi::c_char, + buflen: usize, + ) -> bool; + pub fn pg_get_user_home_dir( + user_id: uid_t, + buffer: *mut ::core::ffi::c_char, + buflen: usize, + ) -> bool; + pub fn pg_qsort( + base: *mut ::core::ffi::c_void, + nel: usize, + elsize: usize, + cmp: ::core::option::Option< + unsafe extern "C" fn( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int, + >, + ); + pub fn pg_qsort_strcmp( + a: *const ::core::ffi::c_void, + b: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn qsort_arg( + base: *mut ::core::ffi::c_void, + nel: usize, + elsize: usize, + cmp: qsort_arg_comparator, + arg: *mut ::core::ffi::c_void, + ); + pub fn qsort_interruptible( + base: *mut ::core::ffi::c_void, + nel: usize, + elsize: usize, + cmp: qsort_arg_comparator, + arg: *mut ::core::ffi::c_void, + ); + pub fn bsearch_arg( + key: *const ::core::ffi::c_void, + base0: *const ::core::ffi::c_void, + nmemb: usize, + size: usize, + compar: ::core::option::Option< + unsafe extern "C" fn( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + arg3: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int, + >, + arg: *mut ::core::ffi::c_void, + ) -> *mut ::core::ffi::c_void; + pub fn pg_get_encoding_from_locale( + ctype: *const ::core::ffi::c_char, + write_message: bool, + ) -> ::core::ffi::c_int; + pub fn pg_inet_net_ntop( + af: ::core::ffi::c_int, + src: *const ::core::ffi::c_void, + bits: ::core::ffi::c_int, + dst: *mut ::core::ffi::c_char, + size: usize, + ) -> *mut ::core::ffi::c_char; + pub fn pg_strong_random_init(); + pub fn pg_strong_random(buf: *mut ::core::ffi::c_void, len: usize) -> bool; + pub fn pg_check_dir(dir: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_mkdir_p( + path: *mut ::core::ffi::c_char, + omode: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pqsignal(signo: ::core::ffi::c_int, func: pqsigfunc) -> pqsigfunc; + pub fn escape_single_quotes_ascii(src: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn wait_result_to_str(exitstatus: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn wait_result_is_signal( + exit_status: ::core::ffi::c_int, + signum: ::core::ffi::c_int, + ) -> bool; + pub fn wait_result_is_any_signal( + exit_status: ::core::ffi::c_int, + include_command_not_found: bool, + ) -> bool; + pub fn wait_result_to_exit_code(exit_status: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn makeStringInfo() -> StringInfo; + pub fn initStringInfo(str_: StringInfo); + pub fn resetStringInfo(str_: StringInfo); + pub fn appendStringInfo(str_: StringInfo, fmt: *const ::core::ffi::c_char, ...); + pub fn appendStringInfoString(str_: StringInfo, s: *const ::core::ffi::c_char); + pub fn appendStringInfoChar(str_: StringInfo, ch: ::core::ffi::c_char); + pub fn appendStringInfoSpaces(str_: StringInfo, count: ::core::ffi::c_int); + pub fn appendBinaryStringInfo( + str_: StringInfo, + data: *const ::core::ffi::c_void, + datalen: ::core::ffi::c_int, + ); + pub fn appendBinaryStringInfoNT( + str_: StringInfo, + data: *const ::core::ffi::c_void, + datalen: ::core::ffi::c_int, + ); + pub fn enlargeStringInfo(str_: StringInfo, needed: ::core::ffi::c_int); + pub fn destroyStringInfo(str_: StringInfo); + pub fn message_level_is_interesting(elevel: ::core::ffi::c_int) -> bool; + pub fn errstart_cold(elevel: ::core::ffi::c_int, domain: *const ::core::ffi::c_char) -> bool; + pub fn errcode_for_file_access() -> ::core::ffi::c_int; + pub fn errcode_for_socket_access() -> ::core::ffi::c_int; + pub fn errmsg_internal(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn errmsg_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn errdetail_internal(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn errdetail_log(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn errdetail_log_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn errdetail_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn errhint_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn set_errcontext_domain(domain: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn errhidestmt(hide_stmt: bool) -> ::core::ffi::c_int; + pub fn errhidecontext(hide_ctx: bool) -> ::core::ffi::c_int; + pub fn errbacktrace() -> ::core::ffi::c_int; + pub fn errposition(cursorpos: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn internalerrposition(cursorpos: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn internalerrquery(query: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn err_generic_string( + field: ::core::ffi::c_int, + str_: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn geterrcode() -> ::core::ffi::c_int; + pub fn geterrlevel() -> ::core::ffi::c_int; + pub fn geterrposition() -> ::core::ffi::c_int; + pub fn getinternalerrposition() -> ::core::ffi::c_int; + pub fn errsave_start(context: *mut Node, domain: *const ::core::ffi::c_char) -> bool; + pub fn errsave_finish( + context: *mut Node, + filename: *const ::core::ffi::c_char, + lineno: ::core::ffi::c_int, + funcname: *const ::core::ffi::c_char, + ); + pub fn pre_format_elog_string( + errnumber: ::core::ffi::c_int, + domain: *const ::core::ffi::c_char, + ); + pub fn format_elog_string(fmt: *const ::core::ffi::c_char, ...) -> *mut ::core::ffi::c_char; + pub static mut error_context_stack: *mut ErrorContextCallback; + pub static mut PG_exception_stack: *mut sigjmp_buf; + pub fn EmitErrorReport(); + pub fn CopyErrorData() -> *mut ErrorData; + pub fn FreeErrorData(edata: *mut ErrorData); + pub fn FlushErrorState(); + pub fn ReThrowError(edata: *mut ErrorData) -> !; + pub fn ThrowErrorData(edata: *mut ErrorData); + pub fn GetErrorContextStack() -> *mut ::core::ffi::c_char; + pub static mut emit_log_hook: emit_log_hook_type; + pub static mut Log_error_verbosity: ::core::ffi::c_int; + pub static mut Log_line_prefix: *mut ::core::ffi::c_char; + pub static mut Log_destination: ::core::ffi::c_int; + pub static mut Log_destination_string: *mut ::core::ffi::c_char; + pub static mut syslog_sequence_numbers: bool; + pub static mut syslog_split_messages: bool; + pub fn log_status_format( + buf: StringInfo, + format: *const ::core::ffi::c_char, + edata: *mut ErrorData, + ); + pub fn DebugFileOpen(); + pub fn unpack_sql_state(sql_state: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn in_error_recursion_trouble() -> bool; + pub fn reset_formatted_start_time(); + pub fn get_formatted_start_time() -> *mut ::core::ffi::c_char; + pub fn get_formatted_log_time() -> *mut ::core::ffi::c_char; + pub fn get_backend_type_for_log() -> *const ::core::ffi::c_char; + pub fn check_log_of_query(edata: *mut ErrorData) -> bool; + pub fn error_severity(elevel: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn write_pipe_chunks( + data: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + dest: ::core::ffi::c_int, + ); + pub fn write_csvlog(edata: *mut ErrorData); + pub fn write_jsonlog(edata: *mut ErrorData); + pub fn write_stderr(fmt: *const ::core::ffi::c_char, ...); + pub static mut CurrentMemoryContext: MemoryContext; + pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::core::ffi::c_void; + pub fn MemoryContextAllocZero(context: MemoryContext, size: Size) -> *mut ::core::ffi::c_void; + pub fn MemoryContextAllocExtended( + context: MemoryContext, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn MemoryContextAllocAligned( + context: MemoryContext, + size: Size, + alignto: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn palloc(size: Size) -> *mut ::core::ffi::c_void; + pub fn palloc0(size: Size) -> *mut ::core::ffi::c_void; + pub fn palloc_extended(size: Size, flags: ::core::ffi::c_int) -> *mut ::core::ffi::c_void; + pub fn palloc_aligned( + size: Size, + alignto: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn repalloc(pointer: *mut ::core::ffi::c_void, size: Size) -> *mut ::core::ffi::c_void; + pub fn repalloc_extended( + pointer: *mut ::core::ffi::c_void, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn repalloc0( + pointer: *mut ::core::ffi::c_void, + oldsize: Size, + size: Size, + ) -> *mut ::core::ffi::c_void; + pub fn pfree(pointer: *mut ::core::ffi::c_void); + pub fn MemoryContextAllocHuge(context: MemoryContext, size: Size) -> *mut ::core::ffi::c_void; + pub fn repalloc_huge(pointer: *mut ::core::ffi::c_void, size: Size) + -> *mut ::core::ffi::c_void; + pub fn MemoryContextRegisterResetCallback( + context: MemoryContext, + cb: *mut MemoryContextCallback, + ); + pub fn MemoryContextStrdup( + context: MemoryContext, + string: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn pstrdup(in_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn pnstrdup(in_: *const ::core::ffi::c_char, len: Size) -> *mut ::core::ffi::c_char; + pub fn pchomp(in_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn psprintf(fmt: *const ::core::ffi::c_char, ...) -> *mut ::core::ffi::c_char; + pub static mut no_such_variable: ::core::ffi::c_int; + pub fn outNode(str_: *mut StringInfoData, obj: *const ::core::ffi::c_void); + pub fn outToken(str_: *mut StringInfoData, s: *const ::core::ffi::c_char); + pub fn outBitmapset(str_: *mut StringInfoData, bms: *const Bitmapset); + pub fn outDatum( + str_: *mut StringInfoData, + value: usize, + typlen: ::core::ffi::c_int, + typbyval: bool, + ); + pub fn nodeToString(obj: *const ::core::ffi::c_void) -> *mut ::core::ffi::c_char; + pub fn nodeToStringWithLocations(obj: *const ::core::ffi::c_void) -> *mut ::core::ffi::c_char; + pub fn bmsToString(bms: *const Bitmapset) -> *mut ::core::ffi::c_char; + pub fn stringToNode(str_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_void; + pub fn readBitmapset() -> *mut Bitmapset; + pub fn readDatum(typbyval: bool) -> usize; + pub fn readBoolCols(numCols: ::core::ffi::c_int) -> *mut bool; + pub fn readIntCols(numCols: ::core::ffi::c_int) -> *mut ::core::ffi::c_int; + pub fn readOidCols(numCols: ::core::ffi::c_int) -> *mut Oid; + pub fn readAttrNumberCols(numCols: ::core::ffi::c_int) -> *mut int16; + pub fn copyObjectImpl(from: *const ::core::ffi::c_void) -> *mut ::core::ffi::c_void; + pub fn equal(a: *const ::core::ffi::c_void, b: *const ::core::ffi::c_void) -> bool; + pub fn list_make1_impl(t: NodeTag, datum1: ListCell) -> *mut List; + pub fn list_make2_impl(t: NodeTag, datum1: ListCell, datum2: ListCell) -> *mut List; + pub fn list_make3_impl( + t: NodeTag, + datum1: ListCell, + datum2: ListCell, + datum3: ListCell, + ) -> *mut List; + pub fn list_make4_impl( + t: NodeTag, + datum1: ListCell, + datum2: ListCell, + datum3: ListCell, + datum4: ListCell, + ) -> *mut List; + pub fn list_make5_impl( + t: NodeTag, + datum1: ListCell, + datum2: ListCell, + datum3: ListCell, + datum4: ListCell, + datum5: ListCell, + ) -> *mut List; + pub fn lappend(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn lappend_int(list: *mut List, datum: ::core::ffi::c_int) -> *mut List; + pub fn lappend_oid(list: *mut List, datum: Oid) -> *mut List; + pub fn lappend_xid(list: *mut List, datum: TransactionId) -> *mut List; + pub fn list_insert_nth( + list: *mut List, + pos: ::core::ffi::c_int, + datum: *mut ::core::ffi::c_void, + ) -> *mut List; + pub fn list_insert_nth_int( + list: *mut List, + pos: ::core::ffi::c_int, + datum: ::core::ffi::c_int, + ) -> *mut List; + pub fn list_insert_nth_oid(list: *mut List, pos: ::core::ffi::c_int, datum: Oid) -> *mut List; + pub fn lcons(datum: *mut ::core::ffi::c_void, list: *mut List) -> *mut List; + pub fn lcons_int(datum: ::core::ffi::c_int, list: *mut List) -> *mut List; + pub fn lcons_oid(datum: Oid, list: *mut List) -> *mut List; + pub fn list_concat(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_copy(list1: *const List, list2: *const List) -> *mut List; + pub fn list_truncate(list: *mut List, new_size: ::core::ffi::c_int) -> *mut List; + pub fn list_member(list: *const List, datum: *const ::core::ffi::c_void) -> bool; + pub fn list_member_ptr(list: *const List, datum: *const ::core::ffi::c_void) -> bool; + pub fn list_member_int(list: *const List, datum: ::core::ffi::c_int) -> bool; + pub fn list_member_oid(list: *const List, datum: Oid) -> bool; + pub fn list_member_xid(list: *const List, datum: TransactionId) -> bool; + pub fn list_delete(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_delete_ptr(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_delete_int(list: *mut List, datum: ::core::ffi::c_int) -> *mut List; + pub fn list_delete_oid(list: *mut List, datum: Oid) -> *mut List; + pub fn list_delete_first(list: *mut List) -> *mut List; + pub fn list_delete_last(list: *mut List) -> *mut List; + pub fn list_delete_first_n(list: *mut List, n: ::core::ffi::c_int) -> *mut List; + pub fn list_delete_nth_cell(list: *mut List, n: ::core::ffi::c_int) -> *mut List; + pub fn list_delete_cell(list: *mut List, cell: *mut ListCell) -> *mut List; + pub fn list_union(list1: *const List, list2: *const List) -> *mut List; + pub fn list_union_ptr(list1: *const List, list2: *const List) -> *mut List; + pub fn list_union_int(list1: *const List, list2: *const List) -> *mut List; + pub fn list_union_oid(list1: *const List, list2: *const List) -> *mut List; + pub fn list_intersection(list1: *const List, list2: *const List) -> *mut List; + pub fn list_intersection_int(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference_ptr(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference_int(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference_oid(list1: *const List, list2: *const List) -> *mut List; + pub fn list_append_unique(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_append_unique_ptr(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_append_unique_int(list: *mut List, datum: ::core::ffi::c_int) -> *mut List; + pub fn list_append_unique_oid(list: *mut List, datum: Oid) -> *mut List; + pub fn list_concat_unique(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_unique_ptr(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_unique_int(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_unique_oid(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_deduplicate_oid(list: *mut List); + pub fn list_free(list: *mut List); + pub fn list_free_deep(list: *mut List); + pub fn list_copy(oldlist: *const List) -> *mut List; + pub fn list_copy_head(oldlist: *const List, len: ::core::ffi::c_int) -> *mut List; + pub fn list_copy_tail(oldlist: *const List, nskip: ::core::ffi::c_int) -> *mut List; + pub fn list_copy_deep(oldlist: *const List) -> *mut List; + pub fn list_sort(list: *mut List, cmp: list_sort_comparator); + pub fn list_int_cmp(p1: *const ListCell, p2: *const ListCell) -> ::core::ffi::c_int; + pub fn list_oid_cmp(p1: *const ListCell, p2: *const ListCell) -> ::core::ffi::c_int; + pub fn CreateTemplateTupleDesc(natts: ::core::ffi::c_int) -> TupleDesc; + pub fn CreateTupleDesc(natts: ::core::ffi::c_int, attrs: *mut Form_pg_attribute) -> TupleDesc; + pub fn CreateTupleDescCopy(tupdesc: TupleDesc) -> TupleDesc; + pub fn CreateTupleDescCopyConstr(tupdesc: TupleDesc) -> TupleDesc; + pub fn TupleDescCopy(dst: TupleDesc, src: TupleDesc); + pub fn TupleDescCopyEntry( + dst: TupleDesc, + dstAttno: AttrNumber, + src: TupleDesc, + srcAttno: AttrNumber, + ); + pub fn FreeTupleDesc(tupdesc: TupleDesc); + pub fn IncrTupleDescRefCount(tupdesc: TupleDesc); + pub fn DecrTupleDescRefCount(tupdesc: TupleDesc); + pub fn equalTupleDescs(tupdesc1: TupleDesc, tupdesc2: TupleDesc) -> bool; + pub fn equalRowTypes(tupdesc1: TupleDesc, tupdesc2: TupleDesc) -> bool; + pub fn hashRowType(desc: TupleDesc) -> uint32; + pub fn TupleDescInitEntry( + desc: TupleDesc, + attributeNumber: AttrNumber, + attributeName: *const ::core::ffi::c_char, + oidtypeid: Oid, + typmod: int32, + attdim: ::core::ffi::c_int, + ); + pub fn TupleDescInitBuiltinEntry( + desc: TupleDesc, + attributeNumber: AttrNumber, + attributeName: *const ::core::ffi::c_char, + oidtypeid: Oid, + typmod: int32, + attdim: ::core::ffi::c_int, + ); + pub fn TupleDescInitEntryCollation( + desc: TupleDesc, + attributeNumber: AttrNumber, + collationid: Oid, + ); + pub fn BuildDescFromLists( + names: *const List, + types: *const List, + typmods: *const List, + collations: *const List, + ) -> TupleDesc; + pub fn TupleDescGetDefault(tupdesc: TupleDesc, attnum: AttrNumber) -> *mut Node; + pub fn make_attrmap(maplen: ::core::ffi::c_int) -> *mut AttrMap; + pub fn free_attrmap(map: *mut AttrMap); + pub fn build_attrmap_by_name( + indesc: TupleDesc, + outdesc: TupleDesc, + missing_ok: bool, + ) -> *mut AttrMap; + pub fn build_attrmap_by_name_if_req( + indesc: TupleDesc, + outdesc: TupleDesc, + missing_ok: bool, + ) -> *mut AttrMap; + pub fn build_attrmap_by_position( + indesc: TupleDesc, + outdesc: TupleDesc, + msg: *const ::core::ffi::c_char, + ) -> *mut AttrMap; + pub fn ItemPointerEquals(pointer1: ItemPointer, pointer2: ItemPointer) -> bool; + pub fn ItemPointerCompare(arg1: ItemPointer, arg2: ItemPointer) -> int32; + pub fn ItemPointerInc(pointer: ItemPointer); + pub fn ItemPointerDec(pointer: ItemPointer); + pub fn HeapTupleHeaderGetCmin(tup: HeapTupleHeader) -> CommandId; + pub fn HeapTupleHeaderGetCmax(tup: HeapTupleHeader) -> CommandId; + pub fn HeapTupleHeaderAdjustCmax( + tup: HeapTupleHeader, + cmax: *mut CommandId, + iscombo: *mut bool, + ); + pub fn HeapTupleGetUpdateXid(tuple: HeapTupleHeader) -> TransactionId; + pub fn fcntl(__fd: ::core::ffi::c_int, __cmd: ::core::ffi::c_int, ...) -> ::core::ffi::c_int; + pub fn open( + __file: *const ::core::ffi::c_char, + __oflag: ::core::ffi::c_int, + ... + ) -> ::core::ffi::c_int; + pub fn openat( + __fd: ::core::ffi::c_int, + __file: *const ::core::ffi::c_char, + __oflag: ::core::ffi::c_int, + ... + ) -> ::core::ffi::c_int; + pub fn creat(__file: *const ::core::ffi::c_char, __mode: mode_t) -> ::core::ffi::c_int; + pub fn lockf( + __fd: ::core::ffi::c_int, + __cmd: ::core::ffi::c_int, + __len: off_t, + ) -> ::core::ffi::c_int; + pub fn posix_fadvise( + __fd: ::core::ffi::c_int, + __offset: off_t, + __len: off_t, + __advise: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn posix_fallocate( + __fd: ::core::ffi::c_int, + __offset: off_t, + __len: off_t, + ) -> ::core::ffi::c_int; + pub fn TransactionStartedDuringRecovery() -> bool; + pub static mut TransamVariables: *mut TransamVariablesData; + pub fn TransactionIdDidCommit(transactionId: TransactionId) -> bool; + pub fn TransactionIdDidAbort(transactionId: TransactionId) -> bool; + pub fn TransactionIdCommitTree( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *mut TransactionId, + ); + pub fn TransactionIdAsyncCommitTree( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *mut TransactionId, + lsn: XLogRecPtr, + ); + pub fn TransactionIdAbortTree( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *mut TransactionId, + ); + pub fn TransactionIdPrecedes(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdPrecedesOrEquals(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdFollows(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdFollowsOrEquals(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdLatest( + mainxid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *const TransactionId, + ) -> TransactionId; + pub fn TransactionIdGetCommitLSN(xid: TransactionId) -> XLogRecPtr; + pub fn VarsupShmemSize() -> Size; + pub fn VarsupShmemInit(); + pub fn GetNewTransactionId(isSubXact: bool) -> FullTransactionId; + pub fn AdvanceNextFullTransactionIdPastXid(xid: TransactionId); + pub fn ReadNextFullTransactionId() -> FullTransactionId; + pub fn SetTransactionIdLimit(oldest_datfrozenxid: TransactionId, oldest_datoid: Oid); + pub fn AdvanceOldestClogXid(oldest_datfrozenxid: TransactionId); + pub fn ForceTransactionIdLimitUpdate() -> bool; + pub fn GetNewObjectId() -> Oid; + pub fn StopGeneratingPinnedObjectIds(); + pub fn PageInit(page: Page, pageSize: Size, specialSize: Size); + pub fn PageIsVerifiedExtended( + page: Page, + blkno: BlockNumber, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn PageAddItemExtended( + page: Page, + item: Item, + size: Size, + offsetNumber: OffsetNumber, + flags: ::core::ffi::c_int, + ) -> OffsetNumber; + pub fn PageGetTempPage(page: Page) -> Page; + pub fn PageGetTempPageCopy(page: Page) -> Page; + pub fn PageGetTempPageCopySpecial(page: Page) -> Page; + pub fn PageRestoreTempPage(tempPage: Page, oldPage: Page); + pub fn PageRepairFragmentation(page: Page); + pub fn PageTruncateLinePointerArray(page: Page); + pub fn PageGetFreeSpace(page: Page) -> Size; + pub fn PageGetFreeSpaceForMultipleTuples(page: Page, ntups: ::core::ffi::c_int) -> Size; + pub fn PageGetExactFreeSpace(page: Page) -> Size; + pub fn PageGetHeapFreeSpace(page: Page) -> Size; + pub fn PageIndexTupleDelete(page: Page, offnum: OffsetNumber); + pub fn PageIndexMultiDelete(page: Page, itemnos: *mut OffsetNumber, nitems: ::core::ffi::c_int); + pub fn PageIndexTupleDeleteNoCompact(page: Page, offnum: OffsetNumber); + pub fn PageIndexTupleOverwrite( + page: Page, + offnum: OffsetNumber, + newtup: Item, + newsize: Size, + ) -> bool; + pub fn PageSetChecksumCopy(page: Page, blkno: BlockNumber) -> *mut ::core::ffi::c_char; + pub fn PageSetChecksumInplace(page: Page, blkno: BlockNumber); + pub fn heap_compute_data_size( + tupleDesc: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> Size; + pub fn heap_fill_tuple( + tupleDesc: TupleDesc, + values: *const Datum, + isnull: *const bool, + data: *mut ::core::ffi::c_char, + data_size: Size, + infomask: *mut uint16, + bit: *mut bits8, + ); + pub fn heap_attisnull(tup: HeapTuple, attnum: ::core::ffi::c_int, tupleDesc: TupleDesc) + -> bool; + pub fn nocachegetattr( + tup: HeapTuple, + attnum: ::core::ffi::c_int, + tupleDesc: TupleDesc, + ) -> Datum; + pub fn heap_getsysattr( + tup: HeapTuple, + attnum: ::core::ffi::c_int, + tupleDesc: TupleDesc, + isnull: *mut bool, + ) -> Datum; + pub fn getmissingattr( + tupleDesc: TupleDesc, + attnum: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn heap_copytuple(tuple: HeapTuple) -> HeapTuple; + pub fn heap_copytuple_with_tuple(src: HeapTuple, dest: HeapTuple); + pub fn heap_copy_tuple_as_datum(tuple: HeapTuple, tupleDesc: TupleDesc) -> Datum; + pub fn heap_form_tuple( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> HeapTuple; + pub fn heap_modify_tuple( + tuple: HeapTuple, + tupleDesc: TupleDesc, + replValues: *const Datum, + replIsnull: *const bool, + doReplace: *const bool, + ) -> HeapTuple; + pub fn heap_modify_tuple_by_cols( + tuple: HeapTuple, + tupleDesc: TupleDesc, + nCols: ::core::ffi::c_int, + replCols: *const ::core::ffi::c_int, + replValues: *const Datum, + replIsnull: *const bool, + ) -> HeapTuple; + pub fn heap_deform_tuple( + tuple: HeapTuple, + tupleDesc: TupleDesc, + values: *mut Datum, + isnull: *mut bool, + ); + pub fn heap_freetuple(htup: HeapTuple); + pub fn heap_form_minimal_tuple( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> MinimalTuple; + pub fn heap_free_minimal_tuple(mtup: MinimalTuple); + pub fn heap_copy_minimal_tuple(mtup: MinimalTuple) -> MinimalTuple; + pub fn heap_tuple_from_minimal_tuple(mtup: MinimalTuple) -> HeapTuple; + pub fn minimal_tuple_from_heap_tuple(htup: HeapTuple) -> MinimalTuple; + pub fn heap_expand_tuple(sourceTuple: HeapTuple, tupleDesc: TupleDesc) -> HeapTuple; + pub fn minimal_expand_tuple(sourceTuple: HeapTuple, tupleDesc: TupleDesc) -> MinimalTuple; + pub static TTSOpsVirtual: TupleTableSlotOps; + pub static TTSOpsHeapTuple: TupleTableSlotOps; + pub static TTSOpsMinimalTuple: TupleTableSlotOps; + pub static TTSOpsBufferHeapTuple: TupleTableSlotOps; + pub fn MakeTupleTableSlot( + tupleDesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecAllocTableSlot( + tupleTable: *mut *mut List, + desc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecResetTupleTable(tupleTable: *mut List, shouldFree: bool); + pub fn MakeSingleTupleTableSlot( + tupdesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecDropSingleTupleTableSlot(slot: *mut TupleTableSlot); + pub fn ExecSetSlotDescriptor(slot: *mut TupleTableSlot, tupdesc: TupleDesc); + pub fn ExecStoreHeapTuple( + tuple: HeapTuple, + slot: *mut TupleTableSlot, + shouldFree: bool, + ) -> *mut TupleTableSlot; + pub fn ExecForceStoreHeapTuple(tuple: HeapTuple, slot: *mut TupleTableSlot, shouldFree: bool); + pub fn ExecStoreBufferHeapTuple( + tuple: HeapTuple, + slot: *mut TupleTableSlot, + buffer: Buffer, + ) -> *mut TupleTableSlot; + pub fn ExecStorePinnedBufferHeapTuple( + tuple: HeapTuple, + slot: *mut TupleTableSlot, + buffer: Buffer, + ) -> *mut TupleTableSlot; + pub fn ExecStoreMinimalTuple( + mtup: MinimalTuple, + slot: *mut TupleTableSlot, + shouldFree: bool, + ) -> *mut TupleTableSlot; + pub fn ExecForceStoreMinimalTuple( + mtup: MinimalTuple, + slot: *mut TupleTableSlot, + shouldFree: bool, + ); + pub fn ExecStoreVirtualTuple(slot: *mut TupleTableSlot) -> *mut TupleTableSlot; + pub fn ExecStoreAllNullTuple(slot: *mut TupleTableSlot) -> *mut TupleTableSlot; + pub fn ExecStoreHeapTupleDatum(data: Datum, slot: *mut TupleTableSlot); + pub fn ExecFetchSlotHeapTuple( + slot: *mut TupleTableSlot, + materialize: bool, + shouldFree: *mut bool, + ) -> HeapTuple; + pub fn ExecFetchSlotMinimalTuple( + slot: *mut TupleTableSlot, + shouldFree: *mut bool, + ) -> MinimalTuple; + pub fn ExecFetchSlotHeapTupleDatum(slot: *mut TupleTableSlot) -> Datum; + pub fn slot_getmissingattrs( + slot: *mut TupleTableSlot, + startAttNum: ::core::ffi::c_int, + lastAttNum: ::core::ffi::c_int, + ); + pub fn slot_getsomeattrs_int(slot: *mut TupleTableSlot, attnum: ::core::ffi::c_int); + pub fn bms_copy(a: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_equal(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_compare(a: *const Bitmapset, b: *const Bitmapset) -> ::core::ffi::c_int; + pub fn bms_make_singleton(x: ::core::ffi::c_int) -> *mut Bitmapset; + pub fn bms_free(a: *mut Bitmapset); + pub fn bms_union(a: *const Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_intersect(a: *const Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_difference(a: *const Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_is_subset(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_subset_compare(a: *const Bitmapset, b: *const Bitmapset) -> BMS_Comparison::Type; + pub fn bms_is_member(x: ::core::ffi::c_int, a: *const Bitmapset) -> bool; + pub fn bms_member_index(a: *mut Bitmapset, x: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn bms_overlap(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_overlap_list(a: *const Bitmapset, b: *const List) -> bool; + pub fn bms_nonempty_difference(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_singleton_member(a: *const Bitmapset) -> ::core::ffi::c_int; + pub fn bms_get_singleton_member(a: *const Bitmapset, member: *mut ::core::ffi::c_int) -> bool; + pub fn bms_num_members(a: *const Bitmapset) -> ::core::ffi::c_int; + pub fn bms_membership(a: *const Bitmapset) -> BMS_Membership::Type; + pub fn bms_add_member(a: *mut Bitmapset, x: ::core::ffi::c_int) -> *mut Bitmapset; + pub fn bms_del_member(a: *mut Bitmapset, x: ::core::ffi::c_int) -> *mut Bitmapset; + pub fn bms_add_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_replace_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_add_range( + a: *mut Bitmapset, + lower: ::core::ffi::c_int, + upper: ::core::ffi::c_int, + ) -> *mut Bitmapset; + pub fn bms_int_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_del_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_join(a: *mut Bitmapset, b: *mut Bitmapset) -> *mut Bitmapset; + pub fn bms_next_member(a: *const Bitmapset, prevbit: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn bms_prev_member(a: *const Bitmapset, prevbit: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn bms_hash_value(a: *const Bitmapset) -> uint32; + pub fn bitmap_hash(key: *const ::core::ffi::c_void, keysize: Size) -> uint32; + pub fn bitmap_match( + key1: *const ::core::ffi::c_void, + key2: *const ::core::ffi::c_void, + keysize: Size, + ) -> ::core::ffi::c_int; + pub fn convert_tuples_by_position( + indesc: TupleDesc, + outdesc: TupleDesc, + msg: *const ::core::ffi::c_char, + ) -> *mut TupleConversionMap; + pub fn convert_tuples_by_name(indesc: TupleDesc, outdesc: TupleDesc) + -> *mut TupleConversionMap; + pub fn convert_tuples_by_name_attrmap( + indesc: TupleDesc, + outdesc: TupleDesc, + attrMap: *mut AttrMap, + ) -> *mut TupleConversionMap; + pub fn execute_attr_map_tuple(tuple: HeapTuple, map: *mut TupleConversionMap) -> HeapTuple; + pub fn execute_attr_map_slot( + attrMap: *mut AttrMap, + in_slot: *mut TupleTableSlot, + out_slot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn execute_attr_map_cols(attrMap: *mut AttrMap, in_cols: *mut Bitmapset) -> *mut Bitmapset; + pub fn free_conversion_map(map: *mut TupleConversionMap); + pub fn clock() -> clock_t; + pub fn time(__timer: *mut time_t) -> time_t; + pub fn difftime(__time1: time_t, __time0: time_t) -> f64; + pub fn mktime(__tp: *mut tm) -> time_t; + pub fn strftime( + __s: *mut ::core::ffi::c_char, + __maxsize: usize, + __format: *const ::core::ffi::c_char, + __tp: *const tm, + ) -> usize; + pub fn strftime_l( + __s: *mut ::core::ffi::c_char, + __maxsize: usize, + __format: *const ::core::ffi::c_char, + __tp: *const tm, + __loc: locale_t, + ) -> usize; + pub fn gmtime(__timer: *const time_t) -> *mut tm; + pub fn localtime(__timer: *const time_t) -> *mut tm; + pub fn gmtime_r(__timer: *const time_t, __tp: *mut tm) -> *mut tm; + pub fn localtime_r(__timer: *const time_t, __tp: *mut tm) -> *mut tm; + pub fn asctime(__tp: *const tm) -> *mut ::core::ffi::c_char; + pub fn ctime(__timer: *const time_t) -> *mut ::core::ffi::c_char; + pub fn asctime_r(__tp: *const tm, __buf: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn ctime_r( + __timer: *const time_t, + __buf: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub static mut __tzname: [*mut ::core::ffi::c_char; 2usize]; + pub static mut __daylight: ::core::ffi::c_int; + pub static mut __timezone: ::core::ffi::c_long; + pub static mut tzname: [*mut ::core::ffi::c_char; 2usize]; + pub fn tzset(); + pub static mut daylight: ::core::ffi::c_int; + pub static mut timezone: ::core::ffi::c_long; + pub fn timegm(__tp: *mut tm) -> time_t; + pub fn timelocal(__tp: *mut tm) -> time_t; + pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn nanosleep( + __requested_time: *const timespec, + __remaining: *mut timespec, + ) -> ::core::ffi::c_int; + pub fn clock_getres(__clock_id: clockid_t, __res: *mut timespec) -> ::core::ffi::c_int; + pub fn clock_gettime(__clock_id: clockid_t, __tp: *mut timespec) -> ::core::ffi::c_int; + pub fn clock_settime(__clock_id: clockid_t, __tp: *const timespec) -> ::core::ffi::c_int; + pub fn clock_nanosleep( + __clock_id: clockid_t, + __flags: ::core::ffi::c_int, + __req: *const timespec, + __rem: *mut timespec, + ) -> ::core::ffi::c_int; + pub fn clock_getcpuclockid(__pid: pid_t, __clock_id: *mut clockid_t) -> ::core::ffi::c_int; + pub fn timer_create( + __clock_id: clockid_t, + __evp: *mut sigevent, + __timerid: *mut timer_t, + ) -> ::core::ffi::c_int; + pub fn timer_delete(__timerid: timer_t) -> ::core::ffi::c_int; + pub fn timer_settime( + __timerid: timer_t, + __flags: ::core::ffi::c_int, + __value: *const itimerspec, + __ovalue: *mut itimerspec, + ) -> ::core::ffi::c_int; + pub fn timer_gettime(__timerid: timer_t, __value: *mut itimerspec) -> ::core::ffi::c_int; + pub fn timer_getoverrun(__timerid: timer_t) -> ::core::ffi::c_int; + pub fn timespec_get(__ts: *mut timespec, __base: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub static mut pgBufferUsage: BufferUsage; + pub static mut pgWalUsage: WalUsage; + pub fn InstrAlloc( + n: ::core::ffi::c_int, + instrument_options: ::core::ffi::c_int, + async_mode: bool, + ) -> *mut Instrumentation; + pub fn InstrInit(instr: *mut Instrumentation, instrument_options: ::core::ffi::c_int); + pub fn InstrStartNode(instr: *mut Instrumentation); + pub fn InstrStopNode(instr: *mut Instrumentation, nTuples: f64); + pub fn InstrUpdateTupleCount(instr: *mut Instrumentation, nTuples: f64); + pub fn InstrEndLoop(instr: *mut Instrumentation); + pub fn InstrAggNode(dst: *mut Instrumentation, add: *mut Instrumentation); + pub fn InstrStartParallelQuery(); + pub fn InstrEndParallelQuery(bufusage: *mut BufferUsage, walusage: *mut WalUsage); + pub fn InstrAccumParallelQuery(bufusage: *mut BufferUsage, walusage: *mut WalUsage); + pub fn BufferUsageAccumDiff( + dst: *mut BufferUsage, + add: *const BufferUsage, + sub: *const BufferUsage, + ); + pub fn WalUsageAccumDiff(dst: *mut WalUsage, add: *const WalUsage, sub: *const WalUsage); + pub fn fmgr_info(functionId: Oid, finfo: *mut FmgrInfo); + pub fn fmgr_info_cxt(functionId: Oid, finfo: *mut FmgrInfo, mcxt: MemoryContext); + pub fn fmgr_info_copy(dstinfo: *mut FmgrInfo, srcinfo: *mut FmgrInfo, destcxt: MemoryContext); + pub fn fmgr_symbol( + functionId: Oid, + mod_: *mut *mut ::core::ffi::c_char, + fn_: *mut *mut ::core::ffi::c_char, + ); + pub fn pg_detoast_datum(datum: *mut varlena) -> *mut varlena; + pub fn pg_detoast_datum_copy(datum: *mut varlena) -> *mut varlena; + pub fn pg_detoast_datum_slice(datum: *mut varlena, first: int32, count: int32) -> *mut varlena; + pub fn pg_detoast_datum_packed(datum: *mut varlena) -> *mut varlena; + pub fn _PG_init(); + pub fn _PG_fini(); + pub fn DirectFunctionCall1Coll(func: PGFunction, collation: Oid, arg1: Datum) -> Datum; + pub fn DirectFunctionCall2Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + ) -> Datum; + pub fn DirectFunctionCall3Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + ) -> Datum; + pub fn DirectFunctionCall4Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + ) -> Datum; + pub fn DirectFunctionCall5Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + ) -> Datum; + pub fn DirectFunctionCall6Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + ) -> Datum; + pub fn DirectFunctionCall7Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + ) -> Datum; + pub fn DirectFunctionCall8Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + ) -> Datum; + pub fn DirectFunctionCall9Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + arg9: Datum, + ) -> Datum; + pub fn CallerFInfoFunctionCall1( + func: PGFunction, + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + ) -> Datum; + pub fn CallerFInfoFunctionCall2( + func: PGFunction, + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + ) -> Datum; + pub fn FunctionCall0Coll(flinfo: *mut FmgrInfo, collation: Oid) -> Datum; + pub fn FunctionCall1Coll(flinfo: *mut FmgrInfo, collation: Oid, arg1: Datum) -> Datum; + pub fn FunctionCall2Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + ) -> Datum; + pub fn FunctionCall3Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + ) -> Datum; + pub fn FunctionCall4Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + ) -> Datum; + pub fn FunctionCall5Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + ) -> Datum; + pub fn FunctionCall6Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + ) -> Datum; + pub fn FunctionCall7Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + ) -> Datum; + pub fn FunctionCall8Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + ) -> Datum; + pub fn FunctionCall9Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + arg9: Datum, + ) -> Datum; + pub fn OidFunctionCall0Coll(functionId: Oid, collation: Oid) -> Datum; + pub fn OidFunctionCall1Coll(functionId: Oid, collation: Oid, arg1: Datum) -> Datum; + pub fn OidFunctionCall2Coll(functionId: Oid, collation: Oid, arg1: Datum, arg2: Datum) + -> Datum; + pub fn OidFunctionCall3Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + ) -> Datum; + pub fn OidFunctionCall4Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + ) -> Datum; + pub fn OidFunctionCall5Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + ) -> Datum; + pub fn OidFunctionCall6Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + ) -> Datum; + pub fn OidFunctionCall7Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + ) -> Datum; + pub fn OidFunctionCall8Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + ) -> Datum; + pub fn OidFunctionCall9Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + arg9: Datum, + ) -> Datum; + pub fn InputFunctionCall( + flinfo: *mut FmgrInfo, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn InputFunctionCallSafe( + flinfo: *mut FmgrInfo, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + escontext: fmNodePtr, + result: *mut Datum, + ) -> bool; + pub fn DirectInputFunctionCallSafe( + func: PGFunction, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + escontext: fmNodePtr, + result: *mut Datum, + ) -> bool; + pub fn OidInputFunctionCall( + functionId: Oid, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn OutputFunctionCall(flinfo: *mut FmgrInfo, val: Datum) -> *mut ::core::ffi::c_char; + pub fn OidOutputFunctionCall(functionId: Oid, val: Datum) -> *mut ::core::ffi::c_char; + pub fn ReceiveFunctionCall( + flinfo: *mut FmgrInfo, + buf: fmStringInfo, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn OidReceiveFunctionCall( + functionId: Oid, + buf: fmStringInfo, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn SendFunctionCall(flinfo: *mut FmgrInfo, val: Datum) -> *mut bytea; + pub fn OidSendFunctionCall(functionId: Oid, val: Datum) -> *mut bytea; + pub fn fetch_finfo_record( + filehandle: *mut ::core::ffi::c_void, + funcname: *const ::core::ffi::c_char, + ) -> *const Pg_finfo_record; + pub fn fmgr_internal_function(proname: *const ::core::ffi::c_char) -> Oid; + pub fn get_fn_expr_rettype(flinfo: *mut FmgrInfo) -> Oid; + pub fn get_fn_expr_argtype(flinfo: *mut FmgrInfo, argnum: ::core::ffi::c_int) -> Oid; + pub fn get_call_expr_argtype(expr: fmNodePtr, argnum: ::core::ffi::c_int) -> Oid; + pub fn get_fn_expr_arg_stable(flinfo: *mut FmgrInfo, argnum: ::core::ffi::c_int) -> bool; + pub fn get_call_expr_arg_stable(expr: fmNodePtr, argnum: ::core::ffi::c_int) -> bool; + pub fn get_fn_expr_variadic(flinfo: *mut FmgrInfo) -> bool; + pub fn get_fn_opclass_options(flinfo: *mut FmgrInfo) -> *mut bytea; + pub fn has_fn_opclass_options(flinfo: *mut FmgrInfo) -> bool; + pub fn set_fn_opclass_options(flinfo: *mut FmgrInfo, options: *mut bytea); + pub fn CheckFunctionValidatorAccess(validatorOid: Oid, functionOid: Oid) -> bool; + pub static mut Dynamic_library_path: *mut ::core::ffi::c_char; + pub fn load_external_function( + filename: *const ::core::ffi::c_char, + funcname: *const ::core::ffi::c_char, + signalNotFound: bool, + filehandle: *mut *mut ::core::ffi::c_void, + ) -> *mut ::core::ffi::c_void; + pub fn lookup_external_function( + filehandle: *mut ::core::ffi::c_void, + funcname: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_void; + pub fn load_file(filename: *const ::core::ffi::c_char, restricted: bool); + pub fn find_rendezvous_variable( + varName: *const ::core::ffi::c_char, + ) -> *mut *mut ::core::ffi::c_void; + pub fn EstimateLibraryStateSpace() -> Size; + pub fn SerializeLibraryState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreLibraryState(start_address: *mut ::core::ffi::c_char); + pub fn AggCheckCallContext( + fcinfo: FunctionCallInfo, + aggcontext: *mut MemoryContext, + ) -> ::core::ffi::c_int; + pub fn AggGetAggref(fcinfo: FunctionCallInfo) -> fmAggrefPtr; + pub fn AggGetTempMemoryContext(fcinfo: FunctionCallInfo) -> MemoryContext; + pub fn AggStateIsShared(fcinfo: FunctionCallInfo) -> bool; + pub fn AggRegisterCallback( + fcinfo: FunctionCallInfo, + func: fmExprContextCallbackFunction, + arg: Datum, + ); + pub static mut needs_fmgr_hook: needs_fmgr_hook_type; + pub static mut fmgr_hook: fmgr_hook_type; + pub fn slist_delete(head: *mut slist_head, node: *const slist_node); + pub fn pairingheap_allocate( + compare: pairingheap_comparator, + arg: *mut ::core::ffi::c_void, + ) -> *mut pairingheap; + pub fn pairingheap_free(heap: *mut pairingheap); + pub fn pairingheap_add(heap: *mut pairingheap, node: *mut pairingheap_node); + pub fn pairingheap_first(heap: *mut pairingheap) -> *mut pairingheap_node; + pub fn pairingheap_remove_first(heap: *mut pairingheap) -> *mut pairingheap_node; + pub fn pairingheap_remove(heap: *mut pairingheap, node: *mut pairingheap_node); + pub fn makeParamList(numParams: ::core::ffi::c_int) -> ParamListInfo; + pub fn copyParamList(from: ParamListInfo) -> ParamListInfo; + pub fn EstimateParamListSpace(paramLI: ParamListInfo) -> Size; + pub fn SerializeParamList(paramLI: ParamListInfo, start_address: *mut *mut ::core::ffi::c_char); + pub fn RestoreParamList(start_address: *mut *mut ::core::ffi::c_char) -> ParamListInfo; + pub fn BuildParamLogString( + params: ParamListInfo, + knownTextValues: *mut *mut ::core::ffi::c_char, + maxlen: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn ParamsErrorCallback(arg: *mut ::core::ffi::c_void); + pub static forkNames: [*const ::core::ffi::c_char; 0usize]; + pub fn forkname_to_number(forkName: *const ::core::ffi::c_char) -> ForkNumber::Type; + pub fn forkname_chars( + str_: *const ::core::ffi::c_char, + fork: *mut ForkNumber::Type, + ) -> ::core::ffi::c_int; + pub fn GetDatabasePath(dbOid: Oid, spcOid: Oid) -> *mut ::core::ffi::c_char; + pub fn GetRelationPath( + dbOid: Oid, + spcOid: Oid, + relNumber: RelFileNumber, + procNumber: ::core::ffi::c_int, + forkNumber: ForkNumber::Type, + ) -> *mut ::core::ffi::c_char; + pub static mut dynamic_shared_memory_type: ::core::ffi::c_int; + pub static mut min_dynamic_shared_memory: ::core::ffi::c_int; + pub fn dsm_impl_op( + op: dsm_op::Type, + handle: dsm_handle, + request_size: Size, + impl_private: *mut *mut ::core::ffi::c_void, + mapped_address: *mut *mut ::core::ffi::c_void, + mapped_size: *mut Size, + elevel: ::core::ffi::c_int, + ) -> bool; + pub fn dsm_impl_pin_segment( + handle: dsm_handle, + impl_private: *mut ::core::ffi::c_void, + impl_private_pm_handle: *mut *mut ::core::ffi::c_void, + ); + pub fn dsm_impl_unpin_segment(handle: dsm_handle, impl_private: *mut *mut ::core::ffi::c_void); + pub fn dsm_cleanup_using_control_segment(old_control_handle: dsm_handle); + pub fn dsm_postmaster_startup(arg1: *mut PGShmemHeader); + pub fn dsm_backend_shutdown(); + pub fn dsm_detach_all(); + pub fn dsm_estimate_size() -> usize; + pub fn dsm_shmem_init(); + pub fn dsm_create(size: Size, flags: ::core::ffi::c_int) -> *mut dsm_segment; + pub fn dsm_attach(h: dsm_handle) -> *mut dsm_segment; + pub fn dsm_detach(seg: *mut dsm_segment); + pub fn dsm_pin_mapping(seg: *mut dsm_segment); + pub fn dsm_unpin_mapping(seg: *mut dsm_segment); + pub fn dsm_pin_segment(seg: *mut dsm_segment); + pub fn dsm_unpin_segment(handle: dsm_handle); + pub fn dsm_find_mapping(handle: dsm_handle) -> *mut dsm_segment; + pub fn dsm_segment_address(seg: *mut dsm_segment) -> *mut ::core::ffi::c_void; + pub fn dsm_segment_map_length(seg: *mut dsm_segment) -> Size; + pub fn dsm_segment_handle(seg: *mut dsm_segment) -> dsm_handle; + pub fn on_dsm_detach(seg: *mut dsm_segment, function: on_dsm_detach_callback, arg: Datum); + pub fn cancel_on_dsm_detach( + seg: *mut dsm_segment, + function: on_dsm_detach_callback, + arg: Datum, + ); + pub fn reset_on_dsm_detach(); + pub fn dsa_create_ext( + tranche_id: ::core::ffi::c_int, + init_segment_size: usize, + max_segment_size: usize, + ) -> *mut dsa_area; + pub fn dsa_create_in_place_ext( + place: *mut ::core::ffi::c_void, + size: usize, + tranche_id: ::core::ffi::c_int, + segment: *mut dsm_segment, + init_segment_size: usize, + max_segment_size: usize, + ) -> *mut dsa_area; + pub fn dsa_attach(handle: dsa_handle) -> *mut dsa_area; + pub fn dsa_attach_in_place( + place: *mut ::core::ffi::c_void, + segment: *mut dsm_segment, + ) -> *mut dsa_area; + pub fn dsa_release_in_place(place: *mut ::core::ffi::c_void); + pub fn dsa_on_dsm_detach_release_in_place(arg1: *mut dsm_segment, arg2: Datum); + pub fn dsa_on_shmem_exit_release_in_place(arg1: ::core::ffi::c_int, arg2: Datum); + pub fn dsa_pin_mapping(area: *mut dsa_area); + pub fn dsa_detach(area: *mut dsa_area); + pub fn dsa_pin(area: *mut dsa_area); + pub fn dsa_unpin(area: *mut dsa_area); + pub fn dsa_set_size_limit(area: *mut dsa_area, limit: usize); + pub fn dsa_minimum_size() -> usize; + pub fn dsa_get_handle(area: *mut dsa_area) -> dsa_handle; + pub fn dsa_allocate_extended( + area: *mut dsa_area, + size: usize, + flags: ::core::ffi::c_int, + ) -> dsa_pointer; + pub fn dsa_free(area: *mut dsa_area, dp: dsa_pointer); + pub fn dsa_get_address(area: *mut dsa_area, dp: dsa_pointer) -> *mut ::core::ffi::c_void; + pub fn dsa_get_total_size(area: *mut dsa_area) -> usize; + pub fn dsa_trim(area: *mut dsa_area); + pub fn dsa_dump(area: *mut dsa_area); + pub fn tbm_create(maxbytes: ::core::ffi::c_long, dsa: *mut dsa_area) -> *mut TIDBitmap; + pub fn tbm_free(tbm: *mut TIDBitmap); + pub fn tbm_free_shared_area(dsa: *mut dsa_area, dp: dsa_pointer); + pub fn tbm_add_tuples( + tbm: *mut TIDBitmap, + tids: ItemPointer, + ntids: ::core::ffi::c_int, + recheck: bool, + ); + pub fn tbm_add_page(tbm: *mut TIDBitmap, pageno: BlockNumber); + pub fn tbm_union(a: *mut TIDBitmap, b: *const TIDBitmap); + pub fn tbm_intersect(a: *mut TIDBitmap, b: *const TIDBitmap); + pub fn tbm_is_empty(tbm: *const TIDBitmap) -> bool; + pub fn tbm_begin_iterate(tbm: *mut TIDBitmap) -> *mut TBMIterator; + pub fn tbm_prepare_shared_iterate(tbm: *mut TIDBitmap) -> dsa_pointer; + pub fn tbm_iterate(iterator: *mut TBMIterator) -> *mut TBMIterateResult; + pub fn tbm_shared_iterate(iterator: *mut TBMSharedIterator) -> *mut TBMIterateResult; + pub fn tbm_end_iterate(iterator: *mut TBMIterator); + pub fn tbm_end_shared_iterate(iterator: *mut TBMSharedIterator); + pub fn tbm_attach_shared_iterate(dsa: *mut dsa_area, dp: dsa_pointer) + -> *mut TBMSharedIterator; + pub fn tbm_calculate_entries(maxbytes: f64) -> ::core::ffi::c_long; + pub static mut MyProcNumber: ProcNumber; + pub static mut ParallelLeaderProcNumber: ProcNumber; + pub fn s_lock( + lock: *mut slock_t, + file: *const ::core::ffi::c_char, + line: ::core::ffi::c_int, + func: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn set_spins_per_delay(shared_spins_per_delay: ::core::ffi::c_int); + pub fn update_spins_per_delay(shared_spins_per_delay: ::core::ffi::c_int) + -> ::core::ffi::c_int; + pub fn perform_spin_delay(status: *mut SpinDelayStatus); + pub fn finish_spin_delay(status: *mut SpinDelayStatus); + pub fn SpinlockSemas() -> ::core::ffi::c_int; + pub fn SpinlockSemaSize() -> Size; + pub fn ConditionVariableInit(cv: *mut ConditionVariable); + pub fn ConditionVariableSleep(cv: *mut ConditionVariable, wait_event_info: uint32); + pub fn ConditionVariableTimedSleep( + cv: *mut ConditionVariable, + timeout: ::core::ffi::c_long, + wait_event_info: uint32, + ) -> bool; + pub fn ConditionVariableCancelSleep() -> bool; + pub fn ConditionVariablePrepareToSleep(cv: *mut ConditionVariable); + pub fn ConditionVariableSignal(cv: *mut ConditionVariable); + pub fn ConditionVariableBroadcast(cv: *mut ConditionVariable); + pub fn hash_create( + tabname: *const ::core::ffi::c_char, + nelem: ::core::ffi::c_long, + info: *const HASHCTL, + flags: ::core::ffi::c_int, + ) -> *mut HTAB; + pub fn hash_destroy(hashp: *mut HTAB); + pub fn hash_stats(where_: *const ::core::ffi::c_char, hashp: *mut HTAB); + pub fn hash_search( + hashp: *mut HTAB, + keyPtr: *const ::core::ffi::c_void, + action: HASHACTION::Type, + foundPtr: *mut bool, + ) -> *mut ::core::ffi::c_void; + pub fn get_hash_value(hashp: *mut HTAB, keyPtr: *const ::core::ffi::c_void) -> uint32; + pub fn hash_search_with_hash_value( + hashp: *mut HTAB, + keyPtr: *const ::core::ffi::c_void, + hashvalue: uint32, + action: HASHACTION::Type, + foundPtr: *mut bool, + ) -> *mut ::core::ffi::c_void; + pub fn hash_update_hash_key( + hashp: *mut HTAB, + existingEntry: *mut ::core::ffi::c_void, + newKeyPtr: *const ::core::ffi::c_void, + ) -> bool; + pub fn hash_get_num_entries(hashp: *mut HTAB) -> ::core::ffi::c_long; + pub fn hash_seq_init(status: *mut HASH_SEQ_STATUS, hashp: *mut HTAB); + pub fn hash_seq_search(status: *mut HASH_SEQ_STATUS) -> *mut ::core::ffi::c_void; + pub fn hash_seq_term(status: *mut HASH_SEQ_STATUS); + pub fn hash_freeze(hashp: *mut HTAB); + pub fn hash_estimate_size(num_entries: ::core::ffi::c_long, entrysize: Size) -> Size; + pub fn hash_select_dirsize(num_entries: ::core::ffi::c_long) -> ::core::ffi::c_long; + pub fn hash_get_shared_size(info: *mut HASHCTL, flags: ::core::ffi::c_int) -> Size; + pub fn AtEOXact_HashTables(isCommit: bool); + pub fn AtEOSubXact_HashTables(isCommit: bool, nestDepth: ::core::ffi::c_int); + pub fn create_queryEnv() -> *mut QueryEnvironment; + pub fn get_visible_ENR_metadata( + queryEnv: *mut QueryEnvironment, + refname: *const ::core::ffi::c_char, + ) -> EphemeralNamedRelationMetadata; + pub fn register_ENR(queryEnv: *mut QueryEnvironment, enr: EphemeralNamedRelation); + pub fn unregister_ENR(queryEnv: *mut QueryEnvironment, name: *const ::core::ffi::c_char); + pub fn get_ENR( + queryEnv: *mut QueryEnvironment, + name: *const ::core::ffi::c_char, + ) -> EphemeralNamedRelation; + pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn readv( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + ) -> isize; + pub fn writev( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + ) -> isize; + pub fn preadv( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + __offset: __off_t, + ) -> isize; + pub fn pwritev( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + __offset: __off_t, + ) -> isize; + pub fn access( + __name: *const ::core::ffi::c_char, + __type: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn faccessat( + __fd: ::core::ffi::c_int, + __file: *const ::core::ffi::c_char, + __type: ::core::ffi::c_int, + __flag: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn lseek( + __fd: ::core::ffi::c_int, + __offset: __off_t, + __whence: ::core::ffi::c_int, + ) -> __off_t; + pub fn close(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn closefrom(__lowfd: ::core::ffi::c_int); + pub fn read( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __nbytes: usize, + ) -> isize; + pub fn write(__fd: ::core::ffi::c_int, __buf: *const ::core::ffi::c_void, __n: usize) -> isize; + pub fn pread( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __nbytes: usize, + __offset: __off_t, + ) -> isize; + pub fn pwrite( + __fd: ::core::ffi::c_int, + __buf: *const ::core::ffi::c_void, + __n: usize, + __offset: __off_t, + ) -> isize; + pub fn pipe(__pipedes: *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn alarm(__seconds: ::core::ffi::c_uint) -> ::core::ffi::c_uint; + pub fn sleep(__seconds: ::core::ffi::c_uint) -> ::core::ffi::c_uint; + pub fn ualarm(__value: __useconds_t, __interval: __useconds_t) -> __useconds_t; + pub fn usleep(__useconds: __useconds_t) -> ::core::ffi::c_int; + pub fn pause() -> ::core::ffi::c_int; + pub fn chown( + __file: *const ::core::ffi::c_char, + __owner: __uid_t, + __group: __gid_t, + ) -> ::core::ffi::c_int; + pub fn fchown( + __fd: ::core::ffi::c_int, + __owner: __uid_t, + __group: __gid_t, + ) -> ::core::ffi::c_int; + pub fn lchown( + __file: *const ::core::ffi::c_char, + __owner: __uid_t, + __group: __gid_t, + ) -> ::core::ffi::c_int; + pub fn fchownat( + __fd: ::core::ffi::c_int, + __file: *const ::core::ffi::c_char, + __owner: __uid_t, + __group: __gid_t, + __flag: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn chdir(__path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn fchdir(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn getcwd(__buf: *mut ::core::ffi::c_char, __size: usize) -> *mut ::core::ffi::c_char; + pub fn getwd(__buf: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn dup(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn dup2(__fd: ::core::ffi::c_int, __fd2: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub static mut __environ: *mut *mut ::core::ffi::c_char; + pub fn execve( + __path: *const ::core::ffi::c_char, + __argv: *const *mut ::core::ffi::c_char, + __envp: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn fexecve( + __fd: ::core::ffi::c_int, + __argv: *const *mut ::core::ffi::c_char, + __envp: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn execv( + __path: *const ::core::ffi::c_char, + __argv: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn execle( + __path: *const ::core::ffi::c_char, + __arg: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn execl( + __path: *const ::core::ffi::c_char, + __arg: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn execvp( + __file: *const ::core::ffi::c_char, + __argv: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn execlp( + __file: *const ::core::ffi::c_char, + __arg: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn nice(__inc: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn _exit(__status: ::core::ffi::c_int) -> !; + pub fn pathconf( + __path: *const ::core::ffi::c_char, + __name: ::core::ffi::c_int, + ) -> ::core::ffi::c_long; + pub fn fpathconf(__fd: ::core::ffi::c_int, __name: ::core::ffi::c_int) -> ::core::ffi::c_long; + pub fn sysconf(__name: ::core::ffi::c_int) -> ::core::ffi::c_long; + pub fn confstr( + __name: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> usize; + pub fn getpid() -> __pid_t; + pub fn getppid() -> __pid_t; + pub fn getpgrp() -> __pid_t; + pub fn __getpgid(__pid: __pid_t) -> __pid_t; + pub fn getpgid(__pid: __pid_t) -> __pid_t; + pub fn setpgid(__pid: __pid_t, __pgid: __pid_t) -> ::core::ffi::c_int; + pub fn setpgrp() -> ::core::ffi::c_int; + pub fn setsid() -> __pid_t; + pub fn getsid(__pid: __pid_t) -> __pid_t; + pub fn getuid() -> __uid_t; + pub fn geteuid() -> __uid_t; + pub fn getgid() -> __gid_t; + pub fn getegid() -> __gid_t; + pub fn getgroups(__size: ::core::ffi::c_int, __list: *mut __gid_t) -> ::core::ffi::c_int; + pub fn setuid(__uid: __uid_t) -> ::core::ffi::c_int; + pub fn setreuid(__ruid: __uid_t, __euid: __uid_t) -> ::core::ffi::c_int; + pub fn seteuid(__uid: __uid_t) -> ::core::ffi::c_int; + pub fn setgid(__gid: __gid_t) -> ::core::ffi::c_int; + pub fn setregid(__rgid: __gid_t, __egid: __gid_t) -> ::core::ffi::c_int; + pub fn setegid(__gid: __gid_t) -> ::core::ffi::c_int; + pub fn fork() -> __pid_t; + pub fn ttyname(__fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn ttyname_r( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + ) -> ::core::ffi::c_int; + pub fn isatty(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ttyslot() -> ::core::ffi::c_int; + pub fn link( + __from: *const ::core::ffi::c_char, + __to: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn linkat( + __fromfd: ::core::ffi::c_int, + __from: *const ::core::ffi::c_char, + __tofd: ::core::ffi::c_int, + __to: *const ::core::ffi::c_char, + __flags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn symlink( + __from: *const ::core::ffi::c_char, + __to: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn readlink( + __path: *const ::core::ffi::c_char, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> isize; + pub fn symlinkat( + __from: *const ::core::ffi::c_char, + __tofd: ::core::ffi::c_int, + __to: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn readlinkat( + __fd: ::core::ffi::c_int, + __path: *const ::core::ffi::c_char, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> isize; + pub fn unlink(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn unlinkat( + __fd: ::core::ffi::c_int, + __name: *const ::core::ffi::c_char, + __flag: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn rmdir(__path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn tcgetpgrp(__fd: ::core::ffi::c_int) -> __pid_t; + pub fn tcsetpgrp(__fd: ::core::ffi::c_int, __pgrp_id: __pid_t) -> ::core::ffi::c_int; + pub fn getlogin() -> *mut ::core::ffi::c_char; + pub fn getlogin_r(__name: *mut ::core::ffi::c_char, __name_len: usize) -> ::core::ffi::c_int; + pub fn setlogin(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub static mut optarg: *mut ::core::ffi::c_char; + pub static mut optind: ::core::ffi::c_int; + pub static mut opterr: ::core::ffi::c_int; + pub static mut optopt: ::core::ffi::c_int; + pub fn getopt( + ___argc: ::core::ffi::c_int, + ___argv: *const *mut ::core::ffi::c_char, + __shortopts: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn gethostname(__name: *mut ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn sethostname(__name: *const ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn sethostid(__id: ::core::ffi::c_long) -> ::core::ffi::c_int; + pub fn getdomainname(__name: *mut ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn setdomainname(__name: *const ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn vhangup() -> ::core::ffi::c_int; + pub fn revoke(__file: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn profil( + __sample_buffer: *mut ::core::ffi::c_ushort, + __size: usize, + __offset: usize, + __scale: ::core::ffi::c_uint, + ) -> ::core::ffi::c_int; + pub fn acct(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getusershell() -> *mut ::core::ffi::c_char; + pub fn endusershell(); + pub fn setusershell(); + pub fn daemon( + __nochdir: ::core::ffi::c_int, + __noclose: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn chroot(__path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getpass(__prompt: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn fsync(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn gethostid() -> ::core::ffi::c_long; + pub fn sync(); + pub fn getpagesize() -> ::core::ffi::c_int; + pub fn getdtablesize() -> ::core::ffi::c_int; + pub fn truncate(__file: *const ::core::ffi::c_char, __length: __off_t) -> ::core::ffi::c_int; + pub fn ftruncate(__fd: ::core::ffi::c_int, __length: __off_t) -> ::core::ffi::c_int; + pub fn brk(__addr: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; + pub fn sbrk(__delta: isize) -> *mut ::core::ffi::c_void; + pub fn syscall(__sysno: ::core::ffi::c_long, ...) -> ::core::ffi::c_long; + pub fn fdatasync(__fildes: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn crypt( + __key: *const ::core::ffi::c_char, + __salt: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn getentropy(__buffer: *mut ::core::ffi::c_void, __length: usize) -> ::core::ffi::c_int; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; + pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; + pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; + pub fn readdir(__dirp: *mut DIR) -> *mut dirent; + pub fn readdir_r( + __dirp: *mut DIR, + __entry: *mut dirent, + __result: *mut *mut dirent, + ) -> ::core::ffi::c_int; + pub fn rewinddir(__dirp: *mut DIR); + pub fn seekdir(__dirp: *mut DIR, __pos: ::core::ffi::c_long); + pub fn telldir(__dirp: *mut DIR) -> ::core::ffi::c_long; + pub fn dirfd(__dirp: *mut DIR) -> ::core::ffi::c_int; + pub fn scandir( + __dir: *const ::core::ffi::c_char, + __namelist: *mut *mut *mut dirent, + __selector: ::core::option::Option< + unsafe extern "C" fn(arg1: *const dirent) -> ::core::ffi::c_int, + >, + __cmp: ::core::option::Option< + unsafe extern "C" fn( + arg1: *mut *const dirent, + arg2: *mut *const dirent, + ) -> ::core::ffi::c_int, + >, + ) -> ::core::ffi::c_int; + pub fn alphasort(__e1: *mut *const dirent, __e2: *mut *const dirent) -> ::core::ffi::c_int; + pub fn getdirentries( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __nbytes: usize, + __basep: *mut __off_t, + ) -> __ssize_t; + pub static mut max_files_per_process: ::core::ffi::c_int; + pub static mut data_sync_retry: bool; + pub static mut recovery_init_sync_method: ::core::ffi::c_int; + pub static mut io_direct_flags: ::core::ffi::c_int; + pub static mut max_safe_fds: ::core::ffi::c_int; + pub fn PathNameOpenFile( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + ) -> File; + pub fn PathNameOpenFilePerm( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + fileMode: mode_t, + ) -> File; + pub fn OpenTemporaryFile(interXact: bool) -> File; + pub fn FileClose(file: File); + pub fn FilePrefetch( + file: File, + offset: off_t, + amount: off_t, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn FileReadV( + file: File, + iov: *const iovec, + iovcnt: ::core::ffi::c_int, + offset: off_t, + wait_event_info: uint32, + ) -> isize; + pub fn FileWriteV( + file: File, + iov: *const iovec, + iovcnt: ::core::ffi::c_int, + offset: off_t, + wait_event_info: uint32, + ) -> isize; + pub fn FileSync(file: File, wait_event_info: uint32) -> ::core::ffi::c_int; + pub fn FileZero( + file: File, + offset: off_t, + amount: off_t, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn FileFallocate( + file: File, + offset: off_t, + amount: off_t, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn FileSize(file: File) -> off_t; + pub fn FileTruncate(file: File, offset: off_t, wait_event_info: uint32) -> ::core::ffi::c_int; + pub fn FileWriteback(file: File, offset: off_t, nbytes: off_t, wait_event_info: uint32); + pub fn FilePathName(file: File) -> *mut ::core::ffi::c_char; + pub fn FileGetRawDesc(file: File) -> ::core::ffi::c_int; + pub fn FileGetRawFlags(file: File) -> ::core::ffi::c_int; + pub fn FileGetRawMode(file: File) -> mode_t; + pub fn PathNameCreateTemporaryFile( + path: *const ::core::ffi::c_char, + error_on_failure: bool, + ) -> File; + pub fn PathNameOpenTemporaryFile( + path: *const ::core::ffi::c_char, + mode: ::core::ffi::c_int, + ) -> File; + pub fn PathNameDeleteTemporaryFile( + path: *const ::core::ffi::c_char, + error_on_failure: bool, + ) -> bool; + pub fn PathNameCreateTemporaryDir( + basedir: *const ::core::ffi::c_char, + directory: *const ::core::ffi::c_char, + ); + pub fn PathNameDeleteTemporaryDir(dirname: *const ::core::ffi::c_char); + pub fn TempTablespacePath(path: *mut ::core::ffi::c_char, tablespace: Oid); + pub fn AllocateFile( + name: *const ::core::ffi::c_char, + mode: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn FreeFile(file: *mut FILE) -> ::core::ffi::c_int; + pub fn OpenPipeStream( + command: *const ::core::ffi::c_char, + mode: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn ClosePipeStream(file: *mut FILE) -> ::core::ffi::c_int; + pub fn AllocateDir(dirname: *const ::core::ffi::c_char) -> *mut DIR; + pub fn ReadDir(dir: *mut DIR, dirname: *const ::core::ffi::c_char) -> *mut dirent; + pub fn ReadDirExtended( + dir: *mut DIR, + dirname: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> *mut dirent; + pub fn FreeDir(dir: *mut DIR) -> ::core::ffi::c_int; + pub fn OpenTransientFile( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn OpenTransientFilePerm( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + fileMode: mode_t, + ) -> ::core::ffi::c_int; + pub fn CloseTransientFile(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn BasicOpenFile( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn BasicOpenFilePerm( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + fileMode: mode_t, + ) -> ::core::ffi::c_int; + pub fn AcquireExternalFD() -> bool; + pub fn ReserveExternalFD(); + pub fn ReleaseExternalFD(); + pub fn MakePGDirectory(directoryName: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn InitFileAccess(); + pub fn InitTemporaryFileAccess(); + pub fn set_max_safe_fds(); + pub fn closeAllVfds(); + pub fn SetTempTablespaces(tableSpaces: *mut Oid, numSpaces: ::core::ffi::c_int); + pub fn TempTablespacesAreSet() -> bool; + pub fn GetTempTablespaces( + tableSpaces: *mut Oid, + numSpaces: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn GetNextTempTableSpace() -> Oid; + pub fn AtEOXact_Files(isCommit: bool); + pub fn AtEOSubXact_Files( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub fn RemovePgTempFiles(); + pub fn RemovePgTempFilesInDir( + tmpdirname: *const ::core::ffi::c_char, + missing_ok: bool, + unlink_all: bool, + ); + pub fn looks_like_temp_rel_name(name: *const ::core::ffi::c_char) -> bool; + pub fn pg_fsync(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_fsync_no_writethrough(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_fsync_writethrough(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_fdatasync(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_file_exists(name: *const ::core::ffi::c_char) -> bool; + pub fn pg_flush_data(fd: ::core::ffi::c_int, offset: off_t, nbytes: off_t); + pub fn pg_truncate(path: *const ::core::ffi::c_char, length: off_t) -> ::core::ffi::c_int; + pub fn fsync_fname(fname: *const ::core::ffi::c_char, isdir: bool); + pub fn fsync_fname_ext( + fname: *const ::core::ffi::c_char, + isdir: bool, + ignore_perm: bool, + elevel: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn durable_rename( + oldfile: *const ::core::ffi::c_char, + newfile: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn durable_unlink( + fname: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn SyncDataDirectory(); + pub fn data_sync_elevel(elevel: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn FileSetInit(fileset: *mut FileSet); + pub fn FileSetCreate(fileset: *mut FileSet, name: *const ::core::ffi::c_char) -> File; + pub fn FileSetOpen( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + mode: ::core::ffi::c_int, + ) -> File; + pub fn FileSetDelete( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + error_on_failure: bool, + ) -> bool; + pub fn FileSetDeleteAll(fileset: *mut FileSet); + pub fn SharedFileSetInit(fileset: *mut SharedFileSet, seg: *mut dsm_segment); + pub fn SharedFileSetAttach(fileset: *mut SharedFileSet, seg: *mut dsm_segment); + pub fn SharedFileSetDeleteAll(fileset: *mut SharedFileSet); + pub fn sts_estimate(participants: ::core::ffi::c_int) -> usize; + pub fn sts_initialize( + sts: *mut SharedTuplestore, + participants: ::core::ffi::c_int, + my_participant_number: ::core::ffi::c_int, + meta_data_size: usize, + flags: ::core::ffi::c_int, + fileset: *mut SharedFileSet, + name: *const ::core::ffi::c_char, + ) -> *mut SharedTuplestoreAccessor; + pub fn sts_attach( + sts: *mut SharedTuplestore, + my_participant_number: ::core::ffi::c_int, + fileset: *mut SharedFileSet, + ) -> *mut SharedTuplestoreAccessor; + pub fn sts_end_write(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_reinitialize(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_begin_parallel_scan(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_end_parallel_scan(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_puttuple( + accessor: *mut SharedTuplestoreAccessor, + meta_data: *mut ::core::ffi::c_void, + tuple: MinimalTuple, + ); + pub fn sts_parallel_scan_next( + accessor: *mut SharedTuplestoreAccessor, + meta_data: *mut ::core::ffi::c_void, + ) -> MinimalTuple; + pub fn RelationIdGetRelation(relationId: Oid) -> Relation; + pub fn RelationClose(relation: Relation); + pub fn RelationGetFKeyList(relation: Relation) -> *mut List; + pub fn RelationGetIndexList(relation: Relation) -> *mut List; + pub fn RelationGetStatExtList(relation: Relation) -> *mut List; + pub fn RelationGetPrimaryKeyIndex(relation: Relation) -> Oid; + pub fn RelationGetReplicaIndex(relation: Relation) -> Oid; + pub fn RelationGetIndexExpressions(relation: Relation) -> *mut List; + pub fn RelationGetDummyIndexExpressions(relation: Relation) -> *mut List; + pub fn RelationGetIndexPredicate(relation: Relation) -> *mut List; + pub fn RelationGetIndexAttOptions(relation: Relation, copy: bool) -> *mut *mut bytea; + pub fn RelationGetIndexAttrBitmap( + relation: Relation, + attrKind: IndexAttrBitmapKind::Type, + ) -> *mut Bitmapset; + pub fn RelationGetIdentityKeyBitmap(relation: Relation) -> *mut Bitmapset; + pub fn RelationGetExclusionInfo( + indexRelation: Relation, + operators: *mut *mut Oid, + procs: *mut *mut Oid, + strategies: *mut *mut uint16, + ); + pub fn RelationInitIndexAccessInfo(relation: Relation); + pub fn RelationBuildPublicationDesc(relation: Relation, pubdesc: *mut PublicationDesc); + pub fn RelationInitTableAccessMethod(relation: Relation); + pub fn errtable(rel: Relation) -> ::core::ffi::c_int; + pub fn errtablecol(rel: Relation, attnum: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn errtablecolname( + rel: Relation, + colname: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn errtableconstraint( + rel: Relation, + conname: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn RelationCacheInitialize(); + pub fn RelationCacheInitializePhase2(); + pub fn RelationCacheInitializePhase3(); + pub fn RelationBuildLocalRelation( + relname: *const ::core::ffi::c_char, + relnamespace: Oid, + tupDesc: TupleDesc, + relid: Oid, + accessmtd: Oid, + relfilenumber: RelFileNumber, + reltablespace: Oid, + shared_relation: bool, + mapped_relation: bool, + relpersistence: ::core::ffi::c_char, + relkind: ::core::ffi::c_char, + ) -> Relation; + pub fn RelationSetNewRelfilenumber(relation: Relation, persistence: ::core::ffi::c_char); + pub fn RelationAssumeNewRelfilelocator(relation: Relation); + pub fn RelationForgetRelation(rid: Oid); + pub fn RelationCacheInvalidateEntry(relationId: Oid); + pub fn RelationCacheInvalidate(debug_discard: bool); + pub fn AtEOXact_RelationCache(isCommit: bool); + pub fn AtEOSubXact_RelationCache( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub fn RelationIdIsInInitFile(relationId: Oid) -> bool; + pub fn RelationCacheInitFilePreInvalidate(); + pub fn RelationCacheInitFilePostInvalidate(); + pub fn RelationCacheInitFileRemove(); + pub static mut criticalRelcachesBuilt: bool; + pub static mut criticalSharedRelcachesBuilt: bool; + pub fn ssup_datum_unsigned_cmp(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int; + pub fn ssup_datum_signed_cmp(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int; + pub fn ssup_datum_int32_cmp(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int; + pub fn PrepareSortSupportComparisonShim(cmpFunc: Oid, ssup: SortSupport); + pub fn PrepareSortSupportFromOrderingOp(orderingOp: Oid, ssup: SortSupport); + pub fn PrepareSortSupportFromIndexRel(indexRel: Relation, strategy: int16, ssup: SortSupport); + pub fn PrepareSortSupportFromGistIndexRel(indexRel: Relation, ssup: SortSupport); + pub fn ScanKeyInit( + entry: ScanKey, + attributeNumber: AttrNumber, + strategy: StrategyNumber, + procedure: RegProcedure, + argument: Datum, + ); + pub fn ScanKeyEntryInitialize( + entry: ScanKey, + flags: ::core::ffi::c_int, + attributeNumber: AttrNumber, + strategy: StrategyNumber, + subtype: Oid, + collation: Oid, + procedure: RegProcedure, + argument: Datum, + ); + pub fn ScanKeyEntryInitializeWithInfo( + entry: ScanKey, + flags: ::core::ffi::c_int, + attributeNumber: AttrNumber, + strategy: StrategyNumber, + subtype: Oid, + collation: Oid, + finfo: *mut FmgrInfo, + argument: Datum, + ); + pub fn index_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn try_index_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn index_close(relation: Relation, lockmode: LOCKMODE); + pub fn index_insert( + indexRelation: Relation, + values: *mut Datum, + isnull: *mut bool, + heap_t_ctid: ItemPointer, + heapRelation: Relation, + checkUnique: IndexUniqueCheck::Type, + indexUnchanged: bool, + indexInfo: *mut IndexInfo, + ) -> bool; + pub fn index_insert_cleanup(indexRelation: Relation, indexInfo: *mut IndexInfo); + pub fn index_beginscan( + heapRelation: Relation, + indexRelation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn index_beginscan_bitmap( + indexRelation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn index_rescan( + scan: IndexScanDesc, + keys: ScanKey, + nkeys: ::core::ffi::c_int, + orderbys: ScanKey, + norderbys: ::core::ffi::c_int, + ); + pub fn index_endscan(scan: IndexScanDesc); + pub fn index_markpos(scan: IndexScanDesc); + pub fn index_restrpos(scan: IndexScanDesc); + pub fn index_parallelscan_estimate( + indexRelation: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + snapshot: Snapshot, + ) -> Size; + pub fn index_parallelscan_initialize( + heapRelation: Relation, + indexRelation: Relation, + snapshot: Snapshot, + target: ParallelIndexScanDesc, + ); + pub fn index_parallelrescan(scan: IndexScanDesc); + pub fn index_beginscan_parallel( + heaprel: Relation, + indexrel: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + pscan: ParallelIndexScanDesc, + ) -> IndexScanDesc; + pub fn index_getnext_tid(scan: IndexScanDesc, direction: ScanDirection::Type) -> ItemPointer; + pub fn index_fetch_heap(scan: IndexScanDesc, slot: *mut TupleTableSlot) -> bool; + pub fn index_getnext_slot( + scan: IndexScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn index_getbitmap(scan: IndexScanDesc, bitmap: *mut TIDBitmap) -> int64; + pub fn index_bulk_delete( + info: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + callback: IndexBulkDeleteCallback, + callback_state: *mut ::core::ffi::c_void, + ) -> *mut IndexBulkDeleteResult; + pub fn index_vacuum_cleanup( + info: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult; + pub fn index_can_return(indexRelation: Relation, attno: ::core::ffi::c_int) -> bool; + pub fn index_getprocid(irel: Relation, attnum: AttrNumber, procnum: uint16) -> RegProcedure; + pub fn index_getprocinfo(irel: Relation, attnum: AttrNumber, procnum: uint16) -> *mut FmgrInfo; + pub fn index_store_float8_orderby_distances( + scan: IndexScanDesc, + orderByTypes: *mut Oid, + distances: *mut IndexOrderByDistance, + recheckOrderBy: bool, + ); + pub fn index_opclass_options( + indrel: Relation, + attnum: AttrNumber, + attoptions: Datum, + validate: bool, + ) -> *mut bytea; + pub fn RelationGetIndexScan( + indexRelation: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn IndexScanEnd(scan: IndexScanDesc); + pub fn BuildIndexValueDescription( + indexRelation: Relation, + values: *const Datum, + isnull: *const bool, + ) -> *mut ::core::ffi::c_char; + pub fn index_compute_xid_horizon_for_tuples( + irel: Relation, + hrel: Relation, + ibuf: Buffer, + itemnos: *mut OffsetNumber, + nitems: ::core::ffi::c_int, + ) -> TransactionId; + pub fn systable_beginscan( + heapRelation: Relation, + indexId: Oid, + indexOK: bool, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: ScanKey, + ) -> SysScanDesc; + pub fn systable_getnext(sysscan: SysScanDesc) -> HeapTuple; + pub fn systable_recheck_tuple(sysscan: SysScanDesc, tup: HeapTuple) -> bool; + pub fn systable_endscan(sysscan: SysScanDesc); + pub fn systable_beginscan_ordered( + heapRelation: Relation, + indexRelation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: ScanKey, + ) -> SysScanDesc; + pub fn systable_getnext_ordered( + sysscan: SysScanDesc, + direction: ScanDirection::Type, + ) -> HeapTuple; + pub fn systable_endscan_ordered(sysscan: SysScanDesc); + pub fn GetIndexAmRoutine(amhandler: Oid) -> *mut IndexAmRoutine; + pub fn GetIndexAmRoutineByAmId(amoid: Oid, noerror: bool) -> *mut IndexAmRoutine; + pub fn lookup_type_cache(type_id: Oid, flags: ::core::ffi::c_int) -> *mut TypeCacheEntry; + pub fn InitDomainConstraintRef( + type_id: Oid, + ref_: *mut DomainConstraintRef, + refctx: MemoryContext, + need_exprstate: bool, + ); + pub fn UpdateDomainConstraintRef(ref_: *mut DomainConstraintRef); + pub fn DomainHasConstraints(type_id: Oid) -> bool; + pub fn lookup_rowtype_tupdesc(type_id: Oid, typmod: int32) -> TupleDesc; + pub fn lookup_rowtype_tupdesc_noerror(type_id: Oid, typmod: int32, noError: bool) -> TupleDesc; + pub fn lookup_rowtype_tupdesc_copy(type_id: Oid, typmod: int32) -> TupleDesc; + pub fn lookup_rowtype_tupdesc_domain(type_id: Oid, typmod: int32, noError: bool) -> TupleDesc; + pub fn assign_record_type_typmod(tupDesc: TupleDesc); + pub fn assign_record_type_identifier(type_id: Oid, typmod: int32) -> uint64; + pub fn compare_values_of_enum( + tcache: *mut TypeCacheEntry, + arg1: Oid, + arg2: Oid, + ) -> ::core::ffi::c_int; + pub fn SharedRecordTypmodRegistryEstimate() -> usize; + pub fn SharedRecordTypmodRegistryInit( + arg1: *mut SharedRecordTypmodRegistry, + segment: *mut dsm_segment, + area: *mut dsa_area, + ); + pub fn SharedRecordTypmodRegistryAttach(arg1: *mut SharedRecordTypmodRegistry); + pub fn brin_build_desc(rel: Relation) -> *mut BrinDesc; + pub fn brin_free_desc(bdesc: *mut BrinDesc); + pub fn brinbuild( + heap: Relation, + index: Relation, + indexInfo: *mut IndexInfo, + ) -> *mut IndexBuildResult; + pub fn brinbuildempty(index: Relation); + pub fn brininsert( + idxRel: Relation, + values: *mut Datum, + nulls: *mut bool, + heaptid: ItemPointer, + heapRel: Relation, + checkUnique: IndexUniqueCheck::Type, + indexUnchanged: bool, + indexInfo: *mut IndexInfo, + ) -> bool; + pub fn brininsertcleanup(index: Relation, indexInfo: *mut IndexInfo); + pub fn brinbeginscan( + r: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn bringetbitmap(scan: IndexScanDesc, tbm: *mut TIDBitmap) -> int64; + pub fn brinrescan( + scan: IndexScanDesc, + scankey: ScanKey, + nscankeys: ::core::ffi::c_int, + orderbys: ScanKey, + norderbys: ::core::ffi::c_int, + ); + pub fn brinendscan(scan: IndexScanDesc); + pub fn brinbulkdelete( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + callback: IndexBulkDeleteCallback, + callback_state: *mut ::core::ffi::c_void, + ) -> *mut IndexBulkDeleteResult; + pub fn brinvacuumcleanup( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult; + pub fn brinoptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn brinvalidate(opclassoid: Oid) -> bool; + pub fn brin_form_tuple( + brdesc: *mut BrinDesc, + blkno: BlockNumber, + tuple: *mut BrinMemTuple, + size: *mut Size, + ) -> *mut BrinTuple; + pub fn brin_form_placeholder_tuple( + brdesc: *mut BrinDesc, + blkno: BlockNumber, + size: *mut Size, + ) -> *mut BrinTuple; + pub fn brin_free_tuple(tuple: *mut BrinTuple); + pub fn brin_copy_tuple( + tuple: *mut BrinTuple, + len: Size, + dest: *mut BrinTuple, + destsz: *mut Size, + ) -> *mut BrinTuple; + pub fn brin_tuples_equal( + a: *const BrinTuple, + alen: Size, + b: *const BrinTuple, + blen: Size, + ) -> bool; + pub fn brin_new_memtuple(brdesc: *mut BrinDesc) -> *mut BrinMemTuple; + pub fn brin_memtuple_initialize( + dtuple: *mut BrinMemTuple, + brdesc: *mut BrinDesc, + ) -> *mut BrinMemTuple; + pub fn brin_deform_tuple( + brdesc: *mut BrinDesc, + tuple: *mut BrinTuple, + dMemtuple: *mut BrinMemTuple, + ) -> *mut BrinMemTuple; + pub fn index_form_tuple( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> IndexTuple; + pub fn index_form_tuple_context( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + context: MemoryContext, + ) -> IndexTuple; + pub fn nocache_index_getattr( + tup: IndexTuple, + attnum: ::core::ffi::c_int, + tupleDesc: TupleDesc, + ) -> Datum; + pub fn index_deform_tuple( + tup: IndexTuple, + tupleDescriptor: TupleDesc, + values: *mut Datum, + isnull: *mut bool, + ); + pub fn index_deform_tuple_internal( + tupleDescriptor: TupleDesc, + values: *mut Datum, + isnull: *mut bool, + tp: *mut ::core::ffi::c_char, + bp: *mut bits8, + hasnulls: ::core::ffi::c_int, + ); + pub fn CopyIndexTuple(source: IndexTuple) -> IndexTuple; + pub fn index_truncate_tuple( + sourceDescriptor: TupleDesc, + source: IndexTuple, + leavenatts: ::core::ffi::c_int, + ) -> IndexTuple; + pub fn LogicalTapeSetCreate( + preallocate: bool, + fileset: *mut SharedFileSet, + worker: ::core::ffi::c_int, + ) -> *mut LogicalTapeSet; + pub fn LogicalTapeClose(lt: *mut LogicalTape); + pub fn LogicalTapeSetClose(lts: *mut LogicalTapeSet); + pub fn LogicalTapeCreate(lts: *mut LogicalTapeSet) -> *mut LogicalTape; + pub fn LogicalTapeImport( + lts: *mut LogicalTapeSet, + worker: ::core::ffi::c_int, + shared: *mut TapeShare, + ) -> *mut LogicalTape; + pub fn LogicalTapeSetForgetFreeSpace(lts: *mut LogicalTapeSet); + pub fn LogicalTapeRead( + lt: *mut LogicalTape, + ptr: *mut ::core::ffi::c_void, + size: usize, + ) -> usize; + pub fn LogicalTapeWrite(lt: *mut LogicalTape, ptr: *const ::core::ffi::c_void, size: usize); + pub fn LogicalTapeRewindForRead(lt: *mut LogicalTape, buffer_size: usize); + pub fn LogicalTapeFreeze(lt: *mut LogicalTape, share: *mut TapeShare); + pub fn LogicalTapeBackspace(lt: *mut LogicalTape, size: usize) -> usize; + pub fn LogicalTapeSeek(lt: *mut LogicalTape, blocknum: int64, offset: ::core::ffi::c_int); + pub fn LogicalTapeTell( + lt: *mut LogicalTape, + blocknum: *mut int64, + offset: *mut ::core::ffi::c_int, + ); + pub fn LogicalTapeSetBlocks(lts: *mut LogicalTapeSet) -> int64; + pub fn tuplesort_begin_common( + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_set_bound(state: *mut Tuplesortstate, bound: int64); + pub fn tuplesort_used_bound(state: *mut Tuplesortstate) -> bool; + pub fn tuplesort_puttuple_common( + state: *mut Tuplesortstate, + tuple: *mut SortTuple, + useAbbrev: bool, + tuplen: Size, + ); + pub fn tuplesort_performsort(state: *mut Tuplesortstate); + pub fn tuplesort_gettuple_common( + state: *mut Tuplesortstate, + forward: bool, + stup: *mut SortTuple, + ) -> bool; + pub fn tuplesort_skiptuples(state: *mut Tuplesortstate, ntuples: int64, forward: bool) -> bool; + pub fn tuplesort_end(state: *mut Tuplesortstate); + pub fn tuplesort_reset(state: *mut Tuplesortstate); + pub fn tuplesort_get_stats(state: *mut Tuplesortstate, stats: *mut TuplesortInstrumentation); + pub fn tuplesort_method_name(m: TuplesortMethod::Type) -> *const ::core::ffi::c_char; + pub fn tuplesort_space_type_name(t: TuplesortSpaceType::Type) -> *const ::core::ffi::c_char; + pub fn tuplesort_merge_order(allowedMem: int64) -> ::core::ffi::c_int; + pub fn tuplesort_estimate_shared(nWorkers: ::core::ffi::c_int) -> Size; + pub fn tuplesort_initialize_shared( + shared: *mut Sharedsort, + nWorkers: ::core::ffi::c_int, + seg: *mut dsm_segment, + ); + pub fn tuplesort_attach_shared(shared: *mut Sharedsort, seg: *mut dsm_segment); + pub fn tuplesort_rescan(state: *mut Tuplesortstate); + pub fn tuplesort_markpos(state: *mut Tuplesortstate); + pub fn tuplesort_restorepos(state: *mut Tuplesortstate); + pub fn tuplesort_readtup_alloc( + state: *mut Tuplesortstate, + tuplen: Size, + ) -> *mut ::core::ffi::c_void; + pub fn tuplesort_begin_heap( + tupDesc: TupleDesc, + nkeys: ::core::ffi::c_int, + attNums: *mut AttrNumber, + sortOperators: *mut Oid, + sortCollations: *mut Oid, + nullsFirstFlags: *mut bool, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_cluster( + tupDesc: TupleDesc, + indexRel: Relation, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_btree( + heapRel: Relation, + indexRel: Relation, + enforceUnique: bool, + uniqueNullsNotDistinct: bool, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_hash( + heapRel: Relation, + indexRel: Relation, + high_mask: uint32, + low_mask: uint32, + max_buckets: uint32, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_gist( + heapRel: Relation, + indexRel: Relation, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_brin( + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_datum( + datumType: Oid, + sortOperator: Oid, + sortCollation: Oid, + nullsFirstFlag: bool, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_puttupleslot(state: *mut Tuplesortstate, slot: *mut TupleTableSlot); + pub fn tuplesort_putheaptuple(state: *mut Tuplesortstate, tup: HeapTuple); + pub fn tuplesort_putindextuplevalues( + state: *mut Tuplesortstate, + rel: Relation, + self_: ItemPointer, + values: *const Datum, + isnull: *const bool, + ); + pub fn tuplesort_putbrintuple(state: *mut Tuplesortstate, tuple: *mut BrinTuple, size: Size); + pub fn tuplesort_putdatum(state: *mut Tuplesortstate, val: Datum, isNull: bool); + pub fn tuplesort_gettupleslot( + state: *mut Tuplesortstate, + forward: bool, + copy: bool, + slot: *mut TupleTableSlot, + abbrev: *mut Datum, + ) -> bool; + pub fn tuplesort_getheaptuple(state: *mut Tuplesortstate, forward: bool) -> HeapTuple; + pub fn tuplesort_getindextuple(state: *mut Tuplesortstate, forward: bool) -> IndexTuple; + pub fn tuplesort_getbrintuple( + state: *mut Tuplesortstate, + len: *mut Size, + forward: bool, + ) -> *mut BrinTuple; + pub fn tuplesort_getdatum( + state: *mut Tuplesortstate, + forward: bool, + copy: bool, + val: *mut Datum, + isNull: *mut bool, + abbrev: *mut Datum, + ) -> bool; + pub fn tuplestore_begin_heap( + randomAccess: bool, + interXact: bool, + maxKBytes: ::core::ffi::c_int, + ) -> *mut Tuplestorestate; + pub fn tuplestore_set_eflags(state: *mut Tuplestorestate, eflags: ::core::ffi::c_int); + pub fn tuplestore_puttupleslot(state: *mut Tuplestorestate, slot: *mut TupleTableSlot); + pub fn tuplestore_puttuple(state: *mut Tuplestorestate, tuple: HeapTuple); + pub fn tuplestore_putvalues( + state: *mut Tuplestorestate, + tdesc: TupleDesc, + values: *const Datum, + isnull: *const bool, + ); + pub fn tuplestore_alloc_read_pointer( + state: *mut Tuplestorestate, + eflags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn tuplestore_select_read_pointer(state: *mut Tuplestorestate, ptr: ::core::ffi::c_int); + pub fn tuplestore_copy_read_pointer( + state: *mut Tuplestorestate, + srcptr: ::core::ffi::c_int, + destptr: ::core::ffi::c_int, + ); + pub fn tuplestore_trim(state: *mut Tuplestorestate); + pub fn tuplestore_in_memory(state: *mut Tuplestorestate) -> bool; + pub fn tuplestore_gettupleslot( + state: *mut Tuplestorestate, + forward: bool, + copy: bool, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn tuplestore_advance(state: *mut Tuplestorestate, forward: bool) -> bool; + pub fn tuplestore_skiptuples( + state: *mut Tuplestorestate, + ntuples: int64, + forward: bool, + ) -> bool; + pub fn tuplestore_tuple_count(state: *mut Tuplestorestate) -> int64; + pub fn tuplestore_ateof(state: *mut Tuplestorestate) -> bool; + pub fn tuplestore_rescan(state: *mut Tuplestorestate); + pub fn tuplestore_clear(state: *mut Tuplestorestate); + pub fn tuplestore_end(state: *mut Tuplestorestate); + pub static pg_leftmost_one_pos: [uint8; 256usize]; + pub static pg_rightmost_one_pos: [uint8; 256usize]; + pub static pg_number_of_ones: [uint8; 256usize]; + pub fn pg_popcount32(word: uint32) -> ::core::ffi::c_int; + pub fn pg_popcount64(word: uint64) -> ::core::ffi::c_int; + pub fn pg_popcount_optimized( + buf: *const ::core::ffi::c_char, + bytes: ::core::ffi::c_int, + ) -> uint64; + pub fn pg_popcount_masked_optimized( + buf: *const ::core::ffi::c_char, + bytes: ::core::ffi::c_int, + mask: bits8, + ) -> uint64; + pub fn tuplehash_create( + ctx: MemoryContext, + nelements: uint32, + private_data: *mut ::core::ffi::c_void, + ) -> *mut tuplehash_hash; + pub fn tuplehash_destroy(tb: *mut tuplehash_hash); + pub fn tuplehash_reset(tb: *mut tuplehash_hash); + pub fn tuplehash_grow(tb: *mut tuplehash_hash, newsize: uint64); + pub fn tuplehash_insert( + tb: *mut tuplehash_hash, + key: MinimalTuple, + found: *mut bool, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_insert_hash( + tb: *mut tuplehash_hash, + key: MinimalTuple, + hash: uint32, + found: *mut bool, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_lookup(tb: *mut tuplehash_hash, key: MinimalTuple) -> *mut TupleHashEntryData; + pub fn tuplehash_lookup_hash( + tb: *mut tuplehash_hash, + key: MinimalTuple, + hash: uint32, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_delete_item(tb: *mut tuplehash_hash, entry: *mut TupleHashEntryData); + pub fn tuplehash_delete(tb: *mut tuplehash_hash, key: MinimalTuple) -> bool; + pub fn tuplehash_start_iterate(tb: *mut tuplehash_hash, iter: *mut tuplehash_iterator); + pub fn tuplehash_start_iterate_at( + tb: *mut tuplehash_hash, + iter: *mut tuplehash_iterator, + at: uint32, + ); + pub fn tuplehash_iterate( + tb: *mut tuplehash_hash, + iter: *mut tuplehash_iterator, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_stat(tb: *mut tuplehash_hash); + pub fn InitializeQueryCompletion(qc: *mut QueryCompletion); + pub fn GetCommandTagName(commandTag: CommandTag::Type) -> *const ::core::ffi::c_char; + pub fn GetCommandTagNameAndLen( + commandTag: CommandTag::Type, + len: *mut Size, + ) -> *const ::core::ffi::c_char; + pub fn command_tag_display_rowcount(commandTag: CommandTag::Type) -> bool; + pub fn command_tag_event_trigger_ok(commandTag: CommandTag::Type) -> bool; + pub fn command_tag_table_rewrite_ok(commandTag: CommandTag::Type) -> bool; + pub fn GetCommandTagEnum(commandname: *const ::core::ffi::c_char) -> CommandTag::Type; + pub fn BuildQueryCompletionString( + buff: *mut ::core::ffi::c_char, + qc: *const QueryCompletion, + nameonly: bool, + ) -> Size; + pub static mut None_Receiver: *mut DestReceiver; + pub fn BeginCommand(commandTag: CommandTag::Type, dest: CommandDest::Type); + pub fn CreateDestReceiver(dest: CommandDest::Type) -> *mut DestReceiver; + pub fn EndCommand( + qc: *const QueryCompletion, + dest: CommandDest::Type, + force_undecorated_output: bool, + ); + pub fn EndReplicationCommand(commandTag: *const ::core::ffi::c_char); + pub fn NullCommand(dest: CommandDest::Type); + pub fn ReadyForQuery(dest: CommandDest::Type); + pub fn CreateQueryDesc( + plannedstmt: *mut PlannedStmt, + sourceText: *const ::core::ffi::c_char, + snapshot: Snapshot, + crosscheck_snapshot: Snapshot, + dest: *mut DestReceiver, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + instrument_options: ::core::ffi::c_int, + ) -> *mut QueryDesc; + pub fn FreeQueryDesc(qdesc: *mut QueryDesc); + pub fn makeInteger(i: ::core::ffi::c_int) -> *mut Integer; + pub fn makeFloat(numericStr: *mut ::core::ffi::c_char) -> *mut Float; + pub fn makeBoolean(val: bool) -> *mut Boolean; + pub fn makeString(str_: *mut ::core::ffi::c_char) -> *mut String; + pub fn makeBitString(str_: *mut ::core::ffi::c_char) -> *mut BitString; + pub static mut TopMemoryContext: MemoryContext; + pub static mut ErrorContext: MemoryContext; + pub static mut PostmasterContext: MemoryContext; + pub static mut CacheMemoryContext: MemoryContext; + pub static mut MessageContext: MemoryContext; + pub static mut TopTransactionContext: MemoryContext; + pub static mut CurTransactionContext: MemoryContext; + pub static mut PortalContext: MemoryContext; + pub fn MemoryContextInit(); + pub fn MemoryContextReset(context: MemoryContext); + pub fn MemoryContextDelete(context: MemoryContext); + pub fn MemoryContextResetOnly(context: MemoryContext); + pub fn MemoryContextResetChildren(context: MemoryContext); + pub fn MemoryContextDeleteChildren(context: MemoryContext); + pub fn MemoryContextSetIdentifier(context: MemoryContext, id: *const ::core::ffi::c_char); + pub fn MemoryContextSetParent(context: MemoryContext, new_parent: MemoryContext); + pub fn GetMemoryChunkSpace(pointer: *mut ::core::ffi::c_void) -> Size; + pub fn MemoryContextGetParent(context: MemoryContext) -> MemoryContext; + pub fn MemoryContextIsEmpty(context: MemoryContext) -> bool; + pub fn MemoryContextMemAllocated(context: MemoryContext, recurse: bool) -> Size; + pub fn MemoryContextMemConsumed(context: MemoryContext, consumed: *mut MemoryContextCounters); + pub fn MemoryContextStats(context: MemoryContext); + pub fn MemoryContextStatsDetail( + context: MemoryContext, + max_level: ::core::ffi::c_int, + max_children: ::core::ffi::c_int, + print_to_stderr: bool, + ); + pub fn MemoryContextAllowInCriticalSection(context: MemoryContext, allow: bool); + pub fn HandleLogMemoryContextInterrupt(); + pub fn ProcessLogMemoryContextInterrupt(); + pub fn AllocSetContextCreateInternal( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + minContextSize: Size, + initBlockSize: Size, + maxBlockSize: Size, + ) -> MemoryContext; + pub fn SlabContextCreate( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + blockSize: Size, + chunkSize: Size, + ) -> MemoryContext; + pub fn GenerationContextCreate( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + minContextSize: Size, + initBlockSize: Size, + maxBlockSize: Size, + ) -> MemoryContext; + pub fn BumpContextCreate( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + minContextSize: Size, + initBlockSize: Size, + maxBlockSize: Size, + ) -> MemoryContext; + pub static mut ExecutorStart_hook: ExecutorStart_hook_type; + pub static mut ExecutorRun_hook: ExecutorRun_hook_type; + pub static mut ExecutorFinish_hook: ExecutorFinish_hook_type; + pub static mut ExecutorEnd_hook: ExecutorEnd_hook_type; + pub static mut ExecutorCheckPerms_hook: ExecutorCheckPerms_hook_type; + pub fn ExecReScan(node: *mut PlanState); + pub fn ExecMarkPos(node: *mut PlanState); + pub fn ExecRestrPos(node: *mut PlanState); + pub fn ExecSupportsMarkRestore(pathnode: *mut Path) -> bool; + pub fn ExecSupportsBackwardScan(node: *mut Plan) -> bool; + pub fn ExecMaterializesOutput(plantype: NodeTag) -> bool; + pub fn execCurrentOf( + cexpr: *mut CurrentOfExpr, + econtext: *mut ExprContext, + table_oid: Oid, + current_tid: ItemPointer, + ) -> bool; + pub fn execTuplesMatchPrepare( + desc: TupleDesc, + numCols: ::core::ffi::c_int, + keyColIdx: *const AttrNumber, + eqOperators: *const Oid, + collations: *const Oid, + parent: *mut PlanState, + ) -> *mut ExprState; + pub fn execTuplesHashPrepare( + numCols: ::core::ffi::c_int, + eqOperators: *const Oid, + eqFuncOids: *mut *mut Oid, + hashFunctions: *mut *mut FmgrInfo, + ); + pub fn BuildTupleHashTable( + parent: *mut PlanState, + inputDesc: TupleDesc, + numCols: ::core::ffi::c_int, + keyColIdx: *mut AttrNumber, + eqfuncoids: *const Oid, + hashfunctions: *mut FmgrInfo, + collations: *mut Oid, + nbuckets: ::core::ffi::c_long, + additionalsize: Size, + tablecxt: MemoryContext, + tempcxt: MemoryContext, + use_variable_hash_iv: bool, + ) -> TupleHashTable; + pub fn BuildTupleHashTableExt( + parent: *mut PlanState, + inputDesc: TupleDesc, + numCols: ::core::ffi::c_int, + keyColIdx: *mut AttrNumber, + eqfuncoids: *const Oid, + hashfunctions: *mut FmgrInfo, + collations: *mut Oid, + nbuckets: ::core::ffi::c_long, + additionalsize: Size, + metacxt: MemoryContext, + tablecxt: MemoryContext, + tempcxt: MemoryContext, + use_variable_hash_iv: bool, + ) -> TupleHashTable; + pub fn LookupTupleHashEntry( + hashtable: TupleHashTable, + slot: *mut TupleTableSlot, + isnew: *mut bool, + hash: *mut uint32, + ) -> TupleHashEntry; + pub fn TupleHashTableHash(hashtable: TupleHashTable, slot: *mut TupleTableSlot) -> uint32; + pub fn LookupTupleHashEntryHash( + hashtable: TupleHashTable, + slot: *mut TupleTableSlot, + isnew: *mut bool, + hash: uint32, + ) -> TupleHashEntry; + pub fn FindTupleHashEntry( + hashtable: TupleHashTable, + slot: *mut TupleTableSlot, + eqcomp: *mut ExprState, + hashfunctions: *mut FmgrInfo, + ) -> TupleHashEntry; + pub fn ResetTupleHashTable(hashtable: TupleHashTable); + pub fn ExecInitJunkFilter(targetList: *mut List, slot: *mut TupleTableSlot) -> *mut JunkFilter; + pub fn ExecInitJunkFilterConversion( + targetList: *mut List, + cleanTupType: TupleDesc, + slot: *mut TupleTableSlot, + ) -> *mut JunkFilter; + pub fn ExecFindJunkAttribute( + junkfilter: *mut JunkFilter, + attrName: *const ::core::ffi::c_char, + ) -> AttrNumber; + pub fn ExecFindJunkAttributeInTlist( + targetlist: *mut List, + attrName: *const ::core::ffi::c_char, + ) -> AttrNumber; + pub fn ExecFilterJunk( + junkfilter: *mut JunkFilter, + slot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn ExecutorStart(queryDesc: *mut QueryDesc, eflags: ::core::ffi::c_int); + pub fn standard_ExecutorStart(queryDesc: *mut QueryDesc, eflags: ::core::ffi::c_int); + pub fn ExecutorRun( + queryDesc: *mut QueryDesc, + direction: ScanDirection::Type, + count: uint64, + execute_once: bool, + ); + pub fn standard_ExecutorRun( + queryDesc: *mut QueryDesc, + direction: ScanDirection::Type, + count: uint64, + execute_once: bool, + ); + pub fn ExecutorFinish(queryDesc: *mut QueryDesc); + pub fn standard_ExecutorFinish(queryDesc: *mut QueryDesc); + pub fn ExecutorEnd(queryDesc: *mut QueryDesc); + pub fn standard_ExecutorEnd(queryDesc: *mut QueryDesc); + pub fn ExecutorRewind(queryDesc: *mut QueryDesc); + pub fn ExecCheckPermissions( + rangeTable: *mut List, + rteperminfos: *mut List, + ereport_on_violation: bool, + ) -> bool; + pub fn CheckValidResultRel( + resultRelInfo: *mut ResultRelInfo, + operation: CmdType::Type, + mergeActions: *mut List, + ); + pub fn InitResultRelInfo( + resultRelInfo: *mut ResultRelInfo, + resultRelationDesc: Relation, + resultRelationIndex: Index, + partition_root_rri: *mut ResultRelInfo, + instrument_options: ::core::ffi::c_int, + ); + pub fn ExecGetTriggerResultRel( + estate: *mut EState, + relid: Oid, + rootRelInfo: *mut ResultRelInfo, + ) -> *mut ResultRelInfo; + pub fn ExecGetAncestorResultRels( + estate: *mut EState, + resultRelInfo: *mut ResultRelInfo, + ) -> *mut List; + pub fn ExecConstraints( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + ); + pub fn ExecPartitionCheck( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + emitError: bool, + ) -> bool; + pub fn ExecPartitionCheckEmitError( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + ); + pub fn ExecWithCheckOptions( + kind: WCOKind::Type, + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + ); + pub fn ExecUpdateLockMode( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + ) -> LockTupleMode::Type; + pub fn ExecFindRowMark(estate: *mut EState, rti: Index, missing_ok: bool) -> *mut ExecRowMark; + pub fn ExecBuildAuxRowMark(erm: *mut ExecRowMark, targetlist: *mut List) + -> *mut ExecAuxRowMark; + pub fn EvalPlanQual( + epqstate: *mut EPQState, + relation: Relation, + rti: Index, + inputslot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn EvalPlanQualInit( + epqstate: *mut EPQState, + parentestate: *mut EState, + subplan: *mut Plan, + auxrowmarks: *mut List, + epqParam: ::core::ffi::c_int, + resultRelations: *mut List, + ); + pub fn EvalPlanQualSetPlan(epqstate: *mut EPQState, subplan: *mut Plan, auxrowmarks: *mut List); + pub fn EvalPlanQualSlot( + epqstate: *mut EPQState, + relation: Relation, + rti: Index, + ) -> *mut TupleTableSlot; + pub fn EvalPlanQualFetchRowMark( + epqstate: *mut EPQState, + rti: Index, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn EvalPlanQualNext(epqstate: *mut EPQState) -> *mut TupleTableSlot; + pub fn EvalPlanQualBegin(epqstate: *mut EPQState); + pub fn EvalPlanQualEnd(epqstate: *mut EPQState); + pub fn ExecInitNode( + node: *mut Plan, + estate: *mut EState, + eflags: ::core::ffi::c_int, + ) -> *mut PlanState; + pub fn ExecSetExecProcNode(node: *mut PlanState, function: ExecProcNodeMtd); + pub fn MultiExecProcNode(node: *mut PlanState) -> *mut Node; + pub fn ExecEndNode(node: *mut PlanState); + pub fn ExecShutdownNode(node: *mut PlanState); + pub fn ExecSetTupleBound(tuples_needed: int64, child_node: *mut PlanState); + pub fn ExecInitExpr(node: *mut Expr, parent: *mut PlanState) -> *mut ExprState; + pub fn ExecInitExprWithParams(node: *mut Expr, ext_params: ParamListInfo) -> *mut ExprState; + pub fn ExecInitQual(qual: *mut List, parent: *mut PlanState) -> *mut ExprState; + pub fn ExecInitCheck(qual: *mut List, parent: *mut PlanState) -> *mut ExprState; + pub fn ExecInitExprList(nodes: *mut List, parent: *mut PlanState) -> *mut List; + pub fn ExecBuildAggTrans( + aggstate: *mut AggState, + phase: *mut AggStatePerPhaseData, + doSort: bool, + doHash: bool, + nullcheck: bool, + ) -> *mut ExprState; + pub fn ExecBuildGroupingEqual( + ldesc: TupleDesc, + rdesc: TupleDesc, + lops: *const TupleTableSlotOps, + rops: *const TupleTableSlotOps, + numCols: ::core::ffi::c_int, + keyColIdx: *const AttrNumber, + eqfunctions: *const Oid, + collations: *const Oid, + parent: *mut PlanState, + ) -> *mut ExprState; + pub fn ExecBuildParamSetEqual( + desc: TupleDesc, + lops: *const TupleTableSlotOps, + rops: *const TupleTableSlotOps, + eqfunctions: *const Oid, + collations: *const Oid, + param_exprs: *const List, + parent: *mut PlanState, + ) -> *mut ExprState; + pub fn ExecBuildProjectionInfo( + targetList: *mut List, + econtext: *mut ExprContext, + slot: *mut TupleTableSlot, + parent: *mut PlanState, + inputDesc: TupleDesc, + ) -> *mut ProjectionInfo; + pub fn ExecBuildUpdateProjection( + targetList: *mut List, + evalTargetList: bool, + targetColnos: *mut List, + relDesc: TupleDesc, + econtext: *mut ExprContext, + slot: *mut TupleTableSlot, + parent: *mut PlanState, + ) -> *mut ProjectionInfo; + pub fn ExecPrepareExpr(node: *mut Expr, estate: *mut EState) -> *mut ExprState; + pub fn ExecPrepareQual(qual: *mut List, estate: *mut EState) -> *mut ExprState; + pub fn ExecPrepareCheck(qual: *mut List, estate: *mut EState) -> *mut ExprState; + pub fn ExecPrepareExprList(nodes: *mut List, estate: *mut EState) -> *mut List; + pub fn ExecCheck(state: *mut ExprState, econtext: *mut ExprContext) -> bool; + pub fn ExecInitTableFunctionResult( + expr: *mut Expr, + econtext: *mut ExprContext, + parent: *mut PlanState, + ) -> *mut SetExprState; + pub fn ExecMakeTableFunctionResult( + setexpr: *mut SetExprState, + econtext: *mut ExprContext, + argContext: MemoryContext, + expectedDesc: TupleDesc, + randomAccess: bool, + ) -> *mut Tuplestorestate; + pub fn ExecInitFunctionResultSet( + expr: *mut Expr, + econtext: *mut ExprContext, + parent: *mut PlanState, + ) -> *mut SetExprState; + pub fn ExecMakeFunctionResultSet( + fcache: *mut SetExprState, + econtext: *mut ExprContext, + argContext: MemoryContext, + isNull: *mut bool, + isDone: *mut ExprDoneCond::Type, + ) -> Datum; + pub fn ExecScan( + node: *mut ScanState, + accessMtd: ExecScanAccessMtd, + recheckMtd: ExecScanRecheckMtd, + ) -> *mut TupleTableSlot; + pub fn ExecAssignScanProjectionInfo(node: *mut ScanState); + pub fn ExecAssignScanProjectionInfoWithVarno(node: *mut ScanState, varno: ::core::ffi::c_int); + pub fn ExecScanReScan(node: *mut ScanState); + pub fn ExecInitResultTypeTL(planstate: *mut PlanState); + pub fn ExecInitResultSlot(planstate: *mut PlanState, tts_ops: *const TupleTableSlotOps); + pub fn ExecInitResultTupleSlotTL(planstate: *mut PlanState, tts_ops: *const TupleTableSlotOps); + pub fn ExecInitScanTupleSlot( + estate: *mut EState, + scanstate: *mut ScanState, + tupledesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ); + pub fn ExecInitExtraTupleSlot( + estate: *mut EState, + tupledesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecInitNullTupleSlot( + estate: *mut EState, + tupType: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecTypeFromTL(targetList: *mut List) -> TupleDesc; + pub fn ExecCleanTypeFromTL(targetList: *mut List) -> TupleDesc; + pub fn ExecTypeFromExprList(exprList: *mut List) -> TupleDesc; + pub fn ExecTypeSetColNames(typeInfo: TupleDesc, namesList: *mut List); + pub fn UpdateChangedParamSet(node: *mut PlanState, newchg: *mut Bitmapset); + pub fn begin_tup_output_tupdesc( + dest: *mut DestReceiver, + tupdesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupOutputState; + pub fn do_tup_output(tstate: *mut TupOutputState, values: *const Datum, isnull: *const bool); + pub fn do_text_output_multiline(tstate: *mut TupOutputState, txt: *const ::core::ffi::c_char); + pub fn end_tup_output(tstate: *mut TupOutputState); + pub fn CreateExecutorState() -> *mut EState; + pub fn FreeExecutorState(estate: *mut EState); + pub fn CreateExprContext(estate: *mut EState) -> *mut ExprContext; + pub fn CreateWorkExprContext(estate: *mut EState) -> *mut ExprContext; + pub fn CreateStandaloneExprContext() -> *mut ExprContext; + pub fn FreeExprContext(econtext: *mut ExprContext, isCommit: bool); + pub fn ReScanExprContext(econtext: *mut ExprContext); + pub fn MakePerTupleExprContext(estate: *mut EState) -> *mut ExprContext; + pub fn ExecAssignExprContext(estate: *mut EState, planstate: *mut PlanState); + pub fn ExecGetResultType(planstate: *mut PlanState) -> TupleDesc; + pub fn ExecGetResultSlotOps( + planstate: *mut PlanState, + isfixed: *mut bool, + ) -> *const TupleTableSlotOps; + pub fn ExecAssignProjectionInfo(planstate: *mut PlanState, inputDesc: TupleDesc); + pub fn ExecConditionalAssignProjectionInfo( + planstate: *mut PlanState, + inputDesc: TupleDesc, + varno: ::core::ffi::c_int, + ); + pub fn ExecAssignScanType(scanstate: *mut ScanState, tupDesc: TupleDesc); + pub fn ExecCreateScanSlotFromOuterPlan( + estate: *mut EState, + scanstate: *mut ScanState, + tts_ops: *const TupleTableSlotOps, + ); + pub fn ExecRelationIsTargetRelation(estate: *mut EState, scanrelid: Index) -> bool; + pub fn ExecOpenScanRelation( + estate: *mut EState, + scanrelid: Index, + eflags: ::core::ffi::c_int, + ) -> Relation; + pub fn ExecInitRangeTable(estate: *mut EState, rangeTable: *mut List, permInfos: *mut List); + pub fn ExecCloseRangeTableRelations(estate: *mut EState); + pub fn ExecCloseResultRelations(estate: *mut EState); + pub fn ExecGetRangeTableRelation(estate: *mut EState, rti: Index) -> Relation; + pub fn ExecInitResultRelation( + estate: *mut EState, + resultRelInfo: *mut ResultRelInfo, + rti: Index, + ); + pub fn executor_errposition( + estate: *mut EState, + location: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn RegisterExprContextCallback( + econtext: *mut ExprContext, + function: ExprContextCallbackFunction, + arg: Datum, + ); + pub fn UnregisterExprContextCallback( + econtext: *mut ExprContext, + function: ExprContextCallbackFunction, + arg: Datum, + ); + pub fn GetAttributeByName( + tuple: HeapTupleHeader, + attname: *const ::core::ffi::c_char, + isNull: *mut bool, + ) -> Datum; + pub fn GetAttributeByNum( + tuple: HeapTupleHeader, + attrno: AttrNumber, + isNull: *mut bool, + ) -> Datum; + pub fn ExecTargetListLength(targetlist: *mut List) -> ::core::ffi::c_int; + pub fn ExecCleanTargetListLength(targetlist: *mut List) -> ::core::ffi::c_int; + pub fn ExecGetTriggerOldSlot( + estate: *mut EState, + relInfo: *mut ResultRelInfo, + ) -> *mut TupleTableSlot; + pub fn ExecGetTriggerNewSlot( + estate: *mut EState, + relInfo: *mut ResultRelInfo, + ) -> *mut TupleTableSlot; + pub fn ExecGetReturningSlot( + estate: *mut EState, + relInfo: *mut ResultRelInfo, + ) -> *mut TupleTableSlot; + pub fn ExecGetChildToRootMap(resultRelInfo: *mut ResultRelInfo) -> *mut TupleConversionMap; + pub fn ExecGetRootToChildMap( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + ) -> *mut TupleConversionMap; + pub fn ExecGetResultRelCheckAsUser(relInfo: *mut ResultRelInfo, estate: *mut EState) -> Oid; + pub fn ExecGetInsertedCols(relinfo: *mut ResultRelInfo, estate: *mut EState) -> *mut Bitmapset; + pub fn ExecGetUpdatedCols(relinfo: *mut ResultRelInfo, estate: *mut EState) -> *mut Bitmapset; + pub fn ExecGetExtraUpdatedCols( + relinfo: *mut ResultRelInfo, + estate: *mut EState, + ) -> *mut Bitmapset; + pub fn ExecGetAllUpdatedCols( + relinfo: *mut ResultRelInfo, + estate: *mut EState, + ) -> *mut Bitmapset; + pub fn ExecOpenIndices(resultRelInfo: *mut ResultRelInfo, speculative: bool); + pub fn ExecCloseIndices(resultRelInfo: *mut ResultRelInfo); + pub fn ExecInsertIndexTuples( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + update: bool, + noDupErr: bool, + specConflict: *mut bool, + arbiterIndexes: *mut List, + onlySummarizing: bool, + ) -> *mut List; + pub fn ExecCheckIndexConstraints( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + conflictTid: ItemPointer, + arbiterIndexes: *mut List, + ) -> bool; + pub fn check_exclusion_constraint( + heap: Relation, + index: Relation, + indexInfo: *mut IndexInfo, + tupleid: ItemPointer, + values: *const Datum, + isnull: *const bool, + estate: *mut EState, + newIndex: bool, + ); + pub fn get_equal_strategy_number_for_am(am: Oid) -> StrategyNumber; + pub fn RelationFindReplTupleByIndex( + rel: Relation, + idxoid: Oid, + lockmode: LockTupleMode::Type, + searchslot: *mut TupleTableSlot, + outslot: *mut TupleTableSlot, + ) -> bool; + pub fn RelationFindReplTupleSeq( + rel: Relation, + lockmode: LockTupleMode::Type, + searchslot: *mut TupleTableSlot, + outslot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecSimpleRelationInsert( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + slot: *mut TupleTableSlot, + ); + pub fn ExecSimpleRelationUpdate( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + epqstate: *mut EPQState, + searchslot: *mut TupleTableSlot, + slot: *mut TupleTableSlot, + ); + pub fn ExecSimpleRelationDelete( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + epqstate: *mut EPQState, + searchslot: *mut TupleTableSlot, + ); + pub fn CheckCmdReplicaIdentity(rel: Relation, cmd: CmdType::Type); + pub fn CheckSubscriptionRelkind( + relkind: ::core::ffi::c_char, + nspname: *const ::core::ffi::c_char, + relname: *const ::core::ffi::c_char, + ); + pub fn ExecGetUpdateNewTuple( + relinfo: *mut ResultRelInfo, + planSlot: *mut TupleTableSlot, + oldSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn ExecLookupResultRelByOid( + node: *mut ModifyTableState, + resultoid: Oid, + missing_ok: bool, + update_cache: bool, + ) -> *mut ResultRelInfo; + pub fn get_call_result_type( + fcinfo: FunctionCallInfo, + resultTypeId: *mut Oid, + resultTupleDesc: *mut TupleDesc, + ) -> TypeFuncClass::Type; + pub fn get_expr_result_type( + expr: *mut Node, + resultTypeId: *mut Oid, + resultTupleDesc: *mut TupleDesc, + ) -> TypeFuncClass::Type; + pub fn get_func_result_type( + functionId: Oid, + resultTypeId: *mut Oid, + resultTupleDesc: *mut TupleDesc, + ) -> TypeFuncClass::Type; + pub fn get_expr_result_tupdesc(expr: *mut Node, noError: bool) -> TupleDesc; + pub fn resolve_polymorphic_argtypes( + numargs: ::core::ffi::c_int, + argtypes: *mut Oid, + argmodes: *mut ::core::ffi::c_char, + call_expr: *mut Node, + ) -> bool; + pub fn get_func_arg_info( + procTup: HeapTuple, + p_argtypes: *mut *mut Oid, + p_argnames: *mut *mut *mut ::core::ffi::c_char, + p_argmodes: *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn get_func_input_arg_names( + proargnames: Datum, + proargmodes: Datum, + arg_names: *mut *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn get_func_trftypes(procTup: HeapTuple, p_trftypes: *mut *mut Oid) -> ::core::ffi::c_int; + pub fn get_func_result_name(functionId: Oid) -> *mut ::core::ffi::c_char; + pub fn build_function_result_tupdesc_d( + prokind: ::core::ffi::c_char, + proallargtypes: Datum, + proargmodes: Datum, + proargnames: Datum, + ) -> TupleDesc; + pub fn build_function_result_tupdesc_t(procTuple: HeapTuple) -> TupleDesc; + pub fn RelationNameGetTupleDesc(relname: *const ::core::ffi::c_char) -> TupleDesc; + pub fn TypeGetTupleDesc(typeoid: Oid, colaliases: *mut List) -> TupleDesc; + pub fn BlessTupleDesc(tupdesc: TupleDesc) -> TupleDesc; + pub fn TupleDescGetAttInMetadata(tupdesc: TupleDesc) -> *mut AttInMetadata; + pub fn BuildTupleFromCStrings( + attinmeta: *mut AttInMetadata, + values: *mut *mut ::core::ffi::c_char, + ) -> HeapTuple; + pub fn HeapTupleHeaderGetDatum(tuple: HeapTupleHeader) -> Datum; + pub fn InitMaterializedSRF(fcinfo: FunctionCallInfo, flags: bits32); + pub fn init_MultiFuncCall(fcinfo: FunctionCallInfo) -> *mut FuncCallContext; + pub fn per_MultiFuncCall(fcinfo: FunctionCallInfo) -> *mut FuncCallContext; + pub fn end_MultiFuncCall(fcinfo: FunctionCallInfo, funcctx: *mut FuncCallContext); + pub fn extract_variadic_args( + fcinfo: FunctionCallInfo, + variadic_start: ::core::ffi::c_int, + convert_unknown: bool, + args: *mut *mut Datum, + types: *mut *mut Oid, + nulls: *mut *mut bool, + ) -> ::core::ffi::c_int; + pub fn __sysv_signal(__sig: ::core::ffi::c_int, __handler: __sighandler_t) -> __sighandler_t; + pub fn signal(__sig: ::core::ffi::c_int, __handler: __sighandler_t) -> __sighandler_t; + pub fn kill(__pid: __pid_t, __sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn killpg(__pgrp: __pid_t, __sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn raise(__sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ssignal(__sig: ::core::ffi::c_int, __handler: __sighandler_t) -> __sighandler_t; + pub fn gsignal(__sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn psignal(__sig: ::core::ffi::c_int, __s: *const ::core::ffi::c_char); + pub fn psiginfo(__pinfo: *const siginfo_t, __s: *const ::core::ffi::c_char); + pub fn sigblock(__mask: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigsetmask(__mask: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigemptyset(__set: *mut sigset_t) -> ::core::ffi::c_int; + pub fn sigfillset(__set: *mut sigset_t) -> ::core::ffi::c_int; + pub fn sigaddset(__set: *mut sigset_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigdelset(__set: *mut sigset_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigismember(__set: *const sigset_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigprocmask( + __how: ::core::ffi::c_int, + __set: *const sigset_t, + __oset: *mut sigset_t, + ) -> ::core::ffi::c_int; + pub fn sigsuspend(__set: *const sigset_t) -> ::core::ffi::c_int; + pub fn sigaction( + __sig: ::core::ffi::c_int, + __act: *const sigaction, + __oact: *mut sigaction, + ) -> ::core::ffi::c_int; + pub fn sigpending(__set: *mut sigset_t) -> ::core::ffi::c_int; + pub fn sigwait(__set: *const sigset_t, __sig: *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigwaitinfo(__set: *const sigset_t, __info: *mut siginfo_t) -> ::core::ffi::c_int; + pub fn sigtimedwait( + __set: *const sigset_t, + __info: *mut siginfo_t, + __timeout: *const timespec, + ) -> ::core::ffi::c_int; + pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) + -> ::core::ffi::c_int; + pub fn gettimeofday(__tv: *mut timeval, __tz: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; + pub fn settimeofday(__tv: *const timeval, __tz: *const timezone) -> ::core::ffi::c_int; + pub fn adjtime(__delta: *const timeval, __olddelta: *mut timeval) -> ::core::ffi::c_int; + pub fn getitimer(__which: __itimer_which_t, __value: *mut itimerval) -> ::core::ffi::c_int; + pub fn setitimer( + __which: __itimer_which_t, + __new: *const itimerval, + __old: *mut itimerval, + ) -> ::core::ffi::c_int; + pub fn utimes(__file: *const ::core::ffi::c_char, __tvp: *const timeval) -> ::core::ffi::c_int; + pub fn lutimes(__file: *const ::core::ffi::c_char, __tvp: *const timeval) + -> ::core::ffi::c_int; + pub fn futimes(__fd: ::core::ffi::c_int, __tvp: *const timeval) -> ::core::ffi::c_int; + pub fn siginterrupt( + __sig: ::core::ffi::c_int, + __interrupt: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn sigaltstack(__ss: *const stack_t, __oss: *mut stack_t) -> ::core::ffi::c_int; + pub fn pthread_sigmask( + __how: ::core::ffi::c_int, + __newmask: *const __sigset_t, + __oldmask: *mut __sigset_t, + ) -> ::core::ffi::c_int; + pub fn pthread_kill(__threadid: pthread_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn __libc_current_sigrtmin() -> ::core::ffi::c_int; + pub fn __libc_current_sigrtmax() -> ::core::ffi::c_int; + pub fn pg_localtime(timep: *const pg_time_t, tz: *const pg_tz) -> *mut pg_tm; + pub fn pg_gmtime(timep: *const pg_time_t) -> *mut pg_tm; + pub fn pg_next_dst_boundary( + timep: *const pg_time_t, + before_gmtoff: *mut ::core::ffi::c_long, + before_isdst: *mut ::core::ffi::c_int, + boundary: *mut pg_time_t, + after_gmtoff: *mut ::core::ffi::c_long, + after_isdst: *mut ::core::ffi::c_int, + tz: *const pg_tz, + ) -> ::core::ffi::c_int; + pub fn pg_interpret_timezone_abbrev( + abbrev: *const ::core::ffi::c_char, + timep: *const pg_time_t, + gmtoff: *mut ::core::ffi::c_long, + isdst: *mut ::core::ffi::c_int, + tz: *const pg_tz, + ) -> bool; + pub fn pg_get_timezone_offset(tz: *const pg_tz, gmtoff: *mut ::core::ffi::c_long) -> bool; + pub fn pg_get_timezone_name(tz: *mut pg_tz) -> *const ::core::ffi::c_char; + pub fn pg_tz_acceptable(tz: *mut pg_tz) -> bool; + pub fn pg_strftime( + s: *mut ::core::ffi::c_char, + maxsize: usize, + format: *const ::core::ffi::c_char, + t: *const pg_tm, + ) -> usize; + pub static mut session_timezone: *mut pg_tz; + pub static mut log_timezone: *mut pg_tz; + pub fn pg_timezone_initialize(); + pub fn pg_tzset(tzname: *const ::core::ffi::c_char) -> *mut pg_tz; + pub fn pg_tzset_offset(gmtoffset: ::core::ffi::c_long) -> *mut pg_tz; + pub fn pg_tzenumerate_start() -> *mut pg_tzenum; + pub fn pg_tzenumerate_next(dir: *mut pg_tzenum) -> *mut pg_tz; + pub fn pg_tzenumerate_end(dir: *mut pg_tzenum); + #[doc = "\t System interrupt and critical section handling\n\n There are two types of interrupts that a running backend needs to accept\n without messing up its state: QueryCancel (SIGINT) and ProcDie (SIGTERM).\n In both cases, we need to be able to clean up the current transaction\n gracefully, so we can't respond to the interrupt instantaneously ---\n there's no guarantee that internal data structures would be self-consistent\n if the code is interrupted at an arbitrary instant. Instead, the signal\n handlers set flags that are checked periodically during execution.\n\n The CHECK_FOR_INTERRUPTS() macro is called at strategically located spots\n where it is normally safe to accept a cancel or die interrupt. In some\n cases, we invoke CHECK_FOR_INTERRUPTS() inside low-level subroutines that\n might sometimes be called in contexts that do *not* want to allow a cancel\n or die interrupt. The HOLD_INTERRUPTS() and RESUME_INTERRUPTS() macros\n allow code to ensure that no cancel or die interrupt will be accepted,\n even if CHECK_FOR_INTERRUPTS() gets called in a subroutine. The interrupt\n will be held off until CHECK_FOR_INTERRUPTS() is done outside any\n HOLD_INTERRUPTS() ... RESUME_INTERRUPTS() section.\n\n There is also a mechanism to prevent query cancel interrupts, while still\n allowing die interrupts: HOLD_CANCEL_INTERRUPTS() and\n RESUME_CANCEL_INTERRUPTS().\n\n Note that ProcessInterrupts() has also acquired a number of tasks that\n do not necessarily cause a query-cancel-or-die response. Hence, it's\n possible that it will just clear InterruptPending and return.\n\n INTERRUPTS_PENDING_CONDITION() can be checked to see whether an\n interrupt needs to be serviced, without trying to do so immediately.\n Some callers are also interested in INTERRUPTS_CAN_BE_PROCESSED(),\n which tells whether ProcessInterrupts is sure to clear the interrupt.\n\n Special mechanisms are used to let an interrupt be accepted when we are\n waiting for a lock or when we are waiting for command input (but, of\n course, only if the interrupt holdoff counter is zero). See the\n related code for details.\n\n A lost connection is handled similarly, although the loss of connection\n does not raise a signal, but is detected when we fail to write to the\n socket. If there was a signal for a broken connection, we could make use of\n it by setting ClientConnectionLost in the signal handler.\n\n A related, but conceptually distinct, mechanism is the \"critical section\"\n mechanism. A critical section not only holds off cancel/die interrupts,\n but causes any ereport(ERROR) or ereport(FATAL) to become ereport(PANIC)\n --- that is, a system-wide reset is forced. Needless to say, only really\n *critical* code should be marked as a critical section!\tCurrently, this\n mechanism is only used for XLOG-related code.\n"] + pub static mut InterruptPending: sig_atomic_t; + pub static mut QueryCancelPending: sig_atomic_t; + pub static mut ProcDiePending: sig_atomic_t; + pub static mut IdleInTransactionSessionTimeoutPending: sig_atomic_t; + pub static mut TransactionTimeoutPending: sig_atomic_t; + pub static mut IdleSessionTimeoutPending: sig_atomic_t; + pub static mut ProcSignalBarrierPending: sig_atomic_t; + pub static mut LogMemoryContextPending: sig_atomic_t; + pub static mut IdleStatsUpdateTimeoutPending: sig_atomic_t; + pub static mut CheckClientConnectionPending: sig_atomic_t; + pub static mut ClientConnectionLost: sig_atomic_t; + pub static mut InterruptHoldoffCount: uint32; + pub static mut QueryCancelHoldoffCount: uint32; + pub static mut CritSectionCount: uint32; + pub fn ProcessInterrupts(); + #[doc = "\t globals.h --\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t *"] + pub static mut PostmasterPid: pid_t; + pub static mut IsPostmasterEnvironment: bool; + pub static mut IsUnderPostmaster: bool; + pub static mut IsBinaryUpgrade: bool; + pub static mut ExitOnAnyError: bool; + pub static mut DataDir: *mut ::core::ffi::c_char; + pub static mut data_directory_mode: ::core::ffi::c_int; + pub static mut NBuffers: ::core::ffi::c_int; + pub static mut MaxBackends: ::core::ffi::c_int; + pub static mut MaxConnections: ::core::ffi::c_int; + pub static mut max_worker_processes: ::core::ffi::c_int; + pub static mut max_parallel_workers: ::core::ffi::c_int; + pub static mut commit_timestamp_buffers: ::core::ffi::c_int; + pub static mut multixact_member_buffers: ::core::ffi::c_int; + pub static mut multixact_offset_buffers: ::core::ffi::c_int; + pub static mut notify_buffers: ::core::ffi::c_int; + pub static mut serializable_buffers: ::core::ffi::c_int; + pub static mut subtransaction_buffers: ::core::ffi::c_int; + pub static mut transaction_buffers: ::core::ffi::c_int; + pub static mut MyProcPid: ::core::ffi::c_int; + pub static mut MyStartTime: pg_time_t; + pub static mut MyStartTimestamp: TimestampTz; + pub static mut MyProcPort: *mut Port; + pub static mut MyLatch: *mut Latch; + pub static mut MyCancelKey: int32; + pub static mut MyPMChildSlot: ::core::ffi::c_int; + pub static mut OutputFileName: [::core::ffi::c_char; 0usize]; + pub static mut my_exec_path: [::core::ffi::c_char; 0usize]; + pub static mut pkglib_path: [::core::ffi::c_char; 0usize]; + pub static mut MyDatabaseId: Oid; + pub static mut MyDatabaseTableSpace: Oid; + pub static mut MyDatabaseHasLoginEventTriggers: bool; + pub static mut DateStyle: ::core::ffi::c_int; + pub static mut DateOrder: ::core::ffi::c_int; + pub static mut IntervalStyle: ::core::ffi::c_int; + pub static mut enableFsync: bool; + pub static mut allowSystemTableMods: bool; + pub static mut work_mem: ::core::ffi::c_int; + pub static mut hash_mem_multiplier: f64; + pub static mut maintenance_work_mem: ::core::ffi::c_int; + pub static mut max_parallel_maintenance_workers: ::core::ffi::c_int; + pub static mut VacuumBufferUsageLimit: ::core::ffi::c_int; + pub static mut VacuumCostPageHit: ::core::ffi::c_int; + pub static mut VacuumCostPageMiss: ::core::ffi::c_int; + pub static mut VacuumCostPageDirty: ::core::ffi::c_int; + pub static mut VacuumCostLimit: ::core::ffi::c_int; + pub static mut VacuumCostDelay: f64; + pub static mut VacuumPageHit: int64; + pub static mut VacuumPageMiss: int64; + pub static mut VacuumPageDirty: int64; + pub static mut VacuumCostBalance: ::core::ffi::c_int; + pub static mut VacuumCostActive: bool; + pub fn set_stack_base() -> pg_stack_base_t; + pub fn restore_stack_base(base: pg_stack_base_t); + pub fn check_stack_depth(); + pub fn stack_is_too_deep() -> bool; + pub fn PreventCommandIfReadOnly(cmdname: *const ::core::ffi::c_char); + pub fn PreventCommandIfParallelMode(cmdname: *const ::core::ffi::c_char); + pub fn PreventCommandDuringRecovery(cmdname: *const ::core::ffi::c_char); + pub static mut DatabasePath: *mut ::core::ffi::c_char; + pub fn InitPostmasterChild(); + pub fn InitStandaloneProcess(argv0: *const ::core::ffi::c_char); + pub fn InitProcessLocalLatch(); + pub fn SwitchToSharedLatch(); + pub fn SwitchBackToLocalLatch(); + pub static mut MyBackendType: BackendType::Type; + pub fn GetBackendTypeDesc(backendType: BackendType::Type) -> *const ::core::ffi::c_char; + pub fn SetDatabasePath(path: *const ::core::ffi::c_char); + pub fn checkDataDir(); + pub fn SetDataDir(dir: *const ::core::ffi::c_char); + pub fn ChangeToDataDir(); + pub fn GetUserNameFromId(roleid: Oid, noerr: bool) -> *mut ::core::ffi::c_char; + pub fn GetUserId() -> Oid; + pub fn GetOuterUserId() -> Oid; + pub fn GetSessionUserId() -> Oid; + pub fn GetAuthenticatedUserId() -> Oid; + pub fn GetUserIdAndSecContext(userid: *mut Oid, sec_context: *mut ::core::ffi::c_int); + pub fn SetUserIdAndSecContext(userid: Oid, sec_context: ::core::ffi::c_int); + pub fn InLocalUserIdChange() -> bool; + pub fn InSecurityRestrictedOperation() -> bool; + pub fn InNoForceRLSOperation() -> bool; + pub fn GetUserIdAndContext(userid: *mut Oid, sec_def_context: *mut bool); + pub fn SetUserIdAndContext(userid: Oid, sec_def_context: bool); + pub fn InitializeSessionUserId( + rolename: *const ::core::ffi::c_char, + roleid: Oid, + bypass_login_check: bool, + ); + pub fn InitializeSessionUserIdStandalone(); + pub fn SetSessionAuthorization(userid: Oid, is_superuser: bool); + pub fn GetCurrentRoleId() -> Oid; + pub fn SetCurrentRoleId(roleid: Oid, is_superuser: bool); + pub fn InitializeSystemUser( + authn_id: *const ::core::ffi::c_char, + auth_method: *const ::core::ffi::c_char, + ); + pub fn GetSystemUser() -> *const ::core::ffi::c_char; + pub fn superuser() -> bool; + pub fn superuser_arg(roleid: Oid) -> bool; + pub static mut Mode: ProcessingMode::Type; + pub fn pg_split_opts( + argv: *mut *mut ::core::ffi::c_char, + argcp: *mut ::core::ffi::c_int, + optstr: *const ::core::ffi::c_char, + ); + pub fn InitializeMaxBackends(); + pub fn InitPostgres( + in_dbname: *const ::core::ffi::c_char, + dboid: Oid, + username: *const ::core::ffi::c_char, + useroid: Oid, + flags: bits32, + out_dbname: *mut ::core::ffi::c_char, + ); + pub fn BaseInit(); + pub static mut IgnoreSystemIndexes: bool; + pub static mut process_shared_preload_libraries_in_progress: bool; + pub static mut process_shared_preload_libraries_done: bool; + pub static mut process_shmem_requests_in_progress: bool; + pub static mut session_preload_libraries_string: *mut ::core::ffi::c_char; + pub static mut shared_preload_libraries_string: *mut ::core::ffi::c_char; + pub static mut local_preload_libraries_string: *mut ::core::ffi::c_char; + pub fn CreateDataDirLockFile(amPostmaster: bool); + pub fn CreateSocketLockFile( + socketfile: *const ::core::ffi::c_char, + amPostmaster: bool, + socketDir: *const ::core::ffi::c_char, + ); + pub fn TouchSocketLockFiles(); + pub fn AddToDataDirLockFile(target_line: ::core::ffi::c_int, str_: *const ::core::ffi::c_char); + pub fn RecheckDataDirLockFile() -> bool; + pub fn ValidatePgVersion(path: *const ::core::ffi::c_char); + pub fn process_shared_preload_libraries(); + pub fn process_session_preload_libraries(); + pub fn process_shmem_requests(); + pub fn pg_bindtextdomain(domain: *const ::core::ffi::c_char); + pub fn has_rolreplication(roleid: Oid) -> bool; + pub static mut shmem_request_hook: shmem_request_hook_type; + pub fn EstimateClientConnectionInfoSpace() -> Size; + pub fn SerializeClientConnectionInfo(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreClientConnectionInfo(conninfo: *mut ::core::ffi::c_char); + pub fn get_hash_memory_limit() -> usize; + pub fn PgArchShmemSize() -> Size; + pub fn PgArchShmemInit(); + pub fn PgArchCanRestart() -> bool; + pub fn PgArchiverMain(startup_data: *mut ::core::ffi::c_char, startup_data_len: usize) -> !; + pub fn PgArchWakeup(); + pub fn PgArchForceDirScan(); + pub fn pgstat_progress_start_command(cmdtype: ProgressCommandType::Type, relid: Oid); + pub fn pgstat_progress_update_param(index: ::core::ffi::c_int, val: int64); + pub fn pgstat_progress_incr_param(index: ::core::ffi::c_int, incr: int64); + pub fn pgstat_progress_parallel_incr_param(index: ::core::ffi::c_int, incr: int64); + pub fn pgstat_progress_update_multi_param( + nparam: ::core::ffi::c_int, + index: *const ::core::ffi::c_int, + val: *const int64, + ); + pub fn pgstat_progress_end_command(); + pub fn __cmsg_nxthdr(__mhdr: *mut msghdr, __cmsg: *mut cmsghdr) -> *mut cmsghdr; + pub fn socket( + __domain: ::core::ffi::c_int, + __type: ::core::ffi::c_int, + __protocol: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn socketpair( + __domain: ::core::ffi::c_int, + __type: ::core::ffi::c_int, + __protocol: ::core::ffi::c_int, + __fds: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn bind( + __fd: ::core::ffi::c_int, + __addr: *const sockaddr, + __len: socklen_t, + ) -> ::core::ffi::c_int; + pub fn getsockname( + __fd: ::core::ffi::c_int, + __addr: *mut sockaddr, + __len: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn connect( + __fd: ::core::ffi::c_int, + __addr: *const sockaddr, + __len: socklen_t, + ) -> ::core::ffi::c_int; + pub fn getpeername( + __fd: ::core::ffi::c_int, + __addr: *mut sockaddr, + __len: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn send( + __fd: ::core::ffi::c_int, + __buf: *const ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn recv( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn sendto( + __fd: ::core::ffi::c_int, + __buf: *const ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + __addr: *const sockaddr, + __addr_len: socklen_t, + ) -> isize; + pub fn recvfrom( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + __addr: *mut sockaddr, + __addr_len: *mut socklen_t, + ) -> isize; + pub fn sendmsg( + __fd: ::core::ffi::c_int, + __message: *const msghdr, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn recvmsg( + __fd: ::core::ffi::c_int, + __message: *mut msghdr, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn getsockopt( + __fd: ::core::ffi::c_int, + __level: ::core::ffi::c_int, + __optname: ::core::ffi::c_int, + __optval: *mut ::core::ffi::c_void, + __optlen: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn setsockopt( + __fd: ::core::ffi::c_int, + __level: ::core::ffi::c_int, + __optname: ::core::ffi::c_int, + __optval: *const ::core::ffi::c_void, + __optlen: socklen_t, + ) -> ::core::ffi::c_int; + pub fn listen(__fd: ::core::ffi::c_int, __n: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn accept( + __fd: ::core::ffi::c_int, + __addr: *mut sockaddr, + __addr_len: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn shutdown(__fd: ::core::ffi::c_int, __how: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sockatmark(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isfdtype(__fd: ::core::ffi::c_int, __fdtype: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub static in6addr_any: in6_addr; + pub static in6addr_loopback: in6_addr; + pub fn ntohl(__netlong: u32) -> u32; + pub fn ntohs(__netshort: u16) -> u16; + pub fn htonl(__hostlong: u32) -> u32; + pub fn htons(__hostshort: u16) -> u16; + pub fn bindresvport( + __sockfd: ::core::ffi::c_int, + __sock_in: *mut sockaddr_in, + ) -> ::core::ffi::c_int; + pub fn bindresvport6( + __sockfd: ::core::ffi::c_int, + __sock_in: *mut sockaddr_in6, + ) -> ::core::ffi::c_int; + pub fn setrpcent(__stayopen: ::core::ffi::c_int); + pub fn endrpcent(); + pub fn getrpcbyname(__name: *const ::core::ffi::c_char) -> *mut rpcent; + pub fn getrpcbynumber(__number: ::core::ffi::c_int) -> *mut rpcent; + pub fn getrpcent() -> *mut rpcent; + pub fn getrpcbyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut rpcent, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut rpcent, + ) -> ::core::ffi::c_int; + pub fn getrpcbynumber_r( + __number: ::core::ffi::c_int, + __result_buf: *mut rpcent, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut rpcent, + ) -> ::core::ffi::c_int; + pub fn getrpcent_r( + __result_buf: *mut rpcent, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut rpcent, + ) -> ::core::ffi::c_int; + pub fn __h_errno_location() -> *mut ::core::ffi::c_int; + pub fn herror(__str: *const ::core::ffi::c_char); + pub fn hstrerror(__err_num: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn sethostent(__stay_open: ::core::ffi::c_int); + pub fn endhostent(); + pub fn gethostent() -> *mut hostent; + pub fn gethostbyaddr( + __addr: *const ::core::ffi::c_void, + __len: __socklen_t, + __type: ::core::ffi::c_int, + ) -> *mut hostent; + pub fn gethostbyname(__name: *const ::core::ffi::c_char) -> *mut hostent; + pub fn gethostbyname2( + __name: *const ::core::ffi::c_char, + __af: ::core::ffi::c_int, + ) -> *mut hostent; + pub fn gethostent_r( + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn gethostbyaddr_r( + __addr: *const ::core::ffi::c_void, + __len: __socklen_t, + __type: ::core::ffi::c_int, + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn gethostbyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn gethostbyname2_r( + __name: *const ::core::ffi::c_char, + __af: ::core::ffi::c_int, + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn setnetent(__stay_open: ::core::ffi::c_int); + pub fn endnetent(); + pub fn getnetent() -> *mut netent; + pub fn getnetbyaddr(__net: u32, __type: ::core::ffi::c_int) -> *mut netent; + pub fn getnetbyname(__name: *const ::core::ffi::c_char) -> *mut netent; + pub fn getnetent_r( + __result_buf: *mut netent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut netent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn getnetbyaddr_r( + __net: u32, + __type: ::core::ffi::c_int, + __result_buf: *mut netent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut netent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn getnetbyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut netent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut netent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn setservent(__stay_open: ::core::ffi::c_int); + pub fn endservent(); + pub fn getservent() -> *mut servent; + pub fn getservbyname( + __name: *const ::core::ffi::c_char, + __proto: *const ::core::ffi::c_char, + ) -> *mut servent; + pub fn getservbyport( + __port: ::core::ffi::c_int, + __proto: *const ::core::ffi::c_char, + ) -> *mut servent; + pub fn getservent_r( + __result_buf: *mut servent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut servent, + ) -> ::core::ffi::c_int; + pub fn getservbyname_r( + __name: *const ::core::ffi::c_char, + __proto: *const ::core::ffi::c_char, + __result_buf: *mut servent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut servent, + ) -> ::core::ffi::c_int; + pub fn getservbyport_r( + __port: ::core::ffi::c_int, + __proto: *const ::core::ffi::c_char, + __result_buf: *mut servent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut servent, + ) -> ::core::ffi::c_int; + pub fn setprotoent(__stay_open: ::core::ffi::c_int); + pub fn endprotoent(); + pub fn getprotoent() -> *mut protoent; + pub fn getprotobyname(__name: *const ::core::ffi::c_char) -> *mut protoent; + pub fn getprotobynumber(__proto: ::core::ffi::c_int) -> *mut protoent; + pub fn getprotoent_r( + __result_buf: *mut protoent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut protoent, + ) -> ::core::ffi::c_int; + pub fn getprotobyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut protoent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut protoent, + ) -> ::core::ffi::c_int; + pub fn getprotobynumber_r( + __proto: ::core::ffi::c_int, + __result_buf: *mut protoent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut protoent, + ) -> ::core::ffi::c_int; + pub fn setnetgrent(__netgroup: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn endnetgrent(); + pub fn getnetgrent( + __hostp: *mut *mut ::core::ffi::c_char, + __userp: *mut *mut ::core::ffi::c_char, + __domainp: *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn innetgr( + __netgroup: *const ::core::ffi::c_char, + __host: *const ::core::ffi::c_char, + __user: *const ::core::ffi::c_char, + __domain: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn getnetgrent_r( + __hostp: *mut *mut ::core::ffi::c_char, + __userp: *mut *mut ::core::ffi::c_char, + __domainp: *mut *mut ::core::ffi::c_char, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + ) -> ::core::ffi::c_int; + pub fn rcmd( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_ushort, + __locuser: *const ::core::ffi::c_char, + __remuser: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn rcmd_af( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_ushort, + __locuser: *const ::core::ffi::c_char, + __remuser: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn rexec( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_int, + __name: *const ::core::ffi::c_char, + __pass: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn rexec_af( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_int, + __name: *const ::core::ffi::c_char, + __pass: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn ruserok( + __rhost: *const ::core::ffi::c_char, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn ruserok_af( + __rhost: *const ::core::ffi::c_char, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn iruserok( + __raddr: u32, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn iruserok_af( + __raddr: *const ::core::ffi::c_void, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn rresvport(__alport: *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn rresvport_af(__alport: *mut ::core::ffi::c_int, __af: sa_family_t) + -> ::core::ffi::c_int; + pub fn getaddrinfo( + __name: *const ::core::ffi::c_char, + __service: *const ::core::ffi::c_char, + __req: *const addrinfo, + __pai: *mut *mut addrinfo, + ) -> ::core::ffi::c_int; + pub fn freeaddrinfo(__ai: *mut addrinfo); + pub fn gai_strerror(__ecode: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn getnameinfo( + __sa: *const sockaddr, + __salen: socklen_t, + __host: *mut ::core::ffi::c_char, + __hostlen: socklen_t, + __serv: *mut ::core::ffi::c_char, + __servlen: socklen_t, + __flags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub static mut pgstat_track_activities: bool; + pub static mut pgstat_track_activity_query_size: ::core::ffi::c_int; + pub static mut MyBEEntry: *mut PgBackendStatus; + pub fn BackendStatusShmemSize() -> Size; + pub fn CreateSharedBackendStatus(); + pub fn pgstat_beinit(); + pub fn pgstat_bestart(); + pub fn pgstat_clear_backend_activity_snapshot(); + pub fn pgstat_report_activity(state: BackendState::Type, cmd_str: *const ::core::ffi::c_char); + pub fn pgstat_report_query_id(query_id: uint64, force: bool); + pub fn pgstat_report_tempfile(filesize: usize); + pub fn pgstat_report_appname(appname: *const ::core::ffi::c_char); + pub fn pgstat_report_xact_timestamp(tstamp: TimestampTz); + pub fn pgstat_get_backend_current_activity( + pid: ::core::ffi::c_int, + checkUser: bool, + ) -> *const ::core::ffi::c_char; + pub fn pgstat_get_crashed_backend_activity( + pid: ::core::ffi::c_int, + buffer: *mut ::core::ffi::c_char, + buflen: ::core::ffi::c_int, + ) -> *const ::core::ffi::c_char; + pub fn pgstat_get_my_query_id() -> uint64; + pub fn pgstat_fetch_stat_numbackends() -> ::core::ffi::c_int; + pub fn pgstat_get_beentry_by_proc_number(procNumber: ProcNumber) -> *mut PgBackendStatus; + pub fn pgstat_get_local_beentry_by_proc_number( + procNumber: ProcNumber, + ) -> *mut LocalPgBackendStatus; + pub fn pgstat_get_local_beentry_by_index(idx: ::core::ffi::c_int) -> *mut LocalPgBackendStatus; + pub fn pgstat_clip_activity( + raw_activity: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn pgstat_get_wait_event(wait_event_info: uint32) -> *const ::core::ffi::c_char; + pub fn pgstat_get_wait_event_type(wait_event_info: uint32) -> *const ::core::ffi::c_char; + pub fn pgstat_set_wait_event_storage(wait_event_info: *mut uint32); + pub fn pgstat_reset_wait_event_storage(); + pub static mut my_wait_event_info: *mut uint32; + pub fn WaitEventExtensionNew(wait_event_name: *const ::core::ffi::c_char) -> uint32; + pub fn WaitEventInjectionPointNew(wait_event_name: *const ::core::ffi::c_char) -> uint32; + pub fn WaitEventCustomShmemInit(); + pub fn WaitEventCustomShmemSize() -> Size; + pub fn GetWaitEventCustomNames( + classId: uint32, + nwaitevents: *mut ::core::ffi::c_int, + ) -> *mut *mut ::core::ffi::c_char; + pub fn StatsShmemSize() -> Size; + pub fn StatsShmemInit(); + pub fn pgstat_restore_stats(); + pub fn pgstat_discard_stats(); + pub fn pgstat_before_server_shutdown(code: ::core::ffi::c_int, arg: Datum); + pub fn pgstat_initialize(); + pub fn pgstat_report_stat(force: bool) -> ::core::ffi::c_long; + pub fn pgstat_force_next_flush(); + pub fn pgstat_reset_counters(); + pub fn pgstat_reset(kind: PgStat_Kind::Type, dboid: Oid, objoid: Oid); + pub fn pgstat_reset_of_kind(kind: PgStat_Kind::Type); + pub fn pgstat_clear_snapshot(); + pub fn pgstat_get_stat_snapshot_timestamp(have_snapshot: *mut bool) -> TimestampTz; + pub fn pgstat_get_kind_from_str(kind_str: *mut ::core::ffi::c_char) -> PgStat_Kind::Type; + pub fn pgstat_have_entry(kind: PgStat_Kind::Type, dboid: Oid, objoid: Oid) -> bool; + pub fn pgstat_report_archiver(xlog: *const ::core::ffi::c_char, failed: bool); + pub fn pgstat_fetch_stat_archiver() -> *mut PgStat_ArchiverStats; + pub fn pgstat_report_bgwriter(); + pub fn pgstat_fetch_stat_bgwriter() -> *mut PgStat_BgWriterStats; + pub fn pgstat_report_checkpointer(); + pub fn pgstat_fetch_stat_checkpointer() -> *mut PgStat_CheckpointerStats; + pub fn pgstat_bktype_io_stats_valid( + backend_io: *mut PgStat_BktypeIO, + bktype: BackendType::Type, + ) -> bool; + pub fn pgstat_count_io_op( + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + ); + pub fn pgstat_count_io_op_n( + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + cnt: uint32, + ); + pub fn pgstat_prepare_io_time(track_io_guc: bool) -> instr_time; + pub fn pgstat_count_io_op_time( + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + start_time: instr_time, + cnt: uint32, + ); + pub fn pgstat_fetch_stat_io() -> *mut PgStat_IO; + pub fn pgstat_get_io_context_name(io_context: IOContext::Type) -> *const ::core::ffi::c_char; + pub fn pgstat_get_io_object_name(io_object: IOObject::Type) -> *const ::core::ffi::c_char; + pub fn pgstat_tracks_io_bktype(bktype: BackendType::Type) -> bool; + pub fn pgstat_tracks_io_object( + bktype: BackendType::Type, + io_object: IOObject::Type, + io_context: IOContext::Type, + ) -> bool; + pub fn pgstat_tracks_io_op( + bktype: BackendType::Type, + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + ) -> bool; + pub fn pgstat_drop_database(databaseid: Oid); + pub fn pgstat_report_autovac(dboid: Oid); + pub fn pgstat_report_recovery_conflict(reason: ::core::ffi::c_int); + pub fn pgstat_report_deadlock(); + pub fn pgstat_report_checksum_failures_in_db(dboid: Oid, failurecount: ::core::ffi::c_int); + pub fn pgstat_report_checksum_failure(); + pub fn pgstat_report_connect(dboid: Oid); + pub fn pgstat_fetch_stat_dbentry(dboid: Oid) -> *mut PgStat_StatDBEntry; + pub fn pgstat_create_function(proid: Oid); + pub fn pgstat_drop_function(proid: Oid); + pub fn pgstat_init_function_usage( + fcinfo: *mut FunctionCallInfoBaseData, + fcu: *mut PgStat_FunctionCallUsage, + ); + pub fn pgstat_end_function_usage(fcu: *mut PgStat_FunctionCallUsage, finalize: bool); + pub fn pgstat_fetch_stat_funcentry(func_id: Oid) -> *mut PgStat_StatFuncEntry; + pub fn find_funcstat_entry(func_id: Oid) -> *mut PgStat_FunctionCounts; + pub fn pgstat_create_relation(rel: Relation); + pub fn pgstat_drop_relation(rel: Relation); + pub fn pgstat_copy_relation_stats(dst: Relation, src: Relation); + pub fn pgstat_init_relation(rel: Relation); + pub fn pgstat_assoc_relation(rel: Relation); + pub fn pgstat_unlink_relation(rel: Relation); + pub fn pgstat_report_vacuum( + tableoid: Oid, + shared: bool, + livetuples: PgStat_Counter, + deadtuples: PgStat_Counter, + ); + pub fn pgstat_report_analyze( + rel: Relation, + livetuples: PgStat_Counter, + deadtuples: PgStat_Counter, + resetcounter: bool, + ); + pub fn pgstat_count_heap_insert(rel: Relation, n: PgStat_Counter); + pub fn pgstat_count_heap_update(rel: Relation, hot: bool, newpage: bool); + pub fn pgstat_count_heap_delete(rel: Relation); + pub fn pgstat_count_truncate(rel: Relation); + pub fn pgstat_update_heap_dead_tuples(rel: Relation, delta: ::core::ffi::c_int); + pub fn pgstat_twophase_postcommit( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn pgstat_twophase_postabort( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn pgstat_fetch_stat_tabentry(relid: Oid) -> *mut PgStat_StatTabEntry; + pub fn pgstat_fetch_stat_tabentry_ext(shared: bool, reloid: Oid) -> *mut PgStat_StatTabEntry; + pub fn find_tabstat_entry(rel_id: Oid) -> *mut PgStat_TableStatus; + pub fn pgstat_reset_replslot(name: *const ::core::ffi::c_char); + pub fn pgstat_report_replslot( + slot: *mut ReplicationSlot, + repSlotStat: *const PgStat_StatReplSlotEntry, + ); + pub fn pgstat_create_replslot(slot: *mut ReplicationSlot); + pub fn pgstat_acquire_replslot(slot: *mut ReplicationSlot); + pub fn pgstat_drop_replslot(slot: *mut ReplicationSlot); + pub fn pgstat_fetch_replslot(slotname: NameData) -> *mut PgStat_StatReplSlotEntry; + pub fn pgstat_reset_slru(arg1: *const ::core::ffi::c_char); + pub fn pgstat_count_slru_page_zeroed(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_hit(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_read(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_written(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_exists(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_flush(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_truncate(slru_idx: ::core::ffi::c_int); + pub fn pgstat_get_slru_name(slru_idx: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pgstat_get_slru_index(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pgstat_fetch_slru() -> *mut PgStat_SLRUStats; + pub fn pgstat_report_subscription_error(subid: Oid, is_apply_error: bool); + pub fn pgstat_create_subscription(subid: Oid); + pub fn pgstat_drop_subscription(subid: Oid); + pub fn pgstat_fetch_stat_subscription(subid: Oid) -> *mut PgStat_StatSubEntry; + pub fn AtEOXact_PgStat(isCommit: bool, parallel: bool); + pub fn AtEOSubXact_PgStat(isCommit: bool, nestDepth: ::core::ffi::c_int); + pub fn AtPrepare_PgStat(); + pub fn PostPrepare_PgStat(); + pub fn pgstat_get_transactional_drops( + isCommit: bool, + items: *mut *mut xl_xact_stats_item, + ) -> ::core::ffi::c_int; + pub fn pgstat_execute_transactional_drops( + ndrops: ::core::ffi::c_int, + items: *mut xl_xact_stats_item, + is_redo: bool, + ); + pub fn pgstat_report_wal(force: bool); + pub fn pgstat_fetch_stat_wal() -> *mut PgStat_WalStats; + pub static mut pgstat_track_counts: bool; + pub static mut pgstat_track_functions: ::core::ffi::c_int; + pub static mut pgstat_fetch_consistency: ::core::ffi::c_int; + pub static mut PendingBgWriterStats: PgStat_BgWriterStats; + pub static mut PendingCheckpointerStats: PgStat_CheckpointerStats; + pub static mut pgStatBlockReadTime: PgStat_Counter; + pub static mut pgStatBlockWriteTime: PgStat_Counter; + pub static mut pgStatActiveTime: PgStat_Counter; + pub static mut pgStatTransactionIdleTime: PgStat_Counter; + pub static mut pgStatSessionEndCause: SessionEndType::Type; + pub static mut PendingWalStats: PgStat_PendingWalStats; + pub fn build_backup_content( + state: *mut BackupState, + ishistoryfile: bool, + ) -> *mut ::core::ffi::c_char; + pub static mut wal_sync_method: ::core::ffi::c_int; + pub static mut ProcLastRecPtr: XLogRecPtr; + pub static mut XactLastRecEnd: XLogRecPtr; + pub static mut XactLastCommitEnd: XLogRecPtr; + pub static mut wal_segment_size: ::core::ffi::c_int; + pub static mut min_wal_size_mb: ::core::ffi::c_int; + pub static mut max_wal_size_mb: ::core::ffi::c_int; + pub static mut wal_keep_size_mb: ::core::ffi::c_int; + pub static mut max_slot_wal_keep_size_mb: ::core::ffi::c_int; + pub static mut XLOGbuffers: ::core::ffi::c_int; + pub static mut XLogArchiveTimeout: ::core::ffi::c_int; + pub static mut wal_retrieve_retry_interval: ::core::ffi::c_int; + pub static mut XLogArchiveCommand: *mut ::core::ffi::c_char; + pub static mut EnableHotStandby: bool; + pub static mut fullPageWrites: bool; + pub static mut wal_log_hints: bool; + pub static mut wal_compression: ::core::ffi::c_int; + pub static mut wal_init_zero: bool; + pub static mut wal_recycle: bool; + pub static mut wal_consistency_checking: *mut bool; + pub static mut wal_consistency_checking_string: *mut ::core::ffi::c_char; + pub static mut log_checkpoints: bool; + pub static mut track_wal_io_timing: bool; + pub static mut wal_decode_buffer_size: ::core::ffi::c_int; + pub static mut CheckPointSegments: ::core::ffi::c_int; + pub static mut XLogArchiveMode: ::core::ffi::c_int; + pub static mut wal_level: ::core::ffi::c_int; + pub static mut CheckpointStats: CheckpointStatsData; + pub fn XLogInsertRecord( + rdata: *mut XLogRecData, + fpw_lsn: XLogRecPtr, + flags: uint8, + num_fpi: ::core::ffi::c_int, + topxid_included: bool, + ) -> XLogRecPtr; + pub fn XLogFlush(record: XLogRecPtr); + pub fn XLogBackgroundFlush() -> bool; + pub fn XLogNeedsFlush(record: XLogRecPtr) -> bool; + pub fn XLogFileInit(logsegno: XLogSegNo, logtli: TimeLineID) -> ::core::ffi::c_int; + pub fn XLogFileOpen(segno: XLogSegNo, tli: TimeLineID) -> ::core::ffi::c_int; + pub fn CheckXLogRemoved(segno: XLogSegNo, tli: TimeLineID); + pub fn XLogGetLastRemovedSegno() -> XLogSegNo; + pub fn XLogGetOldestSegno(tli: TimeLineID) -> XLogSegNo; + pub fn XLogSetAsyncXactLSN(asyncXactLSN: XLogRecPtr); + pub fn XLogSetReplicationSlotMinimumLSN(lsn: XLogRecPtr); + pub fn xlog_redo(record: *mut XLogReaderState); + pub fn xlog_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn xlog_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn issue_xlog_fsync(fd: ::core::ffi::c_int, segno: XLogSegNo, tli: TimeLineID); + pub fn RecoveryInProgress() -> bool; + pub fn GetRecoveryState() -> RecoveryState::Type; + pub fn XLogInsertAllowed() -> bool; + pub fn GetXLogInsertRecPtr() -> XLogRecPtr; + pub fn GetXLogWriteRecPtr() -> XLogRecPtr; + pub fn GetSystemIdentifier() -> uint64; + pub fn GetMockAuthenticationNonce() -> *mut ::core::ffi::c_char; + pub fn DataChecksumsEnabled() -> bool; + pub fn GetFakeLSNForUnloggedRel() -> XLogRecPtr; + pub fn XLOGShmemSize() -> Size; + pub fn XLOGShmemInit(); + pub fn BootStrapXLOG(); + pub fn InitializeWalConsistencyChecking(); + pub fn LocalProcessControlFile(reset: bool); + pub fn GetActiveWalLevelOnStandby() -> WalLevel::Type; + pub fn StartupXLOG(); + pub fn ShutdownXLOG(code: ::core::ffi::c_int, arg: Datum); + pub fn CreateCheckPoint(flags: ::core::ffi::c_int); + pub fn CreateRestartPoint(flags: ::core::ffi::c_int) -> bool; + pub fn GetWALAvailability(targetLSN: XLogRecPtr) -> WALAvailability::Type; + pub fn XLogPutNextOid(nextOid: Oid); + pub fn XLogRestorePoint(rpName: *const ::core::ffi::c_char) -> XLogRecPtr; + pub fn UpdateFullPageWrites(); + pub fn GetFullPageWriteInfo(RedoRecPtr_p: *mut XLogRecPtr, doPageWrites_p: *mut bool); + pub fn GetRedoRecPtr() -> XLogRecPtr; + pub fn GetInsertRecPtr() -> XLogRecPtr; + pub fn GetFlushRecPtr(insertTLI: *mut TimeLineID) -> XLogRecPtr; + pub fn GetWALInsertionTimeLine() -> TimeLineID; + pub fn GetWALInsertionTimeLineIfSet() -> TimeLineID; + pub fn GetLastImportantRecPtr() -> XLogRecPtr; + pub fn SetWalWriterSleeping(sleeping: bool); + pub fn WALReadFromBuffers( + dstbuf: *mut ::core::ffi::c_char, + startptr: XLogRecPtr, + count: Size, + tli: TimeLineID, + ) -> Size; + pub fn RemoveNonParentXlogFiles(switchpoint: XLogRecPtr, newTLI: TimeLineID); + pub fn XLogCheckpointNeeded(new_segno: XLogSegNo) -> bool; + pub fn SwitchIntoArchiveRecovery(EndRecPtr: XLogRecPtr, replayTLI: TimeLineID); + pub fn ReachedEndOfBackup(EndRecPtr: XLogRecPtr, tli: TimeLineID); + pub fn SetInstallXLogFileSegmentActive(); + pub fn IsInstallXLogFileSegmentActive() -> bool; + pub fn XLogShutdownWalRcv(); + pub fn do_pg_backup_start( + backupidstr: *const ::core::ffi::c_char, + fast: bool, + tablespaces: *mut *mut List, + state: *mut BackupState, + tblspcmapfile: StringInfo, + ); + pub fn do_pg_backup_stop(state: *mut BackupState, waitforarchive: bool); + pub fn do_pg_abort_backup(code: ::core::ffi::c_int, arg: Datum); + pub fn register_persistent_abort_backup_handler(); + pub fn get_backup_status() -> SessionBackupState::Type; + pub fn pg_comp_crc32c_sb8( + crc: pg_crc32c, + data: *const ::core::ffi::c_void, + len: usize, + ) -> pg_crc32c; + pub static mut pg_comp_crc32c: ::core::option::Option< + unsafe extern "C" fn( + crc: pg_crc32c, + data: *const ::core::ffi::c_void, + len: usize, + ) -> pg_crc32c, + >; + pub fn pg_comp_crc32c_armv8( + crc: pg_crc32c, + data: *const ::core::ffi::c_void, + len: usize, + ) -> pg_crc32c; + pub fn XLogReaderAllocate( + wal_segment_size: ::core::ffi::c_int, + waldir: *const ::core::ffi::c_char, + routine: *mut XLogReaderRoutine, + private_data: *mut ::core::ffi::c_void, + ) -> *mut XLogReaderState; + pub fn XLogReaderFree(state: *mut XLogReaderState); + pub fn XLogReaderSetDecodeBuffer( + state: *mut XLogReaderState, + buffer: *mut ::core::ffi::c_void, + size: usize, + ); + pub fn XLogBeginRead(state: *mut XLogReaderState, RecPtr: XLogRecPtr); + pub fn XLogFindNextRecord(state: *mut XLogReaderState, RecPtr: XLogRecPtr) -> XLogRecPtr; + pub fn XLogReadRecord( + state: *mut XLogReaderState, + errormsg: *mut *mut ::core::ffi::c_char, + ) -> *mut XLogRecord; + pub fn XLogNextRecord( + state: *mut XLogReaderState, + errormsg: *mut *mut ::core::ffi::c_char, + ) -> *mut DecodedXLogRecord; + pub fn XLogReleasePreviousRecord(state: *mut XLogReaderState) -> XLogRecPtr; + pub fn XLogReadAhead(state: *mut XLogReaderState, nonblocking: bool) -> *mut DecodedXLogRecord; + pub fn XLogReaderValidatePageHeader( + state: *mut XLogReaderState, + recptr: XLogRecPtr, + phdr: *mut ::core::ffi::c_char, + ) -> bool; + pub fn XLogReaderResetError(state: *mut XLogReaderState); + pub fn WALRead( + state: *mut XLogReaderState, + buf: *mut ::core::ffi::c_char, + startptr: XLogRecPtr, + count: Size, + tli: TimeLineID, + errinfo: *mut WALReadError, + ) -> bool; + pub fn DecodeXLogRecordRequiredSpace(xl_tot_len: usize) -> usize; + pub fn DecodeXLogRecord( + state: *mut XLogReaderState, + decoded: *mut DecodedXLogRecord, + record: *mut XLogRecord, + lsn: XLogRecPtr, + errormsg: *mut *mut ::core::ffi::c_char, + ) -> bool; + pub fn XLogRecGetFullXid(record: *mut XLogReaderState) -> FullTransactionId; + pub fn RestoreBlockImage( + record: *mut XLogReaderState, + block_id: uint8, + page: *mut ::core::ffi::c_char, + ) -> bool; + pub fn XLogRecGetBlockData( + record: *mut XLogReaderState, + block_id: uint8, + len: *mut Size, + ) -> *mut ::core::ffi::c_char; + pub fn XLogRecGetBlockTag( + record: *mut XLogReaderState, + block_id: uint8, + rlocator: *mut RelFileLocator, + forknum: *mut ForkNumber::Type, + blknum: *mut BlockNumber, + ); + pub fn XLogRecGetBlockTagExtended( + record: *mut XLogReaderState, + block_id: uint8, + rlocator: *mut RelFileLocator, + forknum: *mut ForkNumber::Type, + blknum: *mut BlockNumber, + prefetch_buffer: *mut Buffer, + ) -> bool; + pub fn XLogBeginInsert(); + pub fn XLogSetRecordFlags(flags: uint8); + pub fn XLogInsert(rmid: RmgrId, info: uint8) -> XLogRecPtr; + pub fn XLogEnsureRecordSpace(max_block_id: ::core::ffi::c_int, ndatas: ::core::ffi::c_int); + pub fn XLogRegisterData(data: *mut ::core::ffi::c_char, len: uint32); + pub fn XLogRegisterBuffer(block_id: uint8, buffer: Buffer, flags: uint8); + pub fn XLogRegisterBlock( + block_id: uint8, + rlocator: *mut RelFileLocator, + forknum: ForkNumber::Type, + blknum: BlockNumber, + page: *mut ::core::ffi::c_char, + flags: uint8, + ); + pub fn XLogRegisterBufData(block_id: uint8, data: *mut ::core::ffi::c_char, len: uint32); + pub fn XLogResetInsertion(); + pub fn XLogCheckBufferNeedsBackup(buffer: Buffer) -> bool; + pub fn log_newpage( + rlocator: *mut RelFileLocator, + forknum: ForkNumber::Type, + blkno: BlockNumber, + page: *mut ::core::ffi::c_char, + page_std: bool, + ) -> XLogRecPtr; + pub fn log_newpages( + rlocator: *mut RelFileLocator, + forknum: ForkNumber::Type, + num_pages: ::core::ffi::c_int, + blknos: *mut BlockNumber, + pages: *mut *mut ::core::ffi::c_char, + page_std: bool, + ); + pub fn log_newpage_buffer(buffer: Buffer, page_std: bool) -> XLogRecPtr; + pub fn log_newpage_range( + rel: Relation, + forknum: ForkNumber::Type, + startblk: BlockNumber, + endblk: BlockNumber, + page_std: bool, + ); + pub fn XLogSaveBufferForHint(buffer: Buffer, buffer_std: bool) -> XLogRecPtr; + pub fn InitXLogInsert(); + pub fn errdetail_relkind_not_supported(relkind: ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn IsSystemRelation(relation: Relation) -> bool; + pub fn IsToastRelation(relation: Relation) -> bool; + pub fn IsCatalogRelation(relation: Relation) -> bool; + pub fn IsInplaceUpdateRelation(relation: Relation) -> bool; + pub fn IsSystemClass(relid: Oid, reltuple: Form_pg_class) -> bool; + pub fn IsToastClass(reltuple: Form_pg_class) -> bool; + pub fn IsCatalogRelationOid(relid: Oid) -> bool; + pub fn IsInplaceUpdateOid(relid: Oid) -> bool; + pub fn IsCatalogNamespace(namespaceId: Oid) -> bool; + pub fn IsToastNamespace(namespaceId: Oid) -> bool; + pub fn IsReservedName(name: *const ::core::ffi::c_char) -> bool; + pub fn IsSharedRelation(relationId: Oid) -> bool; + pub fn IsPinnedObject(classId: Oid, objectId: Oid) -> bool; + pub fn GetNewOidWithIndex(relation: Relation, indexId: Oid, oidcolumn: AttrNumber) -> Oid; + pub fn GetNewRelFileNumber( + reltablespace: Oid, + pg_class: Relation, + relpersistence: ::core::ffi::c_char, + ) -> RelFileNumber; + pub static InvalidObjectAddress: ObjectAddress; + pub fn get_object_address( + objtype: ObjectType::Type, + object: *mut Node, + relp: *mut Relation, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> ObjectAddress; + pub fn get_object_address_rv( + objtype: ObjectType::Type, + rel: *mut RangeVar, + object: *mut List, + relp: *mut Relation, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> ObjectAddress; + pub fn check_object_ownership( + roleid: Oid, + objtype: ObjectType::Type, + address: ObjectAddress, + object: *mut Node, + relation: Relation, + ); + pub fn get_object_namespace(address: *const ObjectAddress) -> Oid; + pub fn is_objectclass_supported(class_id: Oid) -> bool; + pub fn get_object_class_descr(class_id: Oid) -> *const ::core::ffi::c_char; + pub fn get_object_oid_index(class_id: Oid) -> Oid; + pub fn get_object_catcache_oid(class_id: Oid) -> ::core::ffi::c_int; + pub fn get_object_catcache_name(class_id: Oid) -> ::core::ffi::c_int; + pub fn get_object_attnum_oid(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_name(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_namespace(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_owner(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_acl(class_id: Oid) -> AttrNumber; + pub fn get_object_type(class_id: Oid, object_id: Oid) -> ObjectType::Type; + pub fn get_object_namensp_unique(class_id: Oid) -> bool; + pub fn get_catalog_object_by_oid( + catalog: Relation, + oidcol: AttrNumber, + objectId: Oid, + ) -> HeapTuple; + pub fn getObjectDescription( + object: *const ObjectAddress, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn getObjectDescriptionOids(classid: Oid, objid: Oid) -> *mut ::core::ffi::c_char; + pub fn read_objtype_from_string(objtype: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getObjectTypeDescription( + object: *const ObjectAddress, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn getObjectIdentity( + object: *const ObjectAddress, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn getObjectIdentityParts( + object: *const ObjectAddress, + objname: *mut *mut List, + objargs: *mut *mut List, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn strlist_to_textarray(list: *mut List) -> *mut ArrayType; + pub fn get_relkind_objtype(relkind: ::core::ffi::c_char) -> ObjectType::Type; + pub fn GetPublication(pubid: Oid) -> *mut Publication; + pub fn GetPublicationByName( + pubname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut Publication; + pub fn GetRelationPublications(relid: Oid) -> *mut List; + pub fn GetPublicationRelations(pubid: Oid, pub_partopt: PublicationPartOpt::Type) -> *mut List; + pub fn GetAllTablesPublications() -> *mut List; + pub fn GetAllTablesPublicationRelations(pubviaroot: bool) -> *mut List; + pub fn GetPublicationSchemas(pubid: Oid) -> *mut List; + pub fn GetSchemaPublications(schemaid: Oid) -> *mut List; + pub fn GetSchemaPublicationRelations( + schemaid: Oid, + pub_partopt: PublicationPartOpt::Type, + ) -> *mut List; + pub fn GetAllSchemaPublicationRelations( + pubid: Oid, + pub_partopt: PublicationPartOpt::Type, + ) -> *mut List; + pub fn GetPubPartitionOptionRelations( + result: *mut List, + pub_partopt: PublicationPartOpt::Type, + relid: Oid, + ) -> *mut List; + pub fn GetTopMostAncestorInPublication( + puboid: Oid, + ancestors: *mut List, + ancestor_level: *mut ::core::ffi::c_int, + ) -> Oid; + pub fn is_publishable_relation(rel: Relation) -> bool; + pub fn is_schema_publication(pubid: Oid) -> bool; + pub fn publication_add_relation( + pubid: Oid, + pri: *mut PublicationRelInfo, + if_not_exists: bool, + ) -> ObjectAddress; + pub fn publication_add_schema(pubid: Oid, schemaid: Oid, if_not_exists: bool) -> ObjectAddress; + pub fn pub_collist_to_bitmapset( + columns: *mut Bitmapset, + pubcols: Datum, + mcxt: MemoryContext, + ) -> *mut Bitmapset; + pub fn smgrinit(); + pub fn smgropen(rlocator: RelFileLocator, backend: ProcNumber) -> SMgrRelation; + pub fn smgrexists(reln: SMgrRelation, forknum: ForkNumber::Type) -> bool; + pub fn smgrpin(reln: SMgrRelation); + pub fn smgrunpin(reln: SMgrRelation); + pub fn smgrclose(reln: SMgrRelation); + pub fn smgrdestroyall(); + pub fn smgrrelease(reln: SMgrRelation); + pub fn smgrreleaseall(); + pub fn smgrreleaserellocator(rlocator: RelFileLocatorBackend); + pub fn smgrcreate(reln: SMgrRelation, forknum: ForkNumber::Type, isRedo: bool); + pub fn smgrdosyncall(rels: *mut SMgrRelation, nrels: ::core::ffi::c_int); + pub fn smgrdounlinkall(rels: *mut SMgrRelation, nrels: ::core::ffi::c_int, isRedo: bool); + pub fn smgrextend( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + buffer: *const ::core::ffi::c_void, + skipFsync: bool, + ); + pub fn smgrzeroextend( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + nblocks: ::core::ffi::c_int, + skipFsync: bool, + ); + pub fn smgrprefetch( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + nblocks: ::core::ffi::c_int, + ) -> bool; + pub fn smgrreadv( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + buffers: *mut *mut ::core::ffi::c_void, + nblocks: BlockNumber, + ); + pub fn smgrwritev( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + buffers: *mut *const ::core::ffi::c_void, + nblocks: BlockNumber, + skipFsync: bool, + ); + pub fn smgrwriteback( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + nblocks: BlockNumber, + ); + pub fn smgrnblocks(reln: SMgrRelation, forknum: ForkNumber::Type) -> BlockNumber; + pub fn smgrnblocks_cached(reln: SMgrRelation, forknum: ForkNumber::Type) -> BlockNumber; + pub fn smgrtruncate( + reln: SMgrRelation, + forknum: *mut ForkNumber::Type, + nforks: ::core::ffi::c_int, + nblocks: *mut BlockNumber, + ); + pub fn smgrimmedsync(reln: SMgrRelation, forknum: ForkNumber::Type); + pub fn smgrregistersync(reln: SMgrRelation, forknum: ForkNumber::Type); + pub fn AtEOXact_SMgr(); + pub fn ProcessBarrierSmgrRelease() -> bool; + pub fn RelationIncrementReferenceCount(rel: Relation); + pub fn RelationDecrementReferenceCount(rel: Relation); + pub fn GenericXLogStart(relation: Relation) -> *mut GenericXLogState; + pub fn GenericXLogRegisterBuffer( + state: *mut GenericXLogState, + buffer: Buffer, + flags: ::core::ffi::c_int, + ) -> Page; + pub fn GenericXLogFinish(state: *mut GenericXLogState) -> XLogRecPtr; + pub fn GenericXLogAbort(state: *mut GenericXLogState); + pub fn generic_redo(record: *mut XLogReaderState); + pub fn generic_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn generic_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn generic_mask(page: *mut ::core::ffi::c_char, blkno: BlockNumber); + pub static mut GinFuzzySearchLimit: ::core::ffi::c_int; + pub static mut gin_pending_list_limit: ::core::ffi::c_int; + pub fn ginGetStats(index: Relation, stats: *mut GinStatsData); + pub fn ginUpdateStats(index: Relation, stats: *const GinStatsData, is_build: bool); + pub fn relation_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn try_relation_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn relation_openrv(relation: *const RangeVar, lockmode: LOCKMODE) -> Relation; + pub fn relation_openrv_extended( + relation: *const RangeVar, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> Relation; + pub fn relation_close(relation: Relation, lockmode: LOCKMODE); + pub fn table_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn table_openrv(relation: *const RangeVar, lockmode: LOCKMODE) -> Relation; + pub fn table_openrv_extended( + relation: *const RangeVar, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> Relation; + pub fn try_table_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn table_close(relation: Relation, lockmode: LOCKMODE); + pub static mut SharedInvalidMessageCounter: uint64; + pub static mut catchupInterruptPending: sig_atomic_t; + pub fn SendSharedInvalidMessages(msgs: *const SharedInvalidationMessage, n: ::core::ffi::c_int); + pub fn ReceiveSharedInvalidMessages( + invalFunction: ::core::option::Option< + unsafe extern "C" fn(msg: *mut SharedInvalidationMessage), + >, + resetFunction: ::core::option::Option, + ); + pub fn HandleCatchupInterrupt(); + pub fn ProcessCatchupInterrupt(); + pub fn xactGetCommittedInvalidationMessages( + msgs: *mut *mut SharedInvalidationMessage, + RelcacheInitFileInval: *mut bool, + ) -> ::core::ffi::c_int; + pub fn ProcessCommittedInvalidationMessages( + msgs: *mut SharedInvalidationMessage, + nmsgs: ::core::ffi::c_int, + RelcacheInitFileInval: bool, + dbid: Oid, + tsid: Oid, + ); + pub fn LocalExecuteInvalidationMessage(msg: *mut SharedInvalidationMessage); + pub static mut DefaultXactIsoLevel: ::core::ffi::c_int; + pub static mut XactIsoLevel: ::core::ffi::c_int; + pub static mut DefaultXactReadOnly: bool; + pub static mut XactReadOnly: bool; + pub static mut xact_is_sampled: bool; + pub static mut DefaultXactDeferrable: bool; + pub static mut XactDeferrable: bool; + pub static mut synchronous_commit: ::core::ffi::c_int; + pub static mut CheckXidAlive: TransactionId; + pub static mut bsysscan: bool; + pub static mut MyXactFlags: ::core::ffi::c_int; + pub fn IsTransactionState() -> bool; + pub fn IsAbortedTransactionBlockState() -> bool; + pub fn GetTopTransactionId() -> TransactionId; + pub fn GetTopTransactionIdIfAny() -> TransactionId; + pub fn GetCurrentTransactionId() -> TransactionId; + pub fn GetCurrentTransactionIdIfAny() -> TransactionId; + pub fn GetStableLatestTransactionId() -> TransactionId; + pub fn GetCurrentSubTransactionId() -> SubTransactionId; + pub fn GetTopFullTransactionId() -> FullTransactionId; + pub fn GetTopFullTransactionIdIfAny() -> FullTransactionId; + pub fn GetCurrentFullTransactionId() -> FullTransactionId; + pub fn GetCurrentFullTransactionIdIfAny() -> FullTransactionId; + pub fn MarkCurrentTransactionIdLoggedIfAny(); + pub fn SubTransactionIsActive(subxid: SubTransactionId) -> bool; + pub fn GetCurrentCommandId(used: bool) -> CommandId; + pub fn SetParallelStartTimestamps(xact_ts: TimestampTz, stmt_ts: TimestampTz); + pub fn GetCurrentTransactionStartTimestamp() -> TimestampTz; + pub fn GetCurrentStatementStartTimestamp() -> TimestampTz; + pub fn GetCurrentTransactionStopTimestamp() -> TimestampTz; + pub fn SetCurrentStatementStartTimestamp(); + pub fn GetCurrentTransactionNestLevel() -> ::core::ffi::c_int; + pub fn TransactionIdIsCurrentTransactionId(xid: TransactionId) -> bool; + pub fn CommandCounterIncrement(); + pub fn ForceSyncCommit(); + pub fn StartTransactionCommand(); + pub fn SaveTransactionCharacteristics(s: *mut SavedTransactionCharacteristics); + pub fn RestoreTransactionCharacteristics(s: *const SavedTransactionCharacteristics); + pub fn CommitTransactionCommand(); + pub fn AbortCurrentTransaction(); + pub fn BeginTransactionBlock(); + pub fn EndTransactionBlock(chain: bool) -> bool; + pub fn PrepareTransactionBlock(gid: *const ::core::ffi::c_char) -> bool; + pub fn UserAbortTransactionBlock(chain: bool); + pub fn BeginImplicitTransactionBlock(); + pub fn EndImplicitTransactionBlock(); + pub fn ReleaseSavepoint(name: *const ::core::ffi::c_char); + pub fn DefineSavepoint(name: *const ::core::ffi::c_char); + pub fn RollbackToSavepoint(name: *const ::core::ffi::c_char); + pub fn BeginInternalSubTransaction(name: *const ::core::ffi::c_char); + pub fn ReleaseCurrentSubTransaction(); + pub fn RollbackAndReleaseCurrentSubTransaction(); + pub fn IsSubTransaction() -> bool; + pub fn EstimateTransactionStateSpace() -> Size; + pub fn SerializeTransactionState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn StartParallelWorkerTransaction(tstatespace: *mut ::core::ffi::c_char); + pub fn EndParallelWorkerTransaction(); + pub fn IsTransactionBlock() -> bool; + pub fn IsTransactionOrTransactionBlock() -> bool; + pub fn TransactionBlockStatusCode() -> ::core::ffi::c_char; + pub fn AbortOutOfAnyTransaction(); + pub fn PreventInTransactionBlock(isTopLevel: bool, stmtType: *const ::core::ffi::c_char); + pub fn RequireTransactionBlock(isTopLevel: bool, stmtType: *const ::core::ffi::c_char); + pub fn WarnNoTransactionBlock(isTopLevel: bool, stmtType: *const ::core::ffi::c_char); + pub fn IsInTransactionBlock(isTopLevel: bool) -> bool; + pub fn RegisterXactCallback(callback: XactCallback, arg: *mut ::core::ffi::c_void); + pub fn UnregisterXactCallback(callback: XactCallback, arg: *mut ::core::ffi::c_void); + pub fn RegisterSubXactCallback(callback: SubXactCallback, arg: *mut ::core::ffi::c_void); + pub fn UnregisterSubXactCallback(callback: SubXactCallback, arg: *mut ::core::ffi::c_void); + pub fn IsSubxactTopXidLogPending() -> bool; + pub fn MarkSubxactTopXidLogged(); + pub fn xactGetCommittedChildren(ptr: *mut *mut TransactionId) -> ::core::ffi::c_int; + pub fn XactLogCommitRecord( + commit_time: TimestampTz, + nsubxacts: ::core::ffi::c_int, + subxacts: *mut TransactionId, + nrels: ::core::ffi::c_int, + rels: *mut RelFileLocator, + ndroppedstats: ::core::ffi::c_int, + droppedstats: *mut xl_xact_stats_item, + nmsgs: ::core::ffi::c_int, + msgs: *mut SharedInvalidationMessage, + relcacheInval: bool, + xactflags: ::core::ffi::c_int, + twophase_xid: TransactionId, + twophase_gid: *const ::core::ffi::c_char, + ) -> XLogRecPtr; + pub fn XactLogAbortRecord( + abort_time: TimestampTz, + nsubxacts: ::core::ffi::c_int, + subxacts: *mut TransactionId, + nrels: ::core::ffi::c_int, + rels: *mut RelFileLocator, + ndroppedstats: ::core::ffi::c_int, + droppedstats: *mut xl_xact_stats_item, + xactflags: ::core::ffi::c_int, + twophase_xid: TransactionId, + twophase_gid: *const ::core::ffi::c_char, + ) -> XLogRecPtr; + pub fn xact_redo(record: *mut XLogReaderState); + pub fn xact_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn xact_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn ParseCommitRecord( + info: uint8, + xlrec: *mut xl_xact_commit, + parsed: *mut xl_xact_parsed_commit, + ); + pub fn ParseAbortRecord( + info: uint8, + xlrec: *mut xl_xact_abort, + parsed: *mut xl_xact_parsed_abort, + ); + pub fn ParsePrepareRecord( + info: uint8, + xlrec: *mut xl_xact_prepare, + parsed: *mut xl_xact_parsed_prepare, + ); + pub fn EnterParallelMode(); + pub fn ExitParallelMode(); + pub fn IsInParallelMode() -> bool; + pub static mut CurrentResourceOwner: ResourceOwner; + pub static mut CurTransactionResourceOwner: ResourceOwner; + pub static mut TopTransactionResourceOwner: ResourceOwner; + pub static mut AuxProcessResourceOwner: ResourceOwner; + pub fn ResourceOwnerCreate( + parent: ResourceOwner, + name: *const ::core::ffi::c_char, + ) -> ResourceOwner; + pub fn ResourceOwnerRelease( + owner: ResourceOwner, + phase: ResourceReleasePhase::Type, + isCommit: bool, + isTopLevel: bool, + ); + pub fn ResourceOwnerDelete(owner: ResourceOwner); + pub fn ResourceOwnerGetParent(owner: ResourceOwner) -> ResourceOwner; + pub fn ResourceOwnerNewParent(owner: ResourceOwner, newparent: ResourceOwner); + pub fn ResourceOwnerEnlarge(owner: ResourceOwner); + pub fn ResourceOwnerRemember( + owner: ResourceOwner, + value: Datum, + kind: *const ResourceOwnerDesc, + ); + pub fn ResourceOwnerForget(owner: ResourceOwner, value: Datum, kind: *const ResourceOwnerDesc); + pub fn ResourceOwnerReleaseAllOfKind(owner: ResourceOwner, kind: *const ResourceOwnerDesc); + pub fn RegisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::core::ffi::c_void, + ); + pub fn UnregisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::core::ffi::c_void, + ); + pub fn CreateAuxProcessResourceOwner(); + pub fn ReleaseAuxProcessResources(isCommit: bool); + pub fn ResourceOwnerRememberLock(owner: ResourceOwner, locallock: *mut LOCALLOCK); + pub fn ResourceOwnerForgetLock(owner: ResourceOwner, locallock: *mut LOCALLOCK); + pub static mut FirstSnapshotSet: bool; + pub static mut TransactionXmin: TransactionId; + pub static mut RecentXmin: TransactionId; + pub static mut SnapshotSelfData: SnapshotData; + pub static mut SnapshotAnyData: SnapshotData; + pub static mut CatalogSnapshotData: SnapshotData; + pub fn GetTransactionSnapshot() -> Snapshot; + pub fn GetLatestSnapshot() -> Snapshot; + pub fn SnapshotSetCommandId(curcid: CommandId); + pub fn GetOldestSnapshot() -> Snapshot; + pub fn GetCatalogSnapshot(relid: Oid) -> Snapshot; + pub fn GetNonHistoricCatalogSnapshot(relid: Oid) -> Snapshot; + pub fn InvalidateCatalogSnapshot(); + pub fn InvalidateCatalogSnapshotConditionally(); + pub fn PushActiveSnapshot(snapshot: Snapshot); + pub fn PushActiveSnapshotWithLevel(snapshot: Snapshot, snap_level: ::core::ffi::c_int); + pub fn PushCopiedSnapshot(snapshot: Snapshot); + pub fn UpdateActiveSnapshotCommandId(); + pub fn PopActiveSnapshot(); + pub fn GetActiveSnapshot() -> Snapshot; + pub fn ActiveSnapshotSet() -> bool; + pub fn RegisterSnapshot(snapshot: Snapshot) -> Snapshot; + pub fn UnregisterSnapshot(snapshot: Snapshot); + pub fn RegisterSnapshotOnOwner(snapshot: Snapshot, owner: ResourceOwner) -> Snapshot; + pub fn UnregisterSnapshotFromOwner(snapshot: Snapshot, owner: ResourceOwner); + pub fn AtSubCommit_Snapshot(level: ::core::ffi::c_int); + pub fn AtSubAbort_Snapshot(level: ::core::ffi::c_int); + pub fn AtEOXact_Snapshot(isCommit: bool, resetXmin: bool); + pub fn ImportSnapshot(idstr: *const ::core::ffi::c_char); + pub fn XactHasExportedSnapshots() -> bool; + pub fn DeleteAllExportedSnapshotFiles(); + pub fn WaitForOlderSnapshots(limitXmin: TransactionId, progress: bool); + pub fn ThereAreNoPriorRegisteredSnapshots() -> bool; + pub fn HaveRegisteredOrActiveSnapshot() -> bool; + pub fn ExportSnapshot(snapshot: Snapshot) -> *mut ::core::ffi::c_char; + pub fn GlobalVisTestFor(rel: Relation) -> *mut GlobalVisState; + pub fn GlobalVisTestIsRemovableXid(state: *mut GlobalVisState, xid: TransactionId) -> bool; + pub fn GlobalVisTestIsRemovableFullXid( + state: *mut GlobalVisState, + fxid: FullTransactionId, + ) -> bool; + pub fn GlobalVisCheckRemovableXid(rel: Relation, xid: TransactionId) -> bool; + pub fn GlobalVisCheckRemovableFullXid(rel: Relation, fxid: FullTransactionId) -> bool; + pub fn XidInMVCCSnapshot(xid: TransactionId, snapshot: Snapshot) -> bool; + pub fn HistoricSnapshotGetTupleCids() -> *mut HTAB; + pub fn SetupHistoricSnapshot(historic_snapshot: Snapshot, tuplecids: *mut HTAB); + pub fn TeardownHistoricSnapshot(is_error: bool); + pub fn HistoricSnapshotActive() -> bool; + pub fn EstimateSnapshotSpace(snapshot: Snapshot) -> Size; + pub fn SerializeSnapshot(snapshot: Snapshot, start_address: *mut ::core::ffi::c_char); + pub fn RestoreSnapshot(start_address: *mut ::core::ffi::c_char) -> Snapshot; + pub fn RestoreTransactionSnapshot(snapshot: Snapshot, source_pgproc: *mut ::core::ffi::c_void); + pub static mut zero_damaged_pages: bool; + pub static mut bgwriter_lru_maxpages: ::core::ffi::c_int; + pub static mut bgwriter_lru_multiplier: f64; + pub static mut track_io_timing: bool; + pub static mut effective_io_concurrency: ::core::ffi::c_int; + pub static mut maintenance_io_concurrency: ::core::ffi::c_int; + pub static mut io_combine_limit: ::core::ffi::c_int; + pub static mut checkpoint_flush_after: ::core::ffi::c_int; + pub static mut backend_flush_after: ::core::ffi::c_int; + pub static mut bgwriter_flush_after: ::core::ffi::c_int; + pub static mut BufferBlocks: *mut ::core::ffi::c_char; + pub static mut NLocBuffer: ::core::ffi::c_int; + pub static mut LocalBufferBlockPointers: *mut Block; + pub static mut LocalRefCount: *mut int32; + pub fn PrefetchSharedBuffer( + smgr_reln: *mut SMgrRelationData, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + ) -> PrefetchBufferResult; + pub fn PrefetchBuffer( + reln: Relation, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + ) -> PrefetchBufferResult; + pub fn ReadRecentBuffer( + rlocator: RelFileLocator, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + recent_buffer: Buffer, + ) -> bool; + pub fn ReadBuffer(reln: Relation, blockNum: BlockNumber) -> Buffer; + pub fn ReadBufferExtended( + reln: Relation, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + mode: ReadBufferMode::Type, + strategy: BufferAccessStrategy, + ) -> Buffer; + pub fn ReadBufferWithoutRelcache( + rlocator: RelFileLocator, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + mode: ReadBufferMode::Type, + strategy: BufferAccessStrategy, + permanent: bool, + ) -> Buffer; + pub fn StartReadBuffer( + operation: *mut ReadBuffersOperation, + buffer: *mut Buffer, + blocknum: BlockNumber, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn StartReadBuffers( + operation: *mut ReadBuffersOperation, + buffers: *mut Buffer, + blockNum: BlockNumber, + nblocks: *mut ::core::ffi::c_int, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn WaitReadBuffers(operation: *mut ReadBuffersOperation); + pub fn ReleaseBuffer(buffer: Buffer); + pub fn UnlockReleaseBuffer(buffer: Buffer); + pub fn BufferIsExclusiveLocked(buffer: Buffer) -> bool; + pub fn BufferIsDirty(buffer: Buffer) -> bool; + pub fn MarkBufferDirty(buffer: Buffer); + pub fn IncrBufferRefCount(buffer: Buffer); + pub fn CheckBufferIsPinnedOnce(buffer: Buffer); + pub fn ReleaseAndReadBuffer( + buffer: Buffer, + relation: Relation, + blockNum: BlockNumber, + ) -> Buffer; + pub fn ExtendBufferedRel( + bmr: BufferManagerRelation, + forkNum: ForkNumber::Type, + strategy: BufferAccessStrategy, + flags: uint32, + ) -> Buffer; + pub fn ExtendBufferedRelBy( + bmr: BufferManagerRelation, + fork: ForkNumber::Type, + strategy: BufferAccessStrategy, + flags: uint32, + extend_by: uint32, + buffers: *mut Buffer, + extended_by: *mut uint32, + ) -> BlockNumber; + pub fn ExtendBufferedRelTo( + bmr: BufferManagerRelation, + fork: ForkNumber::Type, + strategy: BufferAccessStrategy, + flags: uint32, + extend_to: BlockNumber, + mode: ReadBufferMode::Type, + ) -> Buffer; + pub fn InitBufferPoolAccess(); + pub fn AtEOXact_Buffers(isCommit: bool); + pub fn DebugPrintBufferRefcount(buffer: Buffer) -> *mut ::core::ffi::c_char; + pub fn CheckPointBuffers(flags: ::core::ffi::c_int); + pub fn BufferGetBlockNumber(buffer: Buffer) -> BlockNumber; + pub fn RelationGetNumberOfBlocksInFork( + relation: Relation, + forkNum: ForkNumber::Type, + ) -> BlockNumber; + pub fn FlushOneBuffer(buffer: Buffer); + pub fn FlushRelationBuffers(rel: Relation); + pub fn FlushRelationsAllBuffers(smgrs: *mut *mut SMgrRelationData, nrels: ::core::ffi::c_int); + pub fn CreateAndCopyRelationData( + src_rlocator: RelFileLocator, + dst_rlocator: RelFileLocator, + permanent: bool, + ); + pub fn FlushDatabaseBuffers(dbid: Oid); + pub fn DropRelationBuffers( + smgr_reln: *mut SMgrRelationData, + forkNum: *mut ForkNumber::Type, + nforks: ::core::ffi::c_int, + firstDelBlock: *mut BlockNumber, + ); + pub fn DropRelationsAllBuffers( + smgr_reln: *mut *mut SMgrRelationData, + nlocators: ::core::ffi::c_int, + ); + pub fn DropDatabaseBuffers(dbid: Oid); + pub fn BufferIsPermanent(buffer: Buffer) -> bool; + pub fn BufferGetLSNAtomic(buffer: Buffer) -> XLogRecPtr; + pub fn BufferGetTag( + buffer: Buffer, + rlocator: *mut RelFileLocator, + forknum: *mut ForkNumber::Type, + blknum: *mut BlockNumber, + ); + pub fn MarkBufferDirtyHint(buffer: Buffer, buffer_std: bool); + pub fn UnlockBuffers(); + pub fn LockBuffer(buffer: Buffer, mode: ::core::ffi::c_int); + pub fn ConditionalLockBuffer(buffer: Buffer) -> bool; + pub fn LockBufferForCleanup(buffer: Buffer); + pub fn ConditionalLockBufferForCleanup(buffer: Buffer) -> bool; + pub fn IsBufferCleanupOK(buffer: Buffer) -> bool; + pub fn HoldingBufferPinThatDelaysRecovery() -> bool; + pub fn BgBufferSync(wb_context: *mut WritebackContext) -> bool; + pub fn LimitAdditionalPins(additional_pins: *mut uint32); + pub fn LimitAdditionalLocalPins(additional_pins: *mut uint32); + pub fn EvictUnpinnedBuffer(buf: Buffer) -> bool; + pub fn InitBufferPool(); + pub fn BufferShmemSize() -> Size; + pub fn AtProcExit_LocalBuffers(); + pub fn GetAccessStrategy(btype: BufferAccessStrategyType::Type) -> BufferAccessStrategy; + pub fn GetAccessStrategyWithSize( + btype: BufferAccessStrategyType::Type, + ring_size_kb: ::core::ffi::c_int, + ) -> BufferAccessStrategy; + pub fn GetAccessStrategyBufferCount(strategy: BufferAccessStrategy) -> ::core::ffi::c_int; + pub fn GetAccessStrategyPinLimit(strategy: BufferAccessStrategy) -> ::core::ffi::c_int; + pub fn FreeAccessStrategy(strategy: BufferAccessStrategy); + pub fn read_stream_begin_relation( + flags: ::core::ffi::c_int, + strategy: BufferAccessStrategy, + rel: Relation, + forknum: ForkNumber::Type, + callback: ReadStreamBlockNumberCB, + callback_private_data: *mut ::core::ffi::c_void, + per_buffer_data_size: usize, + ) -> *mut ReadStream; + pub fn read_stream_next_buffer( + stream: *mut ReadStream, + per_buffer_data: *mut *mut ::core::ffi::c_void, + ) -> Buffer; + pub fn read_stream_next_block( + stream: *mut ReadStream, + strategy: *mut BufferAccessStrategy, + ) -> BlockNumber; + pub fn read_stream_reset(stream: *mut ReadStream); + pub fn read_stream_end(stream: *mut ReadStream); + pub static mut default_table_access_method: *mut ::core::ffi::c_char; + pub static mut synchronize_seqscans: bool; + pub fn table_slot_callbacks(relation: Relation) -> *const TupleTableSlotOps; + pub fn table_slot_create(relation: Relation, reglist: *mut *mut List) -> *mut TupleTableSlot; + pub fn table_beginscan_catalog( + relation: Relation, + nkeys: ::core::ffi::c_int, + key: *mut ScanKeyData, + ) -> TableScanDesc; + pub fn table_parallelscan_estimate(rel: Relation, snapshot: Snapshot) -> Size; + pub fn table_parallelscan_initialize( + rel: Relation, + pscan: ParallelTableScanDesc, + snapshot: Snapshot, + ); + pub fn table_beginscan_parallel( + relation: Relation, + pscan: ParallelTableScanDesc, + ) -> TableScanDesc; + pub fn table_index_fetch_tuple_check( + rel: Relation, + tid: ItemPointer, + snapshot: Snapshot, + all_dead: *mut bool, + ) -> bool; + pub fn table_tuple_get_latest_tid(scan: TableScanDesc, tid: ItemPointer); + pub fn simple_table_tuple_insert(rel: Relation, slot: *mut TupleTableSlot); + pub fn simple_table_tuple_delete(rel: Relation, tid: ItemPointer, snapshot: Snapshot); + pub fn simple_table_tuple_update( + rel: Relation, + otid: ItemPointer, + slot: *mut TupleTableSlot, + snapshot: Snapshot, + update_indexes: *mut TU_UpdateIndexes::Type, + ); + pub fn table_block_parallelscan_estimate(rel: Relation) -> Size; + pub fn table_block_parallelscan_initialize(rel: Relation, pscan: ParallelTableScanDesc) + -> Size; + pub fn table_block_parallelscan_reinitialize(rel: Relation, pscan: ParallelTableScanDesc); + pub fn table_block_parallelscan_nextpage( + rel: Relation, + pbscanwork: ParallelBlockTableScanWorker, + pbscan: ParallelBlockTableScanDesc, + ) -> BlockNumber; + pub fn table_block_parallelscan_startblock_init( + rel: Relation, + pbscanwork: ParallelBlockTableScanWorker, + pbscan: ParallelBlockTableScanDesc, + ); + pub fn table_block_relation_size(rel: Relation, forkNumber: ForkNumber::Type) -> uint64; + pub fn table_block_relation_estimate_size( + rel: Relation, + attr_widths: *mut int32, + pages: *mut BlockNumber, + tuples: *mut f64, + allvisfrac: *mut f64, + overhead_bytes_per_tuple: Size, + usable_bytes_per_page: Size, + ); + pub fn GetTableAmRoutine(amhandler: Oid) -> *const TableAmRoutine; + pub fn GetHeapamTableAmRoutine() -> *const TableAmRoutine; + pub fn InitShmemAccess(seghdr: *mut ::core::ffi::c_void); + pub fn InitShmemAllocation(); + pub fn ShmemAlloc(size: Size) -> *mut ::core::ffi::c_void; + pub fn ShmemAllocNoError(size: Size) -> *mut ::core::ffi::c_void; + pub fn ShmemAllocUnlocked(size: Size) -> *mut ::core::ffi::c_void; + pub fn ShmemAddrIsValid(addr: *const ::core::ffi::c_void) -> bool; + pub fn InitShmemIndex(); + pub fn ShmemInitHash( + name: *const ::core::ffi::c_char, + init_size: ::core::ffi::c_long, + max_size: ::core::ffi::c_long, + infoP: *mut HASHCTL, + hash_flags: ::core::ffi::c_int, + ) -> *mut HTAB; + pub fn ShmemInitStruct( + name: *const ::core::ffi::c_char, + size: Size, + foundPtr: *mut bool, + ) -> *mut ::core::ffi::c_void; + pub fn add_size(s1: Size, s2: Size) -> Size; + pub fn mul_size(s1: Size, s2: Size) -> Size; + pub fn RequestAddinShmemSpace(size: Size); + pub fn shm_toc_create( + magic: uint64, + address: *mut ::core::ffi::c_void, + nbytes: Size, + ) -> *mut shm_toc; + pub fn shm_toc_attach(magic: uint64, address: *mut ::core::ffi::c_void) -> *mut shm_toc; + pub fn shm_toc_allocate(toc: *mut shm_toc, nbytes: Size) -> *mut ::core::ffi::c_void; + pub fn shm_toc_freespace(toc: *mut shm_toc) -> Size; + pub fn shm_toc_insert(toc: *mut shm_toc, key: uint64, address: *mut ::core::ffi::c_void); + pub fn shm_toc_lookup( + toc: *mut shm_toc, + key: uint64, + noError: bool, + ) -> *mut ::core::ffi::c_void; + pub fn shm_toc_estimate(e: *mut shm_toc_estimator) -> Size; + pub fn heap_beginscan( + relation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: ScanKey, + parallel_scan: ParallelTableScanDesc, + flags: uint32, + ) -> TableScanDesc; + pub fn heap_setscanlimits(sscan: TableScanDesc, startBlk: BlockNumber, numBlks: BlockNumber); + pub fn heap_prepare_pagescan(sscan: TableScanDesc); + pub fn heap_rescan( + sscan: TableScanDesc, + key: ScanKey, + set_params: bool, + allow_strat: bool, + allow_sync: bool, + allow_pagemode: bool, + ); + pub fn heap_endscan(sscan: TableScanDesc); + pub fn heap_getnext(sscan: TableScanDesc, direction: ScanDirection::Type) -> HeapTuple; + pub fn heap_getnextslot( + sscan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn heap_set_tidrange(sscan: TableScanDesc, mintid: ItemPointer, maxtid: ItemPointer); + pub fn heap_getnextslot_tidrange( + sscan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn heap_fetch( + relation: Relation, + snapshot: Snapshot, + tuple: HeapTuple, + userbuf: *mut Buffer, + keep_buf: bool, + ) -> bool; + pub fn heap_hot_search_buffer( + tid: ItemPointer, + relation: Relation, + buffer: Buffer, + snapshot: Snapshot, + heapTuple: HeapTuple, + all_dead: *mut bool, + first_call: bool, + ) -> bool; + pub fn heap_get_latest_tid(sscan: TableScanDesc, tid: ItemPointer); + pub fn GetBulkInsertState() -> BulkInsertState; + pub fn FreeBulkInsertState(arg1: BulkInsertState); + pub fn ReleaseBulkInsertStatePin(bistate: BulkInsertState); + pub fn heap_insert( + relation: Relation, + tup: HeapTuple, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: BulkInsertState, + ); + pub fn heap_multi_insert( + relation: Relation, + slots: *mut *mut TupleTableSlot, + ntuples: ::core::ffi::c_int, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: BulkInsertState, + ); + pub fn heap_delete( + relation: Relation, + tid: ItemPointer, + cid: CommandId, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + changingPart: bool, + ) -> TM_Result::Type; + pub fn heap_finish_speculative(relation: Relation, tid: ItemPointer); + pub fn heap_abort_speculative(relation: Relation, tid: ItemPointer); + pub fn heap_update( + relation: Relation, + otid: ItemPointer, + newtup: HeapTuple, + cid: CommandId, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + lockmode: *mut LockTupleMode::Type, + update_indexes: *mut TU_UpdateIndexes::Type, + ) -> TM_Result::Type; + pub fn heap_lock_tuple( + relation: Relation, + tuple: HeapTuple, + cid: CommandId, + mode: LockTupleMode::Type, + wait_policy: LockWaitPolicy::Type, + follow_updates: bool, + buffer: *mut Buffer, + tmfd: *mut TM_FailureData, + ) -> TM_Result::Type; + pub fn heap_inplace_update(relation: Relation, tuple: HeapTuple); + pub fn heap_prepare_freeze_tuple( + tuple: HeapTupleHeader, + cutoffs: *const VacuumCutoffs, + pagefrz: *mut HeapPageFreeze, + frz: *mut HeapTupleFreeze, + totally_frozen: *mut bool, + ) -> bool; + pub fn heap_pre_freeze_checks( + buffer: Buffer, + tuples: *mut HeapTupleFreeze, + ntuples: ::core::ffi::c_int, + ); + pub fn heap_freeze_prepared_tuples( + buffer: Buffer, + tuples: *mut HeapTupleFreeze, + ntuples: ::core::ffi::c_int, + ); + pub fn heap_freeze_tuple( + tuple: HeapTupleHeader, + relfrozenxid: TransactionId, + relminmxid: TransactionId, + FreezeLimit: TransactionId, + MultiXactCutoff: TransactionId, + ) -> bool; + pub fn heap_tuple_should_freeze( + tuple: HeapTupleHeader, + cutoffs: *const VacuumCutoffs, + NoFreezePageRelfrozenXid: *mut TransactionId, + NoFreezePageRelminMxid: *mut MultiXactId, + ) -> bool; + pub fn heap_tuple_needs_eventual_freeze(tuple: HeapTupleHeader) -> bool; + pub fn simple_heap_insert(relation: Relation, tup: HeapTuple); + pub fn simple_heap_delete(relation: Relation, tid: ItemPointer); + pub fn simple_heap_update( + relation: Relation, + otid: ItemPointer, + tup: HeapTuple, + update_indexes: *mut TU_UpdateIndexes::Type, + ); + pub fn heap_index_delete_tuples( + rel: Relation, + delstate: *mut TM_IndexDeleteOp, + ) -> TransactionId; + pub fn heap_page_prune_opt(relation: Relation, buffer: Buffer); + pub fn heap_page_prune_and_freeze( + relation: Relation, + buffer: Buffer, + vistest: *mut GlobalVisState, + options: ::core::ffi::c_int, + cutoffs: *mut VacuumCutoffs, + presult: *mut PruneFreezeResult, + reason: PruneReason::Type, + off_loc: *mut OffsetNumber, + new_relfrozen_xid: *mut TransactionId, + new_relmin_mxid: *mut MultiXactId, + ); + pub fn heap_page_prune_execute( + buffer: Buffer, + lp_truncate_only: bool, + redirected: *mut OffsetNumber, + nredirected: ::core::ffi::c_int, + nowdead: *mut OffsetNumber, + ndead: ::core::ffi::c_int, + nowunused: *mut OffsetNumber, + nunused: ::core::ffi::c_int, + ); + pub fn heap_get_root_tuples(page: Page, root_offsets: *mut OffsetNumber); + pub fn log_heap_prune_and_freeze( + relation: Relation, + buffer: Buffer, + conflict_xid: TransactionId, + cleanup_lock: bool, + reason: PruneReason::Type, + frozen: *mut HeapTupleFreeze, + nfrozen: ::core::ffi::c_int, + redirected: *mut OffsetNumber, + nredirected: ::core::ffi::c_int, + dead: *mut OffsetNumber, + ndead: ::core::ffi::c_int, + unused: *mut OffsetNumber, + nunused: ::core::ffi::c_int, + ); + pub fn heap_vacuum_rel( + rel: Relation, + params: *mut VacuumParams, + bstrategy: BufferAccessStrategy, + ); + pub fn HeapTupleSatisfiesVisibility( + htup: HeapTuple, + snapshot: Snapshot, + buffer: Buffer, + ) -> bool; + pub fn HeapTupleSatisfiesUpdate( + htup: HeapTuple, + curcid: CommandId, + buffer: Buffer, + ) -> TM_Result::Type; + pub fn HeapTupleSatisfiesVacuum( + htup: HeapTuple, + OldestXmin: TransactionId, + buffer: Buffer, + ) -> HTSV_Result::Type; + pub fn HeapTupleSatisfiesVacuumHorizon( + htup: HeapTuple, + buffer: Buffer, + dead_after: *mut TransactionId, + ) -> HTSV_Result::Type; + pub fn HeapTupleSetHintBits( + tuple: HeapTupleHeader, + buffer: Buffer, + infomask: uint16, + xid: TransactionId, + ); + pub fn HeapTupleHeaderIsOnlyLocked(tuple: HeapTupleHeader) -> bool; + pub fn HeapTupleIsSurelyDead(htup: HeapTuple, vistest: *mut GlobalVisState) -> bool; + pub fn ResolveCminCmaxDuringDecoding( + tuplecid_data: *mut HTAB, + snapshot: Snapshot, + htup: HeapTuple, + buffer: Buffer, + cmin: *mut CommandId, + cmax: *mut CommandId, + ) -> bool; + pub fn HeapCheckForSerializableConflictOut( + visible: bool, + relation: Relation, + tuple: HeapTuple, + buffer: Buffer, + snapshot: Snapshot, + ); + pub fn InitSync(); + pub fn SyncPreCheckpoint(); + pub fn SyncPostCheckpoint(); + pub fn ProcessSyncRequests(); + pub fn RememberSyncRequest(ftag: *const FileTag, type_: SyncRequestType::Type); + pub fn RegisterSyncRequest( + ftag: *const FileTag, + type_: SyncRequestType::Type, + retryOnError: bool, + ) -> bool; + pub fn MultiXactIdCreate( + xid1: TransactionId, + status1: MultiXactStatus::Type, + xid2: TransactionId, + status2: MultiXactStatus::Type, + ) -> MultiXactId; + pub fn MultiXactIdExpand( + multi: MultiXactId, + xid: TransactionId, + status: MultiXactStatus::Type, + ) -> MultiXactId; + pub fn MultiXactIdCreateFromMembers( + nmembers: ::core::ffi::c_int, + members: *mut MultiXactMember, + ) -> MultiXactId; + pub fn ReadNextMultiXactId() -> MultiXactId; + pub fn ReadMultiXactIdRange(oldest: *mut MultiXactId, next: *mut MultiXactId); + pub fn MultiXactIdIsRunning(multi: MultiXactId, isLockOnly: bool) -> bool; + pub fn MultiXactIdSetOldestMember(); + pub fn GetMultiXactIdMembers( + multi: MultiXactId, + members: *mut *mut MultiXactMember, + from_pgupgrade: bool, + isLockOnly: bool, + ) -> ::core::ffi::c_int; + pub fn MultiXactIdPrecedes(multi1: MultiXactId, multi2: MultiXactId) -> bool; + pub fn MultiXactIdPrecedesOrEquals(multi1: MultiXactId, multi2: MultiXactId) -> bool; + pub fn multixactoffsetssyncfiletag( + ftag: *const FileTag, + path: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn multixactmemberssyncfiletag( + ftag: *const FileTag, + path: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn AtEOXact_MultiXact(); + pub fn AtPrepare_MultiXact(); + pub fn PostPrepare_MultiXact(xid: TransactionId); + pub fn MultiXactShmemSize() -> Size; + pub fn MultiXactShmemInit(); + pub fn BootStrapMultiXact(); + pub fn StartupMultiXact(); + pub fn TrimMultiXact(); + pub fn SetMultiXactIdLimit( + oldest_datminmxid: MultiXactId, + oldest_datoid: Oid, + is_startup: bool, + ); + pub fn MultiXactGetCheckptMulti( + is_shutdown: bool, + nextMulti: *mut MultiXactId, + nextMultiOffset: *mut MultiXactOffset, + oldestMulti: *mut MultiXactId, + oldestMultiDB: *mut Oid, + ); + pub fn CheckPointMultiXact(); + pub fn GetOldestMultiXactId() -> MultiXactId; + pub fn TruncateMultiXact(newOldestMulti: MultiXactId, newOldestMultiDB: Oid); + pub fn MultiXactSetNextMXact(nextMulti: MultiXactId, nextMultiOffset: MultiXactOffset); + pub fn MultiXactAdvanceNextMXact(minMulti: MultiXactId, minMultiOffset: MultiXactOffset); + pub fn MultiXactAdvanceOldest(oldestMulti: MultiXactId, oldestMultiDB: Oid); + pub fn MultiXactMemberFreezeThreshold() -> ::core::ffi::c_int; + pub fn multixact_twophase_recover( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn multixact_twophase_postcommit( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn multixact_twophase_postabort( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn multixact_redo(record: *mut XLogReaderState); + pub fn multixact_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn multixact_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn mxid_to_string( + multi: MultiXactId, + nmembers: ::core::ffi::c_int, + members: *mut MultiXactMember, + ) -> *mut ::core::ffi::c_char; + pub static mut MainLWLockArray: *mut LWLockPadded; + pub static mut NamedLWLockTrancheArray: *mut NamedLWLockTranche; + pub static mut NamedLWLockTrancheRequests: ::core::ffi::c_int; + pub fn LWLockAcquire(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockConditionalAcquire(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockAcquireOrWait(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockRelease(lock: *mut LWLock); + pub fn LWLockReleaseClearVar(lock: *mut LWLock, valptr: *mut pg_atomic_uint64, val: uint64); + pub fn LWLockReleaseAll(); + pub fn LWLockHeldByMe(lock: *mut LWLock) -> bool; + pub fn LWLockAnyHeldByMe(lock: *mut LWLock, nlocks: ::core::ffi::c_int, stride: usize) -> bool; + pub fn LWLockHeldByMeInMode(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockWaitForVar( + lock: *mut LWLock, + valptr: *mut pg_atomic_uint64, + oldval: uint64, + newval: *mut uint64, + ) -> bool; + pub fn LWLockUpdateVar(lock: *mut LWLock, valptr: *mut pg_atomic_uint64, val: uint64); + pub fn LWLockShmemSize() -> Size; + pub fn CreateLWLocks(); + pub fn InitLWLockAccess(); + pub fn GetLWLockIdentifier(classId: uint32, eventId: uint16) -> *const ::core::ffi::c_char; + pub fn RequestNamedLWLockTranche( + tranche_name: *const ::core::ffi::c_char, + num_lwlocks: ::core::ffi::c_int, + ); + pub fn GetNamedLWLockTranche(tranche_name: *const ::core::ffi::c_char) -> *mut LWLockPadded; + pub fn LWLockNewTrancheId() -> ::core::ffi::c_int; + pub fn LWLockRegisterTranche( + tranche_id: ::core::ffi::c_int, + tranche_name: *const ::core::ffi::c_char, + ); + pub fn LWLockInitialize(lock: *mut LWLock, tranche_id: ::core::ffi::c_int); + pub static mut PgStartTime: TimestampTz; + pub static mut PgReloadTime: TimestampTz; + pub fn anytimestamp_typmod_check(istz: bool, typmod: int32) -> int32; + pub fn GetCurrentTimestamp() -> TimestampTz; + pub fn GetSQLCurrentTimestamp(typmod: int32) -> TimestampTz; + pub fn GetSQLLocalTimestamp(typmod: int32) -> Timestamp; + pub fn TimestampDifference( + start_time: TimestampTz, + stop_time: TimestampTz, + secs: *mut ::core::ffi::c_long, + microsecs: *mut ::core::ffi::c_int, + ); + pub fn TimestampDifferenceMilliseconds( + start_time: TimestampTz, + stop_time: TimestampTz, + ) -> ::core::ffi::c_long; + pub fn TimestampDifferenceExceeds( + start_time: TimestampTz, + stop_time: TimestampTz, + msec: ::core::ffi::c_int, + ) -> bool; + pub fn time_t_to_timestamptz(tm: pg_time_t) -> TimestampTz; + pub fn timestamptz_to_time_t(t: TimestampTz) -> pg_time_t; + pub fn timestamptz_to_str(t: TimestampTz) -> *const ::core::ffi::c_char; + pub fn tm2timestamp( + tm: *mut pg_tm, + fsec: fsec_t, + tzp: *mut ::core::ffi::c_int, + result: *mut Timestamp, + ) -> ::core::ffi::c_int; + pub fn timestamp2tm( + dt: Timestamp, + tzp: *mut ::core::ffi::c_int, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzn: *mut *const ::core::ffi::c_char, + attimezone: *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn dt2time( + jd: Timestamp, + hour: *mut ::core::ffi::c_int, + min: *mut ::core::ffi::c_int, + sec: *mut ::core::ffi::c_int, + fsec: *mut fsec_t, + ); + pub fn interval2itm(span: Interval, itm: *mut pg_itm); + pub fn itm2interval(itm: *mut pg_itm, span: *mut Interval) -> ::core::ffi::c_int; + pub fn itmin2interval(itm_in: *mut pg_itm_in, span: *mut Interval) -> ::core::ffi::c_int; + pub fn SetEpochTimestamp() -> Timestamp; + pub fn GetEpochTime(tm: *mut pg_tm); + pub fn timestamp_cmp_internal(dt1: Timestamp, dt2: Timestamp) -> ::core::ffi::c_int; + pub fn timestamp2timestamptz_opt_overflow( + timestamp: Timestamp, + overflow: *mut ::core::ffi::c_int, + ) -> TimestampTz; + pub fn timestamp_cmp_timestamptz_internal(timestampVal: Timestamp, dt2: TimestampTz) -> int32; + pub fn isoweek2j(year: ::core::ffi::c_int, week: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isoweek2date( + woy: ::core::ffi::c_int, + year: *mut ::core::ffi::c_int, + mon: *mut ::core::ffi::c_int, + mday: *mut ::core::ffi::c_int, + ); + pub fn isoweekdate2date( + isoweek: ::core::ffi::c_int, + wday: ::core::ffi::c_int, + year: *mut ::core::ffi::c_int, + mon: *mut ::core::ffi::c_int, + mday: *mut ::core::ffi::c_int, + ); + pub fn date2isoweek( + year: ::core::ffi::c_int, + mon: ::core::ffi::c_int, + mday: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn date2isoyear( + year: ::core::ffi::c_int, + mon: ::core::ffi::c_int, + mday: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn date2isoyearday( + year: ::core::ffi::c_int, + mon: ::core::ffi::c_int, + mday: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn TimestampTimestampTzRequiresRewrite() -> bool; + pub static mut max_locks_per_xact: ::core::ffi::c_int; + pub static LockTagTypeNames: [*const ::core::ffi::c_char; 0usize]; + pub fn InitLocks(); + pub fn GetLocksMethodTable(lock: *const LOCK) -> LockMethod; + pub fn GetLockTagsMethodTable(locktag: *const LOCKTAG) -> LockMethod; + pub fn LockTagHashCode(locktag: *const LOCKTAG) -> uint32; + pub fn DoLockModesConflict(mode1: LOCKMODE, mode2: LOCKMODE) -> bool; + pub fn LockAcquire( + locktag: *const LOCKTAG, + lockmode: LOCKMODE, + sessionLock: bool, + dontWait: bool, + ) -> LockAcquireResult::Type; + pub fn LockAcquireExtended( + locktag: *const LOCKTAG, + lockmode: LOCKMODE, + sessionLock: bool, + dontWait: bool, + reportMemoryError: bool, + locallockp: *mut *mut LOCALLOCK, + ) -> LockAcquireResult::Type; + pub fn AbortStrongLockAcquire(); + pub fn MarkLockClear(locallock: *mut LOCALLOCK); + pub fn LockRelease(locktag: *const LOCKTAG, lockmode: LOCKMODE, sessionLock: bool) -> bool; + pub fn LockReleaseAll(lockmethodid: LOCKMETHODID, allLocks: bool); + pub fn LockReleaseSession(lockmethodid: LOCKMETHODID); + pub fn LockReleaseCurrentOwner(locallocks: *mut *mut LOCALLOCK, nlocks: ::core::ffi::c_int); + pub fn LockReassignCurrentOwner(locallocks: *mut *mut LOCALLOCK, nlocks: ::core::ffi::c_int); + pub fn LockHeldByMe(locktag: *const LOCKTAG, lockmode: LOCKMODE, orstronger: bool) -> bool; + pub fn LockHasWaiters(locktag: *const LOCKTAG, lockmode: LOCKMODE, sessionLock: bool) -> bool; + pub fn GetLockConflicts( + locktag: *const LOCKTAG, + lockmode: LOCKMODE, + countp: *mut ::core::ffi::c_int, + ) -> *mut VirtualTransactionId; + pub fn AtPrepare_Locks(); + pub fn PostPrepare_Locks(xid: TransactionId); + pub fn LockCheckConflicts( + lockMethodTable: LockMethod, + lockmode: LOCKMODE, + lock: *mut LOCK, + proclock: *mut PROCLOCK, + ) -> bool; + pub fn GrantLock(lock: *mut LOCK, proclock: *mut PROCLOCK, lockmode: LOCKMODE); + pub fn GrantAwaitedLock(); + pub fn RemoveFromWaitQueue(proc_: *mut PGPROC, hashcode: uint32); + pub fn LockShmemSize() -> Size; + pub fn GetLockStatusData() -> *mut LockData; + pub fn GetBlockerStatusData(blocked_pid: ::core::ffi::c_int) -> *mut BlockedProcsData; + pub fn GetRunningTransactionLocks(nlocks: *mut ::core::ffi::c_int) -> *mut xl_standby_lock; + pub fn GetLockmodeName( + lockmethodid: LOCKMETHODID, + mode: LOCKMODE, + ) -> *const ::core::ffi::c_char; + pub fn lock_twophase_recover( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn lock_twophase_postcommit( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn lock_twophase_postabort( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn lock_twophase_standby_recover( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn DeadLockCheck(proc_: *mut PGPROC) -> DeadLockState::Type; + pub fn GetBlockingAutoVacuumPgproc() -> *mut PGPROC; + pub fn DeadLockReport() -> !; + pub fn RememberSimpleDeadLock( + proc1: *mut PGPROC, + lockmode: LOCKMODE, + lock: *mut LOCK, + proc2: *mut PGPROC, + ); + pub fn InitDeadLockChecking(); + pub fn LockWaiterCount(locktag: *const LOCKTAG) -> ::core::ffi::c_int; + pub fn VirtualXactLockTableInsert(vxid: VirtualTransactionId); + pub fn VirtualXactLockTableCleanup(); + pub fn VirtualXactLock(vxid: VirtualTransactionId, wait: bool) -> bool; + pub fn add_reloption_kind() -> relopt_kind::Type; + pub fn add_bool_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: bool, + lockmode: LOCKMODE, + ); + pub fn add_int_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: ::core::ffi::c_int, + min_val: ::core::ffi::c_int, + max_val: ::core::ffi::c_int, + lockmode: LOCKMODE, + ); + pub fn add_real_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: f64, + min_val: f64, + max_val: f64, + lockmode: LOCKMODE, + ); + pub fn add_enum_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + members: *mut relopt_enum_elt_def, + default_val: ::core::ffi::c_int, + detailmsg: *const ::core::ffi::c_char, + lockmode: LOCKMODE, + ); + pub fn add_string_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: *const ::core::ffi::c_char, + validator: validate_string_relopt, + lockmode: LOCKMODE, + ); + pub fn init_local_reloptions(relopts: *mut local_relopts, relopt_struct_size: Size); + pub fn register_reloptions_validator(relopts: *mut local_relopts, validator: relopts_validator); + pub fn add_local_bool_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: bool, + offset: ::core::ffi::c_int, + ); + pub fn add_local_int_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: ::core::ffi::c_int, + min_val: ::core::ffi::c_int, + max_val: ::core::ffi::c_int, + offset: ::core::ffi::c_int, + ); + pub fn add_local_real_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: f64, + min_val: f64, + max_val: f64, + offset: ::core::ffi::c_int, + ); + pub fn add_local_enum_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + members: *mut relopt_enum_elt_def, + default_val: ::core::ffi::c_int, + detailmsg: *const ::core::ffi::c_char, + offset: ::core::ffi::c_int, + ); + pub fn add_local_string_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: *const ::core::ffi::c_char, + validator: validate_string_relopt, + filler: fill_string_relopt, + offset: ::core::ffi::c_int, + ); + pub fn transformRelOptions( + oldOptions: Datum, + defList: *mut List, + namspace: *const ::core::ffi::c_char, + validnsps: *mut *mut ::core::ffi::c_char, + acceptOidsOff: bool, + isReset: bool, + ) -> Datum; + pub fn untransformRelOptions(options: Datum) -> *mut List; + pub fn extractRelOptions( + tuple: HeapTuple, + tupdesc: TupleDesc, + amoptions: amoptions_function, + ) -> *mut bytea; + pub fn build_reloptions( + reloptions: Datum, + validate: bool, + kind: relopt_kind::Type, + relopt_struct_size: Size, + relopt_elems: *const relopt_parse_elt, + num_relopt_elems: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn build_local_reloptions( + relopts: *mut local_relopts, + options: Datum, + validate: bool, + ) -> *mut ::core::ffi::c_void; + pub fn default_reloptions( + reloptions: Datum, + validate: bool, + kind: relopt_kind::Type, + ) -> *mut bytea; + pub fn heap_reloptions( + relkind: ::core::ffi::c_char, + reloptions: Datum, + validate: bool, + ) -> *mut bytea; + pub fn view_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn partitioned_table_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn index_reloptions( + amoptions: amoptions_function, + reloptions: Datum, + validate: bool, + ) -> *mut bytea; + pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; + pub static mut RmgrTable: [RmgrData; 0usize]; + pub fn RmgrStartup(); + pub fn RmgrCleanup(); + pub fn RmgrNotFound(rmid: RmgrId); + pub fn RegisterCustomRmgr(rmid: RmgrId, rmgr: *const RmgrData); + pub fn GetLastSegSwitchData(lastSwitchLSN: *mut XLogRecPtr) -> pg_time_t; + pub fn RequestXLogSwitch(mark_unimportant: bool) -> XLogRecPtr; + pub fn GetOldestRestartPoint(oldrecptr: *mut XLogRecPtr, oldtli: *mut TimeLineID); + pub fn XLogRecGetBlockRefInfo( + record: *mut XLogReaderState, + pretty: bool, + detailed_format: bool, + buf: StringInfo, + fpi_len: *mut uint32, + ); + pub static mut ArchiveRecoveryRequested: bool; + pub static mut InArchiveRecovery: bool; + pub static mut StandbyMode: bool; + pub static mut recoveryRestoreCommand: *mut ::core::ffi::c_char; + pub static mut recoveryTargetInclusive: bool; + pub static mut recoveryTargetAction: ::core::ffi::c_int; + pub static mut recovery_min_apply_delay: ::core::ffi::c_int; + pub static mut PrimaryConnInfo: *mut ::core::ffi::c_char; + pub static mut PrimarySlotName: *mut ::core::ffi::c_char; + pub static mut recoveryEndCommand: *mut ::core::ffi::c_char; + pub static mut archiveCleanupCommand: *mut ::core::ffi::c_char; + pub static mut recoveryTargetXid: TransactionId; + pub static mut recovery_target_time_string: *mut ::core::ffi::c_char; + pub static mut recoveryTargetTime: TimestampTz; + pub static mut recoveryTargetName: *const ::core::ffi::c_char; + pub static mut recoveryTargetLSN: XLogRecPtr; + pub static mut recoveryTarget: RecoveryTargetType::Type; + pub static mut wal_receiver_create_temp_slot: bool; + pub static mut recoveryTargetTimeLineGoal: RecoveryTargetTimeLineGoal::Type; + pub static mut recoveryTargetTLIRequested: TimeLineID; + pub static mut recoveryTargetTLI: TimeLineID; + pub static mut reachedConsistency: bool; + pub fn XLogRecoveryShmemSize() -> Size; + pub fn XLogRecoveryShmemInit(); + pub fn InitWalRecovery( + ControlFile: *mut ControlFileData, + wasShutdown_ptr: *mut bool, + haveBackupLabel_ptr: *mut bool, + haveTblspcMap_ptr: *mut bool, + ); + pub fn PerformWalRecovery(); + pub fn FinishWalRecovery() -> *mut EndOfWalRecoveryInfo; + pub fn ShutdownWalRecovery(); + pub fn RemovePromoteSignalFiles(); + pub fn HotStandbyActive() -> bool; + pub fn GetXLogReplayRecPtr(replayTLI: *mut TimeLineID) -> XLogRecPtr; + pub fn GetRecoveryPauseState() -> RecoveryPauseState::Type; + pub fn SetRecoveryPause(recoveryPause: bool); + pub fn GetXLogReceiptTime(rtime: *mut TimestampTz, fromStream: *mut bool); + pub fn GetLatestXTime() -> TimestampTz; + pub fn GetCurrentChunkReplayStartTime() -> TimestampTz; + pub fn GetCurrentReplayRecPtr(replayEndTLI: *mut TimeLineID) -> XLogRecPtr; + pub fn PromoteIsTriggered() -> bool; + pub fn CheckPromoteSignal() -> bool; + pub fn WakeupRecovery(); + pub fn StartupRequestWalReceiverRestart(); + pub fn XLogRequestWalReceiverReply(); + pub fn RecoveryRequiresIntParameter( + param_name: *const ::core::ffi::c_char, + currValue: ::core::ffi::c_int, + minValue: ::core::ffi::c_int, + ); + pub fn xlog_outdesc(buf: StringInfo, record: *mut XLogReaderState); + pub static mut InRecovery: bool; + pub static mut standbyState: HotStandbyState::Type; + pub fn XLogHaveInvalidPages() -> bool; + pub fn XLogCheckInvalidPages(); + pub fn XLogDropRelation(rlocator: RelFileLocator, forknum: ForkNumber::Type); + pub fn XLogDropDatabase(dbid: Oid); + pub fn XLogTruncateRelation( + rlocator: RelFileLocator, + forkNum: ForkNumber::Type, + nblocks: BlockNumber, + ); + pub fn XLogReadBufferForRedo( + record: *mut XLogReaderState, + block_id: uint8, + buf: *mut Buffer, + ) -> XLogRedoAction::Type; + pub fn XLogInitBufferForRedo(record: *mut XLogReaderState, block_id: uint8) -> Buffer; + pub fn XLogReadBufferForRedoExtended( + record: *mut XLogReaderState, + block_id: uint8, + mode: ReadBufferMode::Type, + get_cleanup_lock: bool, + buf: *mut Buffer, + ) -> XLogRedoAction::Type; + pub fn XLogReadBufferExtended( + rlocator: RelFileLocator, + forknum: ForkNumber::Type, + blkno: BlockNumber, + mode: ReadBufferMode::Type, + recent_buffer: Buffer, + ) -> Buffer; + pub fn CreateFakeRelcacheEntry(rlocator: RelFileLocator) -> Relation; + pub fn FreeFakeRelcacheEntry(fakerel: Relation); + pub fn read_local_xlog_page( + state: *mut XLogReaderState, + targetPagePtr: XLogRecPtr, + reqLen: ::core::ffi::c_int, + targetRecPtr: XLogRecPtr, + cur_page: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn read_local_xlog_page_no_wait( + state: *mut XLogReaderState, + targetPagePtr: XLogRecPtr, + reqLen: ::core::ffi::c_int, + targetRecPtr: XLogRecPtr, + cur_page: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn wal_segment_open( + state: *mut XLogReaderState, + nextSegNo: XLogSegNo, + tli_p: *mut TimeLineID, + ); + pub fn wal_segment_close(state: *mut XLogReaderState); + pub fn XLogReadDetermineTimeline( + state: *mut XLogReaderState, + wantPage: XLogRecPtr, + wantLength: uint32, + currTLI: TimeLineID, + ); + pub fn WALReadRaiseError(errinfo: *mut WALReadError); + pub fn AcquireDeletionLock(object: *const ObjectAddress, flags: ::core::ffi::c_int); + pub fn ReleaseDeletionLock(object: *const ObjectAddress); + pub fn performDeletion( + object: *const ObjectAddress, + behavior: DropBehavior::Type, + flags: ::core::ffi::c_int, + ); + pub fn performMultipleDeletions( + objects: *const ObjectAddresses, + behavior: DropBehavior::Type, + flags: ::core::ffi::c_int, + ); + pub fn recordDependencyOnExpr( + depender: *const ObjectAddress, + expr: *mut Node, + rtable: *mut List, + behavior: DependencyType::Type, + ); + pub fn recordDependencyOnSingleRelExpr( + depender: *const ObjectAddress, + expr: *mut Node, + relId: Oid, + behavior: DependencyType::Type, + self_behavior: DependencyType::Type, + reverse_self: bool, + ); + pub fn new_object_addresses() -> *mut ObjectAddresses; + pub fn add_exact_object_address(object: *const ObjectAddress, addrs: *mut ObjectAddresses); + pub fn object_address_present( + object: *const ObjectAddress, + addrs: *const ObjectAddresses, + ) -> bool; + pub fn record_object_address_dependencies( + depender: *const ObjectAddress, + referenced: *mut ObjectAddresses, + behavior: DependencyType::Type, + ); + pub fn sort_object_addresses(addrs: *mut ObjectAddresses); + pub fn free_object_addresses(addrs: *mut ObjectAddresses); + pub fn recordDependencyOn( + depender: *const ObjectAddress, + referenced: *const ObjectAddress, + behavior: DependencyType::Type, + ); + pub fn recordMultipleDependencies( + depender: *const ObjectAddress, + referenced: *const ObjectAddress, + nreferenced: ::core::ffi::c_int, + behavior: DependencyType::Type, + ); + pub fn recordDependencyOnCurrentExtension(object: *const ObjectAddress, isReplace: bool); + pub fn checkMembershipInCurrentExtension(object: *const ObjectAddress); + pub fn deleteDependencyRecordsFor( + classId: Oid, + objectId: Oid, + skipExtensionDeps: bool, + ) -> ::core::ffi::c_long; + pub fn deleteDependencyRecordsForClass( + classId: Oid, + objectId: Oid, + refclassId: Oid, + deptype: ::core::ffi::c_char, + ) -> ::core::ffi::c_long; + pub fn deleteDependencyRecordsForSpecific( + classId: Oid, + objectId: Oid, + deptype: ::core::ffi::c_char, + refclassId: Oid, + refobjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn changeDependencyFor( + classId: Oid, + objectId: Oid, + refClassId: Oid, + oldRefObjectId: Oid, + newRefObjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn changeDependenciesOf( + classId: Oid, + oldObjectId: Oid, + newObjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn changeDependenciesOn( + refClassId: Oid, + oldRefObjectId: Oid, + newRefObjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn getExtensionOfObject(classId: Oid, objectId: Oid) -> Oid; + pub fn getAutoExtensionsOfObject(classId: Oid, objectId: Oid) -> *mut List; + pub fn sequenceIsOwned( + seqId: Oid, + deptype: ::core::ffi::c_char, + tableId: *mut Oid, + colId: *mut int32, + ) -> bool; + pub fn getOwnedSequences(relid: Oid) -> *mut List; + pub fn getIdentitySequence(rel: Relation, attnum: AttrNumber, missing_ok: bool) -> Oid; + pub fn get_index_constraint(indexId: Oid) -> Oid; + pub fn get_index_ref_constraints(indexId: Oid) -> *mut List; + pub fn recordSharedDependencyOn( + depender: *mut ObjectAddress, + referenced: *mut ObjectAddress, + deptype: SharedDependencyType::Type, + ); + pub fn deleteSharedDependencyRecordsFor(classId: Oid, objectId: Oid, objectSubId: int32); + pub fn recordDependencyOnOwner(classId: Oid, objectId: Oid, owner: Oid); + pub fn changeDependencyOnOwner(classId: Oid, objectId: Oid, newOwnerId: Oid); + pub fn recordDependencyOnTablespace(classId: Oid, objectId: Oid, tablespace: Oid); + pub fn changeDependencyOnTablespace(classId: Oid, objectId: Oid, newTablespaceId: Oid); + pub fn updateAclDependencies( + classId: Oid, + objectId: Oid, + objsubId: int32, + ownerId: Oid, + noldmembers: ::core::ffi::c_int, + oldmembers: *mut Oid, + nnewmembers: ::core::ffi::c_int, + newmembers: *mut Oid, + ); + pub fn updateInitAclDependencies( + classId: Oid, + objectId: Oid, + objsubId: int32, + noldmembers: ::core::ffi::c_int, + oldmembers: *mut Oid, + nnewmembers: ::core::ffi::c_int, + newmembers: *mut Oid, + ); + pub fn checkSharedDependencies( + classId: Oid, + objectId: Oid, + detail_msg: *mut *mut ::core::ffi::c_char, + detail_log_msg: *mut *mut ::core::ffi::c_char, + ) -> bool; + pub fn shdepLockAndCheckObject(classId: Oid, objectId: Oid); + pub fn copyTemplateDependencies(templateDbId: Oid, newDbId: Oid); + pub fn dropDatabaseDependencies(databaseId: Oid); + pub fn shdepDropOwned(roleids: *mut List, behavior: DropBehavior::Type); + pub fn shdepReassignOwned(roleids: *mut List, newrole: Oid); + pub fn index_check_primary_key( + heapRel: Relation, + indexInfo: *const IndexInfo, + is_alter_table: bool, + stmt: *const IndexStmt, + ); + pub fn index_create( + heapRelation: Relation, + indexRelationName: *const ::core::ffi::c_char, + indexRelationId: Oid, + parentIndexRelid: Oid, + parentConstraintId: Oid, + relFileNumber: RelFileNumber, + indexInfo: *mut IndexInfo, + indexColNames: *const List, + accessMethodId: Oid, + tableSpaceId: Oid, + collationIds: *const Oid, + opclassIds: *const Oid, + opclassOptions: *const Datum, + coloptions: *const int16, + stattargets: *const NullableDatum, + reloptions: Datum, + flags: bits16, + constr_flags: bits16, + allow_system_table_mods: bool, + is_internal: bool, + constraintId: *mut Oid, + ) -> Oid; + pub fn index_concurrently_create_copy( + heapRelation: Relation, + oldIndexId: Oid, + tablespaceOid: Oid, + newName: *const ::core::ffi::c_char, + ) -> Oid; + pub fn index_concurrently_build(heapRelationId: Oid, indexRelationId: Oid); + pub fn index_concurrently_swap( + newIndexId: Oid, + oldIndexId: Oid, + oldName: *const ::core::ffi::c_char, + ); + pub fn index_concurrently_set_dead(heapId: Oid, indexId: Oid); + pub fn index_constraint_create( + heapRelation: Relation, + indexRelationId: Oid, + parentConstraintId: Oid, + indexInfo: *const IndexInfo, + constraintName: *const ::core::ffi::c_char, + constraintType: ::core::ffi::c_char, + constr_flags: bits16, + allow_system_table_mods: bool, + is_internal: bool, + ) -> ObjectAddress; + pub fn index_drop(indexId: Oid, concurrent: bool, concurrent_lock_mode: bool); + pub fn BuildIndexInfo(index: Relation) -> *mut IndexInfo; + pub fn BuildDummyIndexInfo(index: Relation) -> *mut IndexInfo; + pub fn CompareIndexInfo( + info1: *const IndexInfo, + info2: *const IndexInfo, + collations1: *const Oid, + collations2: *const Oid, + opfamilies1: *const Oid, + opfamilies2: *const Oid, + attmap: *const AttrMap, + ) -> bool; + pub fn BuildSpeculativeIndexInfo(index: Relation, ii: *mut IndexInfo); + pub fn FormIndexDatum( + indexInfo: *mut IndexInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + values: *mut Datum, + isnull: *mut bool, + ); + pub fn index_build( + heapRelation: Relation, + indexRelation: Relation, + indexInfo: *mut IndexInfo, + isreindex: bool, + parallel: bool, + ); + pub fn validate_index(heapId: Oid, indexId: Oid, snapshot: Snapshot); + pub fn index_set_state_flags(indexId: Oid, action: IndexStateFlagsAction::Type); + pub fn IndexGetRelation(indexId: Oid, missing_ok: bool) -> Oid; + pub fn reindex_index( + stmt: *const ReindexStmt, + indexId: Oid, + skip_constraint_checks: bool, + persistence: ::core::ffi::c_char, + params: *const ReindexParams, + ); + pub fn reindex_relation( + stmt: *const ReindexStmt, + relid: Oid, + flags: ::core::ffi::c_int, + params: *const ReindexParams, + ) -> bool; + pub fn ReindexIsProcessingHeap(heapOid: Oid) -> bool; + pub fn ReindexIsProcessingIndex(indexOid: Oid) -> bool; + pub fn ResetReindexState(nestLevel: ::core::ffi::c_int); + pub fn EstimateReindexStateSpace() -> Size; + pub fn SerializeReindexState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreReindexState(reindexstate: *const ::core::ffi::c_void); + pub fn IndexSetParentIndex(partitionIdx: Relation, parentOid: Oid); + pub fn CatalogOpenIndexes(heapRel: Relation) -> CatalogIndexState; + pub fn CatalogCloseIndexes(indstate: CatalogIndexState); + pub fn CatalogTupleInsert(heapRel: Relation, tup: HeapTuple); + pub fn CatalogTupleInsertWithInfo( + heapRel: Relation, + tup: HeapTuple, + indstate: CatalogIndexState, + ); + pub fn CatalogTuplesMultiInsertWithInfo( + heapRel: Relation, + slot: *mut *mut TupleTableSlot, + ntuples: ::core::ffi::c_int, + indstate: CatalogIndexState, + ); + pub fn CatalogTupleUpdate(heapRel: Relation, otid: ItemPointer, tup: HeapTuple); + pub fn CatalogTupleUpdateWithInfo( + heapRel: Relation, + otid: ItemPointer, + tup: HeapTuple, + indstate: CatalogIndexState, + ); + pub fn CatalogTupleDelete(heapRel: Relation, tid: ItemPointer); + pub fn RangeVarGetRelidExtended( + relation: *const RangeVar, + lockmode: LOCKMODE, + flags: uint32, + callback: RangeVarGetRelidCallback, + callback_arg: *mut ::core::ffi::c_void, + ) -> Oid; + pub fn RangeVarGetCreationNamespace(newRelation: *const RangeVar) -> Oid; + pub fn RangeVarGetAndCheckCreationNamespace( + relation: *mut RangeVar, + lockmode: LOCKMODE, + existing_relation_id: *mut Oid, + ) -> Oid; + pub fn RangeVarAdjustRelationPersistence(newRelation: *mut RangeVar, nspid: Oid); + pub fn RelnameGetRelid(relname: *const ::core::ffi::c_char) -> Oid; + pub fn RelationIsVisible(relid: Oid) -> bool; + pub fn TypenameGetTypid(typname: *const ::core::ffi::c_char) -> Oid; + pub fn TypenameGetTypidExtended(typname: *const ::core::ffi::c_char, temp_ok: bool) -> Oid; + pub fn TypeIsVisible(typid: Oid) -> bool; + pub fn FuncnameGetCandidates( + names: *mut List, + nargs: ::core::ffi::c_int, + argnames: *mut List, + expand_variadic: bool, + expand_defaults: bool, + include_out_arguments: bool, + missing_ok: bool, + ) -> FuncCandidateList; + pub fn FunctionIsVisible(funcid: Oid) -> bool; + pub fn OpernameGetOprid(names: *mut List, oprleft: Oid, oprright: Oid) -> Oid; + pub fn OpernameGetCandidates( + names: *mut List, + oprkind: ::core::ffi::c_char, + missing_schema_ok: bool, + ) -> FuncCandidateList; + pub fn OperatorIsVisible(oprid: Oid) -> bool; + pub fn OpclassnameGetOpcid(amid: Oid, opcname: *const ::core::ffi::c_char) -> Oid; + pub fn OpclassIsVisible(opcid: Oid) -> bool; + pub fn OpfamilynameGetOpfid(amid: Oid, opfname: *const ::core::ffi::c_char) -> Oid; + pub fn OpfamilyIsVisible(opfid: Oid) -> bool; + pub fn CollationGetCollid(collname: *const ::core::ffi::c_char) -> Oid; + pub fn CollationIsVisible(collid: Oid) -> bool; + pub fn ConversionGetConid(conname: *const ::core::ffi::c_char) -> Oid; + pub fn ConversionIsVisible(conid: Oid) -> bool; + pub fn get_statistics_object_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn StatisticsObjIsVisible(stxid: Oid) -> bool; + pub fn get_ts_parser_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSParserIsVisible(prsId: Oid) -> bool; + pub fn get_ts_dict_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSDictionaryIsVisible(dictId: Oid) -> bool; + pub fn get_ts_template_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSTemplateIsVisible(tmplId: Oid) -> bool; + pub fn get_ts_config_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSConfigIsVisible(cfgid: Oid) -> bool; + pub fn DeconstructQualifiedName( + names: *const List, + nspname_p: *mut *mut ::core::ffi::c_char, + objname_p: *mut *mut ::core::ffi::c_char, + ); + pub fn LookupNamespaceNoError(nspname: *const ::core::ffi::c_char) -> Oid; + pub fn LookupExplicitNamespace(nspname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_namespace_oid(nspname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn LookupCreationNamespace(nspname: *const ::core::ffi::c_char) -> Oid; + pub fn CheckSetNamespace(oldNspOid: Oid, nspOid: Oid); + pub fn QualifiedNameGetCreationNamespace( + names: *const List, + objname_p: *mut *mut ::core::ffi::c_char, + ) -> Oid; + pub fn makeRangeVarFromNameList(names: *const List) -> *mut RangeVar; + pub fn NameListToString(names: *const List) -> *mut ::core::ffi::c_char; + pub fn NameListToQuotedString(names: *const List) -> *mut ::core::ffi::c_char; + pub fn isTempNamespace(namespaceId: Oid) -> bool; + pub fn isTempToastNamespace(namespaceId: Oid) -> bool; + pub fn isTempOrTempToastNamespace(namespaceId: Oid) -> bool; + pub fn isAnyTempNamespace(namespaceId: Oid) -> bool; + pub fn isOtherTempNamespace(namespaceId: Oid) -> bool; + pub fn checkTempNamespaceStatus(namespaceId: Oid) -> TempNamespaceStatus::Type; + pub fn GetTempNamespaceProcNumber(namespaceId: Oid) -> ProcNumber; + pub fn GetTempToastNamespace() -> Oid; + pub fn GetTempNamespaceState(tempNamespaceId: *mut Oid, tempToastNamespaceId: *mut Oid); + pub fn SetTempNamespaceState(tempNamespaceId: Oid, tempToastNamespaceId: Oid); + pub fn ResetTempTableNamespace(); + pub fn GetSearchPathMatcher(context: MemoryContext) -> *mut SearchPathMatcher; + pub fn CopySearchPathMatcher(path: *mut SearchPathMatcher) -> *mut SearchPathMatcher; + pub fn SearchPathMatchesCurrentEnvironment(path: *mut SearchPathMatcher) -> bool; + pub fn get_collation_oid(collname: *mut List, missing_ok: bool) -> Oid; + pub fn get_conversion_oid(conname: *mut List, missing_ok: bool) -> Oid; + pub fn FindDefaultConversionProc(for_encoding: int32, to_encoding: int32) -> Oid; + pub fn InitializeSearchPath(); + pub fn AtEOXact_Namespace(isCommit: bool, parallel: bool); + pub fn AtEOSubXact_Namespace( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub static mut namespace_search_path: *mut ::core::ffi::c_char; + pub fn fetch_search_path(includeImplicit: bool) -> *mut List; + pub fn fetch_search_path_array( + sarray: *mut Oid, + sarray_len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub static mut object_access_hook: object_access_hook_type; + pub static mut object_access_hook_str: object_access_hook_type_str; + pub fn RunObjectPostCreateHook( + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + is_internal: bool, + ); + pub fn RunObjectDropHook( + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + dropflags: ::core::ffi::c_int, + ); + pub fn RunObjectTruncateHook(objectId: Oid); + pub fn RunObjectPostAlterHook( + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + auxiliaryId: Oid, + is_internal: bool, + ); + pub fn RunNamespaceSearchHook(objectId: Oid, ereport_on_violation: bool) -> bool; + pub fn RunFunctionExecuteHook(objectId: Oid); + pub fn RunObjectPostCreateHookStr( + classId: Oid, + objectName: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + is_internal: bool, + ); + pub fn RunObjectDropHookStr( + classId: Oid, + objectName: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + dropflags: ::core::ffi::c_int, + ); + pub fn RunObjectTruncateHookStr(objectName: *const ::core::ffi::c_char); + pub fn RunObjectPostAlterHookStr( + classId: Oid, + objectName: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + auxiliaryId: Oid, + is_internal: bool, + ); + pub fn RunNamespaceSearchHookStr( + objectName: *const ::core::ffi::c_char, + ereport_on_violation: bool, + ) -> bool; + pub fn RunFunctionExecuteHookStr(objectName: *const ::core::ffi::c_char); + pub fn CollationCreate( + collname: *const ::core::ffi::c_char, + collnamespace: Oid, + collowner: Oid, + collprovider: ::core::ffi::c_char, + collisdeterministic: bool, + collencoding: int32, + collcollate: *const ::core::ffi::c_char, + collctype: *const ::core::ffi::c_char, + colllocale: *const ::core::ffi::c_char, + collicurules: *const ::core::ffi::c_char, + collversion: *const ::core::ffi::c_char, + if_not_exists: bool, + quiet: bool, + ) -> Oid; + pub fn database_is_invalid_form(datform: Form_pg_database) -> bool; + pub fn database_is_invalid_oid(dboid: Oid) -> bool; + pub fn EnumValuesCreate(enumTypeOid: Oid, vals: *mut List); + pub fn EnumValuesDelete(enumTypeOid: Oid); + pub fn AddEnumLabel( + enumTypeOid: Oid, + newVal: *const ::core::ffi::c_char, + neighbor: *const ::core::ffi::c_char, + newValIsAfter: bool, + skipIfExists: bool, + ); + pub fn RenameEnumLabel( + enumTypeOid: Oid, + oldVal: *const ::core::ffi::c_char, + newVal: *const ::core::ffi::c_char, + ); + pub fn EnumUncommitted(enum_id: Oid) -> bool; + pub fn EstimateUncommittedEnumsSpace() -> Size; + pub fn SerializeUncommittedEnums(space: *mut ::core::ffi::c_void, size: Size); + pub fn RestoreUncommittedEnums(space: *mut ::core::ffi::c_void); + pub fn AtEOXact_Enum(); + pub fn OperatorLookup( + operatorName: *mut List, + leftObjectId: Oid, + rightObjectId: Oid, + defined: *mut bool, + ) -> Oid; + pub fn OperatorCreate( + operatorName: *const ::core::ffi::c_char, + operatorNamespace: Oid, + leftTypeId: Oid, + rightTypeId: Oid, + procedureId: Oid, + commutatorName: *mut List, + negatorName: *mut List, + restrictionId: Oid, + joinId: Oid, + canMerge: bool, + canHash: bool, + ) -> ObjectAddress; + pub fn makeOperatorDependencies( + tuple: HeapTuple, + makeExtensionDep: bool, + isUpdate: bool, + ) -> ObjectAddress; + pub fn OperatorValidateParams( + leftTypeId: Oid, + rightTypeId: Oid, + operResultType: Oid, + hasCommutator: bool, + hasNegator: bool, + hasRestrictionSelectivity: bool, + hasJoinSelectivity: bool, + canMerge: bool, + canHash: bool, + ); + pub fn OperatorUpd(baseId: Oid, commId: Oid, negId: Oid, isDelete: bool); + pub fn ProcedureCreate( + procedureName: *const ::core::ffi::c_char, + procNamespace: Oid, + replace: bool, + returnsSet: bool, + returnType: Oid, + proowner: Oid, + languageObjectId: Oid, + languageValidator: Oid, + prosrc: *const ::core::ffi::c_char, + probin: *const ::core::ffi::c_char, + prosqlbody: *mut Node, + prokind: ::core::ffi::c_char, + security_definer: bool, + isLeakProof: bool, + isStrict: bool, + volatility: ::core::ffi::c_char, + parallel: ::core::ffi::c_char, + parameterTypes: *mut oidvector, + allParameterTypes: Datum, + parameterModes: Datum, + parameterNames: Datum, + parameterDefaults: *mut List, + trftypes: Datum, + proconfig: Datum, + prosupport: Oid, + procost: float4, + prorows: float4, + ) -> ObjectAddress; + pub fn function_parse_error_transpose(prosrc: *const ::core::ffi::c_char) -> bool; + pub fn oid_array_to_list(datum: Datum) -> *mut List; + pub fn make_parsestate(parentParseState: *mut ParseState) -> *mut ParseState; + pub fn free_parsestate(pstate: *mut ParseState); + pub fn parser_errposition( + pstate: *mut ParseState, + location: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn setup_parser_errposition_callback( + pcbstate: *mut ParseCallbackState, + pstate: *mut ParseState, + location: ::core::ffi::c_int, + ); + pub fn cancel_parser_errposition_callback(pcbstate: *mut ParseCallbackState); + pub fn transformContainerType(containerType: *mut Oid, containerTypmod: *mut int32); + pub fn transformContainerSubscripts( + pstate: *mut ParseState, + containerBase: *mut Node, + containerType: Oid, + containerTypMod: int32, + indirection: *mut List, + isAssignment: bool, + ) -> *mut SubscriptingRef; + pub fn make_const(pstate: *mut ParseState, aconst: *mut A_Const) -> *mut Const; + pub fn acldefault(objtype: ObjectType::Type, ownerId: Oid) -> *mut Acl; + pub fn get_user_default_acl(objtype: ObjectType::Type, ownerId: Oid, nsp_oid: Oid) -> *mut Acl; + pub fn recordDependencyOnNewAcl( + classId: Oid, + objectId: Oid, + objsubId: int32, + ownerId: Oid, + acl: *mut Acl, + ); + pub fn aclupdate( + old_acl: *const Acl, + mod_aip: *const AclItem, + modechg: ::core::ffi::c_int, + ownerId: Oid, + behavior: DropBehavior::Type, + ) -> *mut Acl; + pub fn aclnewowner(old_acl: *const Acl, oldOwnerId: Oid, newOwnerId: Oid) -> *mut Acl; + pub fn make_empty_acl() -> *mut Acl; + pub fn aclcopy(orig_acl: *const Acl) -> *mut Acl; + pub fn aclconcat(left_acl: *const Acl, right_acl: *const Acl) -> *mut Acl; + pub fn aclmerge(left_acl: *const Acl, right_acl: *const Acl, ownerId: Oid) -> *mut Acl; + pub fn aclitemsort(acl: *mut Acl); + pub fn aclequal(left_acl: *const Acl, right_acl: *const Acl) -> bool; + pub fn aclmask( + acl: *const Acl, + roleid: Oid, + ownerId: Oid, + mask: AclMode, + how: AclMaskHow::Type, + ) -> AclMode; + pub fn aclmembers(acl: *const Acl, roleids: *mut *mut Oid) -> ::core::ffi::c_int; + pub fn has_privs_of_role(member: Oid, role: Oid) -> bool; + pub fn member_can_set_role(member: Oid, role: Oid) -> bool; + pub fn check_can_set_role(member: Oid, role: Oid); + pub fn is_member_of_role(member: Oid, role: Oid) -> bool; + pub fn is_member_of_role_nosuper(member: Oid, role: Oid) -> bool; + pub fn is_admin_of_role(member: Oid, role: Oid) -> bool; + pub fn select_best_admin(member: Oid, role: Oid) -> Oid; + pub fn get_role_oid(rolname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_role_oid_or_public(rolname: *const ::core::ffi::c_char) -> Oid; + pub fn get_rolespec_oid(role: *const RoleSpec, missing_ok: bool) -> Oid; + pub fn check_rolespec_name(role: *const RoleSpec, detail_msg: *const ::core::ffi::c_char); + pub fn get_rolespec_tuple(role: *const RoleSpec) -> HeapTuple; + pub fn get_rolespec_name(role: *const RoleSpec) -> *mut ::core::ffi::c_char; + pub fn select_best_grantor( + roleId: Oid, + privileges: AclMode, + acl: *const Acl, + ownerId: Oid, + grantorId: *mut Oid, + grantOptions: *mut AclMode, + ); + pub fn initialize_acl(); + pub fn ExecuteGrantStmt(stmt: *mut GrantStmt); + pub fn ExecAlterDefaultPrivilegesStmt( + pstate: *mut ParseState, + stmt: *mut AlterDefaultPrivilegesStmt, + ); + pub fn RemoveRoleFromObjectACL(roleid: Oid, classid: Oid, objid: Oid); + pub fn pg_class_aclmask( + table_oid: Oid, + roleid: Oid, + mask: AclMode, + how: AclMaskHow::Type, + ) -> AclMode; + pub fn object_aclcheck( + classid: Oid, + objectid: Oid, + roleid: Oid, + mode: AclMode, + ) -> AclResult::Type; + pub fn object_aclcheck_ext( + classid: Oid, + objectid: Oid, + roleid: Oid, + mode: AclMode, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck( + table_oid: Oid, + attnum: AttrNumber, + roleid: Oid, + mode: AclMode, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck_ext( + table_oid: Oid, + attnum: AttrNumber, + roleid: Oid, + mode: AclMode, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck_all( + table_oid: Oid, + roleid: Oid, + mode: AclMode, + how: AclMaskHow::Type, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck_all_ext( + table_oid: Oid, + roleid: Oid, + mode: AclMode, + how: AclMaskHow::Type, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_class_aclcheck(table_oid: Oid, roleid: Oid, mode: AclMode) -> AclResult::Type; + pub fn pg_class_aclcheck_ext( + table_oid: Oid, + roleid: Oid, + mode: AclMode, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_parameter_aclcheck( + name: *const ::core::ffi::c_char, + roleid: Oid, + mode: AclMode, + ) -> AclResult::Type; + pub fn pg_largeobject_aclcheck_snapshot( + lobj_oid: Oid, + roleid: Oid, + mode: AclMode, + snapshot: Snapshot, + ) -> AclResult::Type; + pub fn aclcheck_error( + aclerr: AclResult::Type, + objtype: ObjectType::Type, + objectname: *const ::core::ffi::c_char, + ); + pub fn aclcheck_error_col( + aclerr: AclResult::Type, + objtype: ObjectType::Type, + objectname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + ); + pub fn aclcheck_error_type(aclerr: AclResult::Type, typeOid: Oid); + pub fn recordExtObjInitPriv(objoid: Oid, classoid: Oid); + pub fn removeExtObjInitPriv(objoid: Oid, classoid: Oid); + pub fn ReplaceRoleInInitPriv( + oldroleid: Oid, + newroleid: Oid, + classid: Oid, + objid: Oid, + objsubid: int32, + ); + pub fn RemoveRoleFromInitPriv(roleid: Oid, classid: Oid, objid: Oid, objsubid: int32); + pub fn object_ownercheck(classid: Oid, objectid: Oid, roleid: Oid) -> bool; + pub fn has_createrole_privilege(roleid: Oid) -> bool; + pub fn has_bypassrls_privilege(roleid: Oid) -> bool; + pub fn NamespaceCreate(nspName: *const ::core::ffi::c_char, ownerId: Oid, isTemp: bool) -> Oid; + pub fn TypeShellMake( + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ownerId: Oid, + ) -> ObjectAddress; + pub fn TypeCreate( + newTypeOid: Oid, + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + relationOid: Oid, + relationKind: ::core::ffi::c_char, + ownerId: Oid, + internalSize: int16, + typeType: ::core::ffi::c_char, + typeCategory: ::core::ffi::c_char, + typePreferred: bool, + typDelim: ::core::ffi::c_char, + inputProcedure: Oid, + outputProcedure: Oid, + receiveProcedure: Oid, + sendProcedure: Oid, + typmodinProcedure: Oid, + typmodoutProcedure: Oid, + analyzeProcedure: Oid, + subscriptProcedure: Oid, + elementType: Oid, + isImplicitArray: bool, + arrayType: Oid, + baseType: Oid, + defaultTypeValue: *const ::core::ffi::c_char, + defaultTypeBin: *mut ::core::ffi::c_char, + passedByValue: bool, + alignment: ::core::ffi::c_char, + storage: ::core::ffi::c_char, + typeMod: int32, + typNDims: int32, + typeNotNull: bool, + typeCollation: Oid, + ) -> ObjectAddress; + pub fn GenerateTypeDependencies( + typeTuple: HeapTuple, + typeCatalog: Relation, + defaultExpr: *mut Node, + typacl: *mut ::core::ffi::c_void, + relationKind: ::core::ffi::c_char, + isImplicitArray: bool, + isDependentType: bool, + makeExtensionDep: bool, + rebuild: bool, + ); + pub fn RenameTypeInternal( + typeOid: Oid, + newTypeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ); + pub fn makeArrayTypeName( + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ) -> *mut ::core::ffi::c_char; + pub fn moveArrayTypeName( + typeOid: Oid, + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ) -> bool; + pub fn makeMultirangeTypeName( + rangeTypeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ) -> *mut ::core::ffi::c_char; + pub static mut wal_skip_threshold: ::core::ffi::c_int; + pub fn RelationCreateStorage( + rlocator: RelFileLocator, + relpersistence: ::core::ffi::c_char, + register_delete: bool, + ) -> SMgrRelation; + pub fn RelationDropStorage(rel: Relation); + pub fn RelationPreserveStorage(rlocator: RelFileLocator, atCommit: bool); + pub fn RelationPreTruncate(rel: Relation); + pub fn RelationTruncate(rel: Relation, nblocks: BlockNumber); + pub fn RelationCopyStorage( + src: SMgrRelation, + dst: SMgrRelation, + forkNum: ForkNumber::Type, + relpersistence: ::core::ffi::c_char, + ); + pub fn RelFileLocatorSkippingWAL(rlocator: RelFileLocator) -> bool; + pub fn EstimatePendingSyncsSpace() -> Size; + pub fn SerializePendingSyncs(maxSize: Size, startAddress: *mut ::core::ffi::c_char); + pub fn RestorePendingSyncs(startAddress: *mut ::core::ffi::c_char); + pub fn smgrDoPendingDeletes(isCommit: bool); + pub fn smgrDoPendingSyncs(isCommit: bool, isParallelWorker: bool); + pub fn smgrGetPendingDeletes( + forCommit: bool, + ptr: *mut *mut RelFileLocator, + ) -> ::core::ffi::c_int; + pub fn AtSubCommit_smgr(); + pub fn AtSubAbort_smgr(); + pub fn PostPrepare_smgr(); + pub fn CommentObject(stmt: *mut CommentStmt) -> ObjectAddress; + pub fn DeleteComments(oid: Oid, classoid: Oid, subid: int32); + pub fn CreateComments( + oid: Oid, + classoid: Oid, + subid: int32, + comment: *const ::core::ffi::c_char, + ); + pub fn DeleteSharedComments(oid: Oid, classoid: Oid); + pub fn CreateSharedComments(oid: Oid, classoid: Oid, comment: *const ::core::ffi::c_char); + pub fn GetComment(oid: Oid, classoid: Oid, subid: int32) -> *mut ::core::ffi::c_char; + pub fn DoCopy( + pstate: *mut ParseState, + stmt: *const CopyStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + processed: *mut uint64, + ); + pub fn ProcessCopyOptions( + pstate: *mut ParseState, + opts_out: *mut CopyFormatOptions, + is_from: bool, + options: *mut List, + ); + pub fn BeginCopyFrom( + pstate: *mut ParseState, + rel: Relation, + whereClause: *mut Node, + filename: *const ::core::ffi::c_char, + is_program: bool, + data_source_cb: copy_data_source_cb, + attnamelist: *mut List, + options: *mut List, + ) -> CopyFromState; + pub fn EndCopyFrom(cstate: CopyFromState); + pub fn NextCopyFrom( + cstate: CopyFromState, + econtext: *mut ExprContext, + values: *mut Datum, + nulls: *mut bool, + ) -> bool; + pub fn NextCopyFromRawFields( + cstate: CopyFromState, + fields: *mut *mut *mut ::core::ffi::c_char, + nfields: *mut ::core::ffi::c_int, + ) -> bool; + pub fn CopyFromErrorCallback(arg: *mut ::core::ffi::c_void); + pub fn CopyLimitPrintoutLength(str_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn CopyFrom(cstate: CopyFromState) -> uint64; + pub fn CreateCopyDestReceiver() -> *mut DestReceiver; + pub fn BeginCopyTo( + pstate: *mut ParseState, + rel: Relation, + raw_query: *mut RawStmt, + queryRelId: Oid, + filename: *const ::core::ffi::c_char, + is_program: bool, + data_dest_cb: copy_data_dest_cb, + attnamelist: *mut List, + options: *mut List, + ) -> CopyToState; + pub fn EndCopyTo(cstate: CopyToState); + pub fn DoCopyTo(cstate: CopyToState) -> uint64; + pub fn CopyGetAttnums(tupDesc: TupleDesc, rel: Relation, attnamelist: *mut List) -> *mut List; + pub fn createdb(pstate: *mut ParseState, stmt: *const CreatedbStmt) -> Oid; + pub fn dropdb(dbname: *const ::core::ffi::c_char, missing_ok: bool, force: bool); + pub fn DropDatabase(pstate: *mut ParseState, stmt: *mut DropdbStmt); + pub fn RenameDatabase( + oldname: *const ::core::ffi::c_char, + newname: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn AlterDatabase( + pstate: *mut ParseState, + stmt: *mut AlterDatabaseStmt, + isTopLevel: bool, + ) -> Oid; + pub fn AlterDatabaseRefreshColl(stmt: *mut AlterDatabaseRefreshCollStmt) -> ObjectAddress; + pub fn AlterDatabaseSet(stmt: *mut AlterDatabaseSetStmt) -> Oid; + pub fn AlterDatabaseOwner(dbname: *const ::core::ffi::c_char, newOwnerId: Oid) + -> ObjectAddress; + pub fn get_database_oid(dbname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_database_name(dbid: Oid) -> *mut ::core::ffi::c_char; + pub fn have_createdb_privilege() -> bool; + pub fn check_encoding_locale_matches( + encoding: ::core::ffi::c_int, + collate: *const ::core::ffi::c_char, + ctype: *const ::core::ffi::c_char, + ); + pub fn DatumGetEOHP(d: Datum) -> *mut ExpandedObjectHeader; + pub fn EOH_init_header( + eohptr: *mut ExpandedObjectHeader, + methods: *const ExpandedObjectMethods, + obj_context: MemoryContext, + ); + pub fn EOH_get_flat_size(eohptr: *mut ExpandedObjectHeader) -> Size; + pub fn EOH_flatten_into( + eohptr: *mut ExpandedObjectHeader, + result: *mut ::core::ffi::c_void, + allocated_size: Size, + ); + pub fn MakeExpandedObjectReadOnlyInternal(d: Datum) -> Datum; + pub fn TransferExpandedObject(d: Datum, new_parent: MemoryContext) -> Datum; + pub fn DeleteExpandedObject(d: Datum); + pub static mut Array_nulls: bool; + pub fn CopyArrayEls( + array: *mut ArrayType, + values: *mut Datum, + nulls: *mut bool, + nitems: ::core::ffi::c_int, + typlen: ::core::ffi::c_int, + typbyval: bool, + typalign: ::core::ffi::c_char, + freedata: bool, + ); + pub fn array_get_element( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + isNull: *mut bool, + ) -> Datum; + pub fn array_set_element( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + dataValue: Datum, + isNull: bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> Datum; + pub fn array_get_slice( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + upperIndx: *mut ::core::ffi::c_int, + lowerIndx: *mut ::core::ffi::c_int, + upperProvided: *mut bool, + lowerProvided: *mut bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> Datum; + pub fn array_set_slice( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + upperIndx: *mut ::core::ffi::c_int, + lowerIndx: *mut ::core::ffi::c_int, + upperProvided: *mut bool, + lowerProvided: *mut bool, + srcArrayDatum: Datum, + isNull: bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> Datum; + pub fn array_ref( + array: *mut ArrayType, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + isNull: *mut bool, + ) -> Datum; + pub fn array_set( + array: *mut ArrayType, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + dataValue: Datum, + isNull: bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn array_map( + arrayd: Datum, + exprstate: *mut ExprState, + econtext: *mut ExprContext, + retType: Oid, + amstate: *mut ArrayMapState, + ) -> Datum; + pub fn array_bitmap_copy( + destbitmap: *mut bits8, + destoffset: ::core::ffi::c_int, + srcbitmap: *const bits8, + srcoffset: ::core::ffi::c_int, + nitems: ::core::ffi::c_int, + ); + pub fn construct_array( + elems: *mut Datum, + nelems: ::core::ffi::c_int, + elmtype: Oid, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn construct_array_builtin( + elems: *mut Datum, + nelems: ::core::ffi::c_int, + elmtype: Oid, + ) -> *mut ArrayType; + pub fn construct_md_array( + elems: *mut Datum, + nulls: *mut bool, + ndims: ::core::ffi::c_int, + dims: *mut ::core::ffi::c_int, + lbs: *mut ::core::ffi::c_int, + elmtype: Oid, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn construct_empty_array(elmtype: Oid) -> *mut ArrayType; + pub fn construct_empty_expanded_array( + element_type: Oid, + parentcontext: MemoryContext, + metacache: *mut ArrayMetaState, + ) -> *mut ExpandedArrayHeader; + pub fn deconstruct_array( + array: *mut ArrayType, + elmtype: Oid, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + elemsp: *mut *mut Datum, + nullsp: *mut *mut bool, + nelemsp: *mut ::core::ffi::c_int, + ); + pub fn deconstruct_array_builtin( + array: *mut ArrayType, + elmtype: Oid, + elemsp: *mut *mut Datum, + nullsp: *mut *mut bool, + nelemsp: *mut ::core::ffi::c_int, + ); + pub fn array_contains_nulls(array: *mut ArrayType) -> bool; + pub fn initArrayResult( + element_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + ) -> *mut ArrayBuildState; + pub fn initArrayResultWithSize( + element_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + initsize: ::core::ffi::c_int, + ) -> *mut ArrayBuildState; + pub fn accumArrayResult( + astate: *mut ArrayBuildState, + dvalue: Datum, + disnull: bool, + element_type: Oid, + rcontext: MemoryContext, + ) -> *mut ArrayBuildState; + pub fn makeArrayResult(astate: *mut ArrayBuildState, rcontext: MemoryContext) -> Datum; + pub fn makeMdArrayResult( + astate: *mut ArrayBuildState, + ndims: ::core::ffi::c_int, + dims: *mut ::core::ffi::c_int, + lbs: *mut ::core::ffi::c_int, + rcontext: MemoryContext, + release: bool, + ) -> Datum; + pub fn initArrayResultArr( + array_type: Oid, + element_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + ) -> *mut ArrayBuildStateArr; + pub fn accumArrayResultArr( + astate: *mut ArrayBuildStateArr, + dvalue: Datum, + disnull: bool, + array_type: Oid, + rcontext: MemoryContext, + ) -> *mut ArrayBuildStateArr; + pub fn makeArrayResultArr( + astate: *mut ArrayBuildStateArr, + rcontext: MemoryContext, + release: bool, + ) -> Datum; + pub fn initArrayResultAny( + input_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + ) -> *mut ArrayBuildStateAny; + pub fn accumArrayResultAny( + astate: *mut ArrayBuildStateAny, + dvalue: Datum, + disnull: bool, + input_type: Oid, + rcontext: MemoryContext, + ) -> *mut ArrayBuildStateAny; + pub fn makeArrayResultAny( + astate: *mut ArrayBuildStateAny, + rcontext: MemoryContext, + release: bool, + ) -> Datum; + pub fn array_create_iterator( + arr: *mut ArrayType, + slice_ndim: ::core::ffi::c_int, + mstate: *mut ArrayMetaState, + ) -> ArrayIterator; + pub fn array_iterate(iterator: ArrayIterator, value: *mut Datum, isnull: *mut bool) -> bool; + pub fn array_free_iterator(iterator: ArrayIterator); + pub fn ArrayGetOffset( + n: ::core::ffi::c_int, + dim: *const ::core::ffi::c_int, + lb: *const ::core::ffi::c_int, + indx: *const ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ArrayGetNItems( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ArrayGetNItemsSafe( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + escontext: *mut Node, + ) -> ::core::ffi::c_int; + pub fn ArrayCheckBounds( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + lb: *const ::core::ffi::c_int, + ); + pub fn ArrayCheckBoundsSafe( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + lb: *const ::core::ffi::c_int, + escontext: *mut Node, + ) -> bool; + pub fn mda_get_range( + n: ::core::ffi::c_int, + span: *mut ::core::ffi::c_int, + st: *const ::core::ffi::c_int, + endp: *const ::core::ffi::c_int, + ); + pub fn mda_get_prod( + n: ::core::ffi::c_int, + range: *const ::core::ffi::c_int, + prod: *mut ::core::ffi::c_int, + ); + pub fn mda_get_offset_values( + n: ::core::ffi::c_int, + dist: *mut ::core::ffi::c_int, + prod: *const ::core::ffi::c_int, + span: *const ::core::ffi::c_int, + ); + pub fn mda_next_tuple( + n: ::core::ffi::c_int, + curr: *mut ::core::ffi::c_int, + span: *const ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ArrayGetIntegerTypmods(arr: *mut ArrayType, n: *mut ::core::ffi::c_int) -> *mut int32; + pub fn expand_array( + arraydatum: Datum, + parentcontext: MemoryContext, + metacache: *mut ArrayMetaState, + ) -> Datum; + pub fn DatumGetExpandedArray(d: Datum) -> *mut ExpandedArrayHeader; + pub fn DatumGetExpandedArrayX( + d: Datum, + metacache: *mut ArrayMetaState, + ) -> *mut ExpandedArrayHeader; + pub fn DatumGetAnyArrayP(d: Datum) -> *mut AnyArrayType; + pub fn deconstruct_expanded_array(eah: *mut ExpandedArrayHeader); + pub fn RemoveObjects(stmt: *mut DropStmt); + pub fn DefineIndex( + tableId: Oid, + stmt: *mut IndexStmt, + indexRelationId: Oid, + parentIndexId: Oid, + parentConstraintId: Oid, + total_parts: ::core::ffi::c_int, + is_alter_table: bool, + check_rights: bool, + check_not_in_use: bool, + skip_build: bool, + quiet: bool, + ) -> ObjectAddress; + pub fn ExecReindex(pstate: *mut ParseState, stmt: *const ReindexStmt, isTopLevel: bool); + pub fn makeObjectName( + name1: *const ::core::ffi::c_char, + name2: *const ::core::ffi::c_char, + label: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn ChooseRelationName( + name1: *const ::core::ffi::c_char, + name2: *const ::core::ffi::c_char, + label: *const ::core::ffi::c_char, + namespaceid: Oid, + isconstraint: bool, + ) -> *mut ::core::ffi::c_char; + pub fn CheckIndexCompatible( + oldId: Oid, + accessMethodName: *const ::core::ffi::c_char, + attributeList: *const List, + exclusionOpNames: *const List, + ) -> bool; + pub fn GetDefaultOpClass(type_id: Oid, am_id: Oid) -> Oid; + pub fn ResolveOpClass( + opclass: *const List, + attrType: Oid, + accessMethodName: *const ::core::ffi::c_char, + accessMethodId: Oid, + ) -> Oid; + pub fn CreateFunction(pstate: *mut ParseState, stmt: *mut CreateFunctionStmt) -> ObjectAddress; + pub fn RemoveFunctionById(funcOid: Oid); + pub fn AlterFunction(pstate: *mut ParseState, stmt: *mut AlterFunctionStmt) -> ObjectAddress; + pub fn CreateCast(stmt: *mut CreateCastStmt) -> ObjectAddress; + pub fn CreateTransform(stmt: *mut CreateTransformStmt) -> ObjectAddress; + pub fn IsThereFunctionInNamespace( + proname: *const ::core::ffi::c_char, + pronargs: ::core::ffi::c_int, + proargtypes: *mut oidvector, + nspOid: Oid, + ); + pub fn ExecuteDoStmt(pstate: *mut ParseState, stmt: *mut DoStmt, atomic: bool); + pub fn ExecuteCallStmt( + stmt: *mut CallStmt, + params: ParamListInfo, + atomic: bool, + dest: *mut DestReceiver, + ); + pub fn CallStmtResultDesc(stmt: *mut CallStmt) -> TupleDesc; + pub fn get_transform_oid(type_id: Oid, lang_id: Oid, missing_ok: bool) -> Oid; + pub fn interpret_function_parameter_list( + pstate: *mut ParseState, + parameters: *mut List, + languageOid: Oid, + objtype: ObjectType::Type, + parameterTypes: *mut *mut oidvector, + parameterTypes_list: *mut *mut List, + allParameterTypes: *mut *mut ArrayType, + parameterModes: *mut *mut ArrayType, + parameterNames: *mut *mut ArrayType, + inParameterNames_list: *mut *mut List, + parameterDefaults: *mut *mut List, + variadicArgType: *mut Oid, + requiredResultType: *mut Oid, + ); + pub fn DefineOperator(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn RemoveOperatorById(operOid: Oid); + pub fn AlterOperator(stmt: *mut AlterOperatorStmt) -> ObjectAddress; + pub fn CreateStatistics(stmt: *mut CreateStatsStmt) -> ObjectAddress; + pub fn AlterStatistics(stmt: *mut AlterStatsStmt) -> ObjectAddress; + pub fn RemoveStatisticsById(statsOid: Oid); + pub fn RemoveStatisticsDataById(statsOid: Oid, inh: bool); + pub fn StatisticsGetRelation(statId: Oid, missing_ok: bool) -> Oid; + pub fn DefineAggregate( + pstate: *mut ParseState, + name: *mut List, + args: *mut List, + oldstyle: bool, + parameters: *mut List, + replace: bool, + ) -> ObjectAddress; + pub fn DefineOpClass(stmt: *mut CreateOpClassStmt) -> ObjectAddress; + pub fn DefineOpFamily(stmt: *mut CreateOpFamilyStmt) -> ObjectAddress; + pub fn AlterOpFamily(stmt: *mut AlterOpFamilyStmt) -> Oid; + pub fn IsThereOpClassInNamespace( + opcname: *const ::core::ffi::c_char, + opcmethod: Oid, + opcnamespace: Oid, + ); + pub fn IsThereOpFamilyInNamespace( + opfname: *const ::core::ffi::c_char, + opfmethod: Oid, + opfnamespace: Oid, + ); + pub fn get_opclass_oid(amID: Oid, opclassname: *mut List, missing_ok: bool) -> Oid; + pub fn get_opfamily_oid(amID: Oid, opfamilyname: *mut List, missing_ok: bool) -> Oid; + pub fn DefineTSParser(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn DefineTSDictionary(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn AlterTSDictionary(stmt: *mut AlterTSDictionaryStmt) -> ObjectAddress; + pub fn DefineTSTemplate(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn DefineTSConfiguration( + names: *mut List, + parameters: *mut List, + copied: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn RemoveTSConfigurationById(cfgId: Oid); + pub fn AlterTSConfiguration(stmt: *mut AlterTSConfigurationStmt) -> ObjectAddress; + pub fn serialize_deflist(deflist: *mut List) -> *mut text; + pub fn deserialize_deflist(txt: Datum) -> *mut List; + pub fn AlterForeignServerOwner( + name: *const ::core::ffi::c_char, + newOwnerId: Oid, + ) -> ObjectAddress; + pub fn AlterForeignServerOwner_oid(arg1: Oid, newOwnerId: Oid); + pub fn AlterForeignDataWrapperOwner( + name: *const ::core::ffi::c_char, + newOwnerId: Oid, + ) -> ObjectAddress; + pub fn AlterForeignDataWrapperOwner_oid(fwdId: Oid, newOwnerId: Oid); + pub fn CreateForeignDataWrapper( + pstate: *mut ParseState, + stmt: *mut CreateFdwStmt, + ) -> ObjectAddress; + pub fn AlterForeignDataWrapper( + pstate: *mut ParseState, + stmt: *mut AlterFdwStmt, + ) -> ObjectAddress; + pub fn CreateForeignServer(stmt: *mut CreateForeignServerStmt) -> ObjectAddress; + pub fn AlterForeignServer(stmt: *mut AlterForeignServerStmt) -> ObjectAddress; + pub fn CreateUserMapping(stmt: *mut CreateUserMappingStmt) -> ObjectAddress; + pub fn AlterUserMapping(stmt: *mut AlterUserMappingStmt) -> ObjectAddress; + pub fn RemoveUserMapping(stmt: *mut DropUserMappingStmt) -> Oid; + pub fn CreateForeignTable(stmt: *mut CreateForeignTableStmt, relid: Oid); + pub fn ImportForeignSchema(stmt: *mut ImportForeignSchemaStmt); + pub fn transformGenericOptions( + catalogId: Oid, + oldOptions: Datum, + options: *mut List, + fdwvalidator: Oid, + ) -> Datum; + pub fn CreateAccessMethod(stmt: *mut CreateAmStmt) -> ObjectAddress; + pub fn get_index_am_oid(amname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_table_am_oid(amname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_am_oid(amname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_am_name(amOid: Oid) -> *mut ::core::ffi::c_char; + pub fn defGetString(def: *mut DefElem) -> *mut ::core::ffi::c_char; + pub fn defGetNumeric(def: *mut DefElem) -> f64; + pub fn defGetBoolean(def: *mut DefElem) -> bool; + pub fn defGetInt32(def: *mut DefElem) -> int32; + pub fn defGetInt64(def: *mut DefElem) -> int64; + pub fn defGetObjectId(def: *mut DefElem) -> Oid; + pub fn defGetQualifiedName(def: *mut DefElem) -> *mut List; + pub fn defGetTypeName(def: *mut DefElem) -> *mut TypeName; + pub fn defGetTypeLength(def: *mut DefElem) -> ::core::ffi::c_int; + pub fn defGetStringList(def: *mut DefElem) -> *mut List; + pub fn errorConflictingDefElem(defel: *mut DefElem, pstate: *mut ParseState) -> !; + pub static mut event_triggers: bool; + pub fn CreateEventTrigger(stmt: *mut CreateEventTrigStmt) -> Oid; + pub fn get_event_trigger_oid(trigname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn AlterEventTrigger(stmt: *mut AlterEventTrigStmt) -> Oid; + pub fn AlterEventTriggerOwner( + name: *const ::core::ffi::c_char, + newOwnerId: Oid, + ) -> ObjectAddress; + pub fn AlterEventTriggerOwner_oid(arg1: Oid, newOwnerId: Oid); + pub fn EventTriggerSupportsObjectType(obtype: ObjectType::Type) -> bool; + pub fn EventTriggerSupportsObject(object: *const ObjectAddress) -> bool; + pub fn EventTriggerDDLCommandStart(parsetree: *mut Node); + pub fn EventTriggerDDLCommandEnd(parsetree: *mut Node); + pub fn EventTriggerSQLDrop(parsetree: *mut Node); + pub fn EventTriggerTableRewrite( + parsetree: *mut Node, + tableOid: Oid, + reason: ::core::ffi::c_int, + ); + pub fn EventTriggerOnLogin(); + pub fn EventTriggerBeginCompleteQuery() -> bool; + pub fn EventTriggerEndCompleteQuery(); + pub fn trackDroppedObjectsNeeded() -> bool; + pub fn EventTriggerSQLDropAddObject(object: *const ObjectAddress, original: bool, normal: bool); + pub fn EventTriggerInhibitCommandCollection(); + pub fn EventTriggerUndoInhibitCommandCollection(); + pub fn EventTriggerCollectSimpleCommand( + address: ObjectAddress, + secondaryObject: ObjectAddress, + parsetree: *mut Node, + ); + pub fn EventTriggerAlterTableStart(parsetree: *mut Node); + pub fn EventTriggerAlterTableRelid(objectId: Oid); + pub fn EventTriggerCollectAlterTableSubcmd(subcmd: *mut Node, address: ObjectAddress); + pub fn EventTriggerAlterTableEnd(); + pub fn EventTriggerCollectGrant(istmt: *mut InternalGrant); + pub fn EventTriggerCollectAlterOpFam( + stmt: *mut AlterOpFamilyStmt, + opfamoid: Oid, + operators: *mut List, + procedures: *mut List, + ); + pub fn EventTriggerCollectCreateOpClass( + stmt: *mut CreateOpClassStmt, + opcoid: Oid, + operators: *mut List, + procedures: *mut List, + ); + pub fn EventTriggerCollectAlterTSConfig( + stmt: *mut AlterTSConfigurationStmt, + cfgId: Oid, + dictIds: *mut Oid, + ndicts: ::core::ffi::c_int, + ); + pub fn EventTriggerCollectAlterDefPrivs(stmt: *mut AlterDefaultPrivilegesStmt); + pub static mut ExplainOneQuery_hook: ExplainOneQuery_hook_type; + pub static mut explain_get_index_name_hook: explain_get_index_name_hook_type; + pub fn ExplainQuery( + pstate: *mut ParseState, + stmt: *mut ExplainStmt, + params: ParamListInfo, + dest: *mut DestReceiver, + ); + pub fn standard_ExplainOneQuery( + query: *mut Query, + cursorOptions: ::core::ffi::c_int, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn NewExplainState() -> *mut ExplainState; + pub fn ExplainResultDesc(stmt: *mut ExplainStmt) -> TupleDesc; + pub fn ExplainOneUtility( + utilityStmt: *mut Node, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn ExplainOnePlan( + plannedstmt: *mut PlannedStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + planduration: *const instr_time, + bufusage: *const BufferUsage, + mem_counters: *const MemoryContextCounters, + ); + pub fn ExplainPrintPlan(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainPrintTriggers(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainPrintJITSummary(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainQueryText(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainQueryParameters( + es: *mut ExplainState, + params: ParamListInfo, + maxlen: ::core::ffi::c_int, + ); + pub fn ExplainBeginOutput(es: *mut ExplainState); + pub fn ExplainEndOutput(es: *mut ExplainState); + pub fn ExplainSeparatePlans(es: *mut ExplainState); + pub fn ExplainPropertyList( + qlabel: *const ::core::ffi::c_char, + data: *mut List, + es: *mut ExplainState, + ); + pub fn ExplainPropertyListNested( + qlabel: *const ::core::ffi::c_char, + data: *mut List, + es: *mut ExplainState, + ); + pub fn ExplainPropertyText( + qlabel: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + es: *mut ExplainState, + ); + pub fn ExplainPropertyInteger( + qlabel: *const ::core::ffi::c_char, + unit: *const ::core::ffi::c_char, + value: int64, + es: *mut ExplainState, + ); + pub fn ExplainPropertyUInteger( + qlabel: *const ::core::ffi::c_char, + unit: *const ::core::ffi::c_char, + value: uint64, + es: *mut ExplainState, + ); + pub fn ExplainPropertyFloat( + qlabel: *const ::core::ffi::c_char, + unit: *const ::core::ffi::c_char, + value: f64, + ndigits: ::core::ffi::c_int, + es: *mut ExplainState, + ); + pub fn ExplainPropertyBool( + qlabel: *const ::core::ffi::c_char, + value: bool, + es: *mut ExplainState, + ); + pub fn ExplainOpenGroup( + objtype: *const ::core::ffi::c_char, + labelname: *const ::core::ffi::c_char, + labeled: bool, + es: *mut ExplainState, + ); + pub fn ExplainCloseGroup( + objtype: *const ::core::ffi::c_char, + labelname: *const ::core::ffi::c_char, + labeled: bool, + es: *mut ExplainState, + ); + pub fn CreateExplainSerializeDestReceiver(es: *mut ExplainState) -> *mut DestReceiver; + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_extension_schema(ext_oid: Oid) -> Oid; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn ReleaseAllPlanCacheRefsInOwner(owner: ResourceOwner); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); + pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; + pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn GetSecurityLabel( + object: *const ObjectAddress, + provider: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn SetSecurityLabel( + object: *const ObjectAddress, + provider: *const ::core::ffi::c_char, + label: *const ::core::ffi::c_char, + ); + pub fn DeleteSecurityLabel(object: *const ObjectAddress); + pub fn DeleteSharedSecurityLabel(objectId: Oid, classId: Oid); + pub fn ExecSecLabelStmt(stmt: *mut SecLabelStmt) -> ObjectAddress; + pub fn register_label_provider( + provider_name: *const ::core::ffi::c_char, + hook: check_object_relabel_type, + ); + pub static mut allow_in_place_tablespaces: bool; + pub fn CreateTableSpace(stmt: *mut CreateTableSpaceStmt) -> Oid; + pub fn DropTableSpace(stmt: *mut DropTableSpaceStmt); + pub fn RenameTableSpace( + oldname: *const ::core::ffi::c_char, + newname: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn AlterTableSpaceOptions(stmt: *mut AlterTableSpaceOptionsStmt) -> Oid; + pub fn TablespaceCreateDbspace(spcOid: Oid, dbOid: Oid, isRedo: bool); + pub fn GetDefaultTablespace(relpersistence: ::core::ffi::c_char, partitioned: bool) -> Oid; + pub fn PrepareTempTablespaces(); + pub fn get_tablespace_oid(tablespacename: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_tablespace_name(spc_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn directory_is_empty(path: *const ::core::ffi::c_char) -> bool; + pub fn remove_tablespace_symlink(linkloc: *const ::core::ffi::c_char); + pub fn tblspc_redo(record: *mut XLogReaderState); + pub fn tblspc_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn tblspc_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn DefineRelation( + stmt: *mut CreateStmt, + relkind: ::core::ffi::c_char, + ownerId: Oid, + typaddress: *mut ObjectAddress, + queryString: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn BuildDescForRelation(columns: *const List) -> TupleDesc; + pub fn RemoveRelations(drop: *mut DropStmt); + pub fn AlterTableLookupRelation(stmt: *mut AlterTableStmt, lockmode: LOCKMODE) -> Oid; + pub fn AlterTable( + stmt: *mut AlterTableStmt, + lockmode: LOCKMODE, + context: *mut AlterTableUtilityContext, + ); + pub fn AlterTableGetLockLevel(cmds: *mut List) -> LOCKMODE; + pub fn ATExecChangeOwner( + relationOid: Oid, + newOwnerId: Oid, + recursing: bool, + lockmode: LOCKMODE, + ); + pub fn AlterTableInternal(relid: Oid, cmds: *mut List, recurse: bool); + pub fn AlterTableMoveAll(stmt: *mut AlterTableMoveAllStmt) -> Oid; + pub fn AlterTableNamespace( + stmt: *mut AlterObjectSchemaStmt, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub fn AlterTableNamespaceInternal( + rel: Relation, + oldNspOid: Oid, + nspOid: Oid, + objsMoved: *mut ObjectAddresses, + ); + pub fn AlterRelationNamespaceInternal( + classRel: Relation, + relOid: Oid, + oldNspOid: Oid, + newNspOid: Oid, + hasDependEntry: bool, + objsMoved: *mut ObjectAddresses, + ); + pub fn CheckTableNotInUse(rel: Relation, stmt: *const ::core::ffi::c_char); + pub fn ExecuteTruncate(stmt: *mut TruncateStmt); + pub fn ExecuteTruncateGuts( + explicit_rels: *mut List, + relids: *mut List, + relids_logged: *mut List, + behavior: DropBehavior::Type, + restart_seqs: bool, + run_as_table_owner: bool, + ); + pub fn SetRelationHasSubclass(relationId: Oid, relhassubclass: bool); + pub fn CheckRelationTableSpaceMove(rel: Relation, newTableSpaceId: Oid) -> bool; + pub fn SetRelationTableSpace( + rel: Relation, + newTableSpaceId: Oid, + newRelFilenumber: RelFileNumber, + ); + pub fn renameatt(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn RenameConstraint(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn RenameRelation(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn RenameRelationInternal( + myrelid: Oid, + newrelname: *const ::core::ffi::c_char, + is_internal: bool, + is_index: bool, + ); + pub fn ResetRelRewrite(myrelid: Oid); + pub fn find_composite_type_dependencies( + typeOid: Oid, + origRelation: Relation, + origTypeName: *const ::core::ffi::c_char, + ); + pub fn check_of_type(typetuple: HeapTuple); + pub fn register_on_commit_action(relid: Oid, action: OnCommitAction::Type); + pub fn remove_on_commit_action(relid: Oid); + pub fn PreCommit_on_commit_actions(); + pub fn AtEOXact_on_commit_actions(isCommit: bool); + pub fn AtEOSubXact_on_commit_actions( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub fn RangeVarCallbackMaintainsTable( + relation: *const RangeVar, + relId: Oid, + oldRelId: Oid, + arg: *mut ::core::ffi::c_void, + ); + pub fn RangeVarCallbackOwnsRelation( + relation: *const RangeVar, + relId: Oid, + oldRelId: Oid, + arg: *mut ::core::ffi::c_void, + ); + pub fn PartConstraintImpliedByRelConstraint( + scanrel: Relation, + partConstraint: *mut List, + ) -> bool; + pub static mut SessionReplicationRole: ::core::ffi::c_int; + pub fn CreateTrigger( + stmt: *mut CreateTrigStmt, + queryString: *const ::core::ffi::c_char, + relOid: Oid, + refRelOid: Oid, + constraintOid: Oid, + indexOid: Oid, + funcoid: Oid, + parentTriggerOid: Oid, + whenClause: *mut Node, + isInternal: bool, + in_partition: bool, + ) -> ObjectAddress; + pub fn CreateTriggerFiringOn( + stmt: *mut CreateTrigStmt, + queryString: *const ::core::ffi::c_char, + relOid: Oid, + refRelOid: Oid, + constraintOid: Oid, + indexOid: Oid, + funcoid: Oid, + parentTriggerOid: Oid, + whenClause: *mut Node, + isInternal: bool, + in_partition: bool, + trigger_fires_when: ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn TriggerSetParentTrigger( + trigRel: Relation, + childTrigId: Oid, + parentTrigId: Oid, + childTableId: Oid, + ); + pub fn RemoveTriggerById(trigOid: Oid); + pub fn get_trigger_oid( + relid: Oid, + trigname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> Oid; + pub fn renametrig(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn EnableDisableTrigger( + rel: Relation, + tgname: *const ::core::ffi::c_char, + tgparent: Oid, + fires_when: ::core::ffi::c_char, + skip_system: bool, + recurse: bool, + lockmode: LOCKMODE, + ); + pub fn RelationBuildTriggers(relation: Relation); + pub fn CopyTriggerDesc(trigdesc: *mut TriggerDesc) -> *mut TriggerDesc; + pub fn FindTriggerIncompatibleWithInheritance( + trigdesc: *mut TriggerDesc, + ) -> *const ::core::ffi::c_char; + pub fn MakeTransitionCaptureState( + trigdesc: *mut TriggerDesc, + relid: Oid, + cmdType: CmdType::Type, + ) -> *mut TransitionCaptureState; + pub fn FreeTriggerDesc(trigdesc: *mut TriggerDesc); + pub fn ExecBSInsertTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecBRInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecARInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + recheckIndexes: *mut List, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecIRInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecBSDeleteTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASDeleteTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecBRDeleteTriggers( + estate: *mut EState, + epqstate: *mut EPQState, + relinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + epqslot: *mut *mut TupleTableSlot, + tmresult: *mut TM_Result::Type, + tmfd: *mut TM_FailureData, + ) -> bool; + pub fn ExecARDeleteTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + transition_capture: *mut TransitionCaptureState, + is_crosspart_update: bool, + ); + pub fn ExecIRDeleteTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + trigtuple: HeapTuple, + ) -> bool; + pub fn ExecBSUpdateTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASUpdateTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecBRUpdateTriggers( + estate: *mut EState, + epqstate: *mut EPQState, + relinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + newslot: *mut TupleTableSlot, + tmresult: *mut TM_Result::Type, + tmfd: *mut TM_FailureData, + ) -> bool; + pub fn ExecARUpdateTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + src_partinfo: *mut ResultRelInfo, + dst_partinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + newslot: *mut TupleTableSlot, + recheckIndexes: *mut List, + transition_capture: *mut TransitionCaptureState, + is_crosspart_update: bool, + ); + pub fn ExecIRUpdateTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + trigtuple: HeapTuple, + newslot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecBSTruncateTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASTruncateTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn AfterTriggerBeginXact(); + pub fn AfterTriggerBeginQuery(); + pub fn AfterTriggerEndQuery(estate: *mut EState); + pub fn AfterTriggerFireDeferred(); + pub fn AfterTriggerEndXact(isCommit: bool); + pub fn AfterTriggerBeginSubXact(); + pub fn AfterTriggerEndSubXact(isCommit: bool); + pub fn AfterTriggerSetState(stmt: *mut ConstraintsSetStmt); + pub fn AfterTriggerPendingOnRel(relid: Oid) -> bool; + pub fn RI_FKey_pk_upd_check_required( + trigger: *mut Trigger, + pk_rel: Relation, + oldslot: *mut TupleTableSlot, + newslot: *mut TupleTableSlot, + ) -> bool; + pub fn RI_FKey_fk_upd_check_required( + trigger: *mut Trigger, + fk_rel: Relation, + oldslot: *mut TupleTableSlot, + newslot: *mut TupleTableSlot, + ) -> bool; + pub fn RI_Initial_Check(trigger: *mut Trigger, fk_rel: Relation, pk_rel: Relation) -> bool; + pub fn RI_PartitionRemove_Check(trigger: *mut Trigger, fk_rel: Relation, pk_rel: Relation); + pub fn RI_FKey_trigger_type(tgfoid: Oid) -> ::core::ffi::c_int; + pub fn get_password_type(shadow_pass: *const ::core::ffi::c_char) -> PasswordType::Type; + pub fn encrypt_password( + target_type: PasswordType::Type, + role: *const ::core::ffi::c_char, + password: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn get_role_password( + role: *const ::core::ffi::c_char, + logdetail: *mut *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn md5_crypt_verify( + role: *const ::core::ffi::c_char, + shadow_pass: *const ::core::ffi::c_char, + client_pass: *const ::core::ffi::c_char, + md5_salt: *const ::core::ffi::c_char, + md5_salt_len: ::core::ffi::c_int, + logdetail: *mut *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn plain_crypt_verify( + role: *const ::core::ffi::c_char, + shadow_pass: *const ::core::ffi::c_char, + client_pass: *const ::core::ffi::c_char, + logdetail: *mut *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn ParseConfigFile( + config_file: *const ::core::ffi::c_char, + strict: bool, + calling_file: *const ::core::ffi::c_char, + calling_lineno: ::core::ffi::c_int, + depth: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + head_p: *mut *mut ConfigVariable, + tail_p: *mut *mut ConfigVariable, + ) -> bool; + pub fn ParseConfigFp( + fp: *mut FILE, + config_file: *const ::core::ffi::c_char, + depth: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + head_p: *mut *mut ConfigVariable, + tail_p: *mut *mut ConfigVariable, + ) -> bool; + pub fn ParseConfigDirectory( + includedir: *const ::core::ffi::c_char, + calling_file: *const ::core::ffi::c_char, + calling_lineno: ::core::ffi::c_int, + depth: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + head_p: *mut *mut ConfigVariable, + tail_p: *mut *mut ConfigVariable, + ) -> bool; + pub fn FreeConfigVariables(list: *mut ConfigVariable); + pub fn DeescapeQuotedString(s: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub static mut Debug_print_plan: bool; + pub static mut Debug_print_parse: bool; + pub static mut Debug_print_rewritten: bool; + pub static mut Debug_pretty_print: bool; + pub static mut log_parser_stats: bool; + pub static mut log_planner_stats: bool; + pub static mut log_executor_stats: bool; + pub static mut log_statement_stats: bool; + pub static mut log_btree_build_stats: bool; + pub static mut check_function_bodies: bool; + pub static mut current_role_is_superuser: bool; + pub static mut AllowAlterSystem: bool; + pub static mut log_duration: bool; + pub static mut log_parameter_max_length: ::core::ffi::c_int; + pub static mut log_parameter_max_length_on_error: ::core::ffi::c_int; + pub static mut log_min_error_statement: ::core::ffi::c_int; + pub static mut log_min_messages: ::core::ffi::c_int; + pub static mut client_min_messages: ::core::ffi::c_int; + pub static mut log_min_duration_sample: ::core::ffi::c_int; + pub static mut log_min_duration_statement: ::core::ffi::c_int; + pub static mut log_temp_files: ::core::ffi::c_int; + pub static mut log_statement_sample_rate: f64; + pub static mut log_xact_sample_rate: f64; + pub static mut backtrace_functions: *mut ::core::ffi::c_char; + pub static mut temp_file_limit: ::core::ffi::c_int; + pub static mut num_temp_buffers: ::core::ffi::c_int; + pub static mut cluster_name: *mut ::core::ffi::c_char; + pub static mut ConfigFileName: *mut ::core::ffi::c_char; + pub static mut HbaFileName: *mut ::core::ffi::c_char; + pub static mut IdentFileName: *mut ::core::ffi::c_char; + pub static mut external_pid_file: *mut ::core::ffi::c_char; + pub static mut extension_destdir: *mut ::core::ffi::c_char; + pub static mut application_name: *mut ::core::ffi::c_char; + pub static mut tcp_keepalives_idle: ::core::ffi::c_int; + pub static mut tcp_keepalives_interval: ::core::ffi::c_int; + pub static mut tcp_keepalives_count: ::core::ffi::c_int; + pub static mut tcp_user_timeout: ::core::ffi::c_int; + pub static mut trace_sort: bool; + pub fn SetConfigOption( + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + ); + pub fn DefineCustomBoolVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut bool, + bootValue: bool, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucBoolCheckHook, + assign_hook: GucBoolAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomIntVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut ::core::ffi::c_int, + bootValue: ::core::ffi::c_int, + minValue: ::core::ffi::c_int, + maxValue: ::core::ffi::c_int, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucIntCheckHook, + assign_hook: GucIntAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomRealVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut f64, + bootValue: f64, + minValue: f64, + maxValue: f64, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucRealCheckHook, + assign_hook: GucRealAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomStringVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut *mut ::core::ffi::c_char, + bootValue: *const ::core::ffi::c_char, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucStringCheckHook, + assign_hook: GucStringAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomEnumVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut ::core::ffi::c_int, + bootValue: ::core::ffi::c_int, + options: *const config_enum_entry, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucEnumCheckHook, + assign_hook: GucEnumAssignHook, + show_hook: GucShowHook, + ); + pub fn MarkGUCPrefixReserved(className: *const ::core::ffi::c_char); + pub fn GetConfigOption( + name: *const ::core::ffi::c_char, + missing_ok: bool, + restrict_privileged: bool, + ) -> *const ::core::ffi::c_char; + pub fn GetConfigOptionResetString( + name: *const ::core::ffi::c_char, + ) -> *const ::core::ffi::c_char; + pub fn GetConfigOptionFlags( + name: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> ::core::ffi::c_int; + pub fn ProcessConfigFile(context: GucContext::Type); + pub fn convert_GUC_name_for_parameter_acl( + name: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn check_GUC_name_for_parameter_acl(name: *const ::core::ffi::c_char); + pub fn InitializeGUCOptions(); + pub fn SelectConfigFiles( + userDoption: *const ::core::ffi::c_char, + progname: *const ::core::ffi::c_char, + ) -> bool; + pub fn ResetAllOptions(); + pub fn AtStart_GUC(); + pub fn NewGUCNestLevel() -> ::core::ffi::c_int; + pub fn RestrictSearchPath(); + pub fn AtEOXact_GUC(isCommit: bool, nestLevel: ::core::ffi::c_int); + pub fn BeginReportingGUCOptions(); + pub fn ReportChangedGUCOptions(); + pub fn ParseLongOption( + string: *const ::core::ffi::c_char, + name: *mut *mut ::core::ffi::c_char, + value: *mut *mut ::core::ffi::c_char, + ); + pub fn get_config_unit_name(flags: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn parse_int( + value: *const ::core::ffi::c_char, + result: *mut ::core::ffi::c_int, + flags: ::core::ffi::c_int, + hintmsg: *mut *const ::core::ffi::c_char, + ) -> bool; + pub fn parse_real( + value: *const ::core::ffi::c_char, + result: *mut f64, + flags: ::core::ffi::c_int, + hintmsg: *mut *const ::core::ffi::c_char, + ) -> bool; + pub fn set_config_option( + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + action: GucAction::Type, + changeVal: bool, + elevel: ::core::ffi::c_int, + is_reload: bool, + ) -> ::core::ffi::c_int; + pub fn set_config_option_ext( + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + srole: Oid, + action: GucAction::Type, + changeVal: bool, + elevel: ::core::ffi::c_int, + is_reload: bool, + ) -> ::core::ffi::c_int; + pub fn set_config_with_handle( + name: *const ::core::ffi::c_char, + handle: *mut config_handle, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + srole: Oid, + action: GucAction::Type, + changeVal: bool, + elevel: ::core::ffi::c_int, + is_reload: bool, + ) -> ::core::ffi::c_int; + pub fn get_config_handle(name: *const ::core::ffi::c_char) -> *mut config_handle; + pub fn AlterSystemSetConfigFile(altersysstmt: *mut AlterSystemStmt); + pub fn GetConfigOptionByName( + name: *const ::core::ffi::c_char, + varname: *mut *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn TransformGUCArray(array: *mut ArrayType, names: *mut *mut List, values: *mut *mut List); + pub fn ProcessGUCArray( + array: *mut ArrayType, + context: GucContext::Type, + source: GucSource::Type, + action: GucAction::Type, + ); + pub fn GUCArrayAdd( + array: *mut ArrayType, + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn GUCArrayDelete( + array: *mut ArrayType, + name: *const ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn GUCArrayReset(array: *mut ArrayType) -> *mut ArrayType; + pub fn guc_malloc(elevel: ::core::ffi::c_int, size: usize) -> *mut ::core::ffi::c_void; + pub fn guc_realloc( + elevel: ::core::ffi::c_int, + old: *mut ::core::ffi::c_void, + size: usize, + ) -> *mut ::core::ffi::c_void; + pub fn guc_strdup( + elevel: ::core::ffi::c_int, + src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn guc_free(ptr: *mut ::core::ffi::c_void); + pub fn EstimateGUCStateSpace() -> Size; + pub fn SerializeGUCState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreGUCState(gucstate: *mut ::core::ffi::c_void); + pub fn ExecSetVariableStmt(stmt: *mut VariableSetStmt, isTopLevel: bool); + pub fn ExtractSetVariableArgs(stmt: *mut VariableSetStmt) -> *mut ::core::ffi::c_char; + pub fn SetPGVariable(name: *const ::core::ffi::c_char, args: *mut List, is_local: bool); + pub fn GetPGVariable(name: *const ::core::ffi::c_char, dest: *mut DestReceiver); + pub fn GetPGVariableResultDesc(name: *const ::core::ffi::c_char) -> TupleDesc; + pub static mut GUC_check_errmsg_string: *mut ::core::ffi::c_char; + pub static mut GUC_check_errdetail_string: *mut ::core::ffi::c_char; + pub static mut GUC_check_errhint_string: *mut ::core::ffi::c_char; + pub fn GUC_check_errcode(sqlerrcode: ::core::ffi::c_int); + pub static mut Password_encryption: ::core::ffi::c_int; + pub static mut createrole_self_grant: *mut ::core::ffi::c_char; + pub static mut check_password_hook: check_password_hook_type; + pub fn CreateRole(pstate: *mut ParseState, stmt: *mut CreateRoleStmt) -> Oid; + pub fn AlterRole(pstate: *mut ParseState, stmt: *mut AlterRoleStmt) -> Oid; + pub fn AlterRoleSet(stmt: *mut AlterRoleSetStmt) -> Oid; + pub fn DropRole(stmt: *mut DropRoleStmt); + pub fn GrantRole(pstate: *mut ParseState, stmt: *mut GrantRoleStmt); + pub fn RenameRole( + oldname: *const ::core::ffi::c_char, + newname: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn DropOwnedObjects(stmt: *mut DropOwnedStmt); + pub fn ReassignOwnedObjects(stmt: *mut ReassignOwnedStmt); + pub fn roleSpecsToIds(memberNames: *mut List) -> *mut List; + pub fn check_createrole_self_grant( + newval: *mut *mut ::core::ffi::c_char, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool; + pub fn assign_createrole_self_grant( + newval: *const ::core::ffi::c_char, + extra: *mut ::core::ffi::c_void, + ); + pub fn RegisterBackgroundWorker(worker: *mut BackgroundWorker); + pub fn RegisterDynamicBackgroundWorker( + worker: *mut BackgroundWorker, + handle: *mut *mut BackgroundWorkerHandle, + ) -> bool; + pub fn GetBackgroundWorkerPid( + handle: *mut BackgroundWorkerHandle, + pidp: *mut pid_t, + ) -> BgwHandleStatus::Type; + pub fn WaitForBackgroundWorkerStartup( + handle: *mut BackgroundWorkerHandle, + pidp: *mut pid_t, + ) -> BgwHandleStatus::Type; + pub fn WaitForBackgroundWorkerShutdown( + arg1: *mut BackgroundWorkerHandle, + ) -> BgwHandleStatus::Type; + pub fn GetBackgroundWorkerTypeByPid(pid: pid_t) -> *const ::core::ffi::c_char; + pub fn TerminateBackgroundWorker(handle: *mut BackgroundWorkerHandle); + pub static mut MyBgworkerEntry: *mut BackgroundWorker; + pub fn BackgroundWorkerInitializeConnection( + dbname: *const ::core::ffi::c_char, + username: *const ::core::ffi::c_char, + flags: uint32, + ); + pub fn BackgroundWorkerInitializeConnectionByOid(dboid: Oid, useroid: Oid, flags: uint32); + pub fn BackgroundWorkerBlockSignals(); + pub fn BackgroundWorkerUnblockSignals(); + pub fn TransactionIdSetTreeStatus( + xid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + status: XidStatus, + lsn: XLogRecPtr, + ); + pub fn TransactionIdGetStatus(xid: TransactionId, lsn: *mut XLogRecPtr) -> XidStatus; + pub fn CLOGShmemSize() -> Size; + pub fn CLOGShmemInit(); + pub fn BootStrapCLOG(); + pub fn StartupCLOG(); + pub fn TrimCLOG(); + pub fn CheckPointCLOG(); + pub fn ExtendCLOG(newestXact: TransactionId); + pub fn TruncateCLOG(oldestXact: TransactionId, oldestxid_datoid: Oid); + pub fn clogsyncfiletag( + ftag: *const FileTag, + path: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn clog_redo(record: *mut XLogReaderState); + pub fn clog_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn clog_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn InitializeLatchSupport(); + pub fn InitLatch(latch: *mut Latch); + pub fn InitSharedLatch(latch: *mut Latch); + pub fn OwnLatch(latch: *mut Latch); + pub fn DisownLatch(latch: *mut Latch); + pub fn SetLatch(latch: *mut Latch); + pub fn ResetLatch(latch: *mut Latch); + pub fn ShutdownLatchSupport(); + pub fn CreateWaitEventSet( + resowner: ResourceOwner, + nevents: ::core::ffi::c_int, + ) -> *mut WaitEventSet; + pub fn FreeWaitEventSet(set: *mut WaitEventSet); + pub fn FreeWaitEventSetAfterFork(set: *mut WaitEventSet); + pub fn AddWaitEventToSet( + set: *mut WaitEventSet, + events: uint32, + fd: pgsocket, + latch: *mut Latch, + user_data: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn ModifyWaitEvent( + set: *mut WaitEventSet, + pos: ::core::ffi::c_int, + events: uint32, + latch: *mut Latch, + ); + pub fn WaitEventSetWait( + set: *mut WaitEventSet, + timeout: ::core::ffi::c_long, + occurred_events: *mut WaitEvent, + nevents: ::core::ffi::c_int, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn WaitLatch( + latch: *mut Latch, + wakeEvents: ::core::ffi::c_int, + timeout: ::core::ffi::c_long, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn WaitLatchOrSocket( + latch: *mut Latch, + wakeEvents: ::core::ffi::c_int, + sock: pgsocket, + timeout: ::core::ffi::c_long, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn InitializeLatchWaitSet(); + pub fn GetNumRegisteredWaitEvents(set: *mut WaitEventSet) -> ::core::ffi::c_int; + pub fn WaitEventSetCanReportClosed() -> bool; + pub fn PGSemaphoreShmemSize(maxSemas: ::core::ffi::c_int) -> Size; + pub fn PGReserveSemaphores(maxSemas: ::core::ffi::c_int); + pub fn PGSemaphoreCreate() -> PGSemaphore; + pub fn PGSemaphoreReset(sema: PGSemaphore); + pub fn PGSemaphoreLock(sema: PGSemaphore); + pub fn PGSemaphoreUnlock(sema: PGSemaphore); + pub fn PGSemaphoreTryLock(sema: PGSemaphore) -> bool; + pub static mut MyProc: *mut PGPROC; + pub static mut ProcGlobal: *mut PROC_HDR; + pub static mut PreparedXactProcs: *mut PGPROC; + pub static mut DeadlockTimeout: ::core::ffi::c_int; + pub static mut StatementTimeout: ::core::ffi::c_int; + pub static mut LockTimeout: ::core::ffi::c_int; + pub static mut IdleInTransactionSessionTimeout: ::core::ffi::c_int; + pub static mut TransactionTimeout: ::core::ffi::c_int; + pub static mut IdleSessionTimeout: ::core::ffi::c_int; + pub static mut log_lock_waits: bool; + pub fn ProcGlobalSemas() -> ::core::ffi::c_int; + pub fn ProcGlobalShmemSize() -> Size; + pub fn InitProcGlobal(); + pub fn InitProcess(); + pub fn InitProcessPhase2(); + pub fn InitAuxiliaryProcess(); + pub fn SetStartupBufferPinWaitBufId(bufid: ::core::ffi::c_int); + pub fn GetStartupBufferPinWaitBufId() -> ::core::ffi::c_int; + pub fn HaveNFreeProcs(n: ::core::ffi::c_int, nfree: *mut ::core::ffi::c_int) -> bool; + pub fn ProcReleaseLocks(isCommit: bool); + pub fn ProcSleep( + locallock: *mut LOCALLOCK, + lockMethodTable: LockMethod, + dontWait: bool, + ) -> ProcWaitStatus::Type; + pub fn ProcWakeup(proc_: *mut PGPROC, waitStatus: ProcWaitStatus::Type); + pub fn ProcLockWakeup(lockMethodTable: LockMethod, lock: *mut LOCK); + pub fn CheckDeadLockAlert(); + pub fn IsWaitingForLock() -> bool; + pub fn LockErrorCleanup(); + pub fn ProcWaitForSignal(wait_event_info: uint32); + pub fn ProcSendSignal(procNumber: ProcNumber); + pub fn AuxiliaryPidGetProc(pid: ::core::ffi::c_int) -> *mut PGPROC; + pub fn BecomeLockGroupLeader(); + pub fn BecomeLockGroupMember(leader: *mut PGPROC, pid: ::core::ffi::c_int) -> bool; + pub fn shm_mq_create(address: *mut ::core::ffi::c_void, size: Size) -> *mut shm_mq; + pub fn shm_mq_set_receiver(mq: *mut shm_mq, arg1: *mut PGPROC); + pub fn shm_mq_set_sender(mq: *mut shm_mq, arg1: *mut PGPROC); + pub fn shm_mq_get_receiver(arg1: *mut shm_mq) -> *mut PGPROC; + pub fn shm_mq_get_sender(arg1: *mut shm_mq) -> *mut PGPROC; + pub fn shm_mq_attach( + mq: *mut shm_mq, + seg: *mut dsm_segment, + handle: *mut BackgroundWorkerHandle, + ) -> *mut shm_mq_handle; + pub fn shm_mq_set_handle(arg1: *mut shm_mq_handle, arg2: *mut BackgroundWorkerHandle); + pub fn shm_mq_detach(mqh: *mut shm_mq_handle); + pub fn shm_mq_get_queue(mqh: *mut shm_mq_handle) -> *mut shm_mq; + pub fn shm_mq_send( + mqh: *mut shm_mq_handle, + nbytes: Size, + data: *const ::core::ffi::c_void, + nowait: bool, + force_flush: bool, + ) -> shm_mq_result::Type; + pub fn shm_mq_sendv( + mqh: *mut shm_mq_handle, + iov: *mut shm_mq_iovec, + iovcnt: ::core::ffi::c_int, + nowait: bool, + force_flush: bool, + ) -> shm_mq_result::Type; + pub fn shm_mq_receive( + mqh: *mut shm_mq_handle, + nbytesp: *mut Size, + datap: *mut *mut ::core::ffi::c_void, + nowait: bool, + ) -> shm_mq_result::Type; + pub fn shm_mq_wait_for_attach(mqh: *mut shm_mq_handle) -> shm_mq_result::Type; + pub static shm_mq_minimum_size: Size; + pub static mut ParallelMessagePending: sig_atomic_t; + pub static mut ParallelWorkerNumber: ::core::ffi::c_int; + pub static mut InitializingParallelWorker: bool; + pub fn CreateParallelContext( + library_name: *const ::core::ffi::c_char, + function_name: *const ::core::ffi::c_char, + nworkers: ::core::ffi::c_int, + ) -> *mut ParallelContext; + pub fn InitializeParallelDSM(pcxt: *mut ParallelContext); + pub fn ReinitializeParallelDSM(pcxt: *mut ParallelContext); + pub fn ReinitializeParallelWorkers( + pcxt: *mut ParallelContext, + nworkers_to_launch: ::core::ffi::c_int, + ); + pub fn LaunchParallelWorkers(pcxt: *mut ParallelContext); + pub fn WaitForParallelWorkersToAttach(pcxt: *mut ParallelContext); + pub fn WaitForParallelWorkersToFinish(pcxt: *mut ParallelContext); + pub fn DestroyParallelContext(pcxt: *mut ParallelContext); + pub fn ParallelContextActive() -> bool; + pub fn HandleParallelMessageInterrupt(); + pub fn HandleParallelMessages(); + pub fn AtEOXact_Parallel(isCommit: bool); + pub fn AtEOSubXact_Parallel(isCommit: bool, mySubId: SubTransactionId); + pub fn ParallelWorkerReportLastRecEnd(last_xlog_end: XLogRecPtr); + pub fn ParallelWorkerMain(main_arg: Datum); + pub fn TidStoreCreateLocal(max_bytes: usize, insert_only: bool) -> *mut TidStore; + pub fn TidStoreCreateShared(max_bytes: usize, tranche_id: ::core::ffi::c_int) -> *mut TidStore; + pub fn TidStoreAttach(area_handle: dsa_handle, handle: dsa_pointer) -> *mut TidStore; + pub fn TidStoreDetach(ts: *mut TidStore); + pub fn TidStoreLockExclusive(ts: *mut TidStore); + pub fn TidStoreLockShare(ts: *mut TidStore); + pub fn TidStoreUnlock(ts: *mut TidStore); + pub fn TidStoreDestroy(ts: *mut TidStore); + pub fn TidStoreSetBlockOffsets( + ts: *mut TidStore, + blkno: BlockNumber, + offsets: *mut OffsetNumber, + num_offsets: ::core::ffi::c_int, + ); + pub fn TidStoreIsMember(ts: *mut TidStore, tid: ItemPointer) -> bool; + pub fn TidStoreBeginIterate(ts: *mut TidStore) -> *mut TidStoreIter; + pub fn TidStoreIterateNext(iter: *mut TidStoreIter) -> *mut TidStoreIterResult; + pub fn TidStoreEndIterate(iter: *mut TidStoreIter); + pub fn TidStoreMemoryUsage(ts: *mut TidStore) -> usize; + pub fn TidStoreGetHandle(ts: *mut TidStore) -> dsa_pointer; + pub fn TidStoreGetDSA(ts: *mut TidStore) -> *mut dsa_area; + pub static mut default_statistics_target: ::core::ffi::c_int; + pub static mut vacuum_freeze_min_age: ::core::ffi::c_int; + pub static mut vacuum_freeze_table_age: ::core::ffi::c_int; + pub static mut vacuum_multixact_freeze_min_age: ::core::ffi::c_int; + pub static mut vacuum_multixact_freeze_table_age: ::core::ffi::c_int; + pub static mut vacuum_failsafe_age: ::core::ffi::c_int; + pub static mut vacuum_multixact_failsafe_age: ::core::ffi::c_int; + pub static mut VacuumSharedCostBalance: *mut pg_atomic_uint32; + pub static mut VacuumActiveNWorkers: *mut pg_atomic_uint32; + pub static mut VacuumCostBalanceLocal: ::core::ffi::c_int; + pub static mut VacuumFailsafeActive: bool; + pub static mut vacuum_cost_delay: f64; + pub static mut vacuum_cost_limit: ::core::ffi::c_int; + pub fn ExecVacuum(pstate: *mut ParseState, vacstmt: *mut VacuumStmt, isTopLevel: bool); + pub fn vacuum( + relations: *mut List, + params: *mut VacuumParams, + bstrategy: BufferAccessStrategy, + vac_context: MemoryContext, + isTopLevel: bool, + ); + pub fn vac_open_indexes( + relation: Relation, + lockmode: LOCKMODE, + nindexes: *mut ::core::ffi::c_int, + Irel: *mut *mut Relation, + ); + pub fn vac_close_indexes(nindexes: ::core::ffi::c_int, Irel: *mut Relation, lockmode: LOCKMODE); + pub fn vac_estimate_reltuples( + relation: Relation, + total_pages: BlockNumber, + scanned_pages: BlockNumber, + scanned_tuples: f64, + ) -> f64; + pub fn vac_update_relstats( + relation: Relation, + num_pages: BlockNumber, + num_tuples: f64, + num_all_visible_pages: BlockNumber, + hasindex: bool, + frozenxid: TransactionId, + minmulti: MultiXactId, + frozenxid_updated: *mut bool, + minmulti_updated: *mut bool, + in_outer_xact: bool, + ); + pub fn vacuum_get_cutoffs( + rel: Relation, + params: *const VacuumParams, + cutoffs: *mut VacuumCutoffs, + ) -> bool; + pub fn vacuum_xid_failsafe_check(cutoffs: *const VacuumCutoffs) -> bool; + pub fn vac_update_datfrozenxid(); + pub fn vacuum_delay_point(); + pub fn vacuum_is_permitted_for_relation( + relid: Oid, + reltuple: Form_pg_class, + options: bits32, + ) -> bool; + pub fn vacuum_open_relation( + relid: Oid, + relation: *mut RangeVar, + options: bits32, + verbose: bool, + lmode: LOCKMODE, + ) -> Relation; + pub fn vac_bulkdel_one_index( + ivinfo: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + dead_items: *mut TidStore, + dead_items_info: *mut VacDeadItemsInfo, + ) -> *mut IndexBulkDeleteResult; + pub fn vac_cleanup_one_index( + ivinfo: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult; + pub fn AutoVacuumUpdateCostLimit(); + pub fn VacuumUpdateCosts(); + pub fn parallel_vacuum_init( + rel: Relation, + indrels: *mut Relation, + nindexes: ::core::ffi::c_int, + nrequested_workers: ::core::ffi::c_int, + vac_work_mem: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + bstrategy: BufferAccessStrategy, + ) -> *mut ParallelVacuumState; + pub fn parallel_vacuum_end( + pvs: *mut ParallelVacuumState, + istats: *mut *mut IndexBulkDeleteResult, + ); + pub fn parallel_vacuum_get_dead_items( + pvs: *mut ParallelVacuumState, + dead_items_info_p: *mut *mut VacDeadItemsInfo, + ) -> *mut TidStore; + pub fn parallel_vacuum_reset_dead_items(pvs: *mut ParallelVacuumState); + pub fn parallel_vacuum_bulkdel_all_indexes( + pvs: *mut ParallelVacuumState, + num_table_tuples: ::core::ffi::c_long, + num_index_scans: ::core::ffi::c_int, + ); + pub fn parallel_vacuum_cleanup_all_indexes( + pvs: *mut ParallelVacuumState, + num_table_tuples: ::core::ffi::c_long, + num_index_scans: ::core::ffi::c_int, + estimated_count: bool, + ); + pub fn parallel_vacuum_main(seg: *mut dsm_segment, toc: *mut shm_toc); + pub fn analyze_rel( + relid: Oid, + relation: *mut RangeVar, + params: *mut VacuumParams, + va_cols: *mut List, + in_outer_xact: bool, + bstrategy: BufferAccessStrategy, + ); + pub fn std_typanalyze(stats: *mut VacAttrStats) -> bool; + pub fn anl_random_fract() -> f64; + pub fn anl_init_selection_state(n: ::core::ffi::c_int) -> f64; + pub fn anl_get_next_S(t: f64, n: ::core::ffi::c_int, stateptr: *mut f64) -> f64; + pub fn get_configdata( + my_exec_path: *const ::core::ffi::c_char, + configdata_len: *mut usize, + ) -> *mut ConfigData; + pub fn get_controlfile( + DataDir: *const ::core::ffi::c_char, + crc_ok_p: *mut bool, + ) -> *mut ControlFileData; + pub fn get_controlfile_by_exact_path( + ControlFilePath: *const ::core::ffi::c_char, + crc_ok_p: *mut bool, + ) -> *mut ControlFileData; + pub fn update_controlfile( + DataDir: *const ::core::ffi::c_char, + ControlFile: *mut ControlFileData, + do_sync: bool, + ); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::core::ffi::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size( + numTrans: ::core::ffi::c_int, + tupleWidth: Size, + transitionSpace: Size, + ) -> Size; + pub fn hash_agg_set_limits( + hashentrysize: f64, + input_groups: f64, + used_bits: ::core::ffi::c_int, + mem_limit: *mut Size, + ngroups_limit: *mut uint64, + num_partitions: *mut ::core::ffi::c_int, + ); + pub fn ExecAggEstimate(node: *mut AggState, pcxt: *mut ParallelContext); + pub fn ExecAggInitializeDSM(node: *mut AggState, pcxt: *mut ParallelContext); + pub fn ExecAggInitializeWorker(node: *mut AggState, pwcxt: *mut ParallelWorkerContext); + pub fn ExecAggRetrieveInstrumentation(node: *mut AggState); + pub fn ExprEvalPushStep(es: *mut ExprState, s: *const ExprEvalStep); + pub fn ExecReadyInterpretedExpr(state: *mut ExprState); + pub fn ExecEvalStepOp(state: *mut ExprState, op: *mut ExprEvalStep) -> ExprEvalOp::Type; + pub fn ExecInterpExprStillValid( + state: *mut ExprState, + econtext: *mut ExprContext, + isNull: *mut bool, + ) -> Datum; + pub fn CheckExprStillValid(state: *mut ExprState, econtext: *mut ExprContext); + pub fn ExecEvalFuncExprFusage( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalFuncExprStrictFusage( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalParamExec( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalParamExtern( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalCoerceViaIOSafe(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSQLValueFunction(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalCurrentOfExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalNextValueExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalRowNull( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalRowNotNull( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalArrayExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalArrayCoerce( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalRow(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalMinMax(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalFieldSelect( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalFieldStoreDeForm( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalFieldStoreForm( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalConvertRowtype( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalScalarArrayOp(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalHashedScalarArrayOp( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalConstraintNotNull(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalConstraintCheck(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalXmlExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalJsonConstructor( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalJsonIsPredicate(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalJsonExprPath( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ) -> ::core::ffi::c_int; + pub fn ExecEvalJsonCoercion( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalJsonCoercionFinish(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalMergeSupportFunc( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalSubPlan( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalWholeRowVar( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalSysVar( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + slot: *mut TupleTableSlot, + ); + pub fn ExecAggInitGroup( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + pergroup: AggStatePerGroup, + aggcontext: *mut ExprContext, + ); + pub fn ExecAggCopyTransValue( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + newValue: Datum, + newValueIsNull: bool, + oldValue: Datum, + oldValueIsNull: bool, + ) -> Datum; + pub fn ExecEvalPreOrderedDistinctSingle( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + ) -> bool; + pub fn ExecEvalPreOrderedDistinctMulti( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + ) -> bool; + pub fn ExecEvalAggOrderedTransDatum( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalAggOrderedTransTuple( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub static mut backslash_quote: ::core::ffi::c_int; + pub static mut escape_string_warning: bool; + pub static mut standard_conforming_strings: bool; + pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; + pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; + pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; + pub fn EnablePortalManager(); + pub fn PreCommit_Portals(isPrepare: bool) -> bool; + pub fn AtAbort_Portals(); + pub fn AtCleanup_Portals(); + pub fn PortalErrorCleanup(); + pub fn AtSubCommit_Portals( + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + parentLevel: ::core::ffi::c_int, + parentXactOwner: ResourceOwner, + ); + pub fn AtSubAbort_Portals( + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + myXactOwner: ResourceOwner, + parentXactOwner: ResourceOwner, + ); + pub fn AtSubCleanup_Portals(mySubid: SubTransactionId); + pub fn CreatePortal( + name: *const ::core::ffi::c_char, + allowDup: bool, + dupSilent: bool, + ) -> Portal; + pub fn CreateNewPortal() -> Portal; + pub fn PinPortal(portal: Portal); + pub fn UnpinPortal(portal: Portal); + pub fn MarkPortalActive(portal: Portal); + pub fn MarkPortalDone(portal: Portal); + pub fn MarkPortalFailed(portal: Portal); + pub fn PortalDrop(portal: Portal, isTopCommit: bool); + pub fn GetPortalByName(name: *const ::core::ffi::c_char) -> Portal; + pub fn PortalDefineQuery( + portal: Portal, + prepStmtName: *const ::core::ffi::c_char, + sourceText: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + stmts: *mut List, + cplan: *mut CachedPlan, + ); + pub fn PortalGetPrimaryStmt(portal: Portal) -> *mut PlannedStmt; + pub fn PortalCreateHoldStore(portal: Portal); + pub fn PortalHashTableDeleteAll(); + pub fn ThereAreNoReadyPortals() -> bool; + pub fn HoldPinnedPortals(); + pub fn ForgetPortalSnapshots(); + pub static mut SPI_processed: uint64; + pub static mut SPI_tuptable: *mut SPITupleTable; + pub static mut SPI_result: ::core::ffi::c_int; + pub fn SPI_connect() -> ::core::ffi::c_int; + pub fn SPI_connect_ext(options: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn SPI_finish() -> ::core::ffi::c_int; + pub fn SPI_execute( + src: *const ::core::ffi::c_char, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_extended( + src: *const ::core::ffi::c_char, + options: *const SPIExecuteOptions, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_plan( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_plan_extended( + plan: SPIPlanPtr, + options: *const SPIExecuteOptions, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_plan_with_paramlist( + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_exec( + src: *const ::core::ffi::c_char, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execp( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_snapshot( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + snapshot: Snapshot, + crosscheck_snapshot: Snapshot, + read_only: bool, + fire_triggers: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_with_args( + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_prepare( + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + ) -> SPIPlanPtr; + pub fn SPI_prepare_cursor( + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + cursorOptions: ::core::ffi::c_int, + ) -> SPIPlanPtr; + pub fn SPI_prepare_extended( + src: *const ::core::ffi::c_char, + options: *const SPIPrepareOptions, + ) -> SPIPlanPtr; + pub fn SPI_prepare_params( + src: *const ::core::ffi::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursorOptions: ::core::ffi::c_int, + ) -> SPIPlanPtr; + pub fn SPI_keepplan(plan: SPIPlanPtr) -> ::core::ffi::c_int; + pub fn SPI_saveplan(plan: SPIPlanPtr) -> SPIPlanPtr; + pub fn SPI_freeplan(plan: SPIPlanPtr) -> ::core::ffi::c_int; + pub fn SPI_getargtypeid(plan: SPIPlanPtr, argIndex: ::core::ffi::c_int) -> Oid; + pub fn SPI_getargcount(plan: SPIPlanPtr) -> ::core::ffi::c_int; + pub fn SPI_is_cursor_plan(plan: SPIPlanPtr) -> bool; + pub fn SPI_plan_is_valid(plan: SPIPlanPtr) -> bool; + pub fn SPI_result_code_string(code: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn SPI_plan_get_plan_sources(plan: SPIPlanPtr) -> *mut List; + pub fn SPI_plan_get_cached_plan(plan: SPIPlanPtr) -> *mut CachedPlan; + pub fn SPI_copytuple(tuple: HeapTuple) -> HeapTuple; + pub fn SPI_returntuple(tuple: HeapTuple, tupdesc: TupleDesc) -> HeapTupleHeader; + pub fn SPI_modifytuple( + rel: Relation, + tuple: HeapTuple, + natts: ::core::ffi::c_int, + attnum: *mut ::core::ffi::c_int, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + ) -> HeapTuple; + pub fn SPI_fnumber(tupdesc: TupleDesc, fname: *const ::core::ffi::c_char) + -> ::core::ffi::c_int; + pub fn SPI_fname(tupdesc: TupleDesc, fnumber: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn SPI_getvalue( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn SPI_getbinval( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn SPI_gettype(tupdesc: TupleDesc, fnumber: ::core::ffi::c_int) + -> *mut ::core::ffi::c_char; + pub fn SPI_gettypeid(tupdesc: TupleDesc, fnumber: ::core::ffi::c_int) -> Oid; + pub fn SPI_getrelname(rel: Relation) -> *mut ::core::ffi::c_char; + pub fn SPI_getnspname(rel: Relation) -> *mut ::core::ffi::c_char; + pub fn SPI_palloc(size: Size) -> *mut ::core::ffi::c_void; + pub fn SPI_repalloc(pointer: *mut ::core::ffi::c_void, size: Size) -> *mut ::core::ffi::c_void; + pub fn SPI_pfree(pointer: *mut ::core::ffi::c_void); + pub fn SPI_datumTransfer(value: Datum, typByVal: bool, typLen: ::core::ffi::c_int) -> Datum; + pub fn SPI_freetuple(tuple: HeapTuple); + pub fn SPI_freetuptable(tuptable: *mut SPITupleTable); + pub fn SPI_cursor_open( + name: *const ::core::ffi::c_char, + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_open_with_args( + name: *const ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + cursorOptions: ::core::ffi::c_int, + ) -> Portal; + pub fn SPI_cursor_open_with_paramlist( + name: *const ::core::ffi::c_char, + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_parse_open( + name: *const ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + options: *const SPIParseOpenOptions, + ) -> Portal; + pub fn SPI_cursor_find(name: *const ::core::ffi::c_char) -> Portal; + pub fn SPI_cursor_fetch(portal: Portal, forward: bool, count: ::core::ffi::c_long); + pub fn SPI_cursor_move(portal: Portal, forward: bool, count: ::core::ffi::c_long); + pub fn SPI_scroll_cursor_fetch( + arg1: Portal, + direction: FetchDirection::Type, + count: ::core::ffi::c_long, + ); + pub fn SPI_scroll_cursor_move( + arg1: Portal, + direction: FetchDirection::Type, + count: ::core::ffi::c_long, + ); + pub fn SPI_cursor_close(portal: Portal); + pub fn SPI_register_relation(enr: EphemeralNamedRelation) -> ::core::ffi::c_int; + pub fn SPI_unregister_relation(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn SPI_register_trigger_data(tdata: *mut TriggerData) -> ::core::ffi::c_int; + pub fn SPI_start_transaction(); + pub fn SPI_commit(); + pub fn SPI_commit_and_chain(); + pub fn SPI_rollback(); + pub fn SPI_rollback_and_chain(); + pub fn AtEOXact_SPI(isCommit: bool); + pub fn AtEOSubXact_SPI(isCommit: bool, mySubid: SubTransactionId); + pub fn SPI_inside_nonatomic_context() -> bool; + pub fn is_dummy_rel(rel: *mut RelOptInfo) -> bool; + pub fn GetFdwRoutine(fdwhandler: Oid) -> *mut FdwRoutine; + pub fn GetForeignServerIdByRelId(relid: Oid) -> Oid; + pub fn GetFdwRoutineByServerId(serverid: Oid) -> *mut FdwRoutine; + pub fn GetFdwRoutineByRelId(relid: Oid) -> *mut FdwRoutine; + pub fn GetFdwRoutineForRelation(relation: Relation, makecopy: bool) -> *mut FdwRoutine; + pub fn IsImportableForeignTable( + tablename: *const ::core::ffi::c_char, + stmt: *mut ImportForeignSchemaStmt, + ) -> bool; + pub fn GetExistingLocalJoinPath(joinrel: *mut RelOptInfo) -> *mut Path; + pub fn GetForeignServer(serverid: Oid) -> *mut ForeignServer; + pub fn GetForeignServerExtended(serverid: Oid, flags: bits16) -> *mut ForeignServer; + pub fn GetForeignServerByName( + srvname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut ForeignServer; + pub fn GetUserMapping(userid: Oid, serverid: Oid) -> *mut UserMapping; + pub fn GetForeignDataWrapper(fdwid: Oid) -> *mut ForeignDataWrapper; + pub fn GetForeignDataWrapperExtended(fdwid: Oid, flags: bits16) -> *mut ForeignDataWrapper; + pub fn GetForeignDataWrapperByName( + fdwname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut ForeignDataWrapper; + pub fn GetForeignTable(relid: Oid) -> *mut ForeignTable; + pub fn GetForeignColumnOptions(relid: Oid, attnum: AttrNumber) -> *mut List; + pub fn get_foreign_data_wrapper_oid( + fdwname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> Oid; + pub fn get_foreign_server_oid(servername: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn _PG_jit_provider_init(cb: *mut JitProviderCallbacks); + pub static mut jit_enabled: bool; + pub static mut jit_provider: *mut ::core::ffi::c_char; + pub static mut jit_debugging_support: bool; + pub static mut jit_dump_bitcode: bool; + pub static mut jit_expressions: bool; + pub static mut jit_profiling_support: bool; + pub static mut jit_tuple_deforming: bool; + pub static mut jit_above_cost: f64; + pub static mut jit_inline_above_cost: f64; + pub static mut jit_optimize_above_cost: f64; + pub fn jit_reset_after_error(); + pub fn jit_release_context(context: *mut JitContext); + pub fn jit_compile_expr(state: *mut ExprState) -> bool; + pub fn InstrJitAgg(dst: *mut JitInstrumentation, add: *mut JitInstrumentation); + pub static pg_enc2name_tbl: [pg_enc2name; 0usize]; + pub static mut pg_enc2gettext_tbl: [*const ::core::ffi::c_char; 0usize]; + pub static pg_wchar_table: [pg_wchar_tbl; 0usize]; + pub fn pg_char_to_encoding_private(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_encoding_to_char_private(encoding: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pg_valid_server_encoding_id_private(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_encoding_mblen( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_mblen_bounded( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_dsplen( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_verifymbchar( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_verifymbstr( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_max_length(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_valid_client_encoding(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_valid_server_encoding_private(name: *const ::core::ffi::c_char) + -> ::core::ffi::c_int; + pub fn is_encoding_supported_by_icu(encoding: ::core::ffi::c_int) -> bool; + pub fn get_encoding_name_for_icu(encoding: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pg_utf8_islegal(source: *const ::core::ffi::c_uchar, length: ::core::ffi::c_int) + -> bool; + pub fn pg_utf_mblen_private(s: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int; + pub fn pg_mule_mblen(s: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int; + pub fn pg_mb2wchar(from: *const ::core::ffi::c_char, to: *mut pg_wchar) -> ::core::ffi::c_int; + pub fn pg_mb2wchar_with_len( + from: *const ::core::ffi::c_char, + to: *mut pg_wchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_mb2wchar_with_len( + encoding: ::core::ffi::c_int, + from: *const ::core::ffi::c_char, + to: *mut pg_wchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_wchar2mb(from: *const pg_wchar, to: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_wchar2mb_with_len( + from: *const pg_wchar, + to: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_wchar2mb_with_len( + encoding: ::core::ffi::c_int, + from: *const pg_wchar, + to: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_char_and_wchar_strcmp( + s1: *const ::core::ffi::c_char, + s2: *const pg_wchar, + ) -> ::core::ffi::c_int; + pub fn pg_wchar_strncmp( + s1: *const pg_wchar, + s2: *const pg_wchar, + n: usize, + ) -> ::core::ffi::c_int; + pub fn pg_char_and_wchar_strncmp( + s1: *const ::core::ffi::c_char, + s2: *const pg_wchar, + n: usize, + ) -> ::core::ffi::c_int; + pub fn pg_wchar_strlen(str_: *const pg_wchar) -> usize; + pub fn pg_mblen(mbstr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_dsplen(mbstr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_mbstrlen(mbstr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_mbstrlen_with_len( + mbstr: *const ::core::ffi::c_char, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_mbcliplen( + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_mbcliplen( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_mbcharcliplen( + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_database_encoding_max_length() -> ::core::ffi::c_int; + pub fn pg_database_encoding_character_incrementer() -> mbcharacter_incrementer; + pub fn PrepareClientEncoding(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn SetClientEncoding(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn InitializeClientEncoding(); + pub fn pg_get_client_encoding() -> ::core::ffi::c_int; + pub fn pg_get_client_encoding_name() -> *const ::core::ffi::c_char; + pub fn SetDatabaseEncoding(encoding: ::core::ffi::c_int); + pub fn GetDatabaseEncoding() -> ::core::ffi::c_int; + pub fn GetDatabaseEncodingName() -> *const ::core::ffi::c_char; + pub fn SetMessageEncoding(encoding: ::core::ffi::c_int); + pub fn GetMessageEncoding() -> ::core::ffi::c_int; + pub fn pg_bind_textdomain_codeset(domainname: *const ::core::ffi::c_char) + -> ::core::ffi::c_int; + pub fn pg_do_encoding_conversion( + src: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_uchar; + pub fn pg_do_encoding_conversion_buf( + proc_: Oid, + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + src: *mut ::core::ffi::c_uchar, + srclen: ::core::ffi::c_int, + dest: *mut ::core::ffi::c_uchar, + destlen: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn pg_client_to_server( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_server_to_client( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_any_to_server( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_server_to_any( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_unicode_to_server(c: pg_wchar, s: *mut ::core::ffi::c_uchar); + pub fn pg_unicode_to_server_noerror(c: pg_wchar, s: *mut ::core::ffi::c_uchar) -> bool; + pub fn BIG5toCNS( + big5: ::core::ffi::c_ushort, + lc: *mut ::core::ffi::c_uchar, + ) -> ::core::ffi::c_ushort; + pub fn CNStoBIG5(cns: ::core::ffi::c_ushort, lc: ::core::ffi::c_uchar) + -> ::core::ffi::c_ushort; + pub fn UtfToLocal( + utf: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + iso: *mut ::core::ffi::c_uchar, + map: *const pg_mb_radix_tree, + cmap: *const pg_utf_to_local_combined, + cmapsize: ::core::ffi::c_int, + conv_func: utf_local_conversion_func, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn LocalToUtf( + iso: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + utf: *mut ::core::ffi::c_uchar, + map: *const pg_mb_radix_tree, + cmap: *const pg_local_to_utf_combined, + cmapsize: ::core::ffi::c_int, + conv_func: utf_local_conversion_func, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn pg_verifymbstr( + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + noError: bool, + ) -> bool; + pub fn pg_verify_mbstr( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + noError: bool, + ) -> bool; + pub fn pg_verify_mbstr_len( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn check_encoding_conversion_args( + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + len: ::core::ffi::c_int, + expected_src_encoding: ::core::ffi::c_int, + expected_dest_encoding: ::core::ffi::c_int, + ); + pub fn report_invalid_encoding( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> !; + pub fn report_untranslatable_char( + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> !; + pub fn local2local( + l: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + tab: *const ::core::ffi::c_uchar, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn latin2mic( + l: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn mic2latin( + mic: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn latin2mic_with_table( + l: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + tab: *const ::core::ffi::c_uchar, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn mic2latin_with_table( + mic: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + tab: *const ::core::ffi::c_uchar, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn pq_beginmessage(buf: StringInfo, msgtype: ::core::ffi::c_char); + pub fn pq_beginmessage_reuse(buf: StringInfo, msgtype: ::core::ffi::c_char); + pub fn pq_endmessage(buf: StringInfo); + pub fn pq_endmessage_reuse(buf: StringInfo); + pub fn pq_sendbytes( + buf: StringInfo, + data: *const ::core::ffi::c_void, + datalen: ::core::ffi::c_int, + ); + pub fn pq_sendcountedtext( + buf: StringInfo, + str_: *const ::core::ffi::c_char, + slen: ::core::ffi::c_int, + ); + pub fn pq_sendtext(buf: StringInfo, str_: *const ::core::ffi::c_char, slen: ::core::ffi::c_int); + pub fn pq_sendstring(buf: StringInfo, str_: *const ::core::ffi::c_char); + pub fn pq_send_ascii_string(buf: StringInfo, str_: *const ::core::ffi::c_char); + pub fn pq_sendfloat4(buf: StringInfo, f: float4); + pub fn pq_sendfloat8(buf: StringInfo, f: float8); + pub fn pq_begintypsend(buf: StringInfo); + pub fn pq_endtypsend(buf: StringInfo) -> *mut bytea; + pub fn pq_puttextmessage(msgtype: ::core::ffi::c_char, str_: *const ::core::ffi::c_char); + pub fn pq_putemptymessage(msgtype: ::core::ffi::c_char); + pub fn pq_getmsgbyte(msg: StringInfo) -> ::core::ffi::c_int; + pub fn pq_getmsgint(msg: StringInfo, b: ::core::ffi::c_int) -> ::core::ffi::c_uint; + pub fn pq_getmsgint64(msg: StringInfo) -> int64; + pub fn pq_getmsgfloat4(msg: StringInfo) -> float4; + pub fn pq_getmsgfloat8(msg: StringInfo) -> float8; + pub fn pq_getmsgbytes( + msg: StringInfo, + datalen: ::core::ffi::c_int, + ) -> *const ::core::ffi::c_char; + pub fn pq_copymsgbytes( + msg: StringInfo, + buf: *mut ::core::ffi::c_char, + datalen: ::core::ffi::c_int, + ); + pub fn pq_getmsgtext( + msg: StringInfo, + rawbytes: ::core::ffi::c_int, + nbytes: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pq_getmsgstring(msg: StringInfo) -> *const ::core::ffi::c_char; + pub fn pq_getmsgrawstring(msg: StringInfo) -> *const ::core::ffi::c_char; + pub fn pq_getmsgend(msg: StringInfo); + pub fn RegisterExtensibleNodeMethods(methods: *const ExtensibleNodeMethods); + pub fn GetExtensibleNodeMethods( + extnodename: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *const ExtensibleNodeMethods; + pub fn RegisterCustomScanMethods(methods: *const CustomScanMethods); + pub fn GetCustomScanMethods( + CustomName: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *const CustomScanMethods; + pub fn makeA_Expr( + kind: A_Expr_Kind::Type, + name: *mut List, + lexpr: *mut Node, + rexpr: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut A_Expr; + pub fn makeSimpleA_Expr( + kind: A_Expr_Kind::Type, + name: *mut ::core::ffi::c_char, + lexpr: *mut Node, + rexpr: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut A_Expr; + pub fn makeVar( + varno: ::core::ffi::c_int, + varattno: AttrNumber, + vartype: Oid, + vartypmod: int32, + varcollid: Oid, + varlevelsup: Index, + ) -> *mut Var; + pub fn makeVarFromTargetEntry(varno: ::core::ffi::c_int, tle: *mut TargetEntry) -> *mut Var; + pub fn makeWholeRowVar( + rte: *mut RangeTblEntry, + varno: ::core::ffi::c_int, + varlevelsup: Index, + allowScalar: bool, + ) -> *mut Var; + pub fn makeTargetEntry( + expr: *mut Expr, + resno: AttrNumber, + resname: *mut ::core::ffi::c_char, + resjunk: bool, + ) -> *mut TargetEntry; + pub fn flatCopyTargetEntry(src_tle: *mut TargetEntry) -> *mut TargetEntry; + pub fn makeFromExpr(fromlist: *mut List, quals: *mut Node) -> *mut FromExpr; + pub fn makeConst( + consttype: Oid, + consttypmod: int32, + constcollid: Oid, + constlen: ::core::ffi::c_int, + constvalue: Datum, + constisnull: bool, + constbyval: bool, + ) -> *mut Const; + pub fn makeNullConst(consttype: Oid, consttypmod: int32, constcollid: Oid) -> *mut Const; + pub fn makeBoolConst(value: bool, isnull: bool) -> *mut Node; + pub fn makeBoolExpr( + boolop: BoolExprType::Type, + args: *mut List, + location: ::core::ffi::c_int, + ) -> *mut Expr; + pub fn makeAlias(aliasname: *const ::core::ffi::c_char, colnames: *mut List) -> *mut Alias; + pub fn makeRelabelType( + arg: *mut Expr, + rtype: Oid, + rtypmod: int32, + rcollid: Oid, + rformat: CoercionForm::Type, + ) -> *mut RelabelType; + pub fn makeRangeVar( + schemaname: *mut ::core::ffi::c_char, + relname: *mut ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut RangeVar; + pub fn makeTypeName(typnam: *mut ::core::ffi::c_char) -> *mut TypeName; + pub fn makeTypeNameFromNameList(names: *mut List) -> *mut TypeName; + pub fn makeTypeNameFromOid(typeOid: Oid, typmod: int32) -> *mut TypeName; + pub fn makeColumnDef( + colname: *const ::core::ffi::c_char, + typeOid: Oid, + typmod: int32, + collOid: Oid, + ) -> *mut ColumnDef; + pub fn makeFuncExpr( + funcid: Oid, + rettype: Oid, + args: *mut List, + funccollid: Oid, + inputcollid: Oid, + fformat: CoercionForm::Type, + ) -> *mut FuncExpr; + pub fn makeFuncCall( + name: *mut List, + args: *mut List, + funcformat: CoercionForm::Type, + location: ::core::ffi::c_int, + ) -> *mut FuncCall; + pub fn make_opclause( + opno: Oid, + opresulttype: Oid, + opretset: bool, + leftop: *mut Expr, + rightop: *mut Expr, + opcollid: Oid, + inputcollid: Oid, + ) -> *mut Expr; + pub fn make_andclause(andclauses: *mut List) -> *mut Expr; + pub fn make_orclause(orclauses: *mut List) -> *mut Expr; + pub fn make_notclause(notclause: *mut Expr) -> *mut Expr; + pub fn make_and_qual(qual1: *mut Node, qual2: *mut Node) -> *mut Node; + pub fn make_ands_explicit(andclauses: *mut List) -> *mut Expr; + pub fn make_ands_implicit(clause: *mut Expr) -> *mut List; + pub fn makeIndexInfo( + numattrs: ::core::ffi::c_int, + numkeyattrs: ::core::ffi::c_int, + amoid: Oid, + expressions: *mut List, + predicates: *mut List, + unique: bool, + nulls_not_distinct: bool, + isready: bool, + concurrent: bool, + summarizing: bool, + ) -> *mut IndexInfo; + pub fn makeStringConst( + str_: *mut ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn makeDefElem( + name: *mut ::core::ffi::c_char, + arg: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut DefElem; + pub fn makeDefElemExtended( + nameSpace: *mut ::core::ffi::c_char, + name: *mut ::core::ffi::c_char, + arg: *mut Node, + defaction: DefElemAction::Type, + location: ::core::ffi::c_int, + ) -> *mut DefElem; + pub fn makeGroupingSet( + kind: GroupingSetKind::Type, + content: *mut List, + location: ::core::ffi::c_int, + ) -> *mut GroupingSet; + pub fn makeVacuumRelation( + relation: *mut RangeVar, + oid: Oid, + va_cols: *mut List, + ) -> *mut VacuumRelation; + pub fn makeJsonFormat( + type_: JsonFormatType::Type, + encoding: JsonEncoding::Type, + location: ::core::ffi::c_int, + ) -> *mut JsonFormat; + pub fn makeJsonValueExpr( + raw_expr: *mut Expr, + formatted_expr: *mut Expr, + format: *mut JsonFormat, + ) -> *mut JsonValueExpr; + pub fn makeJsonKeyValue(key: *mut Node, value: *mut Node) -> *mut Node; + pub fn makeJsonIsPredicate( + expr: *mut Node, + format: *mut JsonFormat, + item_type: JsonValueType::Type, + unique_keys: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn makeJsonBehavior( + btype: JsonBehaviorType::Type, + expr: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut JsonBehavior; + pub fn makeJsonTablePath( + pathvalue: *mut Const, + pathname: *mut ::core::ffi::c_char, + ) -> *mut JsonTablePath; + pub fn makeJsonTablePathSpec( + string: *mut ::core::ffi::c_char, + name: *mut ::core::ffi::c_char, + string_location: ::core::ffi::c_int, + name_location: ::core::ffi::c_int, + ) -> *mut JsonTablePathSpec; + pub fn exprType(expr: *const Node) -> Oid; + pub fn exprTypmod(expr: *const Node) -> int32; + pub fn exprIsLengthCoercion(expr: *const Node, coercedTypmod: *mut int32) -> bool; + pub fn applyRelabelType( + arg: *mut Node, + rtype: Oid, + rtypmod: int32, + rcollid: Oid, + rformat: CoercionForm::Type, + rlocation: ::core::ffi::c_int, + overwrite_ok: bool, + ) -> *mut Node; + pub fn relabel_to_typmod(expr: *mut Node, typmod: int32) -> *mut Node; + pub fn strip_implicit_coercions(node: *mut Node) -> *mut Node; + pub fn expression_returns_set(clause: *mut Node) -> bool; + pub fn exprCollation(expr: *const Node) -> Oid; + pub fn exprInputCollation(expr: *const Node) -> Oid; + pub fn exprSetCollation(expr: *mut Node, collation: Oid); + pub fn exprSetInputCollation(expr: *mut Node, inputcollation: Oid); + pub fn exprLocation(expr: *const Node) -> ::core::ffi::c_int; + pub fn fix_opfuncids(node: *mut Node); + pub fn set_opfuncid(opexpr: *mut OpExpr); + pub fn set_sa_opfuncid(opexpr: *mut ScalarArrayOpExpr); + pub fn check_functions_in_node( + node: *mut Node, + checker: check_function_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn expression_tree_walker_impl( + node: *mut Node, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn expression_tree_mutator_impl( + node: *mut Node, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + ) -> *mut Node; + pub fn query_tree_walker_impl( + query: *mut Query, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn query_tree_mutator_impl( + query: *mut Query, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> *mut Query; + pub fn range_table_walker_impl( + rtable: *mut List, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn range_table_mutator_impl( + rtable: *mut List, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> *mut List; + pub fn range_table_entry_walker_impl( + rte: *mut RangeTblEntry, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn query_or_expression_tree_walker_impl( + node: *mut Node, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn query_or_expression_tree_mutator_impl( + node: *mut Node, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> *mut Node; + pub fn raw_expression_tree_walker_impl( + node: *mut Node, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn planstate_tree_walker_impl( + planstate: *mut PlanState, + walker: planstate_tree_walker_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn print(obj: *const ::core::ffi::c_void); + pub fn pprint(obj: *const ::core::ffi::c_void); + pub fn elog_node_display( + lev: ::core::ffi::c_int, + title: *const ::core::ffi::c_char, + obj: *const ::core::ffi::c_void, + pretty: bool, + ); + pub fn format_node_dump(dump: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn pretty_format_node_dump(dump: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn print_rt(rtable: *const List); + pub fn print_expr(expr: *const Node, rtable: *const List); + pub fn print_pathkeys(pathkeys: *const List, rtable: *const List); + pub fn print_tl(tlist: *const List, rtable: *const List); + pub fn print_slot(slot: *mut TupleTableSlot); + pub fn make_append_rel_info( + parentrel: Relation, + childrel: Relation, + parentRTindex: Index, + childRTindex: Index, + ) -> *mut AppendRelInfo; + pub fn adjust_appendrel_attrs( + root: *mut PlannerInfo, + node: *mut Node, + nappinfos: ::core::ffi::c_int, + appinfos: *mut *mut AppendRelInfo, + ) -> *mut Node; + pub fn adjust_appendrel_attrs_multilevel( + root: *mut PlannerInfo, + node: *mut Node, + childrel: *mut RelOptInfo, + parentrel: *mut RelOptInfo, + ) -> *mut Node; + pub fn adjust_child_relids( + relids: Relids, + nappinfos: ::core::ffi::c_int, + appinfos: *mut *mut AppendRelInfo, + ) -> Relids; + pub fn adjust_child_relids_multilevel( + root: *mut PlannerInfo, + relids: Relids, + childrel: *mut RelOptInfo, + parentrel: *mut RelOptInfo, + ) -> Relids; + pub fn adjust_inherited_attnums(attnums: *mut List, context: *mut AppendRelInfo) -> *mut List; + pub fn adjust_inherited_attnums_multilevel( + root: *mut PlannerInfo, + attnums: *mut List, + child_relid: Index, + top_parent_relid: Index, + ) -> *mut List; + pub fn get_translated_update_targetlist( + root: *mut PlannerInfo, + relid: Index, + processed_tlist: *mut *mut List, + update_colnos: *mut *mut List, + ); + pub fn find_appinfos_by_relids( + root: *mut PlannerInfo, + relids: Relids, + nappinfos: *mut ::core::ffi::c_int, + ) -> *mut *mut AppendRelInfo; + pub fn add_row_identity_var( + root: *mut PlannerInfo, + orig_var: *mut Var, + rtindex: Index, + rowid_name: *const ::core::ffi::c_char, + ); + pub fn add_row_identity_columns( + root: *mut PlannerInfo, + rtindex: Index, + target_rte: *mut RangeTblEntry, + target_relation: Relation, + ); + pub fn distribute_row_identity_vars(root: *mut PlannerInfo); + pub fn contain_agg_clause(clause: *mut Node) -> bool; + pub fn contain_window_function(clause: *mut Node) -> bool; + pub fn find_window_functions(clause: *mut Node, maxWinRef: Index) -> *mut WindowFuncLists; + pub fn expression_returns_set_rows(root: *mut PlannerInfo, clause: *mut Node) -> f64; + pub fn contain_subplans(clause: *mut Node) -> bool; + pub fn max_parallel_hazard(parse: *mut Query) -> ::core::ffi::c_char; + pub fn is_parallel_safe(root: *mut PlannerInfo, node: *mut Node) -> bool; + pub fn contain_nonstrict_functions(clause: *mut Node) -> bool; + pub fn contain_exec_param(clause: *mut Node, param_ids: *mut List) -> bool; + pub fn contain_leaked_vars(clause: *mut Node) -> bool; + pub fn find_nonnullable_rels(clause: *mut Node) -> Relids; + pub fn find_nonnullable_vars(clause: *mut Node) -> *mut List; + pub fn find_forced_null_vars(node: *mut Node) -> *mut List; + pub fn find_forced_null_var(node: *mut Node) -> *mut Var; + pub fn is_pseudo_constant_clause(clause: *mut Node) -> bool; + pub fn is_pseudo_constant_clause_relids(clause: *mut Node, relids: Relids) -> bool; + pub fn NumRelids(root: *mut PlannerInfo, clause: *mut Node) -> ::core::ffi::c_int; + pub fn CommuteOpExpr(clause: *mut OpExpr); + pub fn inline_set_returning_function( + root: *mut PlannerInfo, + rte: *mut RangeTblEntry, + ) -> *mut Query; + pub fn pull_paramids(expr: *mut Expr) -> *mut Bitmapset; + pub static mut disable_cost: Cost; + pub static mut max_parallel_workers_per_gather: ::core::ffi::c_int; + pub static mut enable_seqscan: bool; + pub static mut enable_indexscan: bool; + pub static mut enable_indexonlyscan: bool; + pub static mut enable_bitmapscan: bool; + pub static mut enable_tidscan: bool; + pub static mut enable_sort: bool; + pub static mut enable_incremental_sort: bool; + pub static mut enable_hashagg: bool; + pub static mut enable_nestloop: bool; + pub static mut enable_material: bool; + pub static mut enable_memoize: bool; + pub static mut enable_mergejoin: bool; + pub static mut enable_hashjoin: bool; + pub static mut enable_gathermerge: bool; + pub static mut enable_partitionwise_join: bool; + pub static mut enable_partitionwise_aggregate: bool; + pub static mut enable_parallel_append: bool; + pub static mut enable_parallel_hash: bool; + pub static mut enable_partition_pruning: bool; + pub static mut enable_presorted_aggregate: bool; + pub static mut enable_async_append: bool; + pub static mut constraint_exclusion: ::core::ffi::c_int; + pub fn index_pages_fetched( + tuples_fetched: f64, + pages: BlockNumber, + index_pages: f64, + root: *mut PlannerInfo, + ) -> f64; + pub fn cost_seqscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_samplescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_index( + path: *mut IndexPath, + root: *mut PlannerInfo, + loop_count: f64, + partial_path: bool, + ); + pub fn cost_bitmap_heap_scan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + bitmapqual: *mut Path, + loop_count: f64, + ); + pub fn cost_bitmap_and_node(path: *mut BitmapAndPath, root: *mut PlannerInfo); + pub fn cost_bitmap_or_node(path: *mut BitmapOrPath, root: *mut PlannerInfo); + pub fn cost_bitmap_tree_node(path: *mut Path, cost: *mut Cost, selec: *mut Selectivity); + pub fn cost_tidscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + tidquals: *mut List, + param_info: *mut ParamPathInfo, + ); + pub fn cost_tidrangescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + tidrangequals: *mut List, + param_info: *mut ParamPathInfo, + ); + pub fn cost_subqueryscan( + path: *mut SubqueryScanPath, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + trivial_pathtarget: bool, + ); + pub fn cost_functionscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_valuesscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_tablefuncscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_ctescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_namedtuplestorescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_resultscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_recursive_union(runion: *mut Path, nrterm: *mut Path, rterm: *mut Path); + pub fn cost_sort( + path: *mut Path, + root: *mut PlannerInfo, + pathkeys: *mut List, + input_cost: Cost, + tuples: f64, + width: ::core::ffi::c_int, + comparison_cost: Cost, + sort_mem: ::core::ffi::c_int, + limit_tuples: f64, + ); + pub fn cost_incremental_sort( + path: *mut Path, + root: *mut PlannerInfo, + pathkeys: *mut List, + presorted_keys: ::core::ffi::c_int, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + width: ::core::ffi::c_int, + comparison_cost: Cost, + sort_mem: ::core::ffi::c_int, + limit_tuples: f64, + ); + pub fn cost_append(apath: *mut AppendPath); + pub fn cost_merge_append( + path: *mut Path, + root: *mut PlannerInfo, + pathkeys: *mut List, + n_streams: ::core::ffi::c_int, + input_startup_cost: Cost, + input_total_cost: Cost, + tuples: f64, + ); + pub fn cost_material( + path: *mut Path, + input_startup_cost: Cost, + input_total_cost: Cost, + tuples: f64, + width: ::core::ffi::c_int, + ); + pub fn cost_agg( + path: *mut Path, + root: *mut PlannerInfo, + aggstrategy: AggStrategy::Type, + aggcosts: *const AggClauseCosts, + numGroupCols: ::core::ffi::c_int, + numGroups: f64, + quals: *mut List, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + input_width: f64, + ); + pub fn cost_windowagg( + path: *mut Path, + root: *mut PlannerInfo, + windowFuncs: *mut List, + winclause: *mut WindowClause, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + ); + pub fn cost_group( + path: *mut Path, + root: *mut PlannerInfo, + numGroupCols: ::core::ffi::c_int, + numGroups: f64, + quals: *mut List, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + ); + pub fn initial_cost_nestloop( + root: *mut PlannerInfo, + workspace: *mut JoinCostWorkspace, + jointype: JoinType::Type, + outer_path: *mut Path, + inner_path: *mut Path, + extra: *mut JoinPathExtraData, + ); + pub fn final_cost_nestloop( + root: *mut PlannerInfo, + path: *mut NestPath, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + ); + pub fn initial_cost_mergejoin( + root: *mut PlannerInfo, + workspace: *mut JoinCostWorkspace, + jointype: JoinType::Type, + mergeclauses: *mut List, + outer_path: *mut Path, + inner_path: *mut Path, + outersortkeys: *mut List, + innersortkeys: *mut List, + extra: *mut JoinPathExtraData, + ); + pub fn final_cost_mergejoin( + root: *mut PlannerInfo, + path: *mut MergePath, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + ); + pub fn initial_cost_hashjoin( + root: *mut PlannerInfo, + workspace: *mut JoinCostWorkspace, + jointype: JoinType::Type, + hashclauses: *mut List, + outer_path: *mut Path, + inner_path: *mut Path, + extra: *mut JoinPathExtraData, + parallel_hash: bool, + ); + pub fn final_cost_hashjoin( + root: *mut PlannerInfo, + path: *mut HashPath, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + ); + pub fn cost_gather( + path: *mut GatherPath, + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + rows: *mut f64, + ); + pub fn cost_gather_merge( + path: *mut GatherMergePath, + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + input_startup_cost: Cost, + input_total_cost: Cost, + rows: *mut f64, + ); + pub fn cost_subplan(root: *mut PlannerInfo, subplan: *mut SubPlan, plan: *mut Plan); + pub fn cost_qual_eval(cost: *mut QualCost, quals: *mut List, root: *mut PlannerInfo); + pub fn cost_qual_eval_node(cost: *mut QualCost, qual: *mut Node, root: *mut PlannerInfo); + pub fn compute_semi_anti_join_factors( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + restrictlist: *mut List, + semifactors: *mut SemiAntiJoinFactors, + ); + pub fn set_baserel_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn get_parameterized_baserel_size( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + param_clauses: *mut List, + ) -> f64; + pub fn get_parameterized_joinrel_size( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + outer_path: *mut Path, + inner_path: *mut Path, + sjinfo: *mut SpecialJoinInfo, + restrict_clauses: *mut List, + ) -> f64; + pub fn set_joinrel_size_estimates( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + sjinfo: *mut SpecialJoinInfo, + restrictlist: *mut List, + ); + pub fn set_subquery_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_function_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_values_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_cte_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo, cte_rows: f64); + pub fn set_tablefunc_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_namedtuplestore_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_result_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_foreign_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_pathtarget_cost_width( + root: *mut PlannerInfo, + target: *mut PathTarget, + ) -> *mut PathTarget; + pub fn compute_bitmap_pages( + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + bitmapqual: *mut Path, + loop_count: f64, + cost_p: *mut Cost, + tuples_p: *mut f64, + ) -> f64; + pub fn clause_selectivity( + root: *mut PlannerInfo, + clause: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn clause_selectivity_ext( + root: *mut PlannerInfo, + clause: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + use_extended_stats: bool, + ) -> Selectivity; + pub fn clauselist_selectivity( + root: *mut PlannerInfo, + clauses: *mut List, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn clauselist_selectivity_ext( + root: *mut PlannerInfo, + clauses: *mut List, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + use_extended_stats: bool, + ) -> Selectivity; + pub static mut seq_page_cost: f64; + pub static mut random_page_cost: f64; + pub static mut cpu_tuple_cost: f64; + pub static mut cpu_index_tuple_cost: f64; + pub static mut cpu_operator_cost: f64; + pub static mut parallel_tuple_cost: f64; + pub static mut parallel_setup_cost: f64; + pub static mut recursive_worktable_factor: f64; + pub static mut effective_cache_size: ::core::ffi::c_int; + pub fn clamp_row_est(nrows: f64) -> f64; + pub fn clamp_width_est(tuple_width: int64) -> int32; + pub fn clamp_cardinality_to_long(x: Cardinality) -> ::core::ffi::c_long; + pub fn is_pseudo_constant_for_index( + root: *mut PlannerInfo, + expr: *mut Node, + index: *mut IndexOptInfo, + ) -> bool; + pub static mut debug_parallel_query: ::core::ffi::c_int; + pub static mut parallel_leader_participation: bool; + pub fn planner( + parse: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: *mut ParamListInfoData, + ) -> *mut PlannedStmt; + pub fn expression_planner(expr: *mut Expr) -> *mut Expr; + pub fn expression_planner_with_deps( + expr: *mut Expr, + relationOids: *mut *mut List, + invalItems: *mut *mut List, + ) -> *mut Expr; + pub fn plan_cluster_use_sort(tableOid: Oid, indexOid: Oid) -> bool; + pub fn plan_create_index_workers(tableOid: Oid, indexOid: Oid) -> ::core::ffi::c_int; + pub fn extract_query_dependencies( + query: *mut Node, + relationOids: *mut *mut List, + invalItems: *mut *mut List, + hasRowSecurity: *mut bool, + ); + pub fn negate_clause(node: *mut Node) -> *mut Node; + pub fn canonicalize_qual(qual: *mut Expr, is_check: bool) -> *mut Expr; + pub fn contain_mutable_functions(clause: *mut Node) -> bool; + pub fn contain_mutable_functions_after_planning(expr: *mut Expr) -> bool; + pub fn contain_volatile_functions(clause: *mut Node) -> bool; + pub fn contain_volatile_functions_after_planning(expr: *mut Expr) -> bool; + pub fn contain_volatile_functions_not_nextval(clause: *mut Node) -> bool; + pub fn eval_const_expressions(root: *mut PlannerInfo, node: *mut Node) -> *mut Node; + pub fn convert_saop_to_hashed_saop(node: *mut Node); + pub fn estimate_expression_value(root: *mut PlannerInfo, node: *mut Node) -> *mut Node; + pub fn evaluate_expr( + expr: *mut Expr, + result_type: Oid, + result_typmod: int32, + result_collation: Oid, + ) -> *mut Expr; + pub fn expand_function_arguments( + args: *mut List, + include_out_arguments: bool, + result_type: Oid, + func_tuple: *mut HeapTupleData, + ) -> *mut List; + pub fn predicate_implied_by( + predicate_list: *mut List, + clause_list: *mut List, + weak: bool, + ) -> bool; + pub fn predicate_refuted_by( + predicate_list: *mut List, + clause_list: *mut List, + weak: bool, + ) -> bool; + pub fn count_nonjunk_tlist_entries(tlist: *mut List) -> ::core::ffi::c_int; + pub fn get_sortgroupref_tle(sortref: Index, targetList: *mut List) -> *mut TargetEntry; + pub fn get_sortgroupclause_tle( + sgClause: *mut SortGroupClause, + targetList: *mut List, + ) -> *mut TargetEntry; + pub fn get_sortgroupclause_expr( + sgClause: *mut SortGroupClause, + targetList: *mut List, + ) -> *mut Node; + pub fn get_sortgrouplist_exprs(sgClauses: *mut List, targetList: *mut List) -> *mut List; + pub fn get_sortgroupref_clause(sortref: Index, clauses: *mut List) -> *mut SortGroupClause; + pub fn get_sortgroupref_clause_noerr( + sortref: Index, + clauses: *mut List, + ) -> *mut SortGroupClause; + pub fn pull_varnos(root: *mut PlannerInfo, node: *mut Node) -> *mut Bitmapset; + pub fn pull_varnos_of_level( + root: *mut PlannerInfo, + node: *mut Node, + levelsup: ::core::ffi::c_int, + ) -> *mut Bitmapset; + pub fn pull_varattnos(node: *mut Node, varno: Index, varattnos: *mut *mut Bitmapset); + pub fn pull_vars_of_level(node: *mut Node, levelsup: ::core::ffi::c_int) -> *mut List; + pub fn contain_var_clause(node: *mut Node) -> bool; + pub fn contain_vars_of_level(node: *mut Node, levelsup: ::core::ffi::c_int) -> bool; + pub fn locate_var_of_level(node: *mut Node, levelsup: ::core::ffi::c_int) + -> ::core::ffi::c_int; + pub fn pull_var_clause(node: *mut Node, flags: ::core::ffi::c_int) -> *mut List; + pub fn flatten_join_alias_vars( + root: *mut PlannerInfo, + query: *mut Query, + node: *mut Node, + ) -> *mut Node; + pub fn compare_path_costs( + path1: *mut Path, + path2: *mut Path, + criterion: CostSelector::Type, + ) -> ::core::ffi::c_int; + pub fn compare_fractional_path_costs( + path1: *mut Path, + path2: *mut Path, + fraction: f64, + ) -> ::core::ffi::c_int; + pub fn set_cheapest(parent_rel: *mut RelOptInfo); + pub fn add_path(parent_rel: *mut RelOptInfo, new_path: *mut Path); + pub fn add_path_precheck( + parent_rel: *mut RelOptInfo, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + required_outer: Relids, + ) -> bool; + pub fn add_partial_path(parent_rel: *mut RelOptInfo, new_path: *mut Path); + pub fn add_partial_path_precheck( + parent_rel: *mut RelOptInfo, + total_cost: Cost, + pathkeys: *mut List, + ) -> bool; + pub fn create_seqscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + parallel_workers: ::core::ffi::c_int, + ) -> *mut Path; + pub fn create_samplescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_index_path( + root: *mut PlannerInfo, + index: *mut IndexOptInfo, + indexclauses: *mut List, + indexorderbys: *mut List, + indexorderbycols: *mut List, + pathkeys: *mut List, + indexscandir: ScanDirection::Type, + indexonly: bool, + required_outer: Relids, + loop_count: f64, + partial_path: bool, + ) -> *mut IndexPath; + pub fn create_bitmap_heap_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapqual: *mut Path, + required_outer: Relids, + loop_count: f64, + parallel_degree: ::core::ffi::c_int, + ) -> *mut BitmapHeapPath; + pub fn create_bitmap_and_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapquals: *mut List, + ) -> *mut BitmapAndPath; + pub fn create_bitmap_or_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapquals: *mut List, + ) -> *mut BitmapOrPath; + pub fn create_tidscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + tidquals: *mut List, + required_outer: Relids, + ) -> *mut TidPath; + pub fn create_tidrangescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + tidrangequals: *mut List, + required_outer: Relids, + ) -> *mut TidRangePath; + pub fn create_append_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpaths: *mut List, + partial_subpaths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + parallel_workers: ::core::ffi::c_int, + parallel_aware: bool, + rows: f64, + ) -> *mut AppendPath; + pub fn create_merge_append_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpaths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut MergeAppendPath; + pub fn create_group_result_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + havingqual: *mut List, + ) -> *mut GroupResultPath; + pub fn create_material_path(rel: *mut RelOptInfo, subpath: *mut Path) -> *mut MaterialPath; + pub fn create_memoize_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + param_exprs: *mut List, + hash_operators: *mut List, + singlerow: bool, + binary_mode: bool, + calls: f64, + ) -> *mut MemoizePath; + pub fn create_unique_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + sjinfo: *mut SpecialJoinInfo, + ) -> *mut UniquePath; + pub fn create_gather_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + required_outer: Relids, + rows: *mut f64, + ) -> *mut GatherPath; + pub fn create_gather_merge_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + pathkeys: *mut List, + required_outer: Relids, + rows: *mut f64, + ) -> *mut GatherMergePath; + pub fn create_subqueryscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + trivial_pathtarget: bool, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut SubqueryScanPath; + pub fn create_functionscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut Path; + pub fn create_valuesscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_tablefuncscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_ctescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut Path; + pub fn create_namedtuplestorescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_resultscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_worktablescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_foreignscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + rows: f64, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + required_outer: Relids, + fdw_outerpath: *mut Path, + fdw_restrictinfo: *mut List, + fdw_private: *mut List, + ) -> *mut ForeignPath; + pub fn create_foreign_join_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + rows: f64, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + required_outer: Relids, + fdw_outerpath: *mut Path, + fdw_restrictinfo: *mut List, + fdw_private: *mut List, + ) -> *mut ForeignPath; + pub fn create_foreign_upper_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + rows: f64, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + fdw_outerpath: *mut Path, + fdw_restrictinfo: *mut List, + fdw_private: *mut List, + ) -> *mut ForeignPath; + pub fn calc_nestloop_required_outer( + outerrelids: Relids, + outer_paramrels: Relids, + innerrelids: Relids, + inner_paramrels: Relids, + ) -> Relids; + pub fn calc_non_nestloop_required_outer(outer_path: *mut Path, inner_path: *mut Path) + -> Relids; + pub fn create_nestloop_path( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + outer_path: *mut Path, + inner_path: *mut Path, + restrict_clauses: *mut List, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut NestPath; + pub fn create_mergejoin_path( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + outer_path: *mut Path, + inner_path: *mut Path, + restrict_clauses: *mut List, + pathkeys: *mut List, + required_outer: Relids, + mergeclauses: *mut List, + outersortkeys: *mut List, + innersortkeys: *mut List, + ) -> *mut MergePath; + pub fn create_hashjoin_path( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + outer_path: *mut Path, + inner_path: *mut Path, + parallel_hash: bool, + restrict_clauses: *mut List, + required_outer: Relids, + hashclauses: *mut List, + ) -> *mut HashPath; + pub fn create_projection_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + ) -> *mut ProjectionPath; + pub fn apply_projection_to_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + path: *mut Path, + target: *mut PathTarget, + ) -> *mut Path; + pub fn create_set_projection_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + ) -> *mut ProjectSetPath; + pub fn create_sort_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + pathkeys: *mut List, + limit_tuples: f64, + ) -> *mut SortPath; + pub fn create_incremental_sort_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + pathkeys: *mut List, + presorted_keys: ::core::ffi::c_int, + limit_tuples: f64, + ) -> *mut IncrementalSortPath; + pub fn create_group_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + groupClause: *mut List, + qual: *mut List, + numGroups: f64, + ) -> *mut GroupPath; + pub fn create_upper_unique_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + numCols: ::core::ffi::c_int, + numGroups: f64, + ) -> *mut UpperUniquePath; + pub fn create_agg_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + aggstrategy: AggStrategy::Type, + aggsplit: AggSplit::Type, + groupClause: *mut List, + qual: *mut List, + aggcosts: *const AggClauseCosts, + numGroups: f64, + ) -> *mut AggPath; + pub fn create_groupingsets_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + having_qual: *mut List, + aggstrategy: AggStrategy::Type, + rollups: *mut List, + agg_costs: *const AggClauseCosts, + ) -> *mut GroupingSetsPath; + pub fn create_minmaxagg_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + mmaggregates: *mut List, + quals: *mut List, + ) -> *mut MinMaxAggPath; + pub fn create_windowagg_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + windowFuncs: *mut List, + runCondition: *mut List, + winclause: *mut WindowClause, + qual: *mut List, + topwindow: bool, + ) -> *mut WindowAggPath; + pub fn create_setop_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + cmd: SetOpCmd::Type, + strategy: SetOpStrategy::Type, + distinctList: *mut List, + flagColIdx: AttrNumber, + firstFlag: ::core::ffi::c_int, + numGroups: f64, + outputRows: f64, + ) -> *mut SetOpPath; + pub fn create_recursiveunion_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + leftpath: *mut Path, + rightpath: *mut Path, + target: *mut PathTarget, + distinctList: *mut List, + wtParam: ::core::ffi::c_int, + numGroups: f64, + ) -> *mut RecursiveUnionPath; + pub fn create_lockrows_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + rowMarks: *mut List, + epqParam: ::core::ffi::c_int, + ) -> *mut LockRowsPath; + pub fn create_modifytable_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + operation: CmdType::Type, + canSetTag: bool, + nominalRelation: Index, + rootRelation: Index, + partColsUpdated: bool, + resultRelations: *mut List, + updateColnosLists: *mut List, + withCheckOptionLists: *mut List, + returningLists: *mut List, + rowMarks: *mut List, + onconflict: *mut OnConflictExpr, + mergeActionLists: *mut List, + mergeJoinConditions: *mut List, + epqParam: ::core::ffi::c_int, + ) -> *mut ModifyTablePath; + pub fn create_limit_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + limitOffset: *mut Node, + limitCount: *mut Node, + limitOption: LimitOption::Type, + offset_est: int64, + count_est: int64, + ) -> *mut LimitPath; + pub fn adjust_limit_rows_costs( + rows: *mut f64, + startup_cost: *mut Cost, + total_cost: *mut Cost, + offset_est: int64, + count_est: int64, + ); + pub fn reparameterize_path( + root: *mut PlannerInfo, + path: *mut Path, + required_outer: Relids, + loop_count: f64, + ) -> *mut Path; + pub fn reparameterize_path_by_child( + root: *mut PlannerInfo, + path: *mut Path, + child_rel: *mut RelOptInfo, + ) -> *mut Path; + pub fn path_is_reparameterizable_by_child(path: *mut Path, child_rel: *mut RelOptInfo) -> bool; + pub fn setup_simple_rel_arrays(root: *mut PlannerInfo); + pub fn expand_planner_arrays(root: *mut PlannerInfo, add_size: ::core::ffi::c_int); + pub fn build_simple_rel( + root: *mut PlannerInfo, + relid: ::core::ffi::c_int, + parent: *mut RelOptInfo, + ) -> *mut RelOptInfo; + pub fn find_base_rel(root: *mut PlannerInfo, relid: ::core::ffi::c_int) -> *mut RelOptInfo; + pub fn find_base_rel_noerr( + root: *mut PlannerInfo, + relid: ::core::ffi::c_int, + ) -> *mut RelOptInfo; + pub fn find_base_rel_ignore_join( + root: *mut PlannerInfo, + relid: ::core::ffi::c_int, + ) -> *mut RelOptInfo; + pub fn find_join_rel(root: *mut PlannerInfo, relids: Relids) -> *mut RelOptInfo; + pub fn build_join_rel( + root: *mut PlannerInfo, + joinrelids: Relids, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + sjinfo: *mut SpecialJoinInfo, + pushed_down_joins: *mut List, + restrictlist_ptr: *mut *mut List, + ) -> *mut RelOptInfo; + pub fn min_join_parameterization( + root: *mut PlannerInfo, + joinrelids: Relids, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + ) -> Relids; + pub fn fetch_upper_rel( + root: *mut PlannerInfo, + kind: UpperRelationKind::Type, + relids: Relids, + ) -> *mut RelOptInfo; + pub fn find_childrel_parents(root: *mut PlannerInfo, rel: *mut RelOptInfo) -> Relids; + pub fn get_baserel_parampathinfo( + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut ParamPathInfo; + pub fn get_joinrel_parampathinfo( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outer_path: *mut Path, + inner_path: *mut Path, + sjinfo: *mut SpecialJoinInfo, + required_outer: Relids, + restrict_clauses: *mut *mut List, + ) -> *mut ParamPathInfo; + pub fn get_appendrel_parampathinfo( + appendrel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut ParamPathInfo; + pub fn find_param_path_info(rel: *mut RelOptInfo, required_outer: Relids) + -> *mut ParamPathInfo; + pub fn get_param_path_clause_serials(path: *mut Path) -> *mut Bitmapset; + pub fn build_child_join_rel( + root: *mut PlannerInfo, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + parent_joinrel: *mut RelOptInfo, + restrictlist: *mut List, + sjinfo: *mut SpecialJoinInfo, + ) -> *mut RelOptInfo; + pub static mut enable_geqo: bool; + pub static mut geqo_threshold: ::core::ffi::c_int; + pub static mut min_parallel_table_scan_size: ::core::ffi::c_int; + pub static mut min_parallel_index_scan_size: ::core::ffi::c_int; + pub static mut enable_group_by_reordering: bool; + pub static mut set_rel_pathlist_hook: set_rel_pathlist_hook_type; + pub static mut set_join_pathlist_hook: set_join_pathlist_hook_type; + pub static mut join_search_hook: join_search_hook_type; + pub fn make_one_rel(root: *mut PlannerInfo, joinlist: *mut List) -> *mut RelOptInfo; + pub fn standard_join_search( + root: *mut PlannerInfo, + levels_needed: ::core::ffi::c_int, + initial_rels: *mut List, + ) -> *mut RelOptInfo; + pub fn generate_gather_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo, override_rows: bool); + pub fn generate_useful_gather_paths( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + override_rows: bool, + ); + pub fn compute_parallel_worker( + rel: *mut RelOptInfo, + heap_pages: f64, + index_pages: f64, + max_workers: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn create_partial_bitmap_paths( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapqual: *mut Path, + ); + pub fn generate_partitionwise_join_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn create_index_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn relation_has_unique_index_for( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + restrictlist: *mut List, + exprlist: *mut List, + oprlist: *mut List, + ) -> bool; + pub fn indexcol_is_bool_constant_for_query( + root: *mut PlannerInfo, + index: *mut IndexOptInfo, + indexcol: ::core::ffi::c_int, + ) -> bool; + pub fn match_index_to_operand( + operand: *mut Node, + indexcol: ::core::ffi::c_int, + index: *mut IndexOptInfo, + ) -> bool; + pub fn check_index_predicates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn create_tidscan_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn add_paths_to_joinrel( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + restrictlist: *mut List, + ); + pub fn join_search_one_level(root: *mut PlannerInfo, level: ::core::ffi::c_int); + pub fn make_join_rel( + root: *mut PlannerInfo, + rel1: *mut RelOptInfo, + rel2: *mut RelOptInfo, + ) -> *mut RelOptInfo; + pub fn add_outer_joins_to_relids( + root: *mut PlannerInfo, + input_relids: Relids, + sjinfo: *mut SpecialJoinInfo, + pushed_down_joins: *mut *mut List, + ) -> Relids; + pub fn have_join_order_restriction( + root: *mut PlannerInfo, + rel1: *mut RelOptInfo, + rel2: *mut RelOptInfo, + ) -> bool; + pub fn have_dangerous_phv( + root: *mut PlannerInfo, + outer_relids: Relids, + inner_params: Relids, + ) -> bool; + pub fn mark_dummy_rel(rel: *mut RelOptInfo); + pub fn init_dummy_sjinfo( + sjinfo: *mut SpecialJoinInfo, + left_relids: Relids, + right_relids: Relids, + ); + pub fn process_equivalence( + root: *mut PlannerInfo, + p_restrictinfo: *mut *mut RestrictInfo, + jdomain: *mut JoinDomain, + ) -> bool; + pub fn canonicalize_ec_expression( + expr: *mut Expr, + req_type: Oid, + req_collation: Oid, + ) -> *mut Expr; + pub fn reconsider_outer_join_clauses(root: *mut PlannerInfo); + pub fn get_eclass_for_sort_expr( + root: *mut PlannerInfo, + expr: *mut Expr, + opfamilies: *mut List, + opcintype: Oid, + collation: Oid, + sortref: Index, + rel: Relids, + create_it: bool, + ) -> *mut EquivalenceClass; + pub fn find_ec_member_matching_expr( + ec: *mut EquivalenceClass, + expr: *mut Expr, + relids: Relids, + ) -> *mut EquivalenceMember; + pub fn find_computable_ec_member( + root: *mut PlannerInfo, + ec: *mut EquivalenceClass, + exprs: *mut List, + relids: Relids, + require_parallel_safe: bool, + ) -> *mut EquivalenceMember; + pub fn relation_can_be_sorted_early( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + ec: *mut EquivalenceClass, + require_parallel_safe: bool, + ) -> bool; + pub fn generate_base_implied_equalities(root: *mut PlannerInfo); + pub fn generate_join_implied_equalities( + root: *mut PlannerInfo, + join_relids: Relids, + outer_relids: Relids, + inner_rel: *mut RelOptInfo, + sjinfo: *mut SpecialJoinInfo, + ) -> *mut List; + pub fn generate_join_implied_equalities_for_ecs( + root: *mut PlannerInfo, + eclasses: *mut List, + join_relids: Relids, + outer_relids: Relids, + inner_rel: *mut RelOptInfo, + ) -> *mut List; + pub fn exprs_known_equal(root: *mut PlannerInfo, item1: *mut Node, item2: *mut Node) -> bool; + pub fn match_eclasses_to_foreign_key_col( + root: *mut PlannerInfo, + fkinfo: *mut ForeignKeyOptInfo, + colno: ::core::ffi::c_int, + ) -> *mut EquivalenceClass; + pub fn find_derived_clause_for_ec_member( + ec: *mut EquivalenceClass, + em: *mut EquivalenceMember, + ) -> *mut RestrictInfo; + pub fn add_child_rel_equivalences( + root: *mut PlannerInfo, + appinfo: *mut AppendRelInfo, + parent_rel: *mut RelOptInfo, + child_rel: *mut RelOptInfo, + ); + pub fn add_child_join_rel_equivalences( + root: *mut PlannerInfo, + nappinfos: ::core::ffi::c_int, + appinfos: *mut *mut AppendRelInfo, + parent_joinrel: *mut RelOptInfo, + child_joinrel: *mut RelOptInfo, + ); + pub fn add_setop_child_rel_equivalences( + root: *mut PlannerInfo, + child_rel: *mut RelOptInfo, + child_tlist: *mut List, + setop_pathkeys: *mut List, + ); + pub fn generate_implied_equalities_for_column( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + callback: ec_matches_callback_type, + callback_arg: *mut ::core::ffi::c_void, + prohibited_rels: Relids, + ) -> *mut List; + pub fn have_relevant_eclass_joinclause( + root: *mut PlannerInfo, + rel1: *mut RelOptInfo, + rel2: *mut RelOptInfo, + ) -> bool; + pub fn has_relevant_eclass_joinclause(root: *mut PlannerInfo, rel1: *mut RelOptInfo) -> bool; + pub fn eclass_useful_for_merging( + root: *mut PlannerInfo, + eclass: *mut EquivalenceClass, + rel: *mut RelOptInfo, + ) -> bool; + pub fn is_redundant_derived_clause(rinfo: *mut RestrictInfo, clauselist: *mut List) -> bool; + pub fn is_redundant_with_indexclauses( + rinfo: *mut RestrictInfo, + indexclauses: *mut List, + ) -> bool; + pub fn compare_pathkeys(keys1: *mut List, keys2: *mut List) -> PathKeysComparison::Type; + pub fn pathkeys_contained_in(keys1: *mut List, keys2: *mut List) -> bool; + pub fn pathkeys_count_contained_in( + keys1: *mut List, + keys2: *mut List, + n_common: *mut ::core::ffi::c_int, + ) -> bool; + pub fn get_useful_group_keys_orderings(root: *mut PlannerInfo, path: *mut Path) -> *mut List; + pub fn get_cheapest_path_for_pathkeys( + paths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + cost_criterion: CostSelector::Type, + require_parallel_safe: bool, + ) -> *mut Path; + pub fn get_cheapest_fractional_path_for_pathkeys( + paths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + fraction: f64, + ) -> *mut Path; + pub fn get_cheapest_parallel_safe_total_inner(paths: *mut List) -> *mut Path; + pub fn build_index_pathkeys( + root: *mut PlannerInfo, + index: *mut IndexOptInfo, + scandir: ScanDirection::Type, + ) -> *mut List; + pub fn build_partition_pathkeys( + root: *mut PlannerInfo, + partrel: *mut RelOptInfo, + scandir: ScanDirection::Type, + partialkeys: *mut bool, + ) -> *mut List; + pub fn build_expression_pathkey( + root: *mut PlannerInfo, + expr: *mut Expr, + opno: Oid, + rel: Relids, + create_it: bool, + ) -> *mut List; + pub fn convert_subquery_pathkeys( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subquery_pathkeys: *mut List, + subquery_tlist: *mut List, + ) -> *mut List; + pub fn build_join_pathkeys( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + outer_pathkeys: *mut List, + ) -> *mut List; + pub fn make_pathkeys_for_sortclauses( + root: *mut PlannerInfo, + sortclauses: *mut List, + tlist: *mut List, + ) -> *mut List; + pub fn make_pathkeys_for_sortclauses_extended( + root: *mut PlannerInfo, + sortclauses: *mut *mut List, + tlist: *mut List, + remove_redundant: bool, + sortable: *mut bool, + set_ec_sortref: bool, + ) -> *mut List; + pub fn initialize_mergeclause_eclasses(root: *mut PlannerInfo, restrictinfo: *mut RestrictInfo); + pub fn update_mergeclause_eclasses(root: *mut PlannerInfo, restrictinfo: *mut RestrictInfo); + pub fn find_mergeclauses_for_outer_pathkeys( + root: *mut PlannerInfo, + pathkeys: *mut List, + restrictinfos: *mut List, + ) -> *mut List; + pub fn select_outer_pathkeys_for_merge( + root: *mut PlannerInfo, + mergeclauses: *mut List, + joinrel: *mut RelOptInfo, + ) -> *mut List; + pub fn make_inner_pathkeys_for_merge( + root: *mut PlannerInfo, + mergeclauses: *mut List, + outer_pathkeys: *mut List, + ) -> *mut List; + pub fn trim_mergeclauses_for_inner_pathkeys( + root: *mut PlannerInfo, + mergeclauses: *mut List, + pathkeys: *mut List, + ) -> *mut List; + pub fn truncate_useless_pathkeys( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + pathkeys: *mut List, + ) -> *mut List; + pub fn has_useful_pathkeys(root: *mut PlannerInfo, rel: *mut RelOptInfo) -> bool; + pub fn append_pathkeys(target: *mut List, source: *mut List) -> *mut List; + pub fn make_canonical_pathkey( + root: *mut PlannerInfo, + eclass: *mut EquivalenceClass, + opfamily: Oid, + strategy: ::core::ffi::c_int, + nulls_first: bool, + ) -> *mut PathKey; + pub fn add_paths_to_append_rel( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + live_childrels: *mut List, + ); + pub static mut get_relation_info_hook: get_relation_info_hook_type; + pub fn get_relation_info( + root: *mut PlannerInfo, + relationObjectId: Oid, + inhparent: bool, + rel: *mut RelOptInfo, + ); + pub fn infer_arbiter_indexes(root: *mut PlannerInfo) -> *mut List; + pub fn estimate_rel_size( + rel: Relation, + attr_widths: *mut int32, + pages: *mut BlockNumber, + tuples: *mut f64, + allvisfrac: *mut f64, + ); + pub fn get_rel_data_width(rel: Relation, attr_widths: *mut int32) -> int32; + pub fn get_relation_data_width(relid: Oid, attr_widths: *mut int32) -> int32; + pub fn relation_excluded_by_constraints( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + rte: *mut RangeTblEntry, + ) -> bool; + pub fn build_physical_tlist(root: *mut PlannerInfo, rel: *mut RelOptInfo) -> *mut List; + pub fn has_unique_index(rel: *mut RelOptInfo, attno: AttrNumber) -> bool; + pub fn restriction_selectivity( + root: *mut PlannerInfo, + operatorid: Oid, + args: *mut List, + inputcollid: Oid, + varRelid: ::core::ffi::c_int, + ) -> Selectivity; + pub fn join_selectivity( + root: *mut PlannerInfo, + operatorid: Oid, + args: *mut List, + inputcollid: Oid, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn function_selectivity( + root: *mut PlannerInfo, + funcid: Oid, + args: *mut List, + inputcollid: Oid, + is_join: bool, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn add_function_cost( + root: *mut PlannerInfo, + funcid: Oid, + node: *mut Node, + cost: *mut QualCost, + ); + pub fn get_function_rows(root: *mut PlannerInfo, funcid: Oid, node: *mut Node) -> f64; + pub fn has_row_triggers(root: *mut PlannerInfo, rti: Index, event: CmdType::Type) -> bool; + pub fn has_stored_generated_columns(root: *mut PlannerInfo, rti: Index) -> bool; + pub fn get_dependent_generated_columns( + root: *mut PlannerInfo, + rti: Index, + target_cols: *mut Bitmapset, + ) -> *mut Bitmapset; + pub static mut cursor_tuple_fraction: f64; + pub fn query_planner( + root: *mut PlannerInfo, + qp_callback: query_pathkeys_callback, + qp_extra: *mut ::core::ffi::c_void, + ) -> *mut RelOptInfo; + pub fn preprocess_minmax_aggregates(root: *mut PlannerInfo); + pub fn create_plan(root: *mut PlannerInfo, best_path: *mut Path) -> *mut Plan; + pub fn make_foreignscan( + qptlist: *mut List, + qpqual: *mut List, + scanrelid: Index, + fdw_exprs: *mut List, + fdw_private: *mut List, + fdw_scan_tlist: *mut List, + fdw_recheck_quals: *mut List, + outer_plan: *mut Plan, + ) -> *mut ForeignScan; + pub fn change_plan_targetlist( + subplan: *mut Plan, + tlist: *mut List, + tlist_parallel_safe: bool, + ) -> *mut Plan; + pub fn materialize_finished_plan(subplan: *mut Plan) -> *mut Plan; + pub fn is_projection_capable_path(path: *mut Path) -> bool; + pub fn is_projection_capable_plan(plan: *mut Plan) -> bool; + pub fn make_sort_from_sortclauses(sortcls: *mut List, lefttree: *mut Plan) -> *mut Sort; + pub fn make_agg( + tlist: *mut List, + qual: *mut List, + aggstrategy: AggStrategy::Type, + aggsplit: AggSplit::Type, + numGroupCols: ::core::ffi::c_int, + grpColIdx: *mut AttrNumber, + grpOperators: *mut Oid, + grpCollations: *mut Oid, + groupingSets: *mut List, + chain: *mut List, + dNumGroups: f64, + transitionSpace: Size, + lefttree: *mut Plan, + ) -> *mut Agg; + pub fn make_limit( + lefttree: *mut Plan, + limitOffset: *mut Node, + limitCount: *mut Node, + limitOption: LimitOption::Type, + uniqNumCols: ::core::ffi::c_int, + uniqColIdx: *mut AttrNumber, + uniqOperators: *mut Oid, + uniqCollations: *mut Oid, + ) -> *mut Limit; + pub static mut from_collapse_limit: ::core::ffi::c_int; + pub static mut join_collapse_limit: ::core::ffi::c_int; + pub fn add_base_rels_to_query(root: *mut PlannerInfo, jtnode: *mut Node); + pub fn add_other_rels_to_query(root: *mut PlannerInfo); + pub fn build_base_rel_tlists(root: *mut PlannerInfo, final_tlist: *mut List); + pub fn add_vars_to_targetlist(root: *mut PlannerInfo, vars: *mut List, where_needed: Relids); + pub fn find_lateral_references(root: *mut PlannerInfo); + pub fn create_lateral_join_info(root: *mut PlannerInfo); + pub fn deconstruct_jointree(root: *mut PlannerInfo) -> *mut List; + pub fn restriction_is_always_true( + root: *mut PlannerInfo, + restrictinfo: *mut RestrictInfo, + ) -> bool; + pub fn restriction_is_always_false( + root: *mut PlannerInfo, + restrictinfo: *mut RestrictInfo, + ) -> bool; + pub fn distribute_restrictinfo_to_rels(root: *mut PlannerInfo, restrictinfo: *mut RestrictInfo); + pub fn process_implied_equality( + root: *mut PlannerInfo, + opno: Oid, + collation: Oid, + item1: *mut Expr, + item2: *mut Expr, + qualscope: Relids, + security_level: Index, + both_const: bool, + ) -> *mut RestrictInfo; + pub fn build_implied_join_equality( + root: *mut PlannerInfo, + opno: Oid, + collation: Oid, + item1: *mut Expr, + item2: *mut Expr, + qualscope: Relids, + security_level: Index, + ) -> *mut RestrictInfo; + pub fn match_foreign_keys_to_quals(root: *mut PlannerInfo); + pub fn remove_useless_joins(root: *mut PlannerInfo, joinlist: *mut List) -> *mut List; + pub fn reduce_unique_semijoins(root: *mut PlannerInfo); + pub fn query_supports_distinctness(query: *mut Query) -> bool; + pub fn query_is_distinct_for(query: *mut Query, colnos: *mut List, opids: *mut List) -> bool; + pub fn innerrel_is_unique( + root: *mut PlannerInfo, + joinrelids: Relids, + outerrelids: Relids, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + restrictlist: *mut List, + force_cache: bool, + ) -> bool; + pub fn set_plan_references(root: *mut PlannerInfo, plan: *mut Plan) -> *mut Plan; + pub fn trivial_subqueryscan(plan: *mut SubqueryScan) -> bool; + pub fn find_minmax_agg_replacement_param( + root: *mut PlannerInfo, + aggref: *mut Aggref, + ) -> *mut Param; + pub fn record_plan_function_dependency(root: *mut PlannerInfo, funcid: Oid); + pub fn record_plan_type_dependency(root: *mut PlannerInfo, typid: Oid); + pub fn extract_query_dependencies_walker(node: *mut Node, context: *mut PlannerInfo) -> bool; + pub static mut planner_hook: planner_hook_type; + pub static mut create_upper_paths_hook: create_upper_paths_hook_type; + pub fn standard_planner( + parse: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut PlannedStmt; + pub fn subquery_planner( + glob: *mut PlannerGlobal, + parse: *mut Query, + parent_root: *mut PlannerInfo, + hasRecursion: bool, + tuple_fraction: f64, + setops: *mut SetOperationStmt, + ) -> *mut PlannerInfo; + pub fn select_rowmark_type( + rte: *mut RangeTblEntry, + strength: LockClauseStrength::Type, + ) -> RowMarkType::Type; + pub fn limit_needed(parse: *mut Query) -> bool; + pub fn mark_partial_aggref(agg: *mut Aggref, aggsplit: AggSplit::Type); + pub fn get_cheapest_fractional_path(rel: *mut RelOptInfo, tuple_fraction: f64) -> *mut Path; + pub fn preprocess_phv_expression(root: *mut PlannerInfo, expr: *mut Expr) -> *mut Expr; + pub fn make_restrictinfo( + root: *mut PlannerInfo, + clause: *mut Expr, + is_pushed_down: bool, + has_clone: bool, + is_clone: bool, + pseudoconstant: bool, + security_level: Index, + required_relids: Relids, + incompatible_relids: Relids, + outer_relids: Relids, + ) -> *mut RestrictInfo; + pub fn commute_restrictinfo(rinfo: *mut RestrictInfo, comm_op: Oid) -> *mut RestrictInfo; + pub fn restriction_is_or_clause(restrictinfo: *mut RestrictInfo) -> bool; + pub fn restriction_is_securely_promotable( + restrictinfo: *mut RestrictInfo, + rel: *mut RelOptInfo, + ) -> bool; + pub fn get_actual_clauses(restrictinfo_list: *mut List) -> *mut List; + pub fn extract_actual_clauses(restrictinfo_list: *mut List, pseudoconstant: bool) -> *mut List; + pub fn extract_actual_join_clauses( + restrictinfo_list: *mut List, + joinrelids: Relids, + joinquals: *mut *mut List, + otherquals: *mut *mut List, + ); + pub fn join_clause_is_movable_to(rinfo: *mut RestrictInfo, baserel: *mut RelOptInfo) -> bool; + pub fn join_clause_is_movable_into( + rinfo: *mut RestrictInfo, + currentrelids: Relids, + current_and_outer: Relids, + ) -> bool; + pub fn tlist_member(node: *mut Expr, targetlist: *mut List) -> *mut TargetEntry; + pub fn add_to_flat_tlist(tlist: *mut List, exprs: *mut List) -> *mut List; + pub fn get_tlist_exprs(tlist: *mut List, includeJunk: bool) -> *mut List; + pub fn tlist_same_exprs(tlist1: *mut List, tlist2: *mut List) -> bool; + pub fn tlist_same_datatypes(tlist: *mut List, colTypes: *mut List, junkOK: bool) -> bool; + pub fn tlist_same_collations(tlist: *mut List, colCollations: *mut List, junkOK: bool) -> bool; + pub fn apply_tlist_labeling(dest_tlist: *mut List, src_tlist: *mut List); + pub fn extract_grouping_ops(groupClause: *mut List) -> *mut Oid; + pub fn extract_grouping_collations(groupClause: *mut List, tlist: *mut List) -> *mut Oid; + pub fn extract_grouping_cols(groupClause: *mut List, tlist: *mut List) -> *mut AttrNumber; + pub fn grouping_is_sortable(groupClause: *mut List) -> bool; + pub fn grouping_is_hashable(groupClause: *mut List) -> bool; + pub fn make_pathtarget_from_tlist(tlist: *mut List) -> *mut PathTarget; + pub fn make_tlist_from_pathtarget(target: *mut PathTarget) -> *mut List; + pub fn copy_pathtarget(src: *mut PathTarget) -> *mut PathTarget; + pub fn create_empty_pathtarget() -> *mut PathTarget; + pub fn add_column_to_pathtarget(target: *mut PathTarget, expr: *mut Expr, sortgroupref: Index); + pub fn add_new_column_to_pathtarget(target: *mut PathTarget, expr: *mut Expr); + pub fn add_new_columns_to_pathtarget(target: *mut PathTarget, exprs: *mut List); + pub fn apply_pathtarget_labeling_to_tlist(tlist: *mut List, target: *mut PathTarget); + pub fn split_pathtarget_at_srfs( + root: *mut PlannerInfo, + target: *mut PathTarget, + input_target: *mut PathTarget, + targets: *mut *mut List, + targets_contain_srfs: *mut *mut List, + ); + pub static mut compute_query_id: ::core::ffi::c_int; + pub fn CleanQuerytext( + query: *const ::core::ffi::c_char, + location: *mut ::core::ffi::c_int, + len: *mut ::core::ffi::c_int, + ) -> *const ::core::ffi::c_char; + pub fn JumbleQuery(query: *mut Query) -> *mut JumbleState; + pub fn EnableQueryId(); + pub static mut query_id_enabled: bool; + pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub fn parse_analyze_fixedparams( + parseTree: *mut RawStmt, + sourceText: *const ::core::ffi::c_char, + paramTypes: *const Oid, + numParams: ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut Query; + pub fn parse_analyze_varparams( + parseTree: *mut RawStmt, + sourceText: *const ::core::ffi::c_char, + paramTypes: *mut *mut Oid, + numParams: *mut ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut Query; + pub fn parse_analyze_withcb( + parseTree: *mut RawStmt, + sourceText: *const ::core::ffi::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + queryEnv: *mut QueryEnvironment, + ) -> *mut Query; + pub fn parse_sub_analyze( + parseTree: *mut Node, + parentParseState: *mut ParseState, + parentCTE: *mut CommonTableExpr, + locked_from_parent: bool, + resolve_unknowns: bool, + ) -> *mut Query; + pub fn transformInsertRow( + pstate: *mut ParseState, + exprlist: *mut List, + stmtcols: *mut List, + icolumns: *mut List, + attrnos: *mut List, + strip_indirection: bool, + ) -> *mut List; + pub fn transformUpdateTargetList(pstate: *mut ParseState, origTlist: *mut List) -> *mut List; + pub fn transformReturningList( + pstate: *mut ParseState, + returningList: *mut List, + exprKind: ParseExprKind::Type, + ) -> *mut List; + pub fn transformTopLevelStmt(pstate: *mut ParseState, parseTree: *mut RawStmt) -> *mut Query; + pub fn transformStmt(pstate: *mut ParseState, parseTree: *mut Node) -> *mut Query; + pub fn stmt_requires_parse_analysis(parseTree: *mut RawStmt) -> bool; + pub fn analyze_requires_snapshot(parseTree: *mut RawStmt) -> bool; + pub fn LCS_asString(strength: LockClauseStrength::Type) -> *const ::core::ffi::c_char; + pub fn CheckSelectLocking(qry: *mut Query, strength: LockClauseStrength::Type); + pub fn applyLockingClause( + qry: *mut Query, + rtindex: Index, + strength: LockClauseStrength::Type, + waitPolicy: LockWaitPolicy::Type, + pushedDown: bool, + ); + pub fn BuildOnConflictExcludedTargetlist(targetrel: Relation, exclRelIndex: Index) + -> *mut List; + pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) + -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; + pub static mut Transform_null_equals: bool; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind::Type, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind::Type) -> *const ::core::ffi::c_char; + pub fn ParseFuncOrColumn( + pstate: *mut ParseState, + funcname: *mut List, + fargs: *mut List, + last_srf: *mut Node, + fn_: *mut FuncCall, + proc_call: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn func_get_detail( + funcname: *mut List, + fargs: *mut List, + fargnames: *mut List, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + expand_variadic: bool, + expand_defaults: bool, + include_out_arguments: bool, + funcid: *mut Oid, + rettype: *mut Oid, + retset: *mut bool, + nvargs: *mut ::core::ffi::c_int, + vatype: *mut Oid, + true_typeids: *mut *mut Oid, + argdefaults: *mut *mut List, + ) -> FuncDetailCode::Type; + pub fn func_match_argtypes( + nargs: ::core::ffi::c_int, + input_typeids: *mut Oid, + raw_candidates: FuncCandidateList, + candidates: *mut FuncCandidateList, + ) -> ::core::ffi::c_int; + pub fn func_select_candidate( + nargs: ::core::ffi::c_int, + input_typeids: *mut Oid, + candidates: FuncCandidateList, + ) -> FuncCandidateList; + pub fn make_fn_arguments( + pstate: *mut ParseState, + fargs: *mut List, + actual_arg_types: *mut Oid, + declared_arg_types: *mut Oid, + ); + pub fn funcname_signature_string( + funcname: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argnames: *mut List, + argtypes: *const Oid, + ) -> *const ::core::ffi::c_char; + pub fn func_signature_string( + funcname: *mut List, + nargs: ::core::ffi::c_int, + argnames: *mut List, + argtypes: *const Oid, + ) -> *const ::core::ffi::c_char; + pub fn LookupFuncName( + funcname: *mut List, + nargs: ::core::ffi::c_int, + argtypes: *const Oid, + missing_ok: bool, + ) -> Oid; + pub fn LookupFuncWithArgs( + objtype: ObjectType::Type, + func: *mut ObjectWithArgs, + missing_ok: bool, + ) -> Oid; + pub fn check_srf_call_placement( + pstate: *mut ParseState, + last_srf: *mut Node, + location: ::core::ffi::c_int, + ); + pub fn LookupOperName( + pstate: *mut ParseState, + opername: *mut List, + oprleft: Oid, + oprright: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Oid; + pub fn LookupOperWithArgs(oper: *mut ObjectWithArgs, noError: bool) -> Oid; + pub fn oper( + pstate: *mut ParseState, + opname: *mut List, + ltypeId: Oid, + rtypeId: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Operator; + pub fn left_oper( + pstate: *mut ParseState, + op: *mut List, + arg: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Operator; + pub fn compatible_oper( + pstate: *mut ParseState, + op: *mut List, + arg1: Oid, + arg2: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Operator; + pub fn op_signature_string(op: *mut List, arg1: Oid, arg2: Oid) -> *const ::core::ffi::c_char; + pub fn get_sort_group_operators( + argtype: Oid, + needLT: bool, + needEQ: bool, + needGT: bool, + ltOpr: *mut Oid, + eqOpr: *mut Oid, + gtOpr: *mut Oid, + isHashable: *mut bool, + ); + pub fn compatible_oper_opid(op: *mut List, arg1: Oid, arg2: Oid, noError: bool) -> Oid; + pub fn oprid(op: Operator) -> Oid; + pub fn oprfuncid(op: Operator) -> Oid; + pub fn make_op( + pstate: *mut ParseState, + opname: *mut List, + ltree: *mut Node, + rtree: *mut Node, + last_srf: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut Expr; + pub fn make_scalar_array_op( + pstate: *mut ParseState, + opname: *mut List, + useOr: bool, + ltree: *mut Node, + rtree: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markNullableIfNeeded(pstate: *mut ParseState, var: *mut Var); + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + join_using_alias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRTEPermissionInfo( + rteperminfos: *mut *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn getRTEPermissionInfo( + rteperminfos: *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + require_col_privs: bool, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; + pub fn LookupTypeName( + pstate: *mut ParseState, + typeName: *const TypeName, + typmod_p: *mut int32, + missing_ok: bool, + ) -> Type; + pub fn LookupTypeNameExtended( + pstate: *mut ParseState, + typeName: *const TypeName, + typmod_p: *mut int32, + temp_ok: bool, + missing_ok: bool, + ) -> Type; + pub fn LookupTypeNameOid( + pstate: *mut ParseState, + typeName: *const TypeName, + missing_ok: bool, + ) -> Oid; + pub fn typenameType( + pstate: *mut ParseState, + typeName: *const TypeName, + typmod_p: *mut int32, + ) -> Type; + pub fn typenameTypeId(pstate: *mut ParseState, typeName: *const TypeName) -> Oid; + pub fn typenameTypeIdAndMod( + pstate: *mut ParseState, + typeName: *const TypeName, + typeid_p: *mut Oid, + typmod_p: *mut int32, + ); + pub fn TypeNameToString(typeName: *const TypeName) -> *mut ::core::ffi::c_char; + pub fn TypeNameListToString(typenames: *mut List) -> *mut ::core::ffi::c_char; + pub fn LookupCollation( + pstate: *mut ParseState, + collnames: *mut List, + location: ::core::ffi::c_int, + ) -> Oid; + pub fn GetColumnDefCollation( + pstate: *mut ParseState, + coldef: *const ColumnDef, + typeOid: Oid, + ) -> Oid; + pub fn typeidType(id: Oid) -> Type; + pub fn typeTypeId(tp: Type) -> Oid; + pub fn typeLen(t: Type) -> int16; + pub fn typeByVal(t: Type) -> bool; + pub fn typeTypeName(t: Type) -> *mut ::core::ffi::c_char; + pub fn typeTypeRelid(typ: Type) -> Oid; + pub fn typeTypeCollation(typ: Type) -> Oid; + pub fn stringTypeDatum(tp: Type, string: *mut ::core::ffi::c_char, atttypmod: int32) -> Datum; + pub fn typeidTypeRelid(type_id: Oid) -> Oid; + pub fn typeOrDomainTypeRelid(type_id: Oid) -> Oid; + pub fn typeStringToTypeName( + str_: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> *mut TypeName; + pub fn parseTypeString( + str_: *const ::core::ffi::c_char, + typeid_p: *mut Oid, + typmod_p: *mut int32, + escontext: *mut Node, + ) -> bool; + pub fn IsBinaryCoercible(srctype: Oid, targettype: Oid) -> bool; + pub fn IsBinaryCoercibleWithCast(srctype: Oid, targettype: Oid, castoid: *mut Oid) -> bool; + pub fn IsPreferredType(category: TYPCATEGORY, type_: Oid) -> bool; + pub fn TypeCategory(type_: Oid) -> TYPCATEGORY; + pub fn coerce_to_target_type( + pstate: *mut ParseState, + expr: *mut Node, + exprtype: Oid, + targettype: Oid, + targettypmod: int32, + ccontext: CoercionContext::Type, + cformat: CoercionForm::Type, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn can_coerce_type( + nargs: ::core::ffi::c_int, + input_typeids: *const Oid, + target_typeids: *const Oid, + ccontext: CoercionContext::Type, + ) -> bool; + pub fn coerce_type( + pstate: *mut ParseState, + node: *mut Node, + inputTypeId: Oid, + targetTypeId: Oid, + targetTypeMod: int32, + ccontext: CoercionContext::Type, + cformat: CoercionForm::Type, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn coerce_to_domain( + arg: *mut Node, + baseTypeId: Oid, + baseTypeMod: int32, + typeId: Oid, + ccontext: CoercionContext::Type, + cformat: CoercionForm::Type, + location: ::core::ffi::c_int, + hideInputCoercion: bool, + ) -> *mut Node; + pub fn coerce_to_boolean( + pstate: *mut ParseState, + node: *mut Node, + constructName: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn coerce_to_specific_type( + pstate: *mut ParseState, + node: *mut Node, + targetTypeId: Oid, + constructName: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn coerce_to_specific_type_typmod( + pstate: *mut ParseState, + node: *mut Node, + targetTypeId: Oid, + targetTypmod: int32, + constructName: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn parser_coercion_errposition( + pstate: *mut ParseState, + coerce_location: ::core::ffi::c_int, + input_expr: *mut Node, + ) -> ::core::ffi::c_int; + pub fn select_common_type( + pstate: *mut ParseState, + exprs: *mut List, + context: *const ::core::ffi::c_char, + which_expr: *mut *mut Node, + ) -> Oid; + pub fn coerce_to_common_type( + pstate: *mut ParseState, + node: *mut Node, + targetTypeId: Oid, + context: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn verify_common_type(common_type: Oid, exprs: *mut List) -> bool; + pub fn select_common_typmod( + pstate: *mut ParseState, + exprs: *mut List, + common_type: Oid, + ) -> int32; + pub fn check_generic_type_consistency( + actual_arg_types: *const Oid, + declared_arg_types: *const Oid, + nargs: ::core::ffi::c_int, + ) -> bool; + pub fn enforce_generic_type_consistency( + actual_arg_types: *const Oid, + declared_arg_types: *mut Oid, + nargs: ::core::ffi::c_int, + rettype: Oid, + allow_poly: bool, + ) -> Oid; + pub fn check_valid_polymorphic_signature( + ret_type: Oid, + declared_arg_types: *const Oid, + nargs: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn check_valid_internal_signature( + ret_type: Oid, + declared_arg_types: *const Oid, + nargs: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn find_coercion_pathway( + targetTypeId: Oid, + sourceTypeId: Oid, + ccontext: CoercionContext::Type, + funcid: *mut Oid, + ) -> CoercionPathType::Type; + pub fn find_typmod_coercion_function(typeId: Oid, funcid: *mut Oid) -> CoercionPathType::Type; + pub fn get_rte_attribute_name( + rte: *mut RangeTblEntry, + attnum: AttrNumber, + ) -> *mut ::core::ffi::c_char; + pub fn get_rte_attribute_is_dropped(rte: *mut RangeTblEntry, attnum: AttrNumber) -> bool; + pub fn get_tle_by_resno(tlist: *mut List, resno: AttrNumber) -> *mut TargetEntry; + pub fn get_parse_rowmark(qry: *mut Query, rtindex: Index) -> *mut RowMarkClause; + pub fn downcase_truncate_identifier( + ident: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + warn: bool, + ) -> *mut ::core::ffi::c_char; + pub fn downcase_identifier( + ident: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + warn: bool, + truncate: bool, + ) -> *mut ::core::ffi::c_char; + pub fn truncate_identifier( + ident: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + warn: bool, + ); + pub fn scanner_isspace(ch: ::core::ffi::c_char) -> bool; + pub fn make_expanded_record_from_typeid( + type_id: Oid, + typmod: int32, + parentcontext: MemoryContext, + ) -> *mut ExpandedRecordHeader; + pub fn make_expanded_record_from_tupdesc( + tupdesc: TupleDesc, + parentcontext: MemoryContext, + ) -> *mut ExpandedRecordHeader; + pub fn make_expanded_record_from_exprecord( + olderh: *mut ExpandedRecordHeader, + parentcontext: MemoryContext, + ) -> *mut ExpandedRecordHeader; + pub fn expanded_record_set_tuple( + erh: *mut ExpandedRecordHeader, + tuple: HeapTuple, + copy: bool, + expand_external: bool, + ); + pub fn make_expanded_record_from_datum( + recorddatum: Datum, + parentcontext: MemoryContext, + ) -> Datum; + pub fn expanded_record_fetch_tupdesc(erh: *mut ExpandedRecordHeader) -> TupleDesc; + pub fn expanded_record_get_tuple(erh: *mut ExpandedRecordHeader) -> HeapTuple; + pub fn DatumGetExpandedRecord(d: Datum) -> *mut ExpandedRecordHeader; + pub fn deconstruct_expanded_record(erh: *mut ExpandedRecordHeader); + pub fn expanded_record_lookup_field( + erh: *mut ExpandedRecordHeader, + fieldname: *const ::core::ffi::c_char, + finfo: *mut ExpandedRecordFieldInfo, + ) -> bool; + pub fn expanded_record_fetch_field( + erh: *mut ExpandedRecordHeader, + fnumber: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn expanded_record_set_field_internal( + erh: *mut ExpandedRecordHeader, + fnumber: ::core::ffi::c_int, + newValue: Datum, + isnull: bool, + expand_external: bool, + check_constraints: bool, + ); + pub fn expanded_record_set_fields( + erh: *mut ExpandedRecordHeader, + newValues: *const Datum, + isnulls: *const bool, + expand_external: bool, + ); + pub static mut plpgsql_IdentifierLookup: IdentifierLookup::Type; + pub static mut plpgsql_variable_conflict: ::core::ffi::c_int; + pub static mut plpgsql_print_strict_params: bool; + pub static mut plpgsql_check_asserts: bool; + pub static mut plpgsql_extra_warnings: ::core::ffi::c_int; + pub static mut plpgsql_extra_errors: ::core::ffi::c_int; + pub static mut plpgsql_check_syntax: bool; + pub static mut plpgsql_DumpExecTree: bool; + pub static mut plpgsql_parse_result: *mut PLpgSQL_stmt_block; + pub static mut plpgsql_nDatums: ::core::ffi::c_int; + pub static mut plpgsql_Datums: *mut *mut PLpgSQL_datum; + pub static mut plpgsql_error_funcname: *mut ::core::ffi::c_char; + pub static mut plpgsql_curr_compile: *mut PLpgSQL_function; + pub static mut plpgsql_compile_tmp_cxt: MemoryContext; + pub static mut plpgsql_plugin_ptr: *mut *mut PLpgSQL_plugin; + #[doc = " Function declarations"] + pub fn plpgsql_compile(fcinfo: FunctionCallInfo, forValidator: bool) -> *mut PLpgSQL_function; + pub fn plpgsql_compile_inline(proc_source: *mut ::core::ffi::c_char) -> *mut PLpgSQL_function; + pub fn plpgsql_parser_setup(pstate: *mut ParseState, expr: *mut PLpgSQL_expr); + pub fn plpgsql_parse_word( + word1: *mut ::core::ffi::c_char, + yytxt: *const ::core::ffi::c_char, + lookup: bool, + wdatum: *mut PLwdatum, + word: *mut PLword, + ) -> bool; + pub fn plpgsql_parse_dblword( + word1: *mut ::core::ffi::c_char, + word2: *mut ::core::ffi::c_char, + wdatum: *mut PLwdatum, + cword: *mut PLcword, + ) -> bool; + pub fn plpgsql_parse_tripword( + word1: *mut ::core::ffi::c_char, + word2: *mut ::core::ffi::c_char, + word3: *mut ::core::ffi::c_char, + wdatum: *mut PLwdatum, + cword: *mut PLcword, + ) -> bool; + pub fn plpgsql_parse_wordtype(ident: *mut ::core::ffi::c_char) -> *mut PLpgSQL_type; + pub fn plpgsql_parse_cwordtype(idents: *mut List) -> *mut PLpgSQL_type; + pub fn plpgsql_parse_wordrowtype(ident: *mut ::core::ffi::c_char) -> *mut PLpgSQL_type; + pub fn plpgsql_parse_cwordrowtype(idents: *mut List) -> *mut PLpgSQL_type; + pub fn plpgsql_build_datatype( + typeOid: Oid, + typmod: int32, + collation: Oid, + origtypname: *mut TypeName, + ) -> *mut PLpgSQL_type; + pub fn plpgsql_build_datatype_arrayof(dtype: *mut PLpgSQL_type) -> *mut PLpgSQL_type; + pub fn plpgsql_build_variable( + refname: *const ::core::ffi::c_char, + lineno: ::core::ffi::c_int, + dtype: *mut PLpgSQL_type, + add2namespace: bool, + ) -> *mut PLpgSQL_variable; + pub fn plpgsql_build_record( + refname: *const ::core::ffi::c_char, + lineno: ::core::ffi::c_int, + dtype: *mut PLpgSQL_type, + rectypeid: Oid, + add2namespace: bool, + ) -> *mut PLpgSQL_rec; + pub fn plpgsql_build_recfield( + rec: *mut PLpgSQL_rec, + fldname: *const ::core::ffi::c_char, + ) -> *mut PLpgSQL_recfield; + pub fn plpgsql_recognize_err_condition( + condname: *const ::core::ffi::c_char, + allow_sqlstate: bool, + ) -> ::core::ffi::c_int; + pub fn plpgsql_parse_err_condition( + condname: *mut ::core::ffi::c_char, + ) -> *mut PLpgSQL_condition; + pub fn plpgsql_adddatum(newdatum: *mut PLpgSQL_datum); + pub fn plpgsql_add_initdatums(varnos: *mut *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn plpgsql_HashTableInit(); + pub fn plpgsql_exec_function( + func: *mut PLpgSQL_function, + fcinfo: FunctionCallInfo, + simple_eval_estate: *mut EState, + simple_eval_resowner: ResourceOwner, + procedure_resowner: ResourceOwner, + atomic: bool, + ) -> Datum; + pub fn plpgsql_exec_trigger( + func: *mut PLpgSQL_function, + trigdata: *mut TriggerData, + ) -> HeapTuple; + pub fn plpgsql_exec_event_trigger(func: *mut PLpgSQL_function, trigdata: *mut EventTriggerData); + pub fn plpgsql_xact_cb(event: XactEvent::Type, arg: *mut ::core::ffi::c_void); + pub fn plpgsql_subxact_cb( + event: SubXactEvent::Type, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + arg: *mut ::core::ffi::c_void, + ); + pub fn plpgsql_exec_get_datum_type( + estate: *mut PLpgSQL_execstate, + datum: *mut PLpgSQL_datum, + ) -> Oid; + pub fn plpgsql_exec_get_datum_type_info( + estate: *mut PLpgSQL_execstate, + datum: *mut PLpgSQL_datum, + typeId: *mut Oid, + typMod: *mut int32, + collation: *mut Oid, + ); + pub fn plpgsql_ns_init(); + pub fn plpgsql_ns_push(label: *const ::core::ffi::c_char, label_type: PLpgSQL_label_type::Type); + pub fn plpgsql_ns_pop(); + pub fn plpgsql_ns_top() -> *mut PLpgSQL_nsitem; + pub fn plpgsql_ns_additem( + itemtype: PLpgSQL_nsitem_type::Type, + itemno: ::core::ffi::c_int, + name: *const ::core::ffi::c_char, + ); + pub fn plpgsql_ns_lookup( + ns_cur: *mut PLpgSQL_nsitem, + localmode: bool, + name1: *const ::core::ffi::c_char, + name2: *const ::core::ffi::c_char, + name3: *const ::core::ffi::c_char, + names_used: *mut ::core::ffi::c_int, + ) -> *mut PLpgSQL_nsitem; + pub fn plpgsql_ns_lookup_label( + ns_cur: *mut PLpgSQL_nsitem, + name: *const ::core::ffi::c_char, + ) -> *mut PLpgSQL_nsitem; + pub fn plpgsql_ns_find_nearest_loop(ns_cur: *mut PLpgSQL_nsitem) -> *mut PLpgSQL_nsitem; + pub fn plpgsql_stmt_typename(stmt: *mut PLpgSQL_stmt) -> *const ::core::ffi::c_char; + pub fn plpgsql_getdiag_kindname(kind: PLpgSQL_getdiag_kind::Type) + -> *const ::core::ffi::c_char; + pub fn plpgsql_free_function_memory(func: *mut PLpgSQL_function); + pub fn plpgsql_dumptree(func: *mut PLpgSQL_function); + pub fn plpgsql_base_yylex() -> ::core::ffi::c_int; + pub fn plpgsql_yylex() -> ::core::ffi::c_int; + pub fn plpgsql_token_length() -> ::core::ffi::c_int; + pub fn plpgsql_push_back_token(token: ::core::ffi::c_int); + pub fn plpgsql_token_is_unreserved_keyword(token: ::core::ffi::c_int) -> bool; + pub fn plpgsql_append_source_text( + buf: StringInfo, + startlocation: ::core::ffi::c_int, + endlocation: ::core::ffi::c_int, + ); + pub fn plpgsql_peek() -> ::core::ffi::c_int; + pub fn plpgsql_peek2( + tok1_p: *mut ::core::ffi::c_int, + tok2_p: *mut ::core::ffi::c_int, + tok1_loc: *mut ::core::ffi::c_int, + tok2_loc: *mut ::core::ffi::c_int, + ); + pub fn plpgsql_scanner_errposition(location: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn plpgsql_yyerror(message: *const ::core::ffi::c_char) -> !; + pub fn plpgsql_location_to_lineno(location: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn plpgsql_latest_lineno() -> ::core::ffi::c_int; + pub fn plpgsql_scanner_init(str_: *const ::core::ffi::c_char); + pub fn plpgsql_scanner_finish(); + pub fn plpgsql_yyparse() -> ::core::ffi::c_int; + pub static mut EnableSSL: bool; + pub static mut SuperuserReservedConnections: ::core::ffi::c_int; + pub static mut ReservedConnections: ::core::ffi::c_int; + pub static mut PostPortNumber: ::core::ffi::c_int; + pub static mut Unix_socket_permissions: ::core::ffi::c_int; + pub static mut Unix_socket_group: *mut ::core::ffi::c_char; + pub static mut Unix_socket_directories: *mut ::core::ffi::c_char; + pub static mut ListenAddresses: *mut ::core::ffi::c_char; + pub static mut ClientAuthInProgress: bool; + pub static mut PreAuthDelay: ::core::ffi::c_int; + pub static mut AuthenticationTimeout: ::core::ffi::c_int; + pub static mut Log_connections: bool; + pub static mut log_hostname: bool; + pub static mut enable_bonjour: bool; + pub static mut bonjour_name: *mut ::core::ffi::c_char; + pub static mut restart_after_crash: bool; + pub static mut remove_temp_files_after_crash: bool; + pub static mut send_abort_for_crash: bool; + pub static mut send_abort_for_kill: bool; + pub static mut postmaster_alive_fds: [::core::ffi::c_int; 2usize]; + pub static mut progname: *const ::core::ffi::c_char; + pub static mut LoadedSSL: bool; + pub fn PostmasterMain(argc: ::core::ffi::c_int, argv: *mut *mut ::core::ffi::c_char) -> !; + pub fn ClosePostmasterPorts(am_syslogger: bool); + pub fn InitProcessGlobals(); + pub fn MaxLivePostmasterChildren() -> ::core::ffi::c_int; + pub fn PostmasterMarkPIDForWorkerNotify(arg1: ::core::ffi::c_int) -> bool; + pub fn processCancelRequest(backendPID: ::core::ffi::c_int, cancelAuthCode: int32); + pub static mut MyClientSocket: *mut ClientSocket; + pub fn postmaster_child_launch( + child_type: BackendType::Type, + startup_data: *mut ::core::ffi::c_char, + startup_data_len: usize, + client_sock: *mut ClientSocket, + ) -> pid_t; + pub fn PostmasterChildName(child_type: BackendType::Type) -> *const ::core::ffi::c_char; + pub static mut Logging_collector: bool; + pub static mut Log_RotationAge: ::core::ffi::c_int; + pub static mut Log_RotationSize: ::core::ffi::c_int; + pub static mut Log_directory: *mut ::core::ffi::c_char; + pub static mut Log_filename: *mut ::core::ffi::c_char; + pub static mut Log_truncate_on_rotation: bool; + pub static mut Log_file_mode: ::core::ffi::c_int; + pub static mut syslogPipe: [::core::ffi::c_int; 2usize]; + pub fn SysLogger_Start() -> ::core::ffi::c_int; + pub fn write_syslogger_file( + buffer: *const ::core::ffi::c_char, + count: ::core::ffi::c_int, + destination: ::core::ffi::c_int, + ); + pub fn SysLoggerMain(startup_data: *mut ::core::ffi::c_char, startup_data_len: usize) -> !; + pub fn CheckLogrotateSignal() -> bool; + pub fn RemoveLogrotateSignalFiles(); + pub static mut logical_decoding_work_mem: ::core::ffi::c_int; + pub static mut debug_logical_replication_streaming: ::core::ffi::c_int; + pub fn ReorderBufferAllocate() -> *mut ReorderBuffer; + pub fn ReorderBufferFree(rb: *mut ReorderBuffer); + pub fn ReorderBufferGetTupleBuf(rb: *mut ReorderBuffer, tuple_len: Size) -> HeapTuple; + pub fn ReorderBufferReturnTupleBuf(tuple: HeapTuple); + pub fn ReorderBufferGetChange(rb: *mut ReorderBuffer) -> *mut ReorderBufferChange; + pub fn ReorderBufferReturnChange( + rb: *mut ReorderBuffer, + change: *mut ReorderBufferChange, + upd_mem: bool, + ); + pub fn ReorderBufferGetRelids(rb: *mut ReorderBuffer, nrelids: ::core::ffi::c_int) -> *mut Oid; + pub fn ReorderBufferReturnRelids(rb: *mut ReorderBuffer, relids: *mut Oid); + pub fn ReorderBufferQueueChange( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + change: *mut ReorderBufferChange, + toast_insert: bool, + ); + pub fn ReorderBufferQueueMessage( + rb: *mut ReorderBuffer, + xid: TransactionId, + snap: Snapshot, + lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + message_size: Size, + message: *const ::core::ffi::c_char, + ); + pub fn ReorderBufferCommit( + rb: *mut ReorderBuffer, + xid: TransactionId, + commit_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + commit_time: TimestampTz, + origin_id: RepOriginId, + origin_lsn: XLogRecPtr, + ); + pub fn ReorderBufferFinishPrepared( + rb: *mut ReorderBuffer, + xid: TransactionId, + commit_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + two_phase_at: XLogRecPtr, + commit_time: TimestampTz, + origin_id: RepOriginId, + origin_lsn: XLogRecPtr, + gid: *mut ::core::ffi::c_char, + is_commit: bool, + ); + pub fn ReorderBufferAssignChild( + rb: *mut ReorderBuffer, + xid: TransactionId, + subxid: TransactionId, + lsn: XLogRecPtr, + ); + pub fn ReorderBufferCommitChild( + rb: *mut ReorderBuffer, + xid: TransactionId, + subxid: TransactionId, + commit_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + ); + pub fn ReorderBufferAbort( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + abort_time: TimestampTz, + ); + pub fn ReorderBufferAbortOld(rb: *mut ReorderBuffer, oldestRunningXid: TransactionId); + pub fn ReorderBufferForget(rb: *mut ReorderBuffer, xid: TransactionId, lsn: XLogRecPtr); + pub fn ReorderBufferInvalidate(rb: *mut ReorderBuffer, xid: TransactionId, lsn: XLogRecPtr); + pub fn ReorderBufferSetBaseSnapshot( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + snap: Snapshot, + ); + pub fn ReorderBufferAddSnapshot( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + snap: Snapshot, + ); + pub fn ReorderBufferAddNewCommandId( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + cid: CommandId, + ); + pub fn ReorderBufferAddNewTupleCids( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + locator: RelFileLocator, + tid: ItemPointerData, + cmin: CommandId, + cmax: CommandId, + combocid: CommandId, + ); + pub fn ReorderBufferAddInvalidations( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + nmsgs: Size, + msgs: *mut SharedInvalidationMessage, + ); + pub fn ReorderBufferImmediateInvalidation( + rb: *mut ReorderBuffer, + ninvalidations: uint32, + invalidations: *mut SharedInvalidationMessage, + ); + pub fn ReorderBufferProcessXid(rb: *mut ReorderBuffer, xid: TransactionId, lsn: XLogRecPtr); + pub fn ReorderBufferXidSetCatalogChanges( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + ); + pub fn ReorderBufferXidHasCatalogChanges(rb: *mut ReorderBuffer, xid: TransactionId) -> bool; + pub fn ReorderBufferXidHasBaseSnapshot(rb: *mut ReorderBuffer, xid: TransactionId) -> bool; + pub fn ReorderBufferRememberPrepareInfo( + rb: *mut ReorderBuffer, + xid: TransactionId, + prepare_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + origin_id: RepOriginId, + origin_lsn: XLogRecPtr, + ) -> bool; + pub fn ReorderBufferSkipPrepare(rb: *mut ReorderBuffer, xid: TransactionId); + pub fn ReorderBufferPrepare( + rb: *mut ReorderBuffer, + xid: TransactionId, + gid: *mut ::core::ffi::c_char, + ); + pub fn ReorderBufferGetOldestTXN(rb: *mut ReorderBuffer) -> *mut ReorderBufferTXN; + pub fn ReorderBufferGetOldestXmin(rb: *mut ReorderBuffer) -> TransactionId; + pub fn ReorderBufferGetCatalogChangesXacts(rb: *mut ReorderBuffer) -> *mut TransactionId; + pub fn ReorderBufferSetRestartPoint(rb: *mut ReorderBuffer, ptr: XLogRecPtr); + pub fn StartupReorderBuffer(); + pub fn _PG_output_plugin_init(cb: *mut OutputPluginCallbacks); + pub fn OutputPluginPrepareWrite(ctx: *mut LogicalDecodingContext, last_write: bool); + pub fn OutputPluginWrite(ctx: *mut LogicalDecodingContext, last_write: bool); + pub fn OutputPluginUpdateProgress(ctx: *mut LogicalDecodingContext, skipped_xact: bool); + pub fn logicalrep_write_begin(out: StringInfo, txn: *mut ReorderBufferTXN); + pub fn logicalrep_read_begin(in_: StringInfo, begin_data: *mut LogicalRepBeginData); + pub fn logicalrep_write_commit( + out: StringInfo, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_commit(in_: StringInfo, commit_data: *mut LogicalRepCommitData); + pub fn logicalrep_write_begin_prepare(out: StringInfo, txn: *mut ReorderBufferTXN); + pub fn logicalrep_read_begin_prepare( + in_: StringInfo, + begin_data: *mut LogicalRepPreparedTxnData, + ); + pub fn logicalrep_write_prepare( + out: StringInfo, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_prepare(in_: StringInfo, prepare_data: *mut LogicalRepPreparedTxnData); + pub fn logicalrep_write_commit_prepared( + out: StringInfo, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_commit_prepared( + in_: StringInfo, + prepare_data: *mut LogicalRepCommitPreparedTxnData, + ); + pub fn logicalrep_write_rollback_prepared( + out: StringInfo, + txn: *mut ReorderBufferTXN, + prepare_end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + ); + pub fn logicalrep_read_rollback_prepared( + in_: StringInfo, + rollback_data: *mut LogicalRepRollbackPreparedTxnData, + ); + pub fn logicalrep_write_stream_prepare( + out: StringInfo, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_stream_prepare( + in_: StringInfo, + prepare_data: *mut LogicalRepPreparedTxnData, + ); + pub fn logicalrep_write_origin( + out: StringInfo, + origin: *const ::core::ffi::c_char, + origin_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_origin( + in_: StringInfo, + origin_lsn: *mut XLogRecPtr, + ) -> *mut ::core::ffi::c_char; + pub fn logicalrep_write_insert( + out: StringInfo, + xid: TransactionId, + rel: Relation, + newslot: *mut TupleTableSlot, + binary: bool, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_insert( + in_: StringInfo, + newtup: *mut LogicalRepTupleData, + ) -> LogicalRepRelId; + pub fn logicalrep_write_update( + out: StringInfo, + xid: TransactionId, + rel: Relation, + oldslot: *mut TupleTableSlot, + newslot: *mut TupleTableSlot, + binary: bool, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_update( + in_: StringInfo, + has_oldtuple: *mut bool, + oldtup: *mut LogicalRepTupleData, + newtup: *mut LogicalRepTupleData, + ) -> LogicalRepRelId; + pub fn logicalrep_write_delete( + out: StringInfo, + xid: TransactionId, + rel: Relation, + oldslot: *mut TupleTableSlot, + binary: bool, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_delete( + in_: StringInfo, + oldtup: *mut LogicalRepTupleData, + ) -> LogicalRepRelId; + pub fn logicalrep_write_truncate( + out: StringInfo, + xid: TransactionId, + nrelids: ::core::ffi::c_int, + relids: *mut Oid, + cascade: bool, + restart_seqs: bool, + ); + pub fn logicalrep_read_truncate( + in_: StringInfo, + cascade: *mut bool, + restart_seqs: *mut bool, + ) -> *mut List; + pub fn logicalrep_write_message( + out: StringInfo, + xid: TransactionId, + lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + sz: Size, + message: *const ::core::ffi::c_char, + ); + pub fn logicalrep_write_rel( + out: StringInfo, + xid: TransactionId, + rel: Relation, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_rel(in_: StringInfo) -> *mut LogicalRepRelation; + pub fn logicalrep_write_typ(out: StringInfo, xid: TransactionId, typoid: Oid); + pub fn logicalrep_read_typ(in_: StringInfo, ltyp: *mut LogicalRepTyp); + pub fn logicalrep_write_stream_start(out: StringInfo, xid: TransactionId, first_segment: bool); + pub fn logicalrep_read_stream_start(in_: StringInfo, first_segment: *mut bool) + -> TransactionId; + pub fn logicalrep_write_stream_stop(out: StringInfo); + pub fn logicalrep_write_stream_commit( + out: StringInfo, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_stream_commit( + in_: StringInfo, + commit_data: *mut LogicalRepCommitData, + ) -> TransactionId; + pub fn logicalrep_write_stream_abort( + out: StringInfo, + xid: TransactionId, + subxid: TransactionId, + abort_lsn: XLogRecPtr, + abort_time: TimestampTz, + write_abort_info: bool, + ); + pub fn logicalrep_read_stream_abort( + in_: StringInfo, + abort_data: *mut LogicalRepStreamAbortData, + read_abort_info: bool, + ); + pub fn logicalrep_message_type(action: LogicalRepMsgType::Type) -> *const ::core::ffi::c_char; + pub static mut am_walsender: bool; + pub static mut am_cascading_walsender: bool; + pub static mut am_db_walsender: bool; + pub static mut wake_wal_senders: bool; + pub static mut max_wal_senders: ::core::ffi::c_int; + pub static mut wal_sender_timeout: ::core::ffi::c_int; + pub static mut log_replication_commands: bool; + pub fn InitWalSender(); + pub fn exec_replication_command(cmd_string: *const ::core::ffi::c_char) -> bool; + pub fn WalSndErrorCleanup(); + pub fn WalSndResourceCleanup(isCommit: bool); + pub fn PhysicalWakeupLogicalWalSnd(); + pub fn GetStandbyFlushRecPtr(tli: *mut TimeLineID) -> XLogRecPtr; + pub fn WalSndSignals(); + pub fn WalSndShmemSize() -> Size; + pub fn WalSndShmemInit(); + pub fn WalSndWakeup(physical: bool, logical: bool); + pub fn WalSndInitStopping(); + pub fn WalSndWaitStopping(); + pub fn HandleWalSndInitStopping(); + pub fn WalSndRqstFileReload(); + pub static mut wal_receiver_status_interval: ::core::ffi::c_int; + pub static mut wal_receiver_timeout: ::core::ffi::c_int; + pub static mut hot_standby_feedback: bool; + pub static mut WalRcv: *mut WalRcvData; + pub static mut WalReceiverFunctions: *mut WalReceiverFunctionsType; + pub fn WalReceiverMain(startup_data: *mut ::core::ffi::c_char, startup_data_len: usize) -> !; + pub fn ProcessWalRcvInterrupts(); + pub fn WalRcvForceReply(); + pub fn WalRcvShmemSize() -> Size; + pub fn WalRcvShmemInit(); + pub fn ShutdownWalRcv(); + pub fn WalRcvStreaming() -> bool; + pub fn WalRcvRunning() -> bool; + pub fn RequestXLogStreaming( + tli: TimeLineID, + recptr: XLogRecPtr, + conninfo: *const ::core::ffi::c_char, + slotname: *const ::core::ffi::c_char, + create_temp_slot: bool, + ); + pub fn GetWalRcvFlushRecPtr( + latestChunkStart: *mut XLogRecPtr, + receiveTLI: *mut TimeLineID, + ) -> XLogRecPtr; + pub fn GetWalRcvWriteRecPtr() -> XLogRecPtr; + pub fn GetReplicationApplyDelay() -> ::core::ffi::c_int; + pub fn GetReplicationTransferLatency() -> ::core::ffi::c_int; + pub static SlotInvalidationCauses: [*const ::core::ffi::c_char; 0usize]; + pub static mut ReplicationSlotCtl: *mut ReplicationSlotCtlData; + pub static mut MyReplicationSlot: *mut ReplicationSlot; + pub static mut max_replication_slots: ::core::ffi::c_int; + pub static mut synchronized_standby_slots: *mut ::core::ffi::c_char; + pub fn ReplicationSlotsShmemSize() -> Size; + pub fn ReplicationSlotsShmemInit(); + pub fn ReplicationSlotCreate( + name: *const ::core::ffi::c_char, + db_specific: bool, + persistency: ReplicationSlotPersistency::Type, + two_phase: bool, + failover: bool, + synced: bool, + ); + pub fn ReplicationSlotPersist(); + pub fn ReplicationSlotDrop(name: *const ::core::ffi::c_char, nowait: bool); + pub fn ReplicationSlotDropAcquired(); + pub fn ReplicationSlotAlter(name: *const ::core::ffi::c_char, failover: bool); + pub fn ReplicationSlotAcquire(name: *const ::core::ffi::c_char, nowait: bool); + pub fn ReplicationSlotRelease(); + pub fn ReplicationSlotCleanup(synced_only: bool); + pub fn ReplicationSlotSave(); + pub fn ReplicationSlotMarkDirty(); + pub fn ReplicationSlotInitialize(); + pub fn ReplicationSlotValidateName( + name: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> bool; + pub fn ReplicationSlotReserveWal(); + pub fn ReplicationSlotsComputeRequiredXmin(already_locked: bool); + pub fn ReplicationSlotsComputeRequiredLSN(); + pub fn ReplicationSlotsComputeLogicalRestartLSN() -> XLogRecPtr; + pub fn ReplicationSlotsCountDBSlots( + dboid: Oid, + nslots: *mut ::core::ffi::c_int, + nactive: *mut ::core::ffi::c_int, + ) -> bool; + pub fn ReplicationSlotsDropDBSlots(dboid: Oid); + pub fn InvalidateObsoleteReplicationSlots( + cause: ReplicationSlotInvalidationCause::Type, + oldestSegno: XLogSegNo, + dboid: Oid, + snapshotConflictHorizon: TransactionId, + ) -> bool; + pub fn SearchNamedReplicationSlot( + name: *const ::core::ffi::c_char, + need_lock: bool, + ) -> *mut ReplicationSlot; + pub fn ReplicationSlotIndex(slot: *mut ReplicationSlot) -> ::core::ffi::c_int; + pub fn ReplicationSlotName(index: ::core::ffi::c_int, name: Name) -> bool; + pub fn ReplicationSlotNameForTablesync( + suboid: Oid, + relid: Oid, + syncslotname: *mut ::core::ffi::c_char, + szslot: Size, + ); + pub fn ReplicationSlotDropAtPubNode( + wrconn: *mut WalReceiverConn, + slotname: *mut ::core::ffi::c_char, + missing_ok: bool, + ); + pub fn StartupReplicationSlots(); + pub fn CheckPointReplicationSlots(is_shutdown: bool); + pub fn CheckSlotRequirements(); + pub fn CheckSlotPermissions(); + pub fn GetSlotInvalidationCause( + invalidation_reason: *const ::core::ffi::c_char, + ) -> ReplicationSlotInvalidationCause::Type; + pub fn SlotExistsInSyncStandbySlots(slot_name: *const ::core::ffi::c_char) -> bool; + pub fn StandbySlotsHaveCaughtup(wait_for_lsn: XLogRecPtr, elevel: ::core::ffi::c_int) -> bool; + pub fn WaitForStandbyConfirmation(wait_for_lsn: XLogRecPtr); + pub fn CheckLogicalDecodingRequirements(); + pub fn CreateInitDecodingContext( + plugin: *const ::core::ffi::c_char, + output_plugin_options: *mut List, + need_full_snapshot: bool, + restart_lsn: XLogRecPtr, + xl_routine: *mut XLogReaderRoutine, + prepare_write: LogicalOutputPluginWriterPrepareWrite, + do_write: LogicalOutputPluginWriterWrite, + update_progress: LogicalOutputPluginWriterUpdateProgress, + ) -> *mut LogicalDecodingContext; + pub fn CreateDecodingContext( + start_lsn: XLogRecPtr, + output_plugin_options: *mut List, + fast_forward: bool, + xl_routine: *mut XLogReaderRoutine, + prepare_write: LogicalOutputPluginWriterPrepareWrite, + do_write: LogicalOutputPluginWriterWrite, + update_progress: LogicalOutputPluginWriterUpdateProgress, + ) -> *mut LogicalDecodingContext; + pub fn DecodingContextFindStartpoint(ctx: *mut LogicalDecodingContext); + pub fn DecodingContextReady(ctx: *mut LogicalDecodingContext) -> bool; + pub fn FreeDecodingContext(ctx: *mut LogicalDecodingContext); + pub fn LogicalIncreaseXminForSlot(current_lsn: XLogRecPtr, xmin: TransactionId); + pub fn LogicalIncreaseRestartDecodingForSlot(current_lsn: XLogRecPtr, restart_lsn: XLogRecPtr); + pub fn LogicalConfirmReceivedLocation(lsn: XLogRecPtr); + pub fn filter_prepare_cb_wrapper( + ctx: *mut LogicalDecodingContext, + xid: TransactionId, + gid: *const ::core::ffi::c_char, + ) -> bool; + pub fn filter_by_origin_cb_wrapper( + ctx: *mut LogicalDecodingContext, + origin_id: RepOriginId, + ) -> bool; + pub fn ResetLogicalStreamingState(); + pub fn UpdateDecodingStats(ctx: *mut LogicalDecodingContext); + pub fn LogicalReplicationSlotHasPendingWal(end_of_wal: XLogRecPtr) -> bool; + pub fn LogicalSlotAdvanceAndCheckSnapState( + moveto: XLogRecPtr, + found_consistent_snapshot: *mut bool, + ) -> XLogRecPtr; + pub fn QueryRewrite(parsetree: *mut Query) -> *mut List; + pub fn AcquireRewriteLocks(parsetree: *mut Query, forExecute: bool, forUpdatePushedDown: bool); + pub fn build_column_default(rel: Relation, attrno: ::core::ffi::c_int) -> *mut Node; + pub fn get_view_query(view: Relation) -> *mut Query; + pub fn view_has_instead_trigger( + view: Relation, + event: CmdType::Type, + mergeActionList: *mut List, + ) -> bool; + pub fn view_query_is_auto_updatable( + viewquery: *mut Query, + check_cols: bool, + ) -> *const ::core::ffi::c_char; + pub fn relation_is_updatable( + reloid: Oid, + outer_reloids: *mut List, + include_triggers: bool, + include_cols: *mut Bitmapset, + ) -> ::core::ffi::c_int; + pub fn error_view_not_updatable( + view: Relation, + command: CmdType::Type, + mergeActionList: *mut List, + detail: *const ::core::ffi::c_char, + ); + pub static mut row_security_policy_hook_permissive: row_security_policy_hook_type; + pub static mut row_security_policy_hook_restrictive: row_security_policy_hook_type; + pub fn get_row_security_policies( + root: *mut Query, + rte: *mut RangeTblEntry, + rt_index: ::core::ffi::c_int, + securityQuals: *mut *mut List, + withCheckOptions: *mut *mut List, + hasRowSecurity: *mut bool, + hasSubLinks: *mut bool, + ); + pub fn BufFileCreateTemp(interXact: bool) -> *mut BufFile; + pub fn BufFileClose(file: *mut BufFile); + pub fn BufFileRead(file: *mut BufFile, ptr: *mut ::core::ffi::c_void, size: usize) -> usize; + pub fn BufFileReadExact(file: *mut BufFile, ptr: *mut ::core::ffi::c_void, size: usize); + pub fn BufFileReadMaybeEOF( + file: *mut BufFile, + ptr: *mut ::core::ffi::c_void, + size: usize, + eofOK: bool, + ) -> usize; + pub fn BufFileWrite(file: *mut BufFile, ptr: *const ::core::ffi::c_void, size: usize); + pub fn BufFileSeek( + file: *mut BufFile, + fileno: ::core::ffi::c_int, + offset: off_t, + whence: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn BufFileTell(file: *mut BufFile, fileno: *mut ::core::ffi::c_int, offset: *mut off_t); + pub fn BufFileSeekBlock(file: *mut BufFile, blknum: int64) -> ::core::ffi::c_int; + pub fn BufFileSize(file: *mut BufFile) -> int64; + pub fn BufFileAppend(target: *mut BufFile, source: *mut BufFile) -> int64; + pub fn BufFileCreateFileSet( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + ) -> *mut BufFile; + pub fn BufFileExportFileSet(file: *mut BufFile); + pub fn BufFileOpenFileSet( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + mode: ::core::ffi::c_int, + missing_ok: bool, + ) -> *mut BufFile; + pub fn BufFileDeleteFileSet( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + missing_ok: bool, + ); + pub fn BufFileTruncateFileSet(file: *mut BufFile, fileno: ::core::ffi::c_int, offset: off_t); + pub static mut proc_exit_inprogress: bool; + pub static mut shmem_exit_inprogress: bool; + pub fn proc_exit(code: ::core::ffi::c_int) -> !; + pub fn shmem_exit(code: ::core::ffi::c_int); + pub fn on_proc_exit(function: pg_on_exit_callback, arg: Datum); + pub fn on_shmem_exit(function: pg_on_exit_callback, arg: Datum); + pub fn before_shmem_exit(function: pg_on_exit_callback, arg: Datum); + pub fn cancel_before_shmem_exit(function: pg_on_exit_callback, arg: Datum); + pub fn on_exit_reset(); + pub fn check_on_shmem_exit_lists_are_empty(); + pub static mut shmem_startup_hook: shmem_startup_hook_type; + pub fn CalculateShmemSize(num_semaphores: *mut ::core::ffi::c_int) -> Size; + pub fn CreateSharedMemoryAndSemaphores(); + pub fn InitializeShmemGUCs(); + pub fn RelationInitLockInfo(relation: Relation); + pub fn LockRelationOid(relid: Oid, lockmode: LOCKMODE); + pub fn LockRelationId(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn ConditionalLockRelationOid(relid: Oid, lockmode: LOCKMODE) -> bool; + pub fn UnlockRelationId(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn UnlockRelationOid(relid: Oid, lockmode: LOCKMODE); + pub fn LockRelation(relation: Relation, lockmode: LOCKMODE); + pub fn ConditionalLockRelation(relation: Relation, lockmode: LOCKMODE) -> bool; + pub fn UnlockRelation(relation: Relation, lockmode: LOCKMODE); + pub fn CheckRelationLockedByMe( + relation: Relation, + lockmode: LOCKMODE, + orstronger: bool, + ) -> bool; + pub fn CheckRelationOidLockedByMe(relid: Oid, lockmode: LOCKMODE, orstronger: bool) -> bool; + pub fn LockHasWaitersRelation(relation: Relation, lockmode: LOCKMODE) -> bool; + pub fn LockRelationIdForSession(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn UnlockRelationIdForSession(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn LockRelationForExtension(relation: Relation, lockmode: LOCKMODE); + pub fn UnlockRelationForExtension(relation: Relation, lockmode: LOCKMODE); + pub fn ConditionalLockRelationForExtension(relation: Relation, lockmode: LOCKMODE) -> bool; + pub fn RelationExtensionLockWaiterCount(relation: Relation) -> ::core::ffi::c_int; + pub fn LockDatabaseFrozenIds(lockmode: LOCKMODE); + pub fn LockPage(relation: Relation, blkno: BlockNumber, lockmode: LOCKMODE); + pub fn ConditionalLockPage(relation: Relation, blkno: BlockNumber, lockmode: LOCKMODE) -> bool; + pub fn UnlockPage(relation: Relation, blkno: BlockNumber, lockmode: LOCKMODE); + pub fn LockTuple(relation: Relation, tid: ItemPointer, lockmode: LOCKMODE); + pub fn ConditionalLockTuple(relation: Relation, tid: ItemPointer, lockmode: LOCKMODE) -> bool; + pub fn UnlockTuple(relation: Relation, tid: ItemPointer, lockmode: LOCKMODE); + pub fn XactLockTableInsert(xid: TransactionId); + pub fn XactLockTableDelete(xid: TransactionId); + pub fn XactLockTableWait( + xid: TransactionId, + rel: Relation, + ctid: ItemPointer, + oper: XLTW_Oper::Type, + ); + pub fn ConditionalXactLockTableWait(xid: TransactionId) -> bool; + pub fn WaitForLockers(heaplocktag: LOCKTAG, lockmode: LOCKMODE, progress: bool); + pub fn WaitForLockersMultiple(locktags: *mut List, lockmode: LOCKMODE, progress: bool); + pub fn SpeculativeInsertionLockAcquire(xid: TransactionId) -> uint32; + pub fn SpeculativeInsertionLockRelease(xid: TransactionId); + pub fn SpeculativeInsertionWait(xid: TransactionId, token: uint32); + pub fn LockDatabaseObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn ConditionalLockDatabaseObject( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ) -> bool; + pub fn UnlockDatabaseObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn LockSharedObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn ConditionalLockSharedObject( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ) -> bool; + pub fn UnlockSharedObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn LockSharedObjectForSession( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ); + pub fn UnlockSharedObjectForSession( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ); + pub fn LockApplyTransactionForSession( + suboid: Oid, + xid: TransactionId, + objid: uint16, + lockmode: LOCKMODE, + ); + pub fn UnlockApplyTransactionForSession( + suboid: Oid, + xid: TransactionId, + objid: uint16, + lockmode: LOCKMODE, + ); + pub fn DescribeLockTag(buf: StringInfo, tag: *const LOCKTAG); + pub fn GetLockNameFromTagType(locktag_type: uint16) -> *const ::core::ffi::c_char; + pub fn ProcSignalShmemSize() -> Size; + pub fn ProcSignalShmemInit(); + pub fn ProcSignalInit(); + pub fn SendProcSignal( + pid: pid_t, + reason: ProcSignalReason::Type, + procNumber: ProcNumber, + ) -> ::core::ffi::c_int; + pub fn EmitProcSignalBarrier(type_: ProcSignalBarrierType::Type) -> uint64; + pub fn WaitForProcSignalBarrier(generation: uint64); + pub fn ProcessProcSignalBarrier(); + pub fn procsignal_sigusr1_handler(postgres_signal_arg: ::core::ffi::c_int); + pub fn standby_redo(record: *mut XLogReaderState); + pub fn standby_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn standby_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn standby_desc_invalidations( + buf: StringInfo, + nmsgs: ::core::ffi::c_int, + msgs: *mut SharedInvalidationMessage, + dbId: Oid, + tsId: Oid, + relcacheInitFileInval: bool, + ); + pub static mut max_standby_archive_delay: ::core::ffi::c_int; + pub static mut max_standby_streaming_delay: ::core::ffi::c_int; + pub static mut log_recovery_conflict_waits: bool; + pub fn InitRecoveryTransactionEnvironment(); + pub fn ShutdownRecoveryTransactionEnvironment(); + pub fn ResolveRecoveryConflictWithSnapshot( + snapshotConflictHorizon: TransactionId, + isCatalogRel: bool, + locator: RelFileLocator, + ); + pub fn ResolveRecoveryConflictWithSnapshotFullXid( + snapshotConflictHorizon: FullTransactionId, + isCatalogRel: bool, + locator: RelFileLocator, + ); + pub fn ResolveRecoveryConflictWithTablespace(tsid: Oid); + pub fn ResolveRecoveryConflictWithDatabase(dbid: Oid); + pub fn ResolveRecoveryConflictWithLock(locktag: LOCKTAG, logging_conflict: bool); + pub fn ResolveRecoveryConflictWithBufferPin(); + pub fn CheckRecoveryConflictDeadlock(); + pub fn StandbyDeadLockHandler(); + pub fn StandbyTimeoutHandler(); + pub fn StandbyLockTimeoutHandler(); + pub fn LogRecoveryConflict( + reason: ProcSignalReason::Type, + wait_start: TimestampTz, + now: TimestampTz, + wait_list: *mut VirtualTransactionId, + still_waiting: bool, + ); + pub fn StandbyAcquireAccessExclusiveLock(xid: TransactionId, dbOid: Oid, relOid: Oid); + pub fn StandbyReleaseLockTree( + xid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + ); + pub fn StandbyReleaseAllLocks(); + pub fn StandbyReleaseOldLocks(oldxid: TransactionId); + pub fn LogAccessExclusiveLock(dbOid: Oid, relOid: Oid); + pub fn LogAccessExclusiveLockPrepare(); + pub fn LogStandbySnapshot() -> XLogRecPtr; + pub fn LogStandbyInvalidations( + nmsgs: ::core::ffi::c_int, + msgs: *mut SharedInvalidationMessage, + relcacheInitFileInval: bool, + ); + pub fn ProcArrayShmemSize() -> Size; + pub fn CreateSharedProcArray(); + pub fn ProcArrayAdd(proc_: *mut PGPROC); + pub fn ProcArrayRemove(proc_: *mut PGPROC, latestXid: TransactionId); + pub fn ProcArrayEndTransaction(proc_: *mut PGPROC, latestXid: TransactionId); + pub fn ProcArrayClearTransaction(proc_: *mut PGPROC); + pub fn ProcArrayInitRecovery(initializedUptoXID: TransactionId); + pub fn ProcArrayApplyRecoveryInfo(running: RunningTransactions); + pub fn ProcArrayApplyXidAssignment( + topxid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + ); + pub fn RecordKnownAssignedTransactionIds(xid: TransactionId); + pub fn ExpireTreeKnownAssignedTransactionIds( + xid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + max_xid: TransactionId, + ); + pub fn ExpireAllKnownAssignedTransactionIds(); + pub fn ExpireOldKnownAssignedTransactionIds(xid: TransactionId); + pub fn KnownAssignedTransactionIdsIdleMaintenance(); + pub fn GetMaxSnapshotXidCount() -> ::core::ffi::c_int; + pub fn GetMaxSnapshotSubxidCount() -> ::core::ffi::c_int; + pub fn GetSnapshotData(snapshot: Snapshot) -> Snapshot; + pub fn ProcArrayInstallImportedXmin( + xmin: TransactionId, + sourcevxid: *mut VirtualTransactionId, + ) -> bool; + pub fn ProcArrayInstallRestoredXmin(xmin: TransactionId, proc_: *mut PGPROC) -> bool; + pub fn GetRunningTransactionData() -> RunningTransactions; + pub fn TransactionIdIsInProgress(xid: TransactionId) -> bool; + pub fn TransactionIdIsActive(xid: TransactionId) -> bool; + pub fn GetOldestNonRemovableTransactionId(rel: Relation) -> TransactionId; + pub fn GetOldestTransactionIdConsideredRunning() -> TransactionId; + pub fn GetOldestActiveTransactionId() -> TransactionId; + pub fn GetOldestSafeDecodingTransactionId(catalogOnly: bool) -> TransactionId; + pub fn GetReplicationHorizons(xmin: *mut TransactionId, catalog_xmin: *mut TransactionId); + pub fn GetVirtualXIDsDelayingChkpt( + nvxids: *mut ::core::ffi::c_int, + type_: ::core::ffi::c_int, + ) -> *mut VirtualTransactionId; + pub fn HaveVirtualXIDsDelayingChkpt( + vxids: *mut VirtualTransactionId, + nvxids: ::core::ffi::c_int, + type_: ::core::ffi::c_int, + ) -> bool; + pub fn ProcNumberGetProc(procNumber: ::core::ffi::c_int) -> *mut PGPROC; + pub fn ProcNumberGetTransactionIds( + procNumber: ::core::ffi::c_int, + xid: *mut TransactionId, + xmin: *mut TransactionId, + nsubxid: *mut ::core::ffi::c_int, + overflowed: *mut bool, + ); + pub fn BackendPidGetProc(pid: ::core::ffi::c_int) -> *mut PGPROC; + pub fn BackendPidGetProcWithLock(pid: ::core::ffi::c_int) -> *mut PGPROC; + pub fn BackendXidGetPid(xid: TransactionId) -> ::core::ffi::c_int; + pub fn IsBackendPid(pid: ::core::ffi::c_int) -> bool; + pub fn GetCurrentVirtualXIDs( + limitXmin: TransactionId, + excludeXmin0: bool, + allDbs: bool, + excludeVacuum: ::core::ffi::c_int, + nvxids: *mut ::core::ffi::c_int, + ) -> *mut VirtualTransactionId; + pub fn GetConflictingVirtualXIDs( + limitXmin: TransactionId, + dbOid: Oid, + ) -> *mut VirtualTransactionId; + pub fn CancelVirtualTransaction( + vxid: VirtualTransactionId, + sigmode: ProcSignalReason::Type, + ) -> pid_t; + pub fn SignalVirtualTransaction( + vxid: VirtualTransactionId, + sigmode: ProcSignalReason::Type, + conflictPending: bool, + ) -> pid_t; + pub fn MinimumActiveBackends(min: ::core::ffi::c_int) -> bool; + pub fn CountDBBackends(databaseid: Oid) -> ::core::ffi::c_int; + pub fn CountDBConnections(databaseid: Oid) -> ::core::ffi::c_int; + pub fn CancelDBBackends( + databaseid: Oid, + sigmode: ProcSignalReason::Type, + conflictPending: bool, + ); + pub fn CountUserBackends(roleid: Oid) -> ::core::ffi::c_int; + pub fn CountOtherDBBackends( + databaseId: Oid, + nbackends: *mut ::core::ffi::c_int, + nprepared: *mut ::core::ffi::c_int, + ) -> bool; + pub fn TerminateOtherDBBackends(databaseId: Oid); + pub fn XidCacheRemoveRunningXids( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *const TransactionId, + latestXid: TransactionId, + ); + pub fn ProcArraySetReplicationSlotXmin( + xmin: TransactionId, + catalog_xmin: TransactionId, + already_locked: bool, + ); + pub fn ProcArrayGetReplicationSlotXmin( + xmin: *mut TransactionId, + catalog_xmin: *mut TransactionId, + ); + pub static mut ActivePortal: Portal; + pub fn ChoosePortalStrategy(stmts: *mut List) -> PortalStrategy::Type; + pub fn FetchPortalTargetList(portal: Portal) -> *mut List; + pub fn FetchStatementTargetList(stmt: *mut Node) -> *mut List; + pub fn PortalStart( + portal: Portal, + params: ParamListInfo, + eflags: ::core::ffi::c_int, + snapshot: Snapshot, + ); + pub fn PortalSetResultFormat(portal: Portal, nFormats: ::core::ffi::c_int, formats: *mut int16); + pub fn PortalRun( + portal: Portal, + count: ::core::ffi::c_long, + isTopLevel: bool, + run_once: bool, + dest: *mut DestReceiver, + altdest: *mut DestReceiver, + qc: *mut QueryCompletion, + ) -> bool; + pub fn PortalRunFetch( + portal: Portal, + fdirection: FetchDirection::Type, + count: ::core::ffi::c_long, + dest: *mut DestReceiver, + ) -> uint64; + pub fn PlannedStmtRequiresSnapshot(pstmt: *mut PlannedStmt) -> bool; + pub fn EnsurePortalSnapshotExists(); + pub static mut whereToSendOutput: CommandDest::Type; + pub static mut debug_query_string: *const ::core::ffi::c_char; + pub static mut max_stack_depth: ::core::ffi::c_int; + pub static mut PostAuthDelay: ::core::ffi::c_int; + pub static mut client_connection_check_interval: ::core::ffi::c_int; + pub static mut log_statement: ::core::ffi::c_int; + pub static mut restrict_nonsystem_relation_kind: ::core::ffi::c_int; + pub fn pg_parse_query(query_string: *const ::core::ffi::c_char) -> *mut List; + pub fn pg_rewrite_query(query: *mut Query) -> *mut List; + pub fn pg_analyze_and_rewrite_fixedparams( + parsetree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + paramTypes: *const Oid, + numParams: ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn pg_analyze_and_rewrite_varparams( + parsetree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + paramTypes: *mut *mut Oid, + numParams: *mut ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn pg_analyze_and_rewrite_withcb( + parsetree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn pg_plan_query( + querytree: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut PlannedStmt; + pub fn pg_plan_queries( + querytrees: *mut List, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut List; + pub fn die(postgres_signal_arg: ::core::ffi::c_int); + pub fn quickdie(postgres_signal_arg: ::core::ffi::c_int) -> !; + pub fn StatementCancelHandler(postgres_signal_arg: ::core::ffi::c_int); + pub fn FloatExceptionHandler(postgres_signal_arg: ::core::ffi::c_int) -> !; + pub fn HandleRecoveryConflictInterrupt(reason: ProcSignalReason::Type); + pub fn ProcessClientReadInterrupt(blocked: bool); + pub fn ProcessClientWriteInterrupt(blocked: bool); + pub fn process_postgres_switches( + argc: ::core::ffi::c_int, + argv: *mut *mut ::core::ffi::c_char, + ctx: GucContext::Type, + dbname: *mut *const ::core::ffi::c_char, + ); + pub fn PostgresSingleUserMain( + argc: ::core::ffi::c_int, + argv: *mut *mut ::core::ffi::c_char, + username: *const ::core::ffi::c_char, + ) -> !; + pub fn PostgresMain( + dbname: *const ::core::ffi::c_char, + username: *const ::core::ffi::c_char, + ) -> !; + pub fn get_stack_depth_rlimit() -> ::core::ffi::c_long; + pub fn ResetUsage(); + pub fn ShowUsage(title: *const ::core::ffi::c_char); + pub fn check_log_duration( + msec_str: *mut ::core::ffi::c_char, + was_logged: bool, + ) -> ::core::ffi::c_int; + pub fn set_debug_options( + debug_flag: ::core::ffi::c_int, + context: GucContext::Type, + source: GucSource::Type, + ); + pub fn set_plan_disabling_options( + arg: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + ) -> bool; + pub fn get_stats_option_name(arg: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char; + pub static mut ProcessUtility_hook: ProcessUtility_hook_type; + pub fn ProcessUtility( + pstmt: *mut PlannedStmt, + queryString: *const ::core::ffi::c_char, + readOnlyTree: bool, + context: ProcessUtilityContext::Type, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn standard_ProcessUtility( + pstmt: *mut PlannedStmt, + queryString: *const ::core::ffi::c_char, + readOnlyTree: bool, + context: ProcessUtilityContext::Type, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn ProcessUtilityForAlterTable(stmt: *mut Node, context: *mut AlterTableUtilityContext); + pub fn UtilityReturnsTuples(parsetree: *mut Node) -> bool; + pub fn UtilityTupleDescriptor(parsetree: *mut Node) -> TupleDesc; + pub fn UtilityContainsQuery(parsetree: *mut Node) -> *mut Query; + pub fn CreateCommandTag(parsetree: *mut Node) -> CommandTag::Type; + pub fn GetCommandLogLevel(parsetree: *mut Node) -> LogStmtLevel::Type; + pub fn CommandIsReadOnly(pstmt: *mut PlannedStmt) -> bool; + pub fn compareWordEntryPos( + a: *const ::core::ffi::c_void, + b: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub static tsearch_op_priority: [::core::ffi::c_int; 4usize]; + pub fn get_tsearch_config_filename( + basename: *const ::core::ffi::c_char, + extension: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn readstoplist( + fname: *const ::core::ffi::c_char, + s: *mut StopList, + wordop: ::core::option::Option< + unsafe extern "C" fn(arg1: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char, + >, + ); + pub fn searchstoplist(s: *mut StopList, key: *mut ::core::ffi::c_char) -> bool; + pub fn init_tsvector_parser( + input: *mut ::core::ffi::c_char, + flags: ::core::ffi::c_int, + escontext: *mut Node, + ) -> TSVectorParseState; + pub fn reset_tsvector_parser(state: TSVectorParseState, input: *mut ::core::ffi::c_char); + pub fn gettoken_tsvector( + state: TSVectorParseState, + strval: *mut *mut ::core::ffi::c_char, + lenval: *mut ::core::ffi::c_int, + pos_ptr: *mut *mut WordEntryPos, + poslen: *mut ::core::ffi::c_int, + endptr: *mut *mut ::core::ffi::c_char, + ) -> bool; + pub fn close_tsvector_parser(state: TSVectorParseState); + pub fn parse_tsquery( + buf: *mut ::core::ffi::c_char, + pushval: PushFunction, + opaque: Datum, + flags: ::core::ffi::c_int, + escontext: *mut Node, + ) -> TSQuery; + pub fn pushValue( + state: TSQueryParserState, + strval: *mut ::core::ffi::c_char, + lenval: ::core::ffi::c_int, + weight: int16, + prefix: bool, + ); + pub fn pushStop(state: TSQueryParserState); + pub fn pushOperator(state: TSQueryParserState, oper: int8, distance: int16); + pub fn parsetext( + cfgId: Oid, + prs: *mut ParsedText, + buf: *mut ::core::ffi::c_char, + buflen: int32, + ); + pub fn hlparsetext( + cfgId: Oid, + prs: *mut HeadlineParsedText, + query: TSQuery, + buf: *mut ::core::ffi::c_char, + buflen: int32, + ); + pub fn generateHeadline(prs: *mut HeadlineParsedText) -> *mut text; + pub fn TS_execute( + curitem: *mut QueryItem, + arg: *mut ::core::ffi::c_void, + flags: uint32, + chkcond: TSExecuteCallback, + ) -> bool; + pub fn TS_execute_ternary( + curitem: *mut QueryItem, + arg: *mut ::core::ffi::c_void, + flags: uint32, + chkcond: TSExecuteCallback, + ) -> TSTernaryValue::Type; + pub fn TS_execute_locations( + curitem: *mut QueryItem, + arg: *mut ::core::ffi::c_void, + flags: uint32, + chkcond: TSExecuteCallback, + ) -> *mut List; + pub fn tsquery_requires_match(curitem: *mut QueryItem) -> bool; + pub fn make_tsvector(prs: *mut ParsedText) -> TSVector; + pub fn tsCompareString( + a: *mut ::core::ffi::c_char, + lena: ::core::ffi::c_int, + b: *mut ::core::ffi::c_char, + lenb: ::core::ffi::c_int, + prefix: bool, + ) -> int32; + pub fn clean_NOT(ptr: *mut QueryItem, len: *mut int32) -> *mut QueryItem; + pub fn cleanup_tsquery_stopwords(in_: TSQuery, noisy: bool) -> TSQuery; + pub fn QT2QTN(in_: *mut QueryItem, operand: *mut ::core::ffi::c_char) -> *mut QTNode; + pub fn QTN2QT(in_: *mut QTNode) -> TSQuery; + pub fn QTNFree(in_: *mut QTNode); + pub fn QTNSort(in_: *mut QTNode); + pub fn QTNTernary(in_: *mut QTNode); + pub fn QTNBinary(in_: *mut QTNode); + pub fn QTNodeCompare(an: *mut QTNode, bn: *mut QTNode) -> ::core::ffi::c_int; + pub fn QTNCopy(in_: *mut QTNode) -> *mut QTNode; + pub fn QTNClearFlags(in_: *mut QTNode, flags: uint32); + pub fn QTNEq(a: *mut QTNode, b: *mut QTNode) -> bool; + pub fn makeTSQuerySign(a: TSQuery) -> TSQuerySign; + pub fn findsubquery( + root: *mut QTNode, + ex: *mut QTNode, + subs: *mut QTNode, + isfind: *mut bool, + ) -> *mut QTNode; + pub fn heap_tableam_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaout(fcinfo: FunctionCallInfo) -> Datum; + pub fn charout(fcinfo: FunctionCallInfo) -> Datum; + pub fn namein(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameout(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2in(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2out(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4in(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4out(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocout(fcinfo: FunctionCallInfo) -> Datum; + pub fn textin(fcinfo: FunctionCallInfo) -> Datum; + pub fn textout(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn boollt(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn booleq(fcinfo: FunctionCallInfo) -> Datum; + pub fn chareq(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn texteq(fcinfo: FunctionCallInfo) -> Datum; + pub fn xideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn cideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn charne(fcinfo: FunctionCallInfo) -> Datum; + pub fn charle(fcinfo: FunctionCallInfo) -> Datum; + pub fn chargt(fcinfo: FunctionCallInfo) -> Datum; + pub fn charge(fcinfo: FunctionCallInfo) -> Datum; + pub fn chartoi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4tochar(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolne(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pgsql_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn eqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn neqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarltsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargtsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn eqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn neqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarltjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargtjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownin(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownout(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_above_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_below_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_pb(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_ppath(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn areasel(fcinfo: FunctionCallInfo) -> Datum; + pub fn areajoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn textne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn oideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidne(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_contain(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_contain_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4in(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4out(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4um(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4um(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2um(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8in(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8out(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8um(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn dround(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtrunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsqrt(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcbrt(fcinfo: FunctionCallInfo) -> Datum; + pub fn dpow(fcinfo: FunctionCallInfo) -> Datum; + pub fn dexp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dlog1(fcinfo: FunctionCallInfo) -> Datum; + pub fn i2tod(fcinfo: FunctionCallInfo) -> Datum; + pub fn i2tof(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtoi2(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftoi2(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameeqtext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namelttext(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameletext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namegetext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namegttext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namenetext(fcinfo: FunctionCallInfo) -> Datum; + pub fn btnametextcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn texteqname(fcinfo: FunctionCallInfo) -> Datum; + pub fn textltname(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlename(fcinfo: FunctionCallInfo) -> Datum; + pub fn textgename(fcinfo: FunctionCallInfo) -> Datum; + pub fn textgtname(fcinfo: FunctionCallInfo) -> Datum; + pub fn textnename(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttextnamecmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameconcatoid(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_am_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_am_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timeofday(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_nextoid(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn inter_sl(fcinfo: FunctionCallInfo) -> Datum; + pub fn inter_lb(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftod(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtof(fcinfo: FunctionCallInfo) -> Datum; + pub fn i2toi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4toi2(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_jit_available(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4tod(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtoi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4tof(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftoi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn width_bucket_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn index_am_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn index_am_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddr8(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_aclitem(fcinfo: FunctionCallInfo) -> Datum; + pub fn bthandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashhandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn gisthandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginhandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn spghandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn brinhandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarlesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn amvalidate(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_contain(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint2cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint4cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat4cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat8cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btoidcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_bp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btcharcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btnamecmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttextcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_interpt(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ps(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pb(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_ps(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_pb(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_ps(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ppath(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn inter_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_array_null(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_append(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_prepend(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_sp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_bs(fcinfo: FunctionCallInfo) -> Datum; + pub fn btarraycmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_cat(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_text_null(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarlejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddr(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtext(fcinfo: FunctionCallInfo) -> Datum; + pub fn rtrim1(fcinfo: FunctionCallInfo) -> Datum; + pub fn btoidvectorcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn name_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn name_bpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pathp(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashinet(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint4extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_num_nulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_num_nonnulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint2extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint8extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat4extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat8extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoidextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashcharextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashnameextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtextextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint2(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint4(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat4(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat8(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoid(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashname(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashvarlena(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoidvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8in(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8out(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8um(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48(fcinfo: FunctionCallInfo) -> Datum; + pub fn i8tod(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtoi8(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_abbrev(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_abbrev(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_set_masklen(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorne(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_set_masklen(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_indexam_has_property(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_index_has_property(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_index_column_has_property(fcinfo: FunctionCallInfo) -> Datum; + pub fn i8tof(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftoi8(fcinfo: FunctionCallInfo) -> Datum; + pub fn namelt(fcinfo: FunctionCallInfo) -> Datum; + pub fn namele(fcinfo: FunctionCallInfo) -> Datum; + pub fn namegt(fcinfo: FunctionCallInfo) -> Datum; + pub fn namege(fcinfo: FunctionCallInfo) -> Datum; + pub fn namene(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_indexam_progress_phasename(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorle(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectoreq(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorge(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_network(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_netmask(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_masklen(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_broadcast(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_host(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_lp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ls(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_user(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_family(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_create(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidle(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaoctetlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaGetByte(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaSetByte(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaGetBit(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaSetBit(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_sl(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_cpoly(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_show(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn session_user(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_dims(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_ndims(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaoverlay(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaoverlay_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_import(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_export(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_import_with_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashvarlenaextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoidvectorextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_aclitem_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddrextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashinetextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_numeric_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddr8extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_array_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_polyc(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_client_encoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint8cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_flt4(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_flt4(fcinfo: FunctionCallInfo) -> Datum; + pub fn flt4_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn textpos(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn textnlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn namelike(fcinfo: FunctionCallInfo) -> Datum; + pub fn namenlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn char_bpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_database(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn initcap(fcinfo: FunctionCallInfo) -> Datum; + pub fn lpad(fcinfo: FunctionCallInfo) -> Datum; + pub fn rpad(fcinfo: FunctionCallInfo) -> Datum; + pub fn ltrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn rtrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_substr(fcinfo: FunctionCallInfo) -> Datum; + pub fn translate(fcinfo: FunctionCallInfo) -> Datum; + pub fn ltrim1(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_substr_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrim1(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_flt8(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_flt8(fcinfo: FunctionCallInfo) -> Datum; + pub fn cashlarger(fcinfo: FunctionCallInfo) -> Datum; + pub fn cashsmaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn flt8_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_subeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_sup(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_supeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_words(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn char_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28div(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint8(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_open(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_close(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_loread(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lowrite(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_lseek(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_creat(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_tell(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_sl(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_unlink(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashbpcharextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_inter(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_area(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_width(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_height(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_area(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_diagonal(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_vert(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_horiz(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_slope(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_construct(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_parallel(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_perp(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_vertical(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_horizontal(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_truncate(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlike_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticregexeq_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticlike_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_izone(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclitemin(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclitemout(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclinsert(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclremove(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclcontains(fcinfo: FunctionCallInfo) -> Datum; + pub fn getdatabaseencoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharin(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharout(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharin(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharout(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchareq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharle(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchargt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharge(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharne(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclitem_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_prepared_xact(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_step_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_step_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_regclass(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashbpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn format_type(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_wal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wal_replay_pause_state(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_pli(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_mii(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_add_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_sub_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_mul_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_div_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_um(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_subset_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_justify_hours(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_exists_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_array_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_subscripts(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_subscripts_nodir(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_fill(fcinfo: FunctionCallInfo) -> Datum; + pub fn dlog10(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameicregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameicregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolin(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolout(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteain(fcinfo: FunctionCallInfo) -> Datum; + pub fn charin(fcinfo: FunctionCallInfo) -> Datum; + pub fn charlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn unique_key_recheck(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn textcat(fcinfo: FunctionCallInfo) -> Datum; + pub fn PG_char_to_encoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidne(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn parse_ident(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn overlaps_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn datetime_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48div(fcinfo: FunctionCallInfo) -> Datum; + pub fn quote_ident(fcinfo: FunctionCallInfo) -> Datum; + pub fn quote_literal(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_trunc_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_fill_with_lower_bounds(fcinfo: FunctionCallInfo) -> Datum; + pub fn i8tooid(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidtoi8(fcinfo: FunctionCallInfo) -> Datum; + pub fn quote_nullable(fcinfo: FunctionCallInfo) -> Datum; + pub fn suppress_redundant_updates_trigger(fcinfo: FunctionCallInfo) -> Datum; + pub fn tideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_unnest(fcinfo: FunctionCallInfo) -> Datum; + pub fn currtid_byrelname(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_justify_days(fcinfo: FunctionCallInfo) -> Datum; + pub fn datetimetz_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn now(fcinfo: FunctionCallInfo) -> Datum; + pub fn positionsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn positionjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn contsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn contjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn overlaps_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn overlaps_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectortypes(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_hostmask(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexeq_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn makeaclitem(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lock_status(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_finite(fcinfo: FunctionCallInfo) -> Datum; + pub fn textoctetlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharoctetlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_fac(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_constraintdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_finite(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_finite(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_client_addr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_client_port(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_schema(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_schemas(fcinfo: FunctionCallInfo) -> Datum; + pub fn textoverlay(fcinfo: FunctionCallInfo) -> Datum; + pub fn textoverlay_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_parallel(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_perp(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_vertical(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_horizontal(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn points_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_contain_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pt_contained_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_isclosed(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_isopen(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_npoints(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_close(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_open(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_add_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_sub_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_mul_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_div_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn construct_point(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_npoints(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_contain(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_area(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_diameter(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_radius(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn cr_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pc(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_contain_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pt_contained_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_ls(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_lseg(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_construct_pp(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_interpt(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_ruledef(fcinfo: FunctionCallInfo) -> Datum; + pub fn nextval_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn currval_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn setval_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn biteq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitne(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitge(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitle(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn PG_encoding_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn drandom(fcinfo: FunctionCallInfo) -> Datum; + pub fn setseed(fcinfo: FunctionCallInfo) -> Datum; + pub fn dasin(fcinfo: FunctionCallInfo) -> Datum; + pub fn dacos(fcinfo: FunctionCallInfo) -> Datum; + pub fn datan(fcinfo: FunctionCallInfo) -> Datum; + pub fn datan2(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsin(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcos(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtan(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcot(fcinfo: FunctionCallInfo) -> Datum; + pub fn degrees(fcinfo: FunctionCallInfo) -> Datum; + pub fn radians(fcinfo: FunctionCallInfo) -> Datum; + pub fn dpi(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_typeof(fcinfo: FunctionCallInfo) -> Datum; + pub fn ascii(fcinfo: FunctionCallInfo) -> Datum; + pub fn chr(fcinfo: FunctionCallInfo) -> Datum; + pub fn repeat(fcinfo: FunctionCallInfo) -> Datum; + pub fn similar_escape(fcinfo: FunctionCallInfo) -> Datum; + pub fn mul_d_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticnlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameiclike(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameicnlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn like_escape(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidge(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_userbyid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_indexdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_check_ins(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_check_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_cascade_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_cascade_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_restrict_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_restrict_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setnull_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setnull_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setdefault_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setdefault_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_noaction_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_noaction_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_triggerdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_serial_sequence(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitxor(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitnot(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitshiftleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitshiftright(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitcat(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitsubstr(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitlength(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitoctetlength(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitfromint4(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittoint4(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_keywords(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclexplode(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_mi_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolle(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolge(fcinfo: FunctionCallInfo) -> Datum; + pub fn btboolcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitposition(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitsubstr_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sign(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_round(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ceil(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_floor(fcinfo: FunctionCallInfo) -> Datum; + pub fn length_in_encoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_convert_from(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_to_cidr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_expr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_convert_to(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sqrt(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_exp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ln(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_log(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_power(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_float4(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn setval3_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_uminus(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_to_number(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_convert(fcinfo: FunctionCallInfo) -> Datum; + pub fn iclikesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icnlikesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn iclikejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icnlikejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexeqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn likesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexeqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexnesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn nlikesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexnesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexeqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn likejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexeqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexnejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn nlikejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexnejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_var_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_stddev_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_var_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_stddev_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_ascii_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_ascii_enc(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_ascii_encname(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2and(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2or(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2xor(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2not(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2shl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2shr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4and(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4or(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4xor(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4not(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4shl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4shr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8and(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8or(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8xor(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8not(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8shl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8shr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8up(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2up(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4up(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4up(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8up(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_uplus(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_numscans(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_returned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_inserted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_deleted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_blocks_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_blocks_hit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_idset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_pid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_dbid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_userid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_activity(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_numbackends(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_xact_commit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_xact_rollback(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blocks_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blocks_hit(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_encode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_decode(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytealt(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteale(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteagt(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteage(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteane(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteacmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidlarger(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidsmaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_hot_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_div_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn similar_to_escape_2(fcinfo: FunctionCallInfo) -> Datum; + pub fn similar_to_escape_1(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytealike(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteanlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn like_escape_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteacat(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_substr(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_substr_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteapos(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteatrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_activity(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_first_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_backend_pid(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_match_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_conf_load_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_izone(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_izone(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexsubstr(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitfromint8(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittoint8(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_config_by_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn set_config_by_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_table_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_type_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_function_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_operator_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_opclass_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_all_settings(fcinfo: FunctionCallInfo) -> Datum; + pub fn replace_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn split_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_hex32(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_hex64(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_conversion_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_activity_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_terminate_backend(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_functiondef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_compression(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_force_next_flush(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_arguments(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_result(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttext_pattern_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_database_size_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn width_bucket_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_cancel_backend(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_backup_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn btbpchar_pattern_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint48cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint84cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint24cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint42cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint28cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint82cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat48cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat84cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_client_addr(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_client_port(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_server_addr(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_server_port(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocedurein(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocedureout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclassin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclassout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtypein(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtypeout(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_clear_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_identity_arguments(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtid(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtidextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn fmgr_internal_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn fmgr_c_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn fmgr_sql_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_backend_memory_contexts(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_noopt(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_total_relation_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_size_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_options_to_table(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn any_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn any_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn trigger_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn trigger_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn language_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn language_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn internal_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn internal_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_slru(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_slru(fcinfo: FunctionCallInfo) -> Datum; + pub fn dceil(fcinfo: FunctionCallInfo) -> Datum; + pub fn dfloor(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsign(fcinfo: FunctionCallInfo) -> Datum; + pub fn md5_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyelement_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyelement_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn postgresql_fdw_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_encoding_max_length_sql(fcinfo: FunctionCallInfo) -> Datum; + pub fn md5_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_size_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_size_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_database_size_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_unnest(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_lt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_le_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_eq_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_gt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ge_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ne_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_cmp_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_lt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_le_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_eq_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_gt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ge_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ne_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_cmp_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_lt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_le_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_eq_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_gt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ge_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ne_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_cmp_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_lt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_le_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_eq_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_gt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ge_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ne_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_cmp_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn shell_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn shell_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytearecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteasend(fcinfo: FunctionCallInfo) -> Datum; + pub fn textrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn textsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn namerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn namesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4send(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8send(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn charrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn charsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocedurerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regproceduresend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regopersend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclassrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclasssend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtyperecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtypesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsinh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcosh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtanh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dasinh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dacosh(fcinfo: FunctionCallInfo) -> Datum; + pub fn datanh(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_ruledef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_name_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_indexdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_constraintdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_expr_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_prepared_statement(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_cursor(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_var_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_stddev_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_var_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn booland_statefunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolor_statefunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_lt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_le_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_eq_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_gt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ge_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ne_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_cmp_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_lt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_le_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_eq_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_gt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ge_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ne_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_cmp_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_databases(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_bool(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn lastval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_postmaster_start_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_blocking_pids(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overbelow(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overabove(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overbelow(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overabove(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_poly_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_poly_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overbelow(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overabove(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_circle_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_circle_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_stddev_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn domain_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn domain_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_timezone_abbrevs(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlexists(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_reload_conf(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_rotate_logfile(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_file_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_off_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_dir_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sleep(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetnot(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetand(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetor(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetpl(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetmi_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetmi(fcinfo: FunctionCallInfo) -> Datum; + pub fn statement_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn clock_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_cmp_prefix(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_justify_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_triggerdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn dasind(fcinfo: FunctionCallInfo) -> Datum; + pub fn dacosd(fcinfo: FunctionCallInfo) -> Datum; + pub fn datand(fcinfo: FunctionCallInfo) -> Datum; + pub fn datan2d(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsind(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcosd(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtand(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcotd(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_backup_stop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarrayextract(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarrayconsistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn arrayoverlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontains(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontained(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_returned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_inserted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_deleted(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_matches_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_matches(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_table_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_table(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_array_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_num_timed(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_num_requested(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_buffers_written(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_bgwriter_buf_written_clean(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_bgwriter_maxwritten_clean(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginqueryarrayextract(fcinfo: FunctionCallInfo) -> Datum; + pub fn anynonarray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anynonarray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_vacuum_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_autovacuum_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_analyze_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_autoanalyze_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_wait_event_type(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidge(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidle(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttidcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidlarger(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidsmaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc_any(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc_float8_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_sxx(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_syy(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_sxy(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_avgx(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_avgy(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_r2(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_slope(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_intercept(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_covar_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_covar_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_corr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blk_read_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blk_write_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_switch_wal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_wal_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_walfile_name_offset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_walfile_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_wal_insert_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_wait_event(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_my_temp_schema(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_is_other_temp_schema(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_timezone_names(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_xact_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_buf_alloc(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_live_tuples(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_dead_tuples(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlcomment(fcinfo: FunctionCallInfo) -> Datum; + pub fn texttoxml(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlvalidate(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlconcat2(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbittypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn intervaltypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn intervaltypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptztypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptztypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetztypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetztypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchartypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchartypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchartypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchartypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn numerictypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn numerictypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbittypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmltotext(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn query_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn cursor_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn query_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn cursor_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn query_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn xpath(fcinfo: FunctionCallInfo) -> Datum; + pub fn schema_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn schema_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn schema_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn database_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn database_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn database_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_xact_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_xmin(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_xmax(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_xip(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_visible_in_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn booltext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_function_calls(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_function_total_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_function_self_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrecordcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_table_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_indexes_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_filenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_name_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_id_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_name_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_id_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitoverlay(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitoverlay_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitgetbit(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitsetbit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_filepath(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_listening_channels(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_notify(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_numscans(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_returned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_inserted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_deleted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_hot_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_blocks_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_blocks_hit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_function_calls(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_function_total_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_function_self_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn xpath_exists(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_is_well_formed(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_is_well_formed_document(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_is_well_formed_content(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_vacuum_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_autovacuum_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_analyze_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_autoanalyze_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_concat(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_concat_ws(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_reverse(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_tablespace(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_lock(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_bufferpin(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_startup_deadlock(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_replay_pause(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_replay_resume(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_is_wal_replay_paused(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_stat_reset_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_bgwriter_stat_reset_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarrayextract_2args(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsvector_2args(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sequence_parameters(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_available_extensions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_available_extension_versions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_extension_update_paths(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_extension_config_dump(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsquery_5args(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_consistent_6args(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchar_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_create_restore_point(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_wal_senders(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_row_number(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_rank(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_dense_rank(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_percent_rank(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_cume_dist(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_ntile(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lag(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lag_with_offset(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lag_with_offset_and_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lead(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lead_with_offset(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lead_with_offset_and_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_first_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_last_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_nth_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn fdw_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn fdw_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint2sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint4sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint8sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat4sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat8sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btoidsortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btnamesortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_not(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_temp_files(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_temp_bytes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_deadlocks(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_json_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_to_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_to_json_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_wrap(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_write_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_sync_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_collation_for(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_trigger_depth(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_lsn_diff(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_size_pretty_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_remove(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_replace(fcinfo: FunctionCallInfo) -> Datum; + pub fn rangesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_lseek64(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_tell64(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_truncate64(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_mod_since_analyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_cardinality(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrecordimagecmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_archiver(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_array_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_object_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_two_arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_each(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_populate_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_typeof(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_field_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_element(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_element_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_extract_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn width_bucket_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_elements(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttextsortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_step_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_strip_nulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_strip_nulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_two_arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_array_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_object_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ppoly(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_position(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_position_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_positions(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_circle_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_fetch(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_poly_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_cpoint(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_polyp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_off_len_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_config_by_name_missing_ok(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_off_len_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_notification_queue_usage(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_dir(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_security_active(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_security_active_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_concat(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete_idx(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_set(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_file(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidneq(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_bernoulli_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_system_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_wal_receiver(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_progress_info(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_filter(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_setweight_by_filter(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_delete_str(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_unnest(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_delete_arr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_to_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_all_file_settings(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_wal_flush_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttext_pattern_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btbpchar_pattern_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_size_bytes(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_xact_id_if_assigned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_partkeydef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_logdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_waldir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_xact_status(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_safe_snapshot_blocking_pids(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_isolation_test_session_is_blocked(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_identify_object_as_address(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_var_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_var_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_stddev_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_stddev_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_match_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_match(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_hba_file_rules(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_statistics_obj_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_partition_constraintdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashenumextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_statisticsobjdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_range_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha224_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha256_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha384_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha512_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_partition_tree(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_partition_root(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_partition_ancestors(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_checksum_failures(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stats_ext_mcvlist_items(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_checksum_last_failure(fcinfo: FunctionCallInfo) -> Datum; + pub fn gen_random_uuid(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_options(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_promote(fcinfo: FunctionCallInfo) -> Datum; + pub fn prefixsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn prefixjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_system(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_checkpoint(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_recovery(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_import_system_collations(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_collation_actual_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_float4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_filenode_relation(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_from_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_get(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_get_fragment(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_put(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_timestamptz_at_timezone(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_elements_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_populate_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regoperator(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_field(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regprocedure(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_compare_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_consistent_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb_query_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_consistent_jsonb_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_triconsistent_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_triconsistent_jsonb_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regoper(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regtype(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regproc(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regclass(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_alltrue(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_anytrue(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyenum_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyenum_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashenum(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_first(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_last(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_range_bounds(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_range_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_describe_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_format(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_format_nv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_string_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_string_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8dec(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8dec_any(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_bool(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn networksel(fcinfo: FunctionCallInfo) -> Datum; + pub fn networkjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_dropped_objects(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2int4_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_fetch(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_emit_message_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_emit_message_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_insert(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_xact_commit_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_committed_xact(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_array_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_heap_pg_class_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_index_pg_class_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_toast_pg_class_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_enum_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_authid_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_create_empty_extension(fcinfo: FunctionCallInfo) -> Datum; + pub fn event_trigger_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn event_trigger_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsqueryin(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsqueryout(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_strip(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_setweight(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_concat(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_vq(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_qv(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquerysend(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsqueryrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_decompress(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_not(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_numnode(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquerytree(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_rewrite(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_rewrite_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsmatchsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsmatchjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_stat1(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_stat2(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsq_mcontains(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsq_mcontained(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_starts_with(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_wttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_wtt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_ttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_tt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_wttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_wtt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_ttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_tt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_token_type_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_token_type_byname(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_parse_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_parse_byname(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_nexttoken(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_end(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_headline(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_lextype(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_cmp_tslexeme(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsimple_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsimple_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsynonym_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsynonym_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn dispell_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn dispell_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn thesaurus_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn thesaurus_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_byid_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn plainto_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn plainto_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_update_trigger_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_update_trigger_bycolumn(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_parser_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_dict_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_config_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn get_current_ts_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_tt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_tq(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_template_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionaryin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionaryout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionaryrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionarysend(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_shared(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_single_table_counters(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_single_function_counters(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_location(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_create_physical_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_drop_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_replication_slots(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_get_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_get_binary_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_peek_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_peek_binary_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_create_logical_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_snapshot_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_clean_pending_list(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_consistent_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsquery_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_consistent_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_consistent_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_logfile(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_logfile_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_arg_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_export_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_is_in_recovery(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmltext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_collation_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_multixact_members(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_wal_receive_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_wal_replay_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_off_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_opfamily_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_xact_replay_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyrange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyrange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_identify_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_constructor2(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_constructor3(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_is_updatable(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_is_updatable(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_empty(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lower_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_upper_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lower_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_upper_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overlaps(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains_elem(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains(fcinfo: FunctionCallInfo) -> Datum; + pub fn elem_contained_by_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contained_by(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_adjacent(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_before(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_after(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_minus(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_slot_advance(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4range_canonical(fcinfo: FunctionCallInfo) -> Datum; + pub fn daterange_canonical(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarraytriconsistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_triconsistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4range_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8range_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn numrange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn daterange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8range_canonical(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsrange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn tstzrange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_keys(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_each_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn mxid_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_extract_path_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn acldefault_sql(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_field(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_field_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_element(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_element_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_extract_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_summarize_new_values(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_extract_path_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_object_address(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_elements(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_keys(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_each(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_each_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_populate_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_populate_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_typeof(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_elements_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn ordered_set_transition(fcinfo: FunctionCallInfo) -> Datum; + pub fn ordered_set_transition_multi(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_disc_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_float8_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_interval_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_disc_multi_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_float8_multi_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_interval_multi_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn mode_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_rank_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_percent_rank_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_cume_dist_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_dense_rank_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int4_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int8_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_unnest_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_summarize_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_exists(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_first(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_match(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_exists_opr(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_match_opr(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_desummarize_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sequence_last_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_contains(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_exists(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_exists_any(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_exists_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_merge(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_merge(fcinfo: FunctionCallInfo) -> Datum; + pub fn boxes_bound_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_same_family(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_record_init_privs(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespacein(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespaceout(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regnamespace(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespacerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespacesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn regroleout(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regrole(fcinfo: FunctionCallInfo) -> Datum; + pub fn regrolerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regrolesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regrolein(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_missing_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_not(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddrtomacaddr8(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8tomacaddr(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_set7bit(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int8_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int4_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int4_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int4_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int2_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int2_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int2_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_date_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_timestamp_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_timestamptz_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_interval_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_time_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_timetz_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_float8_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_float4_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_numeric_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationout(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regcollation(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb_byid_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json_byid_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_string_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_string_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_string_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_string_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_physical_replication_slot_a(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_physical_replication_slot_b(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_logical_replication_slot_a(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_logical_replication_slot_b(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_logical_replication_slot_c(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblemultirange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblemultirange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_merge_from_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn anymultirange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anymultirange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_empty(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lower_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_upper_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lower_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_upper_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirangesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overlaps_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overlaps_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overlaps_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contains_elem(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contains_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contains_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn elem_contained_by_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contained_by_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contained_by_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_adjacent_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_adjacent_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_adjacent_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_before_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_before_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_before_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_after_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_after_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_after_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overleft_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overleft_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overleft_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overright_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overright_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overright_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_minus(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_multirange_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_constructor0(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_constructor1(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_constructor2(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_normalize_func(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_is_normalized(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_intersect_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_multirange_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_multirange_array_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_intersect_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contained_by_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_log_backend_memory_contexts(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_heap_relfilenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_index_relfilenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_toast_relfilenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_tablespace_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_table_rewrite_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_table_rewrite_reason(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_ddl_commands(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_options(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_options(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_float4(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_tid(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_uuid(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_pg_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_macaddr(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_macaddr8(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_inet(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn phraseto_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_phrase(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_phrase_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn phraseto_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn websearch_to_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn websearch_to_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_bbox_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_poly_quad_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_pli(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_mii(fcinfo: FunctionCallInfo) -> Datum; + pub fn satisfies_hash_partition(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_tmpdir_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_tmpdir_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_archive_statusdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8le(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn matchingsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn matchingjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_min_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_trim_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4gcd(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8gcd(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4lcm(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8lcm(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_gcd(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_lcm(fcinfo: FunctionCallInfo) -> Datum; + pub fn btvarstrequalimage(fcinfo: FunctionCallInfo) -> Datum; + pub fn btequalimage(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_shmem_allocations(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_ins_since_vacuum(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_set_lax(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8in(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8toxid(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8out(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8send(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatible_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatible_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblenonarray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblenonarray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblerange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblerange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_create(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_drop(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_setup(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_reset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_is_setup(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_progress(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_xact_setup(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_xact_reset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_advance(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_progress(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_show_replication_origin_status(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_subscript_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn icu_unicode_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_pg_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_assigned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_subxact(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_subscription(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_publication_tables(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_replica_identity_index(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_is_publishable(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_gist_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_gist_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_catalog_foreign_keys(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_table(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_table_null(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_bit_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_bit_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_xact_commit_timestamp_origin(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn trim_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_statisticsobjdef_expressions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_statisticsobjdef_columns(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_bin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_bin(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_subscript_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn raw_array_subscript_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_session_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_active_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_idle_in_transaction_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions_abandoned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions_fatal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions_killed(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_record_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytealtrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteartrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_sqlbody(fcinfo: FunctionCallInfo) -> Datum; + pub fn unistr(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_parameter_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_parameter_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_parameter_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_all_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_all_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_input_is_valid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_input_error_info(fcinfo: FunctionCallInfo) -> Datum; + pub fn drandom_normal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_split_walfile_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_io(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_shuffle(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_sample(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_newpage_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_newpage_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn derf(fcinfo: FunctionCallInfo) -> Datum; + pub fn derfc(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_pl_interval_at_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wal_resource_managers(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_have_stats(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_subscription_stats(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_subscription_stats(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_row_number_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_rank_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_dense_rank_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_settings_get_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stop_making_pinned_objects(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_starts_with_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_recovery_prefetch(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_database_collation_actual_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ident_file_mappings(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_extended_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_extended_no_n(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_count_no_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_count_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_n(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_endoption(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_subexpr(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_like_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_like(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_n(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_subexpr(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_logicalsnapdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_logicalmapdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_replslotdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_mi_interval_at_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_timestamptz_at_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_unique_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_unique_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_unique_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_unique_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn any_value_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_log_standby_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_percent_rank_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_cume_dist_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_ntile_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_logicalslot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_lastscan(fcinfo: FunctionCallInfo) -> Datum; + pub fn system_user(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_logical_slot_has_caught_up(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_stat_reset_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_basetype(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_toast_chunk_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regtypemod(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wait_events(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_add_sub_rel_state(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_replorigin_advance(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_available_wal_summaries(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_summary_contents(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wal_summarizer_state(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_restartpoints_timed(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_restartpoints_requested(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_restartpoints_performed(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_bin32(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_bin64(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_oct32(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_oct64(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_at_local(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_at_local(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_at_local(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_populate_record_valid(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4random(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8random(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_random(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_extract_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_extract_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sync_replication_slots(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains_elem_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn elem_contained_by_range_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn parse_bool(value: *const ::core::ffi::c_char, result: *mut bool) -> bool; + pub fn parse_bool_with_len( + value: *const ::core::ffi::c_char, + len: usize, + result: *mut bool, + ) -> bool; + pub fn domain_check( + value: Datum, + isnull: bool, + domainType: Oid, + extra: *mut *mut ::core::ffi::c_void, + mcxt: MemoryContext, + ); + pub fn domain_check_safe( + value: Datum, + isnull: bool, + domainType: Oid, + extra: *mut *mut ::core::ffi::c_void, + mcxt: MemoryContext, + escontext: *mut Node, + ) -> bool; + pub fn errdatatype(datatypeOid: Oid) -> ::core::ffi::c_int; + pub fn errdomainconstraint( + datatypeOid: Oid, + conname: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn hex_encode( + src: *const ::core::ffi::c_char, + len: usize, + dst: *mut ::core::ffi::c_char, + ) -> uint64; + pub fn hex_decode( + src: *const ::core::ffi::c_char, + len: usize, + dst: *mut ::core::ffi::c_char, + ) -> uint64; + pub fn hex_decode_safe( + src: *const ::core::ffi::c_char, + len: usize, + dst: *mut ::core::ffi::c_char, + escontext: *mut Node, + ) -> uint64; + pub fn buildint2vector(int2s: *const int16, n: ::core::ffi::c_int) -> *mut int2vector; + pub fn namestrcpy(name: Name, str_: *const ::core::ffi::c_char); + pub fn namestrcmp(name: Name, str_: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_strtoint16(s: *const ::core::ffi::c_char) -> int16; + pub fn pg_strtoint16_safe(s: *const ::core::ffi::c_char, escontext: *mut Node) -> int16; + pub fn pg_strtoint32(s: *const ::core::ffi::c_char) -> int32; + pub fn pg_strtoint32_safe(s: *const ::core::ffi::c_char, escontext: *mut Node) -> int32; + pub fn pg_strtoint64(s: *const ::core::ffi::c_char) -> int64; + pub fn pg_strtoint64_safe(s: *const ::core::ffi::c_char, escontext: *mut Node) -> int64; + pub fn uint32in_subr( + s: *const ::core::ffi::c_char, + endloc: *mut *mut ::core::ffi::c_char, + typname: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> uint32; + pub fn uint64in_subr( + s: *const ::core::ffi::c_char, + endloc: *mut *mut ::core::ffi::c_char, + typname: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> uint64; + pub fn pg_itoa(i: int16, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ultoa_n(value: uint32, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ulltoa_n(value: uint64, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ltoa(value: int32, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_lltoa(value: int64, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ultostr_zeropad( + str_: *mut ::core::ffi::c_char, + value: uint32, + minwidth: int32, + ) -> *mut ::core::ffi::c_char; + pub fn pg_ultostr(str_: *mut ::core::ffi::c_char, value: uint32) -> *mut ::core::ffi::c_char; + pub fn buildoidvector(oids: *const Oid, n: ::core::ffi::c_int) -> *mut oidvector; + pub fn oidparse(node: *mut Node) -> Oid; + pub fn oid_cmp( + p1: *const ::core::ffi::c_void, + p2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn regexp_fixed_prefix( + text_re: *mut text, + case_insensitive: bool, + collation: Oid, + exact: *mut bool, + ) -> *mut ::core::ffi::c_char; + pub static mut quote_all_identifiers: bool; + pub fn quote_identifier(ident: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char; + pub fn quote_qualified_identifier( + qualifier: *const ::core::ffi::c_char, + ident: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn generate_operator_clause( + buf: fmStringInfo, + leftop: *const ::core::ffi::c_char, + leftoptype: Oid, + opoid: Oid, + rightop: *const ::core::ffi::c_char, + rightoptype: Oid, + ); + pub fn bpchartruelen( + s: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn cstring_to_text(s: *const ::core::ffi::c_char) -> *mut text; + pub fn cstring_to_text_with_len( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> *mut text; + pub fn text_to_cstring(t: *const text) -> *mut ::core::ffi::c_char; + pub fn text_to_cstring_buffer(src: *const text, dst: *mut ::core::ffi::c_char, dst_len: usize); + pub fn xidComparator( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn xidLogicalComparator( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn pg_inet_cidr_ntop( + af: ::core::ffi::c_int, + src: *const ::core::ffi::c_void, + bits: ::core::ffi::c_int, + dst: *mut ::core::ffi::c_char, + size: usize, + ) -> *mut ::core::ffi::c_char; + pub fn pg_inet_net_pton( + af: ::core::ffi::c_int, + src: *const ::core::ffi::c_char, + dst: *mut ::core::ffi::c_void, + size: usize, + ) -> ::core::ffi::c_int; + pub fn convert_network_to_scalar(value: Datum, typid: Oid, failure: *mut bool) -> f64; + pub fn network_scan_first(in_: Datum) -> Datum; + pub fn network_scan_last(in_: Datum) -> Datum; + pub fn clean_ipv6_addr(addr_family: ::core::ffi::c_int, addr: *mut ::core::ffi::c_char); + pub fn numeric_float8_no_overflow(fcinfo: FunctionCallInfo) -> Datum; + pub fn format_type_extended( + type_oid: Oid, + typemod: int32, + flags: bits16, + ) -> *mut ::core::ffi::c_char; + pub fn format_type_be(type_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_type_be_qualified(type_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_type_with_typemod(type_oid: Oid, typemod: int32) -> *mut ::core::ffi::c_char; + pub fn type_maximum_size(type_oid: Oid, typemod: int32) -> int32; + pub fn quote_literal_cstr(rawstr: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn anytime_typmod_check(istz: bool, typmod: int32) -> int32; + pub fn date2timestamp_no_overflow(dateVal: DateADT) -> f64; + pub fn date2timestamp_opt_overflow( + dateVal: DateADT, + overflow: *mut ::core::ffi::c_int, + ) -> Timestamp; + pub fn date2timestamptz_opt_overflow( + dateVal: DateADT, + overflow: *mut ::core::ffi::c_int, + ) -> TimestampTz; + pub fn date_cmp_timestamp_internal(dateVal: DateADT, dt2: Timestamp) -> int32; + pub fn date_cmp_timestamptz_internal(dateVal: DateADT, dt2: TimestampTz) -> int32; + pub fn EncodeSpecialDate(dt: DateADT, str_: *mut ::core::ffi::c_char); + pub fn GetSQLCurrentDate() -> DateADT; + pub fn GetSQLCurrentTime(typmod: int32) -> *mut TimeTzADT; + pub fn GetSQLLocalTime(typmod: int32) -> TimeADT; + pub fn time2tm(time: TimeADT, tm: *mut pg_tm, fsec: *mut fsec_t) -> ::core::ffi::c_int; + pub fn timetz2tm( + time: *mut TimeTzADT, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzp: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn tm2time(tm: *mut pg_tm, fsec: fsec_t, result: *mut TimeADT) -> ::core::ffi::c_int; + pub fn tm2timetz( + tm: *mut pg_tm, + fsec: fsec_t, + tz: ::core::ffi::c_int, + result: *mut TimeTzADT, + ) -> ::core::ffi::c_int; + pub fn time_overflows( + hour: ::core::ffi::c_int, + min: ::core::ffi::c_int, + sec: ::core::ffi::c_int, + fsec: fsec_t, + ) -> bool; + pub fn float_time_overflows( + hour: ::core::ffi::c_int, + min: ::core::ffi::c_int, + sec: f64, + ) -> bool; + pub fn AdjustTimeForTypmod(time: *mut TimeADT, typmod: int32); + pub static months: [*const ::core::ffi::c_char; 0usize]; + pub static days: [*const ::core::ffi::c_char; 0usize]; + pub static mut day_tab: [[::core::ffi::c_int; 13usize]; 2usize]; + pub fn GetCurrentDateTime(tm: *mut pg_tm); + pub fn GetCurrentTimeUsec(tm: *mut pg_tm, fsec: *mut fsec_t, tzp: *mut ::core::ffi::c_int); + pub fn j2date( + jd: ::core::ffi::c_int, + year: *mut ::core::ffi::c_int, + month: *mut ::core::ffi::c_int, + day: *mut ::core::ffi::c_int, + ); + pub fn date2j( + year: ::core::ffi::c_int, + month: ::core::ffi::c_int, + day: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ParseDateTime( + timestr: *const ::core::ffi::c_char, + workbuf: *mut ::core::ffi::c_char, + buflen: usize, + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + maxfields: ::core::ffi::c_int, + numfields: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeDateTime( + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + nf: ::core::ffi::c_int, + dtype: *mut ::core::ffi::c_int, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzp: *mut ::core::ffi::c_int, + extra: *mut DateTimeErrorExtra, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezone( + str_: *const ::core::ffi::c_char, + tzp: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeTimeOnly( + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + nf: ::core::ffi::c_int, + dtype: *mut ::core::ffi::c_int, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzp: *mut ::core::ffi::c_int, + extra: *mut DateTimeErrorExtra, + ) -> ::core::ffi::c_int; + pub fn DecodeInterval( + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + nf: ::core::ffi::c_int, + range: ::core::ffi::c_int, + dtype: *mut ::core::ffi::c_int, + itm_in: *mut pg_itm_in, + ) -> ::core::ffi::c_int; + pub fn DecodeISO8601Interval( + str_: *mut ::core::ffi::c_char, + dtype: *mut ::core::ffi::c_int, + itm_in: *mut pg_itm_in, + ) -> ::core::ffi::c_int; + pub fn DateTimeParseError( + dterr: ::core::ffi::c_int, + extra: *mut DateTimeErrorExtra, + str_: *const ::core::ffi::c_char, + datatype: *const ::core::ffi::c_char, + escontext: *mut Node, + ); + pub fn DetermineTimeZoneOffset(tm: *mut pg_tm, tzp: *mut pg_tz) -> ::core::ffi::c_int; + pub fn DetermineTimeZoneAbbrevOffset( + tm: *mut pg_tm, + abbr: *const ::core::ffi::c_char, + tzp: *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn DetermineTimeZoneAbbrevOffsetTS( + ts: TimestampTz, + abbr: *const ::core::ffi::c_char, + tzp: *mut pg_tz, + isdst: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn EncodeDateOnly( + tm: *mut pg_tm, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeTimeOnly( + tm: *mut pg_tm, + fsec: fsec_t, + print_tz: bool, + tz: ::core::ffi::c_int, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeDateTime( + tm: *mut pg_tm, + fsec: fsec_t, + print_tz: bool, + tz: ::core::ffi::c_int, + tzn: *const ::core::ffi::c_char, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeInterval( + itm: *mut pg_itm, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeSpecialTimestamp(dt: Timestamp, str_: *mut ::core::ffi::c_char); + pub fn ValidateDate( + fmask: ::core::ffi::c_int, + isjulian: bool, + is2digits: bool, + bc: bool, + tm: *mut pg_tm, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezoneAbbrev( + field: ::core::ffi::c_int, + lowtoken: *const ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + offset: *mut ::core::ffi::c_int, + tz: *mut *mut pg_tz, + extra: *mut DateTimeErrorExtra, + ) -> ::core::ffi::c_int; + pub fn DecodeSpecial( + field: ::core::ffi::c_int, + lowtoken: *const ::core::ffi::c_char, + val: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeUnits( + field: ::core::ffi::c_int, + lowtoken: *const ::core::ffi::c_char, + val: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezoneName( + tzname: *const ::core::ffi::c_char, + offset: *mut ::core::ffi::c_int, + tz: *mut *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezoneNameToTz(tzname: *const ::core::ffi::c_char) -> *mut pg_tz; + pub fn DecodeTimezoneAbbrevPrefix( + str_: *const ::core::ffi::c_char, + offset: *mut ::core::ffi::c_int, + tz: *mut *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn j2day(date: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn TemporalSimplify(max_precis: int32, node: *mut Node) -> *mut Node; + pub fn CheckDateTokenTables() -> bool; + pub fn ConvertTimeZoneAbbrevs( + abbrevs: *mut tzEntry, + n: ::core::ffi::c_int, + ) -> *mut TimeZoneAbbrevTable; + pub fn InstallTimeZoneAbbrevs(tbl: *mut TimeZoneAbbrevTable); + pub fn AdjustTimestampForTypmod( + time: *mut Timestamp, + typmod: int32, + escontext: *mut Node, + ) -> bool; + pub static mut extra_float_digits: ::core::ffi::c_int; + pub fn float_overflow_error() -> !; + pub fn float_underflow_error() -> !; + pub fn float_zero_divide_error() -> !; + pub fn is_infinite(val: float8) -> ::core::ffi::c_int; + pub fn float8in_internal( + num: *mut ::core::ffi::c_char, + endptr_p: *mut *mut ::core::ffi::c_char, + type_name: *const ::core::ffi::c_char, + orig_string: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> float8; + pub fn float4in_internal( + num: *mut ::core::ffi::c_char, + endptr_p: *mut *mut ::core::ffi::c_char, + type_name: *const ::core::ffi::c_char, + orig_string: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> float4; + pub fn float8out_internal(num: float8) -> *mut ::core::ffi::c_char; + pub fn float4_cmp_internal(a: float4, b: float4) -> ::core::ffi::c_int; + pub fn float8_cmp_internal(a: float8, b: float8) -> ::core::ffi::c_int; + pub fn pg_hypot(x: float8, y: float8) -> float8; + pub fn escape_json(buf: StringInfo, str_: *const ::core::ffi::c_char); + pub fn JsonEncodeDateTime( + buf: *mut ::core::ffi::c_char, + value: Datum, + typid: Oid, + tzp: *const ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn to_json_is_immutable(typoid: Oid) -> bool; + pub fn json_build_object_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + unique_keys: bool, + ) -> Datum; + pub fn json_build_array_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + ) -> Datum; + pub fn json_validate(json: *mut text, check_unique_keys: bool, throw_error: bool) -> bool; + pub static mut pg_global_prng_state: pg_prng_state; + pub fn pg_prng_seed(state: *mut pg_prng_state, seed: uint64); + pub fn pg_prng_fseed(state: *mut pg_prng_state, fseed: f64); + pub fn pg_prng_seed_check(state: *mut pg_prng_state) -> bool; + pub fn pg_prng_uint64(state: *mut pg_prng_state) -> uint64; + pub fn pg_prng_uint64_range(state: *mut pg_prng_state, rmin: uint64, rmax: uint64) -> uint64; + pub fn pg_prng_int64(state: *mut pg_prng_state) -> int64; + pub fn pg_prng_int64p(state: *mut pg_prng_state) -> int64; + pub fn pg_prng_int64_range(state: *mut pg_prng_state, rmin: int64, rmax: int64) -> int64; + pub fn pg_prng_uint32(state: *mut pg_prng_state) -> uint32; + pub fn pg_prng_int32(state: *mut pg_prng_state) -> int32; + pub fn pg_prng_int32p(state: *mut pg_prng_state) -> int32; + pub fn pg_prng_double(state: *mut pg_prng_state) -> f64; + pub fn pg_prng_double_normal(state: *mut pg_prng_state) -> f64; + pub fn pg_prng_bool(state: *mut pg_prng_state) -> bool; + pub fn numeric_is_nan(num: Numeric) -> bool; + pub fn numeric_is_inf(num: Numeric) -> bool; + pub fn numeric_maximum_size(typmod: int32) -> int32; + pub fn numeric_out_sci(num: Numeric, scale: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn numeric_normalize(num: Numeric) -> *mut ::core::ffi::c_char; + pub fn int64_to_numeric(val: int64) -> Numeric; + pub fn int64_div_fast_to_numeric(val1: int64, log10val2: ::core::ffi::c_int) -> Numeric; + pub fn numeric_add_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_sub_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_mul_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_div_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_mod_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_int4_opt_error(num: Numeric, have_error: *mut bool) -> int32; + pub fn numeric_int8_opt_error(num: Numeric, have_error: *mut bool) -> int64; + pub fn random_numeric(state: *mut pg_prng_state, rmin: Numeric, rmax: Numeric) -> Numeric; + pub fn getJsonbOffset(jc: *const JsonbContainer, index: ::core::ffi::c_int) -> uint32; + pub fn getJsonbLength(jc: *const JsonbContainer, index: ::core::ffi::c_int) -> uint32; + pub fn compareJsonbContainers( + a: *mut JsonbContainer, + b: *mut JsonbContainer, + ) -> ::core::ffi::c_int; + pub fn findJsonbValueFromContainer( + container: *mut JsonbContainer, + flags: uint32, + key: *mut JsonbValue, + ) -> *mut JsonbValue; + pub fn getKeyJsonValueFromContainer( + container: *mut JsonbContainer, + keyVal: *const ::core::ffi::c_char, + keyLen: ::core::ffi::c_int, + res: *mut JsonbValue, + ) -> *mut JsonbValue; + pub fn getIthJsonbValueFromContainer( + container: *mut JsonbContainer, + i: uint32, + ) -> *mut JsonbValue; + pub fn pushJsonbValue( + pstate: *mut *mut JsonbParseState, + seq: JsonbIteratorToken::Type, + jbval: *mut JsonbValue, + ) -> *mut JsonbValue; + pub fn JsonbIteratorInit(container: *mut JsonbContainer) -> *mut JsonbIterator; + pub fn JsonbIteratorNext( + it: *mut *mut JsonbIterator, + val: *mut JsonbValue, + skipNested: bool, + ) -> JsonbIteratorToken::Type; + pub fn JsonbToJsonbValue(jsonb: *mut Jsonb, val: *mut JsonbValue); + pub fn JsonbValueToJsonb(val: *mut JsonbValue) -> *mut Jsonb; + pub fn JsonbDeepContains( + val: *mut *mut JsonbIterator, + mContained: *mut *mut JsonbIterator, + ) -> bool; + pub fn JsonbHashScalarValue(scalarVal: *const JsonbValue, hash: *mut uint32); + pub fn JsonbHashScalarValueExtended( + scalarVal: *const JsonbValue, + hash: *mut uint64, + seed: uint64, + ); + pub fn JsonbToCString( + out: StringInfo, + in_: *mut JsonbContainer, + estimated_len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn JsonbToCStringIndent( + out: StringInfo, + in_: *mut JsonbContainer, + estimated_len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn JsonbUnquote(jb: *mut Jsonb) -> *mut ::core::ffi::c_char; + pub fn JsonbExtractScalar(jbc: *mut JsonbContainer, res: *mut JsonbValue) -> bool; + pub fn JsonbTypeName(val: *mut JsonbValue) -> *const ::core::ffi::c_char; + pub fn jsonb_set_element( + jb: *mut Jsonb, + path: *mut Datum, + path_len: ::core::ffi::c_int, + newval: *mut JsonbValue, + ) -> Datum; + pub fn jsonb_get_element( + jb: *mut Jsonb, + path: *mut Datum, + npath: ::core::ffi::c_int, + isnull: *mut bool, + as_text: bool, + ) -> Datum; + pub fn to_jsonb_is_immutable(typoid: Oid) -> bool; + pub fn jsonb_build_object_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + unique_keys: bool, + ) -> Datum; + pub fn jsonb_build_array_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + ) -> Datum; + pub static mut get_attavgwidth_hook: get_attavgwidth_hook_type; + pub fn op_in_opfamily(opno: Oid, opfamily: Oid) -> bool; + pub fn get_op_opfamily_strategy(opno: Oid, opfamily: Oid) -> ::core::ffi::c_int; + pub fn get_op_opfamily_sortfamily(opno: Oid, opfamily: Oid) -> Oid; + pub fn get_op_opfamily_properties( + opno: Oid, + opfamily: Oid, + ordering_op: bool, + strategy: *mut ::core::ffi::c_int, + lefttype: *mut Oid, + righttype: *mut Oid, + ); + pub fn get_opfamily_member( + opfamily: Oid, + lefttype: Oid, + righttype: Oid, + strategy: int16, + ) -> Oid; + pub fn get_ordering_op_properties( + opno: Oid, + opfamily: *mut Oid, + opcintype: *mut Oid, + strategy: *mut int16, + ) -> bool; + pub fn get_equality_op_for_ordering_op(opno: Oid, reverse: *mut bool) -> Oid; + pub fn get_ordering_op_for_equality_op(opno: Oid, use_lhs_type: bool) -> Oid; + pub fn get_mergejoin_opfamilies(opno: Oid) -> *mut List; + pub fn get_compatible_hash_operators(opno: Oid, lhs_opno: *mut Oid, rhs_opno: *mut Oid) + -> bool; + pub fn get_op_hash_functions( + opno: Oid, + lhs_procno: *mut RegProcedure, + rhs_procno: *mut RegProcedure, + ) -> bool; + pub fn get_op_btree_interpretation(opno: Oid) -> *mut List; + pub fn equality_ops_are_compatible(opno1: Oid, opno2: Oid) -> bool; + pub fn comparison_ops_are_compatible(opno1: Oid, opno2: Oid) -> bool; + pub fn get_opfamily_proc(opfamily: Oid, lefttype: Oid, righttype: Oid, procnum: int16) -> Oid; + pub fn get_attname( + relid: Oid, + attnum: AttrNumber, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn get_attnum(relid: Oid, attname: *const ::core::ffi::c_char) -> AttrNumber; + pub fn get_attgenerated(relid: Oid, attnum: AttrNumber) -> ::core::ffi::c_char; + pub fn get_atttype(relid: Oid, attnum: AttrNumber) -> Oid; + pub fn get_atttypetypmodcoll( + relid: Oid, + attnum: AttrNumber, + typid: *mut Oid, + typmod: *mut int32, + collid: *mut Oid, + ); + pub fn get_attoptions(relid: Oid, attnum: int16) -> Datum; + pub fn get_cast_oid(sourcetypeid: Oid, targettypeid: Oid, missing_ok: bool) -> Oid; + pub fn get_collation_name(colloid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_collation_isdeterministic(colloid: Oid) -> bool; + pub fn get_constraint_name(conoid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_constraint_index(conoid: Oid) -> Oid; + pub fn get_constraint_type(conoid: Oid) -> ::core::ffi::c_char; + pub fn get_language_name(langoid: Oid, missing_ok: bool) -> *mut ::core::ffi::c_char; + pub fn get_opclass_family(opclass: Oid) -> Oid; + pub fn get_opclass_input_type(opclass: Oid) -> Oid; + pub fn get_opclass_opfamily_and_input_type( + opclass: Oid, + opfamily: *mut Oid, + opcintype: *mut Oid, + ) -> bool; + pub fn get_opclass_method(opclass: Oid) -> Oid; + pub fn get_opcode(opno: Oid) -> RegProcedure; + pub fn get_opname(opno: Oid) -> *mut ::core::ffi::c_char; + pub fn get_op_rettype(opno: Oid) -> Oid; + pub fn op_input_types(opno: Oid, lefttype: *mut Oid, righttype: *mut Oid); + pub fn op_mergejoinable(opno: Oid, inputtype: Oid) -> bool; + pub fn op_hashjoinable(opno: Oid, inputtype: Oid) -> bool; + pub fn op_strict(opno: Oid) -> bool; + pub fn op_volatile(opno: Oid) -> ::core::ffi::c_char; + pub fn get_commutator(opno: Oid) -> Oid; + pub fn get_negator(opno: Oid) -> Oid; + pub fn get_oprrest(opno: Oid) -> RegProcedure; + pub fn get_oprjoin(opno: Oid) -> RegProcedure; + pub fn get_func_name(funcid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_func_namespace(funcid: Oid) -> Oid; + pub fn get_func_rettype(funcid: Oid) -> Oid; + pub fn get_func_nargs(funcid: Oid) -> ::core::ffi::c_int; + pub fn get_func_signature( + funcid: Oid, + argtypes: *mut *mut Oid, + nargs: *mut ::core::ffi::c_int, + ) -> Oid; + pub fn get_func_variadictype(funcid: Oid) -> Oid; + pub fn get_func_retset(funcid: Oid) -> bool; + pub fn func_strict(funcid: Oid) -> bool; + pub fn func_volatile(funcid: Oid) -> ::core::ffi::c_char; + pub fn func_parallel(funcid: Oid) -> ::core::ffi::c_char; + pub fn get_func_prokind(funcid: Oid) -> ::core::ffi::c_char; + pub fn get_func_leakproof(funcid: Oid) -> bool; + pub fn get_func_support(funcid: Oid) -> RegProcedure; + pub fn get_relname_relid(relname: *const ::core::ffi::c_char, relnamespace: Oid) -> Oid; + pub fn get_rel_name(relid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_rel_namespace(relid: Oid) -> Oid; + pub fn get_rel_type_id(relid: Oid) -> Oid; + pub fn get_rel_relkind(relid: Oid) -> ::core::ffi::c_char; + pub fn get_rel_relispartition(relid: Oid) -> bool; + pub fn get_rel_tablespace(relid: Oid) -> Oid; + pub fn get_rel_persistence(relid: Oid) -> ::core::ffi::c_char; + pub fn get_rel_relam(relid: Oid) -> Oid; + pub fn get_transform_fromsql(typid: Oid, langid: Oid, trftypes: *mut List) -> Oid; + pub fn get_transform_tosql(typid: Oid, langid: Oid, trftypes: *mut List) -> Oid; + pub fn get_typisdefined(typid: Oid) -> bool; + pub fn get_typlen(typid: Oid) -> int16; + pub fn get_typbyval(typid: Oid) -> bool; + pub fn get_typlenbyval(typid: Oid, typlen: *mut int16, typbyval: *mut bool); + pub fn get_typlenbyvalalign( + typid: Oid, + typlen: *mut int16, + typbyval: *mut bool, + typalign: *mut ::core::ffi::c_char, + ); + pub fn getTypeIOParam(typeTuple: HeapTuple) -> Oid; + pub fn get_type_io_data( + typid: Oid, + which_func: IOFuncSelector::Type, + typlen: *mut int16, + typbyval: *mut bool, + typalign: *mut ::core::ffi::c_char, + typdelim: *mut ::core::ffi::c_char, + typioparam: *mut Oid, + func: *mut Oid, + ); + pub fn get_typstorage(typid: Oid) -> ::core::ffi::c_char; + pub fn get_typdefault(typid: Oid) -> *mut Node; + pub fn get_typtype(typid: Oid) -> ::core::ffi::c_char; + pub fn type_is_rowtype(typid: Oid) -> bool; + pub fn type_is_enum(typid: Oid) -> bool; + pub fn type_is_range(typid: Oid) -> bool; + pub fn type_is_multirange(typid: Oid) -> bool; + pub fn get_type_category_preferred( + typid: Oid, + typcategory: *mut ::core::ffi::c_char, + typispreferred: *mut bool, + ); + pub fn get_typ_typrelid(typid: Oid) -> Oid; + pub fn get_element_type(typid: Oid) -> Oid; + pub fn get_array_type(typid: Oid) -> Oid; + pub fn get_promoted_array_type(typid: Oid) -> Oid; + pub fn get_base_element_type(typid: Oid) -> Oid; + pub fn getTypeInputInfo(type_: Oid, typInput: *mut Oid, typIOParam: *mut Oid); + pub fn getTypeOutputInfo(type_: Oid, typOutput: *mut Oid, typIsVarlena: *mut bool); + pub fn getTypeBinaryInputInfo(type_: Oid, typReceive: *mut Oid, typIOParam: *mut Oid); + pub fn getTypeBinaryOutputInfo(type_: Oid, typSend: *mut Oid, typIsVarlena: *mut bool); + pub fn get_typmodin(typid: Oid) -> Oid; + pub fn get_typcollation(typid: Oid) -> Oid; + pub fn type_is_collatable(typid: Oid) -> bool; + pub fn get_typsubscript(typid: Oid, typelemp: *mut Oid) -> RegProcedure; + pub fn getSubscriptingRoutines(typid: Oid, typelemp: *mut Oid) -> *const SubscriptRoutines; + pub fn getBaseType(typid: Oid) -> Oid; + pub fn getBaseTypeAndTypmod(typid: Oid, typmod: *mut int32) -> Oid; + pub fn get_typavgwidth(typid: Oid, typmod: int32) -> int32; + pub fn get_attavgwidth(relid: Oid, attnum: AttrNumber) -> int32; + pub fn get_attstatsslot( + sslot: *mut AttStatsSlot, + statstuple: HeapTuple, + reqkind: ::core::ffi::c_int, + reqop: Oid, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn free_attstatsslot(sslot: *mut AttStatsSlot); + pub fn get_namespace_name(nspid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_namespace_name_or_temp(nspid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_range_subtype(rangeOid: Oid) -> Oid; + pub fn get_range_collation(rangeOid: Oid) -> Oid; + pub fn get_range_multirange(rangeOid: Oid) -> Oid; + pub fn get_multirange_range(multirangeOid: Oid) -> Oid; + pub fn get_index_column_opclass(index_oid: Oid, attno: ::core::ffi::c_int) -> Oid; + pub fn get_index_isreplident(index_oid: Oid) -> bool; + pub fn get_index_isvalid(index_oid: Oid) -> bool; + pub fn get_index_isclustered(index_oid: Oid) -> bool; + pub fn get_publication_oid(pubname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_publication_name(pubid: Oid, missing_ok: bool) -> *mut ::core::ffi::c_char; + pub fn get_subscription_oid(subname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_subscription_name(subid: Oid, missing_ok: bool) -> *mut ::core::ffi::c_char; + pub fn format_procedure_extended(procedure_oid: Oid, flags: bits16) + -> *mut ::core::ffi::c_char; + pub fn format_operator_extended(operator_oid: Oid, flags: bits16) -> *mut ::core::ffi::c_char; + pub fn stringToQualifiedNameList( + string: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> *mut List; + pub fn format_procedure(procedure_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_procedure_qualified(procedure_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_procedure_parts( + procedure_oid: Oid, + objnames: *mut *mut List, + objargs: *mut *mut List, + missing_ok: bool, + ); + pub fn format_operator(operator_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_operator_qualified(operator_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_operator_parts( + operator_oid: Oid, + objnames: *mut *mut List, + objargs: *mut *mut List, + missing_ok: bool, + ); + pub fn pg_get_indexdef_string(indexrelid: Oid) -> *mut ::core::ffi::c_char; + pub fn pg_get_indexdef_columns(indexrelid: Oid, pretty: bool) -> *mut ::core::ffi::c_char; + pub fn pg_get_indexdef_columns_extended( + indexrelid: Oid, + flags: bits16, + ) -> *mut ::core::ffi::c_char; + pub fn pg_get_querydef(query: *mut Query, pretty: bool) -> *mut ::core::ffi::c_char; + pub fn pg_get_partkeydef_columns(relid: Oid, pretty: bool) -> *mut ::core::ffi::c_char; + pub fn pg_get_partconstrdef_string( + partitionId: Oid, + aliasname: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn pg_get_constraintdef_command(constraintId: Oid) -> *mut ::core::ffi::c_char; + pub fn deparse_expression( + expr: *mut Node, + dpcontext: *mut List, + forceprefix: bool, + showimplicit: bool, + ) -> *mut ::core::ffi::c_char; + pub fn deparse_context_for(aliasname: *const ::core::ffi::c_char, relid: Oid) -> *mut List; + pub fn deparse_context_for_plan_tree( + pstmt: *mut PlannedStmt, + rtable_names: *mut List, + ) -> *mut List; + pub fn set_deparse_context_plan( + dpcontext: *mut List, + plan: *mut Plan, + ancestors: *mut List, + ) -> *mut List; + pub fn select_rtable_names_for_explain( + rtable: *mut List, + rels_used: *mut Bitmapset, + ) -> *mut List; + pub fn generate_collation_name(collid: Oid) -> *mut ::core::ffi::c_char; + pub fn generate_opclass_name(opclass: Oid) -> *mut ::core::ffi::c_char; + pub fn get_range_partbound_string(bound_datums: *mut List) -> *mut ::core::ffi::c_char; + pub fn pg_get_statisticsobjdef_string(statextid: Oid) -> *mut ::core::ffi::c_char; + pub fn sampler_random_init_state(seed: uint32, randstate: *mut pg_prng_state); + pub fn sampler_random_fract(randstate: *mut pg_prng_state) -> f64; + pub fn BlockSampler_Init( + bs: BlockSampler, + nblocks: BlockNumber, + samplesize: ::core::ffi::c_int, + randseed: uint32, + ) -> BlockNumber; + pub fn BlockSampler_HasMore(bs: BlockSampler) -> bool; + pub fn BlockSampler_Next(bs: BlockSampler) -> BlockNumber; + pub fn reservoir_init_selection_state(rs: ReservoirState, n: ::core::ffi::c_int); + pub fn reservoir_get_next_S(rs: ReservoirState, t: f64, n: ::core::ffi::c_int) -> f64; + pub static mut get_relation_stats_hook: get_relation_stats_hook_type; + pub static mut get_index_stats_hook: get_index_stats_hook_type; + pub fn examine_variable( + root: *mut PlannerInfo, + node: *mut Node, + varRelid: ::core::ffi::c_int, + vardata: *mut VariableStatData, + ); + pub fn statistic_proc_security_check(vardata: *mut VariableStatData, func_oid: Oid) -> bool; + pub fn get_restriction_variable( + root: *mut PlannerInfo, + args: *mut List, + varRelid: ::core::ffi::c_int, + vardata: *mut VariableStatData, + other: *mut *mut Node, + varonleft: *mut bool, + ) -> bool; + pub fn get_join_variables( + root: *mut PlannerInfo, + args: *mut List, + sjinfo: *mut SpecialJoinInfo, + vardata1: *mut VariableStatData, + vardata2: *mut VariableStatData, + join_is_reversed: *mut bool, + ); + pub fn get_variable_numdistinct(vardata: *mut VariableStatData, isdefault: *mut bool) -> f64; + pub fn mcv_selectivity( + vardata: *mut VariableStatData, + opproc: *mut FmgrInfo, + collation: Oid, + constval: Datum, + varonleft: bool, + sumcommonp: *mut f64, + ) -> f64; + pub fn histogram_selectivity( + vardata: *mut VariableStatData, + opproc: *mut FmgrInfo, + collation: Oid, + constval: Datum, + varonleft: bool, + min_hist_size: ::core::ffi::c_int, + n_skip: ::core::ffi::c_int, + hist_size: *mut ::core::ffi::c_int, + ) -> f64; + pub fn generic_restriction_selectivity( + root: *mut PlannerInfo, + oproid: Oid, + collation: Oid, + args: *mut List, + varRelid: ::core::ffi::c_int, + default_selectivity: f64, + ) -> f64; + pub fn ineq_histogram_selectivity( + root: *mut PlannerInfo, + vardata: *mut VariableStatData, + opoid: Oid, + opproc: *mut FmgrInfo, + isgt: bool, + iseq: bool, + collation: Oid, + constval: Datum, + consttype: Oid, + ) -> f64; + pub fn var_eq_const( + vardata: *mut VariableStatData, + oproid: Oid, + collation: Oid, + constval: Datum, + constisnull: bool, + varonleft: bool, + negate: bool, + ) -> f64; + pub fn var_eq_non_const( + vardata: *mut VariableStatData, + oproid: Oid, + collation: Oid, + other: *mut Node, + varonleft: bool, + negate: bool, + ) -> f64; + pub fn boolvarsel( + root: *mut PlannerInfo, + arg: *mut Node, + varRelid: ::core::ffi::c_int, + ) -> Selectivity; + pub fn booltestsel( + root: *mut PlannerInfo, + booltesttype: BoolTestType::Type, + arg: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn nulltestsel( + root: *mut PlannerInfo, + nulltesttype: NullTestType::Type, + arg: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn scalararraysel( + root: *mut PlannerInfo, + clause: *mut ScalarArrayOpExpr, + is_join_clause: bool, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn estimate_array_length(root: *mut PlannerInfo, arrayexpr: *mut Node) -> f64; + pub fn rowcomparesel( + root: *mut PlannerInfo, + clause: *mut RowCompareExpr, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn mergejoinscansel( + root: *mut PlannerInfo, + clause: *mut Node, + opfamily: Oid, + strategy: ::core::ffi::c_int, + nulls_first: bool, + leftstart: *mut Selectivity, + leftend: *mut Selectivity, + rightstart: *mut Selectivity, + rightend: *mut Selectivity, + ); + pub fn estimate_num_groups( + root: *mut PlannerInfo, + groupExprs: *mut List, + input_rows: f64, + pgset: *mut *mut List, + estinfo: *mut EstimationInfo, + ) -> f64; + pub fn estimate_hash_bucket_stats( + root: *mut PlannerInfo, + hashkey: *mut Node, + nbuckets: f64, + mcv_freq: *mut Selectivity, + bucketsize_frac: *mut Selectivity, + ); + pub fn estimate_hashagg_tablesize( + root: *mut PlannerInfo, + path: *mut Path, + agg_costs: *const AggClauseCosts, + dNumGroups: f64, + ) -> f64; + pub fn get_quals_from_indexclauses(indexclauses: *mut List) -> *mut List; + pub fn index_other_operands_eval_cost(root: *mut PlannerInfo, indexquals: *mut List) -> Cost; + pub fn add_predicate_to_index_quals( + index: *mut IndexOptInfo, + indexQuals: *mut List, + ) -> *mut List; + pub fn genericcostestimate( + root: *mut PlannerInfo, + path: *mut IndexPath, + loop_count: f64, + costs: *mut GenericCosts, + ); + pub fn scalararraysel_containment( + root: *mut PlannerInfo, + leftop: *mut Node, + rightop: *mut Node, + elemtype: Oid, + isEquality: bool, + useOr: bool, + varRelid: ::core::ffi::c_int, + ) -> Selectivity; + pub fn CreateCacheMemoryContext(); + pub fn InitCatCache( + id: ::core::ffi::c_int, + reloid: Oid, + indexoid: Oid, + nkeys: ::core::ffi::c_int, + key: *const ::core::ffi::c_int, + nbuckets: ::core::ffi::c_int, + ) -> *mut CatCache; + pub fn InitCatCachePhase2(cache: *mut CatCache, touch_index: bool); + pub fn SearchCatCache( + cache: *mut CatCache, + v1: Datum, + v2: Datum, + v3: Datum, + v4: Datum, + ) -> HeapTuple; + pub fn SearchCatCache1(cache: *mut CatCache, v1: Datum) -> HeapTuple; + pub fn SearchCatCache2(cache: *mut CatCache, v1: Datum, v2: Datum) -> HeapTuple; + pub fn SearchCatCache3(cache: *mut CatCache, v1: Datum, v2: Datum, v3: Datum) -> HeapTuple; + pub fn SearchCatCache4( + cache: *mut CatCache, + v1: Datum, + v2: Datum, + v3: Datum, + v4: Datum, + ) -> HeapTuple; + pub fn ReleaseCatCache(tuple: HeapTuple); + pub fn GetCatCacheHashValue( + cache: *mut CatCache, + v1: Datum, + v2: Datum, + v3: Datum, + v4: Datum, + ) -> uint32; + pub fn SearchCatCacheList( + cache: *mut CatCache, + nkeys: ::core::ffi::c_int, + v1: Datum, + v2: Datum, + v3: Datum, + ) -> *mut CatCList; + pub fn ReleaseCatCacheList(list: *mut CatCList); + pub fn ResetCatalogCaches(); + pub fn CatalogCacheFlushCatalog(catId: Oid); + pub fn CatCacheInvalidate(cache: *mut CatCache, hashValue: uint32); + pub fn PrepareToInvalidateCacheTuple( + relation: Relation, + tuple: HeapTuple, + newtuple: HeapTuple, + function: ::core::option::Option< + unsafe extern "C" fn(arg1: ::core::ffi::c_int, arg2: uint32, arg3: Oid), + >, + ); + pub fn InitCatalogCache(); + pub fn InitCatalogCachePhase2(); + pub fn SearchSysCache( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> HeapTuple; + pub fn SearchSysCache1(cacheId: ::core::ffi::c_int, key1: Datum) -> HeapTuple; + pub fn SearchSysCache2(cacheId: ::core::ffi::c_int, key1: Datum, key2: Datum) -> HeapTuple; + pub fn SearchSysCache3( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + ) -> HeapTuple; + pub fn SearchSysCache4( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> HeapTuple; + pub fn ReleaseSysCache(tuple: HeapTuple); + pub fn SearchSysCacheCopy( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> HeapTuple; + pub fn SearchSysCacheExists( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> bool; + pub fn GetSysCacheOid( + cacheId: ::core::ffi::c_int, + oidcol: AttrNumber, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> Oid; + pub fn SearchSysCacheAttName(relid: Oid, attname: *const ::core::ffi::c_char) -> HeapTuple; + pub fn SearchSysCacheCopyAttName(relid: Oid, attname: *const ::core::ffi::c_char) -> HeapTuple; + pub fn SearchSysCacheExistsAttName(relid: Oid, attname: *const ::core::ffi::c_char) -> bool; + pub fn SearchSysCacheAttNum(relid: Oid, attnum: int16) -> HeapTuple; + pub fn SearchSysCacheCopyAttNum(relid: Oid, attnum: int16) -> HeapTuple; + pub fn SysCacheGetAttr( + cacheId: ::core::ffi::c_int, + tup: HeapTuple, + attributeNumber: AttrNumber, + isNull: *mut bool, + ) -> Datum; + pub fn SysCacheGetAttrNotNull( + cacheId: ::core::ffi::c_int, + tup: HeapTuple, + attributeNumber: AttrNumber, + ) -> Datum; + pub fn GetSysCacheHashValue( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> uint32; + pub fn SearchSysCacheList( + cacheId: ::core::ffi::c_int, + nkeys: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + ) -> *mut catclist; + pub fn SysCacheInvalidate(cacheId: ::core::ffi::c_int, hashValue: uint32); + pub fn RelationInvalidatesSnapshotsOnly(relid: Oid) -> bool; + pub fn RelationHasSysCache(relid: Oid) -> bool; + pub fn RelationSupportsSysCache(relid: Oid) -> bool; + pub fn range_contains_elem_internal( + typcache: *mut TypeCacheEntry, + r: *const RangeType, + val: Datum, + ) -> bool; + pub fn range_eq_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_ne_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_contains_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_contained_by_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_before_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_after_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_adjacent_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_overlaps_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_overleft_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_overright_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_union_internal( + typcache: *mut TypeCacheEntry, + r1: *mut RangeType, + r2: *mut RangeType, + strict: bool, + ) -> *mut RangeType; + pub fn range_minus_internal( + typcache: *mut TypeCacheEntry, + r1: *mut RangeType, + r2: *mut RangeType, + ) -> *mut RangeType; + pub fn range_intersect_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> *mut RangeType; + pub fn range_get_typcache(fcinfo: FunctionCallInfo, rngtypid: Oid) -> *mut TypeCacheEntry; + pub fn range_serialize( + typcache: *mut TypeCacheEntry, + lower: *mut RangeBound, + upper: *mut RangeBound, + empty: bool, + escontext: *mut Node, + ) -> *mut RangeType; + pub fn range_deserialize( + typcache: *mut TypeCacheEntry, + range: *const RangeType, + lower: *mut RangeBound, + upper: *mut RangeBound, + empty: *mut bool, + ); + pub fn range_get_flags(range: *const RangeType) -> ::core::ffi::c_char; + pub fn range_set_contain_empty(range: *mut RangeType); + pub fn make_range( + typcache: *mut TypeCacheEntry, + lower: *mut RangeBound, + upper: *mut RangeBound, + empty: bool, + escontext: *mut Node, + ) -> *mut RangeType; + pub fn range_cmp_bounds( + typcache: *mut TypeCacheEntry, + b1: *const RangeBound, + b2: *const RangeBound, + ) -> ::core::ffi::c_int; + pub fn range_cmp_bound_values( + typcache: *mut TypeCacheEntry, + b1: *const RangeBound, + b2: *const RangeBound, + ) -> ::core::ffi::c_int; + pub fn range_compare( + key1: *const ::core::ffi::c_void, + key2: *const ::core::ffi::c_void, + arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn bounds_adjacent( + typcache: *mut TypeCacheEntry, + boundA: RangeBound, + boundB: RangeBound, + ) -> bool; + pub fn make_empty_range(typcache: *mut TypeCacheEntry) -> *mut RangeType; + pub fn range_split_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + output1: *mut *mut RangeType, + output2: *mut *mut RangeType, + ) -> bool; + pub fn varstr_cmp( + arg1: *const ::core::ffi::c_char, + len1: ::core::ffi::c_int, + arg2: *const ::core::ffi::c_char, + len2: ::core::ffi::c_int, + collid: Oid, + ) -> ::core::ffi::c_int; + pub fn varstr_sortsupport(ssup: SortSupport, typid: Oid, collid: Oid); + pub fn varstr_levenshtein( + source: *const ::core::ffi::c_char, + slen: ::core::ffi::c_int, + target: *const ::core::ffi::c_char, + tlen: ::core::ffi::c_int, + ins_c: ::core::ffi::c_int, + del_c: ::core::ffi::c_int, + sub_c: ::core::ffi::c_int, + trusted: bool, + ) -> ::core::ffi::c_int; + pub fn varstr_levenshtein_less_equal( + source: *const ::core::ffi::c_char, + slen: ::core::ffi::c_int, + target: *const ::core::ffi::c_char, + tlen: ::core::ffi::c_int, + ins_c: ::core::ffi::c_int, + del_c: ::core::ffi::c_int, + sub_c: ::core::ffi::c_int, + max_d: ::core::ffi::c_int, + trusted: bool, + ) -> ::core::ffi::c_int; + pub fn textToQualifiedNameList(textval: *mut text) -> *mut List; + pub fn SplitIdentifierString( + rawstring: *mut ::core::ffi::c_char, + separator: ::core::ffi::c_char, + namelist: *mut *mut List, + ) -> bool; + pub fn SplitDirectoriesString( + rawstring: *mut ::core::ffi::c_char, + separator: ::core::ffi::c_char, + namelist: *mut *mut List, + ) -> bool; + pub fn SplitGUCList( + rawstring: *mut ::core::ffi::c_char, + separator: ::core::ffi::c_char, + namelist: *mut *mut List, + ) -> bool; + pub fn replace_text_regexp( + src_text: *mut text, + pattern_text: *mut text, + replace_text: *mut text, + cflags: ::core::ffi::c_int, + collation: Oid, + search_start: ::core::ffi::c_int, + n: ::core::ffi::c_int, + ) -> *mut text; + pub fn initClosestMatch( + state: *mut ClosestMatchState, + source: *const ::core::ffi::c_char, + max_d: ::core::ffi::c_int, + ); + pub fn updateClosestMatch(state: *mut ClosestMatchState, candidate: *const ::core::ffi::c_char); + pub fn getClosestMatch(state: *mut ClosestMatchState) -> *const ::core::ffi::c_char; +} +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_OP")] +pub const A_Expr_Kind_AEXPR_OP: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_OP_ANY")] +pub const A_Expr_Kind_AEXPR_OP_ANY: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_OP_ALL")] +pub const A_Expr_Kind_AEXPR_OP_ALL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_DISTINCT" +)] +pub const A_Expr_Kind_AEXPR_DISTINCT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_NOT_DISTINCT" +)] +pub const A_Expr_Kind_AEXPR_NOT_DISTINCT: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_NULLIF")] +pub const A_Expr_Kind_AEXPR_NULLIF: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_IN")] +pub const A_Expr_Kind_AEXPR_IN: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_LIKE")] +pub const A_Expr_Kind_AEXPR_LIKE: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_ILIKE")] +pub const A_Expr_Kind_AEXPR_ILIKE: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_SIMILAR")] +pub const A_Expr_Kind_AEXPR_SIMILAR: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_BETWEEN")] +pub const A_Expr_Kind_AEXPR_BETWEEN: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_NOT_BETWEEN" +)] +pub const A_Expr_Kind_AEXPR_NOT_BETWEEN: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_BETWEEN_SYM" +)] +pub const A_Expr_Kind_AEXPR_BETWEEN_SYM: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_NOT_BETWEEN_SYM" +)] +pub const A_Expr_Kind_AEXPR_NOT_BETWEEN_SYM: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AclMaskHow::ACLMASK_ALL")] +pub const AclMaskHow_ACLMASK_ALL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AclMaskHow::ACLMASK_ANY")] +pub const AclMaskHow_ACLMASK_ANY: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AclResult::ACLCHECK_OK")] +pub const AclResult_ACLCHECK_OK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AclResult::ACLCHECK_NO_PRIV" +)] +pub const AclResult_ACLCHECK_NO_PRIV: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AclResult::ACLCHECK_NOT_OWNER" +)] +pub const AclResult_ACLCHECK_NOT_OWNER: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggSplit::AGGSPLIT_SIMPLE")] +pub const AggSplit_AGGSPLIT_SIMPLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AggSplit::AGGSPLIT_INITIAL_SERIAL" +)] +pub const AggSplit_AGGSPLIT_INITIAL_SERIAL: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AggSplit::AGGSPLIT_FINAL_DESERIAL" +)] +pub const AggSplit_AGGSPLIT_FINAL_DESERIAL: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_PLAIN")] +pub const AggStrategy_AGG_PLAIN: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_SORTED")] +pub const AggStrategy_AGG_SORTED: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_HASHED")] +pub const AggStrategy_AGG_HASHED: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_MIXED")] +pub const AggStrategy_AGG_MIXED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterPublicationAction::AP_AddObjects" +)] +pub const AlterPublicationAction_AP_AddObjects: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterPublicationAction::AP_DropObjects" +)] +pub const AlterPublicationAction_AP_DropObjects: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterPublicationAction::AP_SetObjects" +)] +pub const AlterPublicationAction_AP_SetObjects: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_OPTIONS" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_OPTIONS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_CONNECTION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_CONNECTION: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_SET_PUBLICATION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_SET_PUBLICATION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_ADD_PUBLICATION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_ADD_PUBLICATION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_DROP_PUBLICATION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_DROP_PUBLICATION: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_REFRESH" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_REFRESH: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_ENABLED" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_ENABLED: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_SKIP" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_SKIP: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_ADD_MAPPING" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_ADD_MAPPING: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_REPLACE_DICT" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_REPLACE_DICT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_DROP_MAPPING" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_DROP_MAPPING: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddColumn" +)] +pub const AlterTableType_AT_AddColumn: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddColumnToView" +)] +pub const AlterTableType_AT_AddColumnToView: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ColumnDefault" +)] +pub const AlterTableType_AT_ColumnDefault: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_CookedColumnDefault" +)] +pub const AlterTableType_AT_CookedColumnDefault: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropNotNull" +)] +pub const AlterTableType_AT_DropNotNull: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetNotNull" +)] +pub const AlterTableType_AT_SetNotNull: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetExpression" +)] +pub const AlterTableType_AT_SetExpression: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropExpression" +)] +pub const AlterTableType_AT_DropExpression: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_CheckNotNull" +)] +pub const AlterTableType_AT_CheckNotNull: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetStatistics" +)] +pub const AlterTableType_AT_SetStatistics: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetOptions" +)] +pub const AlterTableType_AT_SetOptions: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ResetOptions" +)] +pub const AlterTableType_AT_ResetOptions: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetStorage" +)] +pub const AlterTableType_AT_SetStorage: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetCompression" +)] +pub const AlterTableType_AT_SetCompression: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropColumn" +)] +pub const AlterTableType_AT_DropColumn: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddIndex" +)] +pub const AlterTableType_AT_AddIndex: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddIndex" +)] +pub const AlterTableType_AT_ReAddIndex: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddConstraint" +)] +pub const AlterTableType_AT_AddConstraint: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddConstraint" +)] +pub const AlterTableType_AT_ReAddConstraint: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddDomainConstraint" +)] +pub const AlterTableType_AT_ReAddDomainConstraint: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AlterConstraint" +)] +pub const AlterTableType_AT_AlterConstraint: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ValidateConstraint" +)] +pub const AlterTableType_AT_ValidateConstraint: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddIndexConstraint" +)] +pub const AlterTableType_AT_AddIndexConstraint: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropConstraint" +)] +pub const AlterTableType_AT_DropConstraint: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddComment" +)] +pub const AlterTableType_AT_ReAddComment: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AlterColumnType" +)] +pub const AlterTableType_AT_AlterColumnType: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AlterColumnGenericOptions" +)] +pub const AlterTableType_AT_AlterColumnGenericOptions: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ChangeOwner" +)] +pub const AlterTableType_AT_ChangeOwner: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ClusterOn" +)] +pub const AlterTableType_AT_ClusterOn: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropCluster" +)] +pub const AlterTableType_AT_DropCluster: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetLogged" +)] +pub const AlterTableType_AT_SetLogged: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetUnLogged" +)] +pub const AlterTableType_AT_SetUnLogged: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropOids" +)] +pub const AlterTableType_AT_DropOids: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetAccessMethod" +)] +pub const AlterTableType_AT_SetAccessMethod: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetTableSpace" +)] +pub const AlterTableType_AT_SetTableSpace: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetRelOptions" +)] +pub const AlterTableType_AT_SetRelOptions: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ResetRelOptions" +)] +pub const AlterTableType_AT_ResetRelOptions: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReplaceRelOptions" +)] +pub const AlterTableType_AT_ReplaceRelOptions: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableTrig" +)] +pub const AlterTableType_AT_EnableTrig: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableAlwaysTrig" +)] +pub const AlterTableType_AT_EnableAlwaysTrig: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableReplicaTrig" +)] +pub const AlterTableType_AT_EnableReplicaTrig: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableTrig" +)] +pub const AlterTableType_AT_DisableTrig: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableTrigAll" +)] +pub const AlterTableType_AT_EnableTrigAll: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableTrigAll" +)] +pub const AlterTableType_AT_DisableTrigAll: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableTrigUser" +)] +pub const AlterTableType_AT_EnableTrigUser: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableTrigUser" +)] +pub const AlterTableType_AT_DisableTrigUser: u32 = 45; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableRule" +)] +pub const AlterTableType_AT_EnableRule: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableAlwaysRule" +)] +pub const AlterTableType_AT_EnableAlwaysRule: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableReplicaRule" +)] +pub const AlterTableType_AT_EnableReplicaRule: u32 = 48; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableRule" +)] +pub const AlterTableType_AT_DisableRule: u32 = 49; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddInherit" +)] +pub const AlterTableType_AT_AddInherit: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropInherit" +)] +pub const AlterTableType_AT_DropInherit: u32 = 51; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AlterTableType::AT_AddOf")] +pub const AlterTableType_AT_AddOf: u32 = 52; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AlterTableType::AT_DropOf")] +pub const AlterTableType_AT_DropOf: u32 = 53; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReplicaIdentity" +)] +pub const AlterTableType_AT_ReplicaIdentity: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableRowSecurity" +)] +pub const AlterTableType_AT_EnableRowSecurity: u32 = 55; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableRowSecurity" +)] +pub const AlterTableType_AT_DisableRowSecurity: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ForceRowSecurity" +)] +pub const AlterTableType_AT_ForceRowSecurity: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_NoForceRowSecurity" +)] +pub const AlterTableType_AT_NoForceRowSecurity: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_GenericOptions" +)] +pub const AlterTableType_AT_GenericOptions: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AttachPartition" +)] +pub const AlterTableType_AT_AttachPartition: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DetachPartition" +)] +pub const AlterTableType_AT_DetachPartition: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DetachPartitionFinalize" +)] +pub const AlterTableType_AT_DetachPartitionFinalize: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddIdentity" +)] +pub const AlterTableType_AT_AddIdentity: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetIdentity" +)] +pub const AlterTableType_AT_SetIdentity: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropIdentity" +)] +pub const AlterTableType_AT_DropIdentity: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddStatistics" +)] +pub const AlterTableType_AT_ReAddStatistics: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ArchiveMode::ARCHIVE_MODE_OFF" +)] +pub const ArchiveMode_ARCHIVE_MODE_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ArchiveMode::ARCHIVE_MODE_ON" +)] +pub const ArchiveMode_ARCHIVE_MODE_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ArchiveMode::ARCHIVE_MODE_ALWAYS" +)] +pub const ArchiveMode_ARCHIVE_MODE_ALWAYS: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BMS_Comparison::BMS_EQUAL")] +pub const BMS_Comparison_BMS_EQUAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Comparison::BMS_SUBSET1" +)] +pub const BMS_Comparison_BMS_SUBSET1: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Comparison::BMS_SUBSET2" +)] +pub const BMS_Comparison_BMS_SUBSET2: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Comparison::BMS_DIFFERENT" +)] +pub const BMS_Comparison_BMS_DIFFERENT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Membership::BMS_EMPTY_SET" +)] +pub const BMS_Membership_BMS_EMPTY_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Membership::BMS_SINGLETON" +)] +pub const BMS_Membership_BMS_SINGLETON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Membership::BMS_MULTIPLE" +)] +pub const BMS_Membership_BMS_MULTIPLE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_UNDEFINED" +)] +pub const BackendState_STATE_UNDEFINED: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendState::STATE_IDLE")] +pub const BackendState_STATE_IDLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_RUNNING" +)] +pub const BackendState_STATE_RUNNING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_IDLEINTRANSACTION" +)] +pub const BackendState_STATE_IDLEINTRANSACTION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_FASTPATH" +)] +pub const BackendState_STATE_FASTPATH: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_IDLEINTRANSACTION_ABORTED" +)] +pub const BackendState_STATE_IDLEINTRANSACTION_ABORTED: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_DISABLED" +)] +pub const BackendState_STATE_DISABLED: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_INVALID")] +pub const BackendType_B_INVALID: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_BACKEND")] +pub const BackendType_B_BACKEND: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_AUTOVAC_LAUNCHER" +)] +pub const BackendType_B_AUTOVAC_LAUNCHER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_AUTOVAC_WORKER" +)] +pub const BackendType_B_AUTOVAC_WORKER: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_BG_WORKER")] +pub const BackendType_B_BG_WORKER: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_WAL_SENDER")] +pub const BackendType_B_WAL_SENDER: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_SLOTSYNC_WORKER" +)] +pub const BackendType_B_SLOTSYNC_WORKER: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_STANDALONE_BACKEND" +)] +pub const BackendType_B_STANDALONE_BACKEND: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_ARCHIVER")] +pub const BackendType_B_ARCHIVER: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_BG_WRITER")] +pub const BackendType_B_BG_WRITER: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_CHECKPOINTER" +)] +pub const BackendType_B_CHECKPOINTER: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_STARTUP")] +pub const BackendType_B_STARTUP: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_WAL_RECEIVER" +)] +pub const BackendType_B_WAL_RECEIVER: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_WAL_SUMMARIZER" +)] +pub const BackendType_B_WAL_SUMMARIZER: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_WAL_WRITER")] +pub const BackendType_B_WAL_WRITER: u32 = 14; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_LOGGER")] +pub const BackendType_B_LOGGER: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackslashQuoteType::BACKSLASH_QUOTE_OFF" +)] +pub const BackslashQuoteType_BACKSLASH_QUOTE_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackslashQuoteType::BACKSLASH_QUOTE_ON" +)] +pub const BackslashQuoteType_BACKSLASH_QUOTE_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackslashQuoteType::BACKSLASH_QUOTE_SAFE_ENCODING" +)] +pub const BackslashQuoteType_BACKSLASH_QUOTE_SAFE_ENCODING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgWorkerStartTime::BgWorkerStart_PostmasterStart" +)] +pub const BgWorkerStartTime_BgWorkerStart_PostmasterStart: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgWorkerStartTime::BgWorkerStart_ConsistentState" +)] +pub const BgWorkerStartTime_BgWorkerStart_ConsistentState: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgWorkerStartTime::BgWorkerStart_RecoveryFinished" +)] +pub const BgWorkerStartTime_BgWorkerStart_RecoveryFinished: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_STARTED" +)] +pub const BgwHandleStatus_BGWH_STARTED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_NOT_YET_STARTED" +)] +pub const BgwHandleStatus_BGWH_NOT_YET_STARTED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_STOPPED" +)] +pub const BgwHandleStatus_BGWH_STOPPED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_POSTMASTER_DIED" +)] +pub const BgwHandleStatus_BGWH_POSTMASTER_DIED: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolExprType::AND_EXPR")] +pub const BoolExprType_AND_EXPR: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolExprType::OR_EXPR")] +pub const BoolExprType_OR_EXPR: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolExprType::NOT_EXPR")] +pub const BoolExprType_NOT_EXPR: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_TRUE")] +pub const BoolTestType_IS_TRUE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_NOT_TRUE")] +pub const BoolTestType_IS_NOT_TRUE: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_FALSE")] +pub const BoolTestType_IS_FALSE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_NOT_FALSE")] +pub const BoolTestType_IS_NOT_FALSE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_UNKNOWN")] +pub const BoolTestType_IS_UNKNOWN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BoolTestType::IS_NOT_UNKNOWN" +)] +pub const BoolTestType_IS_NOT_UNKNOWN: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_NORMAL" +)] +pub const BufferAccessStrategyType_BAS_NORMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_BULKREAD" +)] +pub const BufferAccessStrategyType_BAS_BULKREAD: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_BULKWRITE" +)] +pub const BufferAccessStrategyType_BAS_BULKWRITE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_VACUUM" +)] +pub const BufferAccessStrategyType_BAS_VACUUM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_XACT_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_XACT_BUFFER: u32 = 53; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_COMMITTS_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_COMMITTS_BUFFER: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SUBTRANS_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SUBTRANS_BUFFER: u32 = 55; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTOFFSET_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTOFFSET_BUFFER: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTMEMBER_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTMEMBER_BUFFER: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_NOTIFY_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_NOTIFY_BUFFER: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SERIAL_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SERIAL_BUFFER: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_WAL_INSERT" +)] +pub const BuiltinTrancheIds_LWTRANCHE_WAL_INSERT: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_BUFFER_CONTENT" +)] +pub const BuiltinTrancheIds_LWTRANCHE_BUFFER_CONTENT: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_REPLICATION_ORIGIN_STATE" +)] +pub const BuiltinTrancheIds_LWTRANCHE_REPLICATION_ORIGIN_STATE: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_REPLICATION_SLOT_IO" +)] +pub const BuiltinTrancheIds_LWTRANCHE_REPLICATION_SLOT_IO: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LOCK_FASTPATH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LOCK_FASTPATH: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_BUFFER_MAPPING" +)] +pub const BuiltinTrancheIds_LWTRANCHE_BUFFER_MAPPING: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LOCK_MANAGER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LOCK_MANAGER: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PREDICATE_LOCK_MANAGER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PREDICATE_LOCK_MANAGER: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_HASH_JOIN" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_HASH_JOIN: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_QUERY_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_QUERY_DSA: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_SESSION_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_SESSION_DSA: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_SESSION_RECORD_TYPE" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_SESSION_RECORD_TYPE: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_SESSION_RECORD_TYPMOD" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_SESSION_RECORD_TYPMOD: u32 = 72; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SHARED_TUPLESTORE" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SHARED_TUPLESTORE: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SHARED_TIDBITMAP" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SHARED_TIDBITMAP: u32 = 74; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_APPEND" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_APPEND: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_XACT_PREDICATE_LIST" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_XACT_PREDICATE_LIST: u32 = 76; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PGSTATS_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PGSTATS_DSA: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PGSTATS_HASH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PGSTATS_HASH: u32 = 78; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PGSTATS_DATA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PGSTATS_DATA: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LAUNCHER_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LAUNCHER_DSA: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LAUNCHER_HASH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LAUNCHER_HASH: u32 = 81; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_DSM_REGISTRY_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_DSM_REGISTRY_DSA: u32 = 82; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_DSM_REGISTRY_HASH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_DSM_REGISTRY_HASH: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_COMMITTS_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_COMMITTS_SLRU: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTMEMBER_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTMEMBER_SLRU: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTOFFSET_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTOFFSET_SLRU: u32 = 86; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_NOTIFY_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_NOTIFY_SLRU: u32 = 87; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SERIAL_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SERIAL_SLRU: u32 = 88; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SUBTRANS_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SUBTRANS_SLRU: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_XACT_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_XACT_SLRU: u32 = 90; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_VACUUM_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_VACUUM_DSA: u32 = 91; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_FIRST_USER_DEFINED" +)] +pub const BuiltinTrancheIds_LWTRANCHE_FIRST_USER_DEFINED: u32 = 92; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CRSSnapshotAction::CRS_EXPORT_SNAPSHOT" +)] +pub const CRSSnapshotAction_CRS_EXPORT_SNAPSHOT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CRSSnapshotAction::CRS_NOEXPORT_SNAPSHOT" +)] +pub const CRSSnapshotAction_CRS_NOEXPORT_SNAPSHOT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CRSSnapshotAction::CRS_USE_SNAPSHOT" +)] +pub const CRSSnapshotAction_CRS_USE_SNAPSHOT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CTEMaterialize::CTEMaterializeDefault" +)] +pub const CTEMaterialize_CTEMaterializeDefault: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CTEMaterialize::CTEMaterializeAlways" +)] +pub const CTEMaterialize_CTEMaterializeAlways: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CTEMaterialize::CTEMaterializeNever" +)] +pub const CTEMaterialize_CTEMaterializeNever: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_UNKNOWN")] +pub const CmdType_CMD_UNKNOWN: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_SELECT")] +pub const CmdType_CMD_SELECT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_UPDATE")] +pub const CmdType_CMD_UPDATE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_INSERT")] +pub const CmdType_CMD_INSERT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_DELETE")] +pub const CmdType_CMD_DELETE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_MERGE")] +pub const CmdType_CMD_MERGE: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_UTILITY")] +pub const CmdType_CMD_UTILITY: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_NOTHING")] +pub const CmdType_CMD_NOTHING: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_IMPLICIT" +)] +pub const CoercionContext_COERCION_IMPLICIT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_ASSIGNMENT" +)] +pub const CoercionContext_COERCION_ASSIGNMENT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_PLPGSQL" +)] +pub const CoercionContext_COERCION_PLPGSQL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_EXPLICIT" +)] +pub const CoercionContext_COERCION_EXPLICIT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_EXPLICIT_CALL" +)] +pub const CoercionForm_COERCE_EXPLICIT_CALL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_EXPLICIT_CAST" +)] +pub const CoercionForm_COERCE_EXPLICIT_CAST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_IMPLICIT_CAST" +)] +pub const CoercionForm_COERCE_IMPLICIT_CAST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_SQL_SYNTAX" +)] +pub const CoercionForm_COERCE_SQL_SYNTAX: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_NONE" +)] +pub const CoercionPathType_COERCION_PATH_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_FUNC" +)] +pub const CoercionPathType_COERCION_PATH_FUNC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_RELABELTYPE" +)] +pub const CoercionPathType_COERCION_PATH_RELABELTYPE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_ARRAYCOERCE" +)] +pub const CoercionPathType_COERCION_PATH_ARRAYCOERCE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_COERCEVIAIO" +)] +pub const CoercionPathType_COERCION_PATH_COERCEVIAIO: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_Simple" +)] +pub const CollectedCommandType_SCT_Simple: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterTable" +)] +pub const CollectedCommandType_SCT_AlterTable: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_Grant" +)] +pub const CollectedCommandType_SCT_Grant: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterOpFamily" +)] +pub const CollectedCommandType_SCT_AlterOpFamily: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterDefaultPrivileges" +)] +pub const CollectedCommandType_SCT_AlterDefaultPrivileges: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_CreateOpClass" +)] +pub const CollectedCommandType_SCT_CreateOpClass: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterTSConfig" +)] +pub const CollectedCommandType_SCT_AlterTSConfig: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestNone")] +pub const CommandDest_DestNone: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestDebug")] +pub const CommandDest_DestDebug: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestRemote")] +pub const CommandDest_DestRemote: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestRemoteExecute" +)] +pub const CommandDest_DestRemoteExecute: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestRemoteSimple" +)] +pub const CommandDest_DestRemoteSimple: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestSPI")] +pub const CommandDest_DestSPI: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestTuplestore" +)] +pub const CommandDest_DestTuplestore: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestIntoRel")] +pub const CommandDest_DestIntoRel: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestCopyOut")] +pub const CommandDest_DestCopyOut: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestSQLFunction" +)] +pub const CommandDest_DestSQLFunction: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestTransientRel" +)] +pub const CommandDest_DestTransientRel: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestTupleQueue" +)] +pub const CommandDest_DestTupleQueue: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestExplainSerialize" +)] +pub const CommandDest_DestExplainSerialize: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_UNKNOWN")] +pub const CommandTag_CMDTAG_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_ACCESS_METHOD" +)] +pub const CommandTag_CMDTAG_ALTER_ACCESS_METHOD: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_AGGREGATE" +)] +pub const CommandTag_CMDTAG_ALTER_AGGREGATE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_CAST" +)] +pub const CommandTag_CMDTAG_ALTER_CAST: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_COLLATION" +)] +pub const CommandTag_CMDTAG_ALTER_COLLATION: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_CONSTRAINT" +)] +pub const CommandTag_CMDTAG_ALTER_CONSTRAINT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_CONVERSION" +)] +pub const CommandTag_CMDTAG_ALTER_CONVERSION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_DATABASE" +)] +pub const CommandTag_CMDTAG_ALTER_DATABASE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_DEFAULT_PRIVILEGES" +)] +pub const CommandTag_CMDTAG_ALTER_DEFAULT_PRIVILEGES: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_DOMAIN" +)] +pub const CommandTag_CMDTAG_ALTER_DOMAIN: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_EVENT_TRIGGER" +)] +pub const CommandTag_CMDTAG_ALTER_EVENT_TRIGGER: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_EXTENSION" +)] +pub const CommandTag_CMDTAG_ALTER_EXTENSION: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_FOREIGN_DATA_WRAPPER" +)] +pub const CommandTag_CMDTAG_ALTER_FOREIGN_DATA_WRAPPER: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_FOREIGN_TABLE" +)] +pub const CommandTag_CMDTAG_ALTER_FOREIGN_TABLE: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_FUNCTION" +)] +pub const CommandTag_CMDTAG_ALTER_FUNCTION: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_INDEX" +)] +pub const CommandTag_CMDTAG_ALTER_INDEX: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_LANGUAGE" +)] +pub const CommandTag_CMDTAG_ALTER_LANGUAGE: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_LARGE_OBJECT" +)] +pub const CommandTag_CMDTAG_ALTER_LARGE_OBJECT: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_ALTER_MATERIALIZED_VIEW: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_OPERATOR" +)] +pub const CommandTag_CMDTAG_ALTER_OPERATOR: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_OPERATOR_CLASS" +)] +pub const CommandTag_CMDTAG_ALTER_OPERATOR_CLASS: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_OPERATOR_FAMILY" +)] +pub const CommandTag_CMDTAG_ALTER_OPERATOR_FAMILY: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_POLICY" +)] +pub const CommandTag_CMDTAG_ALTER_POLICY: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_PROCEDURE" +)] +pub const CommandTag_CMDTAG_ALTER_PROCEDURE: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_PUBLICATION" +)] +pub const CommandTag_CMDTAG_ALTER_PUBLICATION: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_ROLE" +)] +pub const CommandTag_CMDTAG_ALTER_ROLE: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_ROUTINE" +)] +pub const CommandTag_CMDTAG_ALTER_ROUTINE: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_RULE" +)] +pub const CommandTag_CMDTAG_ALTER_RULE: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SCHEMA" +)] +pub const CommandTag_CMDTAG_ALTER_SCHEMA: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SEQUENCE" +)] +pub const CommandTag_CMDTAG_ALTER_SEQUENCE: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SERVER" +)] +pub const CommandTag_CMDTAG_ALTER_SERVER: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_STATISTICS" +)] +pub const CommandTag_CMDTAG_ALTER_STATISTICS: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SUBSCRIPTION" +)] +pub const CommandTag_CMDTAG_ALTER_SUBSCRIPTION: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SYSTEM" +)] +pub const CommandTag_CMDTAG_ALTER_SYSTEM: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TABLE" +)] +pub const CommandTag_CMDTAG_ALTER_TABLE: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TABLESPACE" +)] +pub const CommandTag_CMDTAG_ALTER_TABLESPACE: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_CONFIGURATION" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_CONFIGURATION: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_DICTIONARY" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_DICTIONARY: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_PARSER" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_PARSER: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_TEMPLATE" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_TEMPLATE: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TRANSFORM" +)] +pub const CommandTag_CMDTAG_ALTER_TRANSFORM: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TRIGGER" +)] +pub const CommandTag_CMDTAG_ALTER_TRIGGER: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TYPE" +)] +pub const CommandTag_CMDTAG_ALTER_TYPE: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_USER_MAPPING" +)] +pub const CommandTag_CMDTAG_ALTER_USER_MAPPING: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_VIEW" +)] +pub const CommandTag_CMDTAG_ALTER_VIEW: u32 = 44; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_ANALYZE")] +pub const CommandTag_CMDTAG_ANALYZE: u32 = 45; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_BEGIN")] +pub const CommandTag_CMDTAG_BEGIN: u32 = 46; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_CALL")] +pub const CommandTag_CMDTAG_CALL: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CHECKPOINT" +)] +pub const CommandTag_CMDTAG_CHECKPOINT: u32 = 48; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_CLOSE")] +pub const CommandTag_CMDTAG_CLOSE: u32 = 49; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CLOSE_CURSOR" +)] +pub const CommandTag_CMDTAG_CLOSE_CURSOR: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CLOSE_CURSOR_ALL" +)] +pub const CommandTag_CMDTAG_CLOSE_CURSOR_ALL: u32 = 51; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_CLUSTER")] +pub const CommandTag_CMDTAG_CLUSTER: u32 = 52; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_COMMENT")] +pub const CommandTag_CMDTAG_COMMENT: u32 = 53; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_COMMIT")] +pub const CommandTag_CMDTAG_COMMIT: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_COMMIT_PREPARED" +)] +pub const CommandTag_CMDTAG_COMMIT_PREPARED: u32 = 55; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_COPY")] +pub const CommandTag_CMDTAG_COPY: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_COPY_FROM" +)] +pub const CommandTag_CMDTAG_COPY_FROM: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_ACCESS_METHOD" +)] +pub const CommandTag_CMDTAG_CREATE_ACCESS_METHOD: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_AGGREGATE" +)] +pub const CommandTag_CMDTAG_CREATE_AGGREGATE: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_CAST" +)] +pub const CommandTag_CMDTAG_CREATE_CAST: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_COLLATION" +)] +pub const CommandTag_CMDTAG_CREATE_COLLATION: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_CONSTRAINT" +)] +pub const CommandTag_CMDTAG_CREATE_CONSTRAINT: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_CONVERSION" +)] +pub const CommandTag_CMDTAG_CREATE_CONVERSION: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_DATABASE" +)] +pub const CommandTag_CMDTAG_CREATE_DATABASE: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_DOMAIN" +)] +pub const CommandTag_CMDTAG_CREATE_DOMAIN: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_EVENT_TRIGGER" +)] +pub const CommandTag_CMDTAG_CREATE_EVENT_TRIGGER: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_EXTENSION" +)] +pub const CommandTag_CMDTAG_CREATE_EXTENSION: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_FOREIGN_DATA_WRAPPER" +)] +pub const CommandTag_CMDTAG_CREATE_FOREIGN_DATA_WRAPPER: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_FOREIGN_TABLE" +)] +pub const CommandTag_CMDTAG_CREATE_FOREIGN_TABLE: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_FUNCTION" +)] +pub const CommandTag_CMDTAG_CREATE_FUNCTION: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_INDEX" +)] +pub const CommandTag_CMDTAG_CREATE_INDEX: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_LANGUAGE" +)] +pub const CommandTag_CMDTAG_CREATE_LANGUAGE: u32 = 72; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_CREATE_MATERIALIZED_VIEW: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_OPERATOR" +)] +pub const CommandTag_CMDTAG_CREATE_OPERATOR: u32 = 74; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_OPERATOR_CLASS" +)] +pub const CommandTag_CMDTAG_CREATE_OPERATOR_CLASS: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_OPERATOR_FAMILY" +)] +pub const CommandTag_CMDTAG_CREATE_OPERATOR_FAMILY: u32 = 76; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_POLICY" +)] +pub const CommandTag_CMDTAG_CREATE_POLICY: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_PROCEDURE" +)] +pub const CommandTag_CMDTAG_CREATE_PROCEDURE: u32 = 78; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_PUBLICATION" +)] +pub const CommandTag_CMDTAG_CREATE_PUBLICATION: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_ROLE" +)] +pub const CommandTag_CMDTAG_CREATE_ROLE: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_ROUTINE" +)] +pub const CommandTag_CMDTAG_CREATE_ROUTINE: u32 = 81; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_RULE" +)] +pub const CommandTag_CMDTAG_CREATE_RULE: u32 = 82; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SCHEMA" +)] +pub const CommandTag_CMDTAG_CREATE_SCHEMA: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SEQUENCE" +)] +pub const CommandTag_CMDTAG_CREATE_SEQUENCE: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SERVER" +)] +pub const CommandTag_CMDTAG_CREATE_SERVER: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_STATISTICS" +)] +pub const CommandTag_CMDTAG_CREATE_STATISTICS: u32 = 86; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SUBSCRIPTION" +)] +pub const CommandTag_CMDTAG_CREATE_SUBSCRIPTION: u32 = 87; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TABLE" +)] +pub const CommandTag_CMDTAG_CREATE_TABLE: u32 = 88; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TABLE_AS" +)] +pub const CommandTag_CMDTAG_CREATE_TABLE_AS: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TABLESPACE" +)] +pub const CommandTag_CMDTAG_CREATE_TABLESPACE: u32 = 90; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_CONFIGURATION" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_CONFIGURATION: u32 = 91; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_DICTIONARY" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_DICTIONARY: u32 = 92; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_PARSER" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_PARSER: u32 = 93; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_TEMPLATE" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_TEMPLATE: u32 = 94; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TRANSFORM" +)] +pub const CommandTag_CMDTAG_CREATE_TRANSFORM: u32 = 95; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TRIGGER" +)] +pub const CommandTag_CMDTAG_CREATE_TRIGGER: u32 = 96; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TYPE" +)] +pub const CommandTag_CMDTAG_CREATE_TYPE: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_USER_MAPPING" +)] +pub const CommandTag_CMDTAG_CREATE_USER_MAPPING: u32 = 98; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_VIEW" +)] +pub const CommandTag_CMDTAG_CREATE_VIEW: u32 = 99; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DEALLOCATE" +)] +pub const CommandTag_CMDTAG_DEALLOCATE: u32 = 100; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DEALLOCATE_ALL" +)] +pub const CommandTag_CMDTAG_DEALLOCATE_ALL: u32 = 101; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DECLARE_CURSOR" +)] +pub const CommandTag_CMDTAG_DECLARE_CURSOR: u32 = 102; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_DELETE")] +pub const CommandTag_CMDTAG_DELETE: u32 = 103; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_DISCARD")] +pub const CommandTag_CMDTAG_DISCARD: u32 = 104; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_ALL" +)] +pub const CommandTag_CMDTAG_DISCARD_ALL: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_PLANS" +)] +pub const CommandTag_CMDTAG_DISCARD_PLANS: u32 = 106; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_SEQUENCES" +)] +pub const CommandTag_CMDTAG_DISCARD_SEQUENCES: u32 = 107; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_TEMP" +)] +pub const CommandTag_CMDTAG_DISCARD_TEMP: u32 = 108; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_DO")] +pub const CommandTag_CMDTAG_DO: u32 = 109; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_ACCESS_METHOD" +)] +pub const CommandTag_CMDTAG_DROP_ACCESS_METHOD: u32 = 110; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_AGGREGATE" +)] +pub const CommandTag_CMDTAG_DROP_AGGREGATE: u32 = 111; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_CAST" +)] +pub const CommandTag_CMDTAG_DROP_CAST: u32 = 112; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_COLLATION" +)] +pub const CommandTag_CMDTAG_DROP_COLLATION: u32 = 113; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_CONSTRAINT" +)] +pub const CommandTag_CMDTAG_DROP_CONSTRAINT: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_CONVERSION" +)] +pub const CommandTag_CMDTAG_DROP_CONVERSION: u32 = 115; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_DATABASE" +)] +pub const CommandTag_CMDTAG_DROP_DATABASE: u32 = 116; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_DOMAIN" +)] +pub const CommandTag_CMDTAG_DROP_DOMAIN: u32 = 117; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_EVENT_TRIGGER" +)] +pub const CommandTag_CMDTAG_DROP_EVENT_TRIGGER: u32 = 118; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_EXTENSION" +)] +pub const CommandTag_CMDTAG_DROP_EXTENSION: u32 = 119; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_FOREIGN_DATA_WRAPPER" +)] +pub const CommandTag_CMDTAG_DROP_FOREIGN_DATA_WRAPPER: u32 = 120; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_FOREIGN_TABLE" +)] +pub const CommandTag_CMDTAG_DROP_FOREIGN_TABLE: u32 = 121; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_FUNCTION" +)] +pub const CommandTag_CMDTAG_DROP_FUNCTION: u32 = 122; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_INDEX" +)] +pub const CommandTag_CMDTAG_DROP_INDEX: u32 = 123; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_LANGUAGE" +)] +pub const CommandTag_CMDTAG_DROP_LANGUAGE: u32 = 124; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_DROP_MATERIALIZED_VIEW: u32 = 125; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OPERATOR" +)] +pub const CommandTag_CMDTAG_DROP_OPERATOR: u32 = 126; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OPERATOR_CLASS" +)] +pub const CommandTag_CMDTAG_DROP_OPERATOR_CLASS: u32 = 127; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OPERATOR_FAMILY" +)] +pub const CommandTag_CMDTAG_DROP_OPERATOR_FAMILY: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OWNED" +)] +pub const CommandTag_CMDTAG_DROP_OWNED: u32 = 129; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_POLICY" +)] +pub const CommandTag_CMDTAG_DROP_POLICY: u32 = 130; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_PROCEDURE" +)] +pub const CommandTag_CMDTAG_DROP_PROCEDURE: u32 = 131; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_PUBLICATION" +)] +pub const CommandTag_CMDTAG_DROP_PUBLICATION: u32 = 132; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_ROLE" +)] +pub const CommandTag_CMDTAG_DROP_ROLE: u32 = 133; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_ROUTINE" +)] +pub const CommandTag_CMDTAG_DROP_ROUTINE: u32 = 134; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_RULE" +)] +pub const CommandTag_CMDTAG_DROP_RULE: u32 = 135; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SCHEMA" +)] +pub const CommandTag_CMDTAG_DROP_SCHEMA: u32 = 136; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SEQUENCE" +)] +pub const CommandTag_CMDTAG_DROP_SEQUENCE: u32 = 137; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SERVER" +)] +pub const CommandTag_CMDTAG_DROP_SERVER: u32 = 138; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_STATISTICS" +)] +pub const CommandTag_CMDTAG_DROP_STATISTICS: u32 = 139; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SUBSCRIPTION" +)] +pub const CommandTag_CMDTAG_DROP_SUBSCRIPTION: u32 = 140; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TABLE" +)] +pub const CommandTag_CMDTAG_DROP_TABLE: u32 = 141; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TABLESPACE" +)] +pub const CommandTag_CMDTAG_DROP_TABLESPACE: u32 = 142; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_CONFIGURATION" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_CONFIGURATION: u32 = 143; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_DICTIONARY" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_DICTIONARY: u32 = 144; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_PARSER" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_PARSER: u32 = 145; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_TEMPLATE" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_TEMPLATE: u32 = 146; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TRANSFORM" +)] +pub const CommandTag_CMDTAG_DROP_TRANSFORM: u32 = 147; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TRIGGER" +)] +pub const CommandTag_CMDTAG_DROP_TRIGGER: u32 = 148; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TYPE" +)] +pub const CommandTag_CMDTAG_DROP_TYPE: u32 = 149; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_USER_MAPPING" +)] +pub const CommandTag_CMDTAG_DROP_USER_MAPPING: u32 = 150; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_VIEW" +)] +pub const CommandTag_CMDTAG_DROP_VIEW: u32 = 151; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_EXECUTE")] +pub const CommandTag_CMDTAG_EXECUTE: u32 = 152; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_EXPLAIN")] +pub const CommandTag_CMDTAG_EXPLAIN: u32 = 153; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_FETCH")] +pub const CommandTag_CMDTAG_FETCH: u32 = 154; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_GRANT")] +pub const CommandTag_CMDTAG_GRANT: u32 = 155; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_GRANT_ROLE" +)] +pub const CommandTag_CMDTAG_GRANT_ROLE: u32 = 156; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_IMPORT_FOREIGN_SCHEMA" +)] +pub const CommandTag_CMDTAG_IMPORT_FOREIGN_SCHEMA: u32 = 157; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_INSERT")] +pub const CommandTag_CMDTAG_INSERT: u32 = 158; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_LISTEN")] +pub const CommandTag_CMDTAG_LISTEN: u32 = 159; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_LOAD")] +pub const CommandTag_CMDTAG_LOAD: u32 = 160; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_LOCK_TABLE" +)] +pub const CommandTag_CMDTAG_LOCK_TABLE: u32 = 161; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_LOGIN")] +pub const CommandTag_CMDTAG_LOGIN: u32 = 162; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_MERGE")] +pub const CommandTag_CMDTAG_MERGE: u32 = 163; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_MOVE")] +pub const CommandTag_CMDTAG_MOVE: u32 = 164; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_NOTIFY")] +pub const CommandTag_CMDTAG_NOTIFY: u32 = 165; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_PREPARE")] +pub const CommandTag_CMDTAG_PREPARE: u32 = 166; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_PREPARE_TRANSACTION" +)] +pub const CommandTag_CMDTAG_PREPARE_TRANSACTION: u32 = 167; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_REASSIGN_OWNED" +)] +pub const CommandTag_CMDTAG_REASSIGN_OWNED: u32 = 168; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_REFRESH_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_REFRESH_MATERIALIZED_VIEW: u32 = 169; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_REINDEX")] +pub const CommandTag_CMDTAG_REINDEX: u32 = 170; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_RELEASE")] +pub const CommandTag_CMDTAG_RELEASE: u32 = 171; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_RESET")] +pub const CommandTag_CMDTAG_RESET: u32 = 172; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_REVOKE")] +pub const CommandTag_CMDTAG_REVOKE: u32 = 173; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_REVOKE_ROLE" +)] +pub const CommandTag_CMDTAG_REVOKE_ROLE: u32 = 174; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ROLLBACK" +)] +pub const CommandTag_CMDTAG_ROLLBACK: u32 = 175; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ROLLBACK_PREPARED" +)] +pub const CommandTag_CMDTAG_ROLLBACK_PREPARED: u32 = 176; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SAVEPOINT" +)] +pub const CommandTag_CMDTAG_SAVEPOINT: u32 = 177; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SECURITY_LABEL" +)] +pub const CommandTag_CMDTAG_SECURITY_LABEL: u32 = 178; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_SELECT")] +pub const CommandTag_CMDTAG_SELECT: u32 = 179; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_KEY_SHARE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_KEY_SHARE: u32 = 180; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_NO_KEY_UPDATE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_NO_KEY_UPDATE: u32 = 181; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_SHARE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_SHARE: u32 = 182; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_UPDATE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_UPDATE: u32 = 183; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_INTO" +)] +pub const CommandTag_CMDTAG_SELECT_INTO: u32 = 184; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_SET")] +pub const CommandTag_CMDTAG_SET: u32 = 185; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SET_CONSTRAINTS" +)] +pub const CommandTag_CMDTAG_SET_CONSTRAINTS: u32 = 186; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_SHOW")] +pub const CommandTag_CMDTAG_SHOW: u32 = 187; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_START_TRANSACTION" +)] +pub const CommandTag_CMDTAG_START_TRANSACTION: u32 = 188; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_TRUNCATE_TABLE" +)] +pub const CommandTag_CMDTAG_TRUNCATE_TABLE: u32 = 189; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_UNLISTEN" +)] +pub const CommandTag_CMDTAG_UNLISTEN: u32 = 190; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_UPDATE")] +pub const CommandTag_CMDTAG_UPDATE: u32 = 191; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_VACUUM")] +pub const CommandTag_CMDTAG_VACUUM: u32 = 192; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_OFF" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_ON" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_AUTO" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_AUTO: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_REGRESS" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_REGRESS: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_NULL")] +pub const ConstrType_CONSTR_NULL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_NOTNULL")] +pub const ConstrType_CONSTR_NOTNULL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_DEFAULT")] +pub const ConstrType_CONSTR_DEFAULT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_IDENTITY" +)] +pub const ConstrType_CONSTR_IDENTITY: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_GENERATED" +)] +pub const ConstrType_CONSTR_GENERATED: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_CHECK")] +pub const ConstrType_CONSTR_CHECK: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_PRIMARY")] +pub const ConstrType_CONSTR_PRIMARY: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_UNIQUE")] +pub const ConstrType_CONSTR_UNIQUE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_EXCLUSION" +)] +pub const ConstrType_CONSTR_EXCLUSION: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_FOREIGN")] +pub const ConstrType_CONSTR_FOREIGN: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_DEFERRABLE" +)] +pub const ConstrType_CONSTR_ATTR_DEFERRABLE: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_NOT_DEFERRABLE" +)] +pub const ConstrType_CONSTR_ATTR_NOT_DEFERRABLE: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_DEFERRED" +)] +pub const ConstrType_CONSTR_ATTR_DEFERRED: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_IMMEDIATE" +)] +pub const ConstrType_CONSTR_ATTR_IMMEDIATE: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstraintExclusionType::CONSTRAINT_EXCLUSION_OFF" +)] +pub const ConstraintExclusionType_CONSTRAINT_EXCLUSION_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstraintExclusionType::CONSTRAINT_EXCLUSION_ON" +)] +pub const ConstraintExclusionType_CONSTRAINT_EXCLUSION_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstraintExclusionType::CONSTRAINT_EXCLUSION_PARTITION" +)] +pub const ConstraintExclusionType_CONSTRAINT_EXCLUSION_PARTITION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyHeaderChoice::COPY_HEADER_FALSE" +)] +pub const CopyHeaderChoice_COPY_HEADER_FALSE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyHeaderChoice::COPY_HEADER_TRUE" +)] +pub const CopyHeaderChoice_COPY_HEADER_TRUE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyHeaderChoice::COPY_HEADER_MATCH" +)] +pub const CopyHeaderChoice_COPY_HEADER_MATCH: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyLogVerbosityChoice::COPY_LOG_VERBOSITY_DEFAULT" +)] +pub const CopyLogVerbosityChoice_COPY_LOG_VERBOSITY_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyLogVerbosityChoice::COPY_LOG_VERBOSITY_VERBOSE" +)] +pub const CopyLogVerbosityChoice_COPY_LOG_VERBOSITY_VERBOSE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyOnErrorChoice::COPY_ON_ERROR_STOP" +)] +pub const CopyOnErrorChoice_COPY_ON_ERROR_STOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyOnErrorChoice::COPY_ON_ERROR_IGNORE" +)] +pub const CopyOnErrorChoice_COPY_ON_ERROR_IGNORE: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CostSelector::STARTUP_COST")] +pub const CostSelector_STARTUP_COST: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CostSelector::TOTAL_COST")] +pub const CostSelector_TOTAL_COST: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_STARTUP")] +pub const DBState_DB_STARTUP: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_SHUTDOWNED")] +pub const DBState_DB_SHUTDOWNED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DBState::DB_SHUTDOWNED_IN_RECOVERY" +)] +pub const DBState_DB_SHUTDOWNED_IN_RECOVERY: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_SHUTDOWNING")] +pub const DBState_DB_SHUTDOWNING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DBState::DB_IN_CRASH_RECOVERY" +)] +pub const DBState_DB_IN_CRASH_RECOVERY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DBState::DB_IN_ARCHIVE_RECOVERY" +)] +pub const DBState_DB_IN_ARCHIVE_RECOVERY: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_IN_PRODUCTION")] +pub const DBState_DB_IN_PRODUCTION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_NOT_YET_CHECKED" +)] +pub const DeadLockState_DS_NOT_YET_CHECKED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_NO_DEADLOCK" +)] +pub const DeadLockState_DS_NO_DEADLOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_SOFT_DEADLOCK" +)] +pub const DeadLockState_DS_SOFT_DEADLOCK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_HARD_DEADLOCK" +)] +pub const DeadLockState_DS_HARD_DEADLOCK: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_BLOCKED_BY_AUTOVACUUM" +)] +pub const DeadLockState_DS_BLOCKED_BY_AUTOVACUUM: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugLogicalRepStreamingMode::DEBUG_LOGICAL_REP_STREAMING_BUFFERED" +)] +pub const DebugLogicalRepStreamingMode_DEBUG_LOGICAL_REP_STREAMING_BUFFERED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugLogicalRepStreamingMode::DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE" +)] +pub const DebugLogicalRepStreamingMode_DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugParallelMode::DEBUG_PARALLEL_OFF" +)] +pub const DebugParallelMode_DEBUG_PARALLEL_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugParallelMode::DEBUG_PARALLEL_ON" +)] +pub const DebugParallelMode_DEBUG_PARALLEL_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugParallelMode::DEBUG_PARALLEL_REGRESS" +)] +pub const DebugParallelMode_DEBUG_PARALLEL_REGRESS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DefElemAction::DEFELEM_UNSPEC" +)] +pub const DefElemAction_DEFELEM_UNSPEC: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DefElemAction::DEFELEM_SET")] +pub const DefElemAction_DEFELEM_SET: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DefElemAction::DEFELEM_ADD")] +pub const DefElemAction_DEFELEM_ADD: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DefElemAction::DEFELEM_DROP" +)] +pub const DefElemAction_DEFELEM_DROP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_NORMAL" +)] +pub const DependencyType_DEPENDENCY_NORMAL: u32 = 110; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_AUTO" +)] +pub const DependencyType_DEPENDENCY_AUTO: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_INTERNAL" +)] +pub const DependencyType_DEPENDENCY_INTERNAL: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_PARTITION_PRI" +)] +pub const DependencyType_DEPENDENCY_PARTITION_PRI: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_PARTITION_SEC" +)] +pub const DependencyType_DEPENDENCY_PARTITION_SEC: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_EXTENSION" +)] +pub const DependencyType_DEPENDENCY_EXTENSION: u32 = 101; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_AUTO_EXTENSION" +)] +pub const DependencyType_DEPENDENCY_AUTO_EXTENSION: u32 = 120; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DiscardMode::DISCARD_ALL")] +pub const DiscardMode_DISCARD_ALL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DiscardMode::DISCARD_PLANS")] +pub const DiscardMode_DISCARD_PLANS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DiscardMode::DISCARD_SEQUENCES" +)] +pub const DiscardMode_DISCARD_SEQUENCES: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DiscardMode::DISCARD_TEMP")] +pub const DiscardMode_DISCARD_TEMP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DomainConstraintType::DOM_CONSTRAINT_NOTNULL" +)] +pub const DomainConstraintType_DOM_CONSTRAINT_NOTNULL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DomainConstraintType::DOM_CONSTRAINT_CHECK" +)] +pub const DomainConstraintType_DOM_CONSTRAINT_CHECK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DropBehavior::DROP_RESTRICT" +)] +pub const DropBehavior_DROP_RESTRICT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DropBehavior::DROP_CASCADE")] +pub const DropBehavior_DROP_CASCADE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::EphemeralNameRelationType::ENR_NAMED_TUPLESTORE" +)] +pub const EphemeralNameRelationType_ENR_NAMED_TUPLESTORE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_TEXT" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_TEXT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_XML" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_XML: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_JSON" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_JSON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_YAML" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_YAML: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainSerializeOption::EXPLAIN_SERIALIZE_NONE" +)] +pub const ExplainSerializeOption_EXPLAIN_SERIALIZE_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainSerializeOption::EXPLAIN_SERIALIZE_TEXT" +)] +pub const ExplainSerializeOption_EXPLAIN_SERIALIZE_TEXT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainSerializeOption::EXPLAIN_SERIALIZE_BINARY" +)] +pub const ExplainSerializeOption_EXPLAIN_SERIALIZE_BINARY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprDoneCond::ExprSingleResult" +)] +pub const ExprDoneCond_ExprSingleResult: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprDoneCond::ExprMultipleResult" +)] +pub const ExprDoneCond_ExprMultipleResult: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprDoneCond::ExprEndResult" +)] +pub const ExprDoneCond_ExprEndResult: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_DONE")] +pub const ExprEvalOp_EEOP_DONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_INNER_FETCHSOME" +)] +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_OUTER_FETCHSOME" +)] +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SCAN_FETCHSOME" +)] +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_INNER_VAR")] +pub const ExprEvalOp_EEOP_INNER_VAR: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_OUTER_VAR")] +pub const ExprEvalOp_EEOP_OUTER_VAR: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_SCAN_VAR")] +pub const ExprEvalOp_EEOP_SCAN_VAR: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_INNER_SYSVAR" +)] +pub const ExprEvalOp_EEOP_INNER_SYSVAR: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_OUTER_SYSVAR" +)] +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SCAN_SYSVAR" +)] +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_WHOLEROW")] +pub const ExprEvalOp_EEOP_WHOLEROW: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_INNER_VAR" +)] +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_OUTER_VAR" +)] +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_SCAN_VAR" +)] +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_TMP" +)] +pub const ExprEvalOp_EEOP_ASSIGN_TMP: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_TMP_MAKE_RO" +)] +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_CONST")] +pub const ExprEvalOp_EEOP_CONST: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR")] +pub const ExprEvalOp_EEOP_FUNCEXPR: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR_STRICT" +)] +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR_FUSAGE" +)] +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR_STRICT_FUSAGE" +)] +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_AND_STEP_FIRST" +)] +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_AND_STEP" +)] +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_AND_STEP_LAST" +)] +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_OR_STEP_FIRST" +)] +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_OR_STEP" +)] +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_OR_STEP_LAST" +)] +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_NOT_STEP" +)] +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: u32 = 27; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_QUAL")] +pub const ExprEvalOp_EEOP_QUAL: u32 = 28; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_JUMP")] +pub const ExprEvalOp_EEOP_JUMP: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JUMP_IF_NULL" +)] +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JUMP_IF_NOT_NULL" +)] +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JUMP_IF_NOT_TRUE" +)] +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ISNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ISNOTNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ROWISNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ROWISNOTNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_TRUE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_NOT_TRUE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_FALSE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_NOT_FALSE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_PARAM_EXEC" +)] +pub const ExprEvalOp_EEOP_PARAM_EXEC: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_PARAM_EXTERN" +)] +pub const ExprEvalOp_EEOP_PARAM_EXTERN: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_PARAM_CALLBACK" +)] +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_CASE_TESTVAL" +)] +pub const ExprEvalOp_EEOP_CASE_TESTVAL: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_MAKE_READONLY" +)] +pub const ExprEvalOp_EEOP_MAKE_READONLY: u32 = 45; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_IOCOERCE")] +pub const ExprEvalOp_EEOP_IOCOERCE: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_IOCOERCE_SAFE" +)] +pub const ExprEvalOp_EEOP_IOCOERCE_SAFE: u32 = 47; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_DISTINCT")] +pub const ExprEvalOp_EEOP_DISTINCT: u32 = 48; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NOT_DISTINCT" +)] +pub const ExprEvalOp_EEOP_NOT_DISTINCT: u32 = 49; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_NULLIF")] +pub const ExprEvalOp_EEOP_NULLIF: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SQLVALUEFUNCTION" +)] +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: u32 = 51; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_CURRENTOFEXPR" +)] +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: u32 = 52; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NEXTVALUEEXPR" +)] +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: u32 = 53; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_ARRAYEXPR")] +pub const ExprEvalOp_EEOP_ARRAYEXPR: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ARRAYCOERCE" +)] +pub const ExprEvalOp_EEOP_ARRAYCOERCE: u32 = 55; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_ROW")] +pub const ExprEvalOp_EEOP_ROW: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ROWCOMPARE_STEP" +)] +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ROWCOMPARE_FINAL" +)] +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: u32 = 58; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_MINMAX")] +pub const ExprEvalOp_EEOP_MINMAX: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FIELDSELECT" +)] +pub const ExprEvalOp_EEOP_FIELDSELECT: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FIELDSTORE_DEFORM" +)] +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FIELDSTORE_FORM" +)] +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_SUBSCRIPTS" +)] +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPTS: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_OLD" +)] +pub const ExprEvalOp_EEOP_SBSREF_OLD: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_ASSIGN" +)] +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_FETCH" +)] +pub const ExprEvalOp_EEOP_SBSREF_FETCH: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_DOMAIN_TESTVAL" +)] +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_DOMAIN_NOTNULL" +)] +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_DOMAIN_CHECK" +)] +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_CONVERT_ROWTYPE" +)] +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SCALARARRAYOP" +)] +pub const ExprEvalOp_EEOP_SCALARARRAYOP: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_HASHED_SCALARARRAYOP" +)] +pub const ExprEvalOp_EEOP_HASHED_SCALARARRAYOP: u32 = 72; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_XMLEXPR")] +pub const ExprEvalOp_EEOP_XMLEXPR: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSON_CONSTRUCTOR" +)] +pub const ExprEvalOp_EEOP_JSON_CONSTRUCTOR: u32 = 74; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_IS_JSON")] +pub const ExprEvalOp_EEOP_IS_JSON: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSONEXPR_PATH" +)] +pub const ExprEvalOp_EEOP_JSONEXPR_PATH: u32 = 76; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSONEXPR_COERCION" +)] +pub const ExprEvalOp_EEOP_JSONEXPR_COERCION: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSONEXPR_COERCION_FINISH" +)] +pub const ExprEvalOp_EEOP_JSONEXPR_COERCION_FINISH: u32 = 78; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_AGGREF")] +pub const ExprEvalOp_EEOP_AGGREF: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_GROUPING_FUNC" +)] +pub const ExprEvalOp_EEOP_GROUPING_FUNC: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_WINDOW_FUNC" +)] +pub const ExprEvalOp_EEOP_WINDOW_FUNC: u32 = 81; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_MERGE_SUPPORT_FUNC" +)] +pub const ExprEvalOp_EEOP_MERGE_SUPPORT_FUNC: u32 = 82; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_SUBPLAN")] +pub const ExprEvalOp_EEOP_SUBPLAN: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_STRICT_DESERIALIZE" +)] +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_DESERIALIZE" +)] +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_STRICT_INPUT_CHECK_ARGS" +)] +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: u32 = 86; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_STRICT_INPUT_CHECK_NULLS" +)] +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: u32 = 87; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_PERGROUP_NULLCHECK" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: u32 = 88; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: u32 = 90; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_BYVAL" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: u32 = 91; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: u32 = 92; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_STRICT_BYREF" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: u32 = 93; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_BYREF" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYREF: u32 = 94; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PRESORTED_DISTINCT_SINGLE" +)] +pub const ExprEvalOp_EEOP_AGG_PRESORTED_DISTINCT_SINGLE: u32 = 95; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PRESORTED_DISTINCT_MULTI" +)] +pub const ExprEvalOp_EEOP_AGG_PRESORTED_DISTINCT_MULTI: u32 = 96; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_ORDERED_TRANS_DATUM" +)] +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_ORDERED_TRANS_TUPLE" +)] +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: u32 = 98; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_LAST")] +pub const ExprEvalOp_EEOP_LAST: u32 = 99; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_SKIP_EXTENSION_LOCK" +)] +pub const ExtendBufferedFlags_EB_SKIP_EXTENSION_LOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_PERFORMING_RECOVERY" +)] +pub const ExtendBufferedFlags_EB_PERFORMING_RECOVERY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_CREATE_FORK_IF_NEEDED" +)] +pub const ExtendBufferedFlags_EB_CREATE_FORK_IF_NEEDED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_LOCK_FIRST" +)] +pub const ExtendBufferedFlags_EB_LOCK_FIRST: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_CLEAR_SIZE_CACHE" +)] +pub const ExtendBufferedFlags_EB_CLEAR_SIZE_CACHE: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_LOCK_TARGET" +)] +pub const ExtendBufferedFlags_EB_LOCK_TARGET: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_FORWARD" +)] +pub const FetchDirection_FETCH_FORWARD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_BACKWARD" +)] +pub const FetchDirection_FETCH_BACKWARD: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_ABSOLUTE" +)] +pub const FetchDirection_FETCH_ABSOLUTE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_RELATIVE" +)] +pub const FetchDirection_FETCH_RELATIVE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FmgrHookEventType::FHET_START" +)] +pub const FmgrHookEventType_FHET_START: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FmgrHookEventType::FHET_END" +)] +pub const FmgrHookEventType_FHET_END: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FmgrHookEventType::FHET_ABORT" +)] +pub const FmgrHookEventType_FHET_ABORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ForkNumber::InvalidForkNumber" +)] +pub const ForkNumber_InvalidForkNumber: i32 = -1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ForkNumber::MAIN_FORKNUM")] +pub const ForkNumber_MAIN_FORKNUM: i32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ForkNumber::FSM_FORKNUM")] +pub const ForkNumber_FSM_FORKNUM: i32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ForkNumber::VISIBILITYMAP_FORKNUM" +)] +pub const ForkNumber_VISIBILITYMAP_FORKNUM: i32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ForkNumber::INIT_FORKNUM")] +pub const ForkNumber_INIT_FORKNUM: i32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_NOTFOUND" +)] +pub const FuncDetailCode_FUNCDETAIL_NOTFOUND: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_MULTIPLE" +)] +pub const FuncDetailCode_FUNCDETAIL_MULTIPLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_NORMAL" +)] +pub const FuncDetailCode_FUNCDETAIL_NORMAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_PROCEDURE" +)] +pub const FuncDetailCode_FUNCDETAIL_PROCEDURE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_AGGREGATE" +)] +pub const FuncDetailCode_FUNCDETAIL_AGGREGATE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_WINDOWFUNC" +)] +pub const FuncDetailCode_FUNCDETAIL_WINDOWFUNC: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_COERCION" +)] +pub const FuncDetailCode_FUNCDETAIL_COERCION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_IN" +)] +pub const FunctionParameterMode_FUNC_PARAM_IN: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_OUT" +)] +pub const FunctionParameterMode_FUNC_PARAM_OUT: u32 = 111; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_INOUT" +)] +pub const FunctionParameterMode_FUNC_PARAM_INOUT: u32 = 98; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_VARIADIC" +)] +pub const FunctionParameterMode_FUNC_PARAM_VARIADIC: u32 = 118; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_TABLE" +)] +pub const FunctionParameterMode_FUNC_PARAM_TABLE: u32 = 116; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_DEFAULT" +)] +pub const FunctionParameterMode_FUNC_PARAM_DEFAULT: u32 = 100; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GrantTargetType::ACL_TARGET_OBJECT" +)] +pub const GrantTargetType_ACL_TARGET_OBJECT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GrantTargetType::ACL_TARGET_ALL_IN_SCHEMA" +)] +pub const GrantTargetType_ACL_TARGET_ALL_IN_SCHEMA: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GrantTargetType::ACL_TARGET_DEFAULTS" +)] +pub const GrantTargetType_ACL_TARGET_DEFAULTS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_EMPTY" +)] +pub const GroupingSetKind_GROUPING_SET_EMPTY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_SIMPLE" +)] +pub const GroupingSetKind_GROUPING_SET_SIMPLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_ROLLUP" +)] +pub const GroupingSetKind_GROUPING_SET_ROLLUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_CUBE" +)] +pub const GroupingSetKind_GROUPING_SET_CUBE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_SETS" +)] +pub const GroupingSetKind_GROUPING_SET_SETS: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucAction::GUC_ACTION_SET")] +pub const GucAction_GUC_ACTION_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucAction::GUC_ACTION_LOCAL" +)] +pub const GucAction_GUC_ACTION_LOCAL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucAction::GUC_ACTION_SAVE")] +pub const GucAction_GUC_ACTION_SAVE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_INTERNAL")] +pub const GucContext_PGC_INTERNAL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_POSTMASTER")] +pub const GucContext_PGC_POSTMASTER: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_SIGHUP")] +pub const GucContext_PGC_SIGHUP: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_SU_BACKEND")] +pub const GucContext_PGC_SU_BACKEND: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_BACKEND")] +pub const GucContext_PGC_BACKEND: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_SUSET")] +pub const GucContext_PGC_SUSET: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_USERSET")] +pub const GucContext_PGC_USERSET: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_DEFAULT")] +pub const GucSource_PGC_S_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucSource::PGC_S_DYNAMIC_DEFAULT" +)] +pub const GucSource_PGC_S_DYNAMIC_DEFAULT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_ENV_VAR")] +pub const GucSource_PGC_S_ENV_VAR: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_FILE")] +pub const GucSource_PGC_S_FILE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_ARGV")] +pub const GucSource_PGC_S_ARGV: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_GLOBAL")] +pub const GucSource_PGC_S_GLOBAL: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_DATABASE")] +pub const GucSource_PGC_S_DATABASE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_USER")] +pub const GucSource_PGC_S_USER: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucSource::PGC_S_DATABASE_USER" +)] +pub const GucSource_PGC_S_DATABASE_USER: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_CLIENT")] +pub const GucSource_PGC_S_CLIENT: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_OVERRIDE")] +pub const GucSource_PGC_S_OVERRIDE: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucSource::PGC_S_INTERACTIVE" +)] +pub const GucSource_PGC_S_INTERACTIVE: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_TEST")] +pub const GucSource_PGC_S_TEST: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_SESSION")] +pub const GucSource_PGC_S_SESSION: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::HASHACTION::HASH_FIND")] +pub const HASHACTION_HASH_FIND: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::HASHACTION::HASH_ENTER")] +pub const HASHACTION_HASH_ENTER: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::HASHACTION::HASH_REMOVE")] +pub const HASHACTION_HASH_REMOVE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HASHACTION::HASH_ENTER_NULL" +)] +pub const HASHACTION_HASH_ENTER_NULL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_DEAD" +)] +pub const HTSV_Result_HEAPTUPLE_DEAD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_LIVE" +)] +pub const HTSV_Result_HEAPTUPLE_LIVE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_RECENTLY_DEAD" +)] +pub const HTSV_Result_HEAPTUPLE_RECENTLY_DEAD: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_INSERT_IN_PROGRESS" +)] +pub const HTSV_Result_HEAPTUPLE_INSERT_IN_PROGRESS: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_DELETE_IN_PROGRESS" +)] +pub const HTSV_Result_HEAPTUPLE_DELETE_IN_PROGRESS: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_DISABLED" +)] +pub const HotStandbyState_STANDBY_DISABLED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_INITIALIZED" +)] +pub const HotStandbyState_STANDBY_INITIALIZED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_SNAPSHOT_PENDING" +)] +pub const HotStandbyState_STANDBY_SNAPSHOT_PENDING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_SNAPSHOT_READY" +)] +pub const HotStandbyState_STANDBY_SNAPSHOT_READY: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_BULKREAD" +)] +pub const IOContext_IOCONTEXT_BULKREAD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_BULKWRITE" +)] +pub const IOContext_IOCONTEXT_BULKWRITE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_NORMAL" +)] +pub const IOContext_IOCONTEXT_NORMAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_VACUUM" +)] +pub const IOContext_IOCONTEXT_VACUUM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_input" +)] +pub const IOFuncSelector_IOFunc_input: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_output" +)] +pub const IOFuncSelector_IOFunc_output: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_receive" +)] +pub const IOFuncSelector_IOFunc_receive: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_send" +)] +pub const IOFuncSelector_IOFunc_send: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOObject::IOOBJECT_RELATION" +)] +pub const IOObject_IOOBJECT_RELATION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOObject::IOOBJECT_TEMP_RELATION" +)] +pub const IOObject_IOOBJECT_TEMP_RELATION: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_EVICT")] +pub const IOOp_IOOP_EVICT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_EXTEND")] +pub const IOOp_IOOP_EXTEND: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_FSYNC")] +pub const IOOp_IOOP_FSYNC: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_HIT")] +pub const IOOp_IOOP_HIT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_READ")] +pub const IOOp_IOOP_READ: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_REUSE")] +pub const IOOp_IOOP_REUSE: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_WRITE")] +pub const IOOp_IOOP_WRITE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_WRITEBACK")] +pub const IOOp_IOOP_WRITEBACK: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IdentifierLookup::IDENTIFIER_LOOKUP_NORMAL" +)] +pub const IdentifierLookup_IDENTIFIER_LOOKUP_NORMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IdentifierLookup::IDENTIFIER_LOOKUP_DECLARE" +)] +pub const IdentifierLookup_IDENTIFIER_LOOKUP_DECLARE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IdentifierLookup::IDENTIFIER_LOOKUP_EXPR" +)] +pub const IdentifierLookup_IDENTIFIER_LOOKUP_EXPR: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ImportForeignSchemaType::FDW_IMPORT_SCHEMA_ALL" +)] +pub const ImportForeignSchemaType_FDW_IMPORT_SCHEMA_ALL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ImportForeignSchemaType::FDW_IMPORT_SCHEMA_LIMIT_TO" +)] +pub const ImportForeignSchemaType_FDW_IMPORT_SCHEMA_LIMIT_TO: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ImportForeignSchemaType::FDW_IMPORT_SCHEMA_EXCEPT" +)] +pub const ImportForeignSchemaType_FDW_IMPORT_SCHEMA_EXCEPT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_LOADFULLSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_LOADFULLSORT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_LOADPREFIXSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_LOADPREFIXSORT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_READFULLSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_READFULLSORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_READPREFIXSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_READPREFIXSORT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_UNKNOWN" +)] +pub const IndexAMProperty_AMPROP_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_ASC" +)] +pub const IndexAMProperty_AMPROP_ASC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_DESC" +)] +pub const IndexAMProperty_AMPROP_DESC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_NULLS_FIRST" +)] +pub const IndexAMProperty_AMPROP_NULLS_FIRST: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_NULLS_LAST" +)] +pub const IndexAMProperty_AMPROP_NULLS_LAST: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_ORDERABLE" +)] +pub const IndexAMProperty_AMPROP_ORDERABLE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_DISTANCE_ORDERABLE" +)] +pub const IndexAMProperty_AMPROP_DISTANCE_ORDERABLE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_RETURNABLE" +)] +pub const IndexAMProperty_AMPROP_RETURNABLE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_SEARCH_ARRAY" +)] +pub const IndexAMProperty_AMPROP_SEARCH_ARRAY: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_SEARCH_NULLS" +)] +pub const IndexAMProperty_AMPROP_SEARCH_NULLS: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CLUSTERABLE" +)] +pub const IndexAMProperty_AMPROP_CLUSTERABLE: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_INDEX_SCAN" +)] +pub const IndexAMProperty_AMPROP_INDEX_SCAN: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_BITMAP_SCAN" +)] +pub const IndexAMProperty_AMPROP_BITMAP_SCAN: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_BACKWARD_SCAN" +)] +pub const IndexAMProperty_AMPROP_BACKWARD_SCAN: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_ORDER" +)] +pub const IndexAMProperty_AMPROP_CAN_ORDER: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_UNIQUE" +)] +pub const IndexAMProperty_AMPROP_CAN_UNIQUE: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_MULTI_COL" +)] +pub const IndexAMProperty_AMPROP_CAN_MULTI_COL: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_EXCLUDE" +)] +pub const IndexAMProperty_AMPROP_CAN_EXCLUDE: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_INCLUDE" +)] +pub const IndexAMProperty_AMPROP_CAN_INCLUDE: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_KEY" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_KEY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_PRIMARY_KEY" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_PRIMARY_KEY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_IDENTITY_KEY" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_IDENTITY_KEY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_HOT_BLOCKING" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_HOT_BLOCKING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_SUMMARIZED" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_SUMMARIZED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_CREATE_SET_READY" +)] +pub const IndexStateFlagsAction_INDEX_CREATE_SET_READY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_CREATE_SET_VALID" +)] +pub const IndexStateFlagsAction_INDEX_CREATE_SET_VALID: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_DROP_CLEAR_VALID" +)] +pub const IndexStateFlagsAction_INDEX_DROP_CLEAR_VALID: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_DROP_SET_DEAD" +)] +pub const IndexStateFlagsAction_INDEX_DROP_SET_DEAD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_NO" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_NO: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_YES" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_YES: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_PARTIAL" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_PARTIAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_EXISTING" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_EXISTING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_TIMER" +)] +pub const InstrumentOption_INSTRUMENT_TIMER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_BUFFERS" +)] +pub const InstrumentOption_INSTRUMENT_BUFFERS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_ROWS" +)] +pub const InstrumentOption_INSTRUMENT_ROWS: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_WAL" +)] +pub const InstrumentOption_INSTRUMENT_WAL: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_ALL" +)] +pub const InstrumentOption_INSTRUMENT_ALL: u32 = 2147483647; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_INNER")] +pub const JoinType_JOIN_INNER: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_LEFT")] +pub const JoinType_JOIN_LEFT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_FULL")] +pub const JoinType_JOIN_FULL: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_RIGHT")] +pub const JoinType_JOIN_RIGHT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_SEMI")] +pub const JoinType_JOIN_SEMI: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_ANTI")] +pub const JoinType_JOIN_ANTI: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_RIGHT_ANTI")] +pub const JoinType_JOIN_RIGHT_ANTI: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JoinType::JOIN_UNIQUE_OUTER" +)] +pub const JoinType_JOIN_UNIQUE_OUTER: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JoinType::JOIN_UNIQUE_INNER" +)] +pub const JoinType_JOIN_UNIQUE_INNER: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_NULL" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_NULL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_ERROR" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_ERROR: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_EMPTY" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_EMPTY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_TRUE" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_TRUE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_FALSE" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_FALSE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_UNKNOWN" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_UNKNOWN: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_EMPTY_ARRAY" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_EMPTY_ARRAY: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_EMPTY_OBJECT" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_EMPTY_OBJECT: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_DEFAULT" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_DEFAULT: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_OBJECT" +)] +pub const JsonConstructorType_JSCTOR_JSON_OBJECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_ARRAY" +)] +pub const JsonConstructorType_JSCTOR_JSON_ARRAY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_OBJECTAGG" +)] +pub const JsonConstructorType_JSCTOR_JSON_OBJECTAGG: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_ARRAYAGG" +)] +pub const JsonConstructorType_JSCTOR_JSON_ARRAYAGG: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_PARSE" +)] +pub const JsonConstructorType_JSCTOR_JSON_PARSE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_SCALAR" +)] +pub const JsonConstructorType_JSCTOR_JSON_SCALAR: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_SERIALIZE" +)] +pub const JsonConstructorType_JSCTOR_JSON_SERIALIZE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonEncoding::JS_ENC_DEFAULT" +)] +pub const JsonEncoding_JS_ENC_DEFAULT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonEncoding::JS_ENC_UTF8")] +pub const JsonEncoding_JS_ENC_UTF8: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonEncoding::JS_ENC_UTF16")] +pub const JsonEncoding_JS_ENC_UTF16: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonEncoding::JS_ENC_UTF32")] +pub const JsonEncoding_JS_ENC_UTF32: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_EXISTS_OP")] +pub const JsonExprOp_JSON_EXISTS_OP: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_QUERY_OP")] +pub const JsonExprOp_JSON_QUERY_OP: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_VALUE_OP")] +pub const JsonExprOp_JSON_VALUE_OP: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_TABLE_OP")] +pub const JsonExprOp_JSON_TABLE_OP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonFormatType::JS_FORMAT_DEFAULT" +)] +pub const JsonFormatType_JS_FORMAT_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonFormatType::JS_FORMAT_JSON" +)] +pub const JsonFormatType_JS_FORMAT_JSON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonFormatType::JS_FORMAT_JSONB" +)] +pub const JsonFormatType_JS_FORMAT_JSONB: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonQuotes::JS_QUOTES_UNSPEC" +)] +pub const JsonQuotes_JS_QUOTES_UNSPEC: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonQuotes::JS_QUOTES_KEEP")] +pub const JsonQuotes_JS_QUOTES_KEEP: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonQuotes::JS_QUOTES_OMIT")] +pub const JsonQuotes_JS_QUOTES_OMIT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_FOR_ORDINALITY" +)] +pub const JsonTableColumnType_JTC_FOR_ORDINALITY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_REGULAR" +)] +pub const JsonTableColumnType_JTC_REGULAR: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_EXISTS" +)] +pub const JsonTableColumnType_JTC_EXISTS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_FORMATTED" +)] +pub const JsonTableColumnType_JTC_FORMATTED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_NESTED" +)] +pub const JsonTableColumnType_JTC_NESTED: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonValueType::JS_TYPE_ANY")] +pub const JsonValueType_JS_TYPE_ANY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonValueType::JS_TYPE_OBJECT" +)] +pub const JsonValueType_JS_TYPE_OBJECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonValueType::JS_TYPE_ARRAY" +)] +pub const JsonValueType_JS_TYPE_ARRAY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonValueType::JS_TYPE_SCALAR" +)] +pub const JsonValueType_JS_TYPE_SCALAR: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonWrapper::JSW_UNSPEC")] +pub const JsonWrapper_JSW_UNSPEC: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonWrapper::JSW_NONE")] +pub const JsonWrapper_JSW_NONE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonWrapper::JSW_CONDITIONAL" +)] +pub const JsonWrapper_JSW_CONDITIONAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonWrapper::JSW_UNCONDITIONAL" +)] +pub const JsonWrapper_JSW_UNCONDITIONAL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_ARRAY_START" +)] +pub const JsonbIterState_JBI_ARRAY_START: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_ARRAY_ELEM" +)] +pub const JsonbIterState_JBI_ARRAY_ELEM: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_OBJECT_START" +)] +pub const JsonbIterState_JBI_OBJECT_START: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_OBJECT_KEY" +)] +pub const JsonbIterState_JBI_OBJECT_KEY: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_OBJECT_VALUE" +)] +pub const JsonbIterState_JBI_OBJECT_VALUE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_DONE" +)] +pub const JsonbIteratorToken_WJB_DONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_KEY" +)] +pub const JsonbIteratorToken_WJB_KEY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_VALUE" +)] +pub const JsonbIteratorToken_WJB_VALUE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_ELEM" +)] +pub const JsonbIteratorToken_WJB_ELEM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_BEGIN_ARRAY" +)] +pub const JsonbIteratorToken_WJB_BEGIN_ARRAY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_END_ARRAY" +)] +pub const JsonbIteratorToken_WJB_END_ARRAY: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_BEGIN_OBJECT" +)] +pub const JsonbIteratorToken_WJB_BEGIN_OBJECT: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_END_OBJECT" +)] +pub const JsonbIteratorToken_WJB_END_OBJECT: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LWLockMode::LW_EXCLUSIVE")] +pub const LWLockMode_LW_EXCLUSIVE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LWLockMode::LW_SHARED")] +pub const LWLockMode_LW_SHARED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockMode::LW_WAIT_UNTIL_FREE" +)] +pub const LWLockMode_LW_WAIT_UNTIL_FREE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockWaitState::LW_WS_NOT_WAITING" +)] +pub const LWLockWaitState_LW_WS_NOT_WAITING: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockWaitState::LW_WS_WAITING" +)] +pub const LWLockWaitState_LW_WS_WAITING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockWaitState::LW_WS_PENDING_WAKEUP" +)] +pub const LWLockWaitState_LW_WS_PENDING_WAKEUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitOption::LIMIT_OPTION_COUNT" +)] +pub const LimitOption_LIMIT_OPTION_COUNT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitOption::LIMIT_OPTION_WITH_TIES" +)] +pub const LimitOption_LIMIT_OPTION_WITH_TIES: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_INITIAL" +)] +pub const LimitStateCond_LIMIT_INITIAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_RESCAN" +)] +pub const LimitStateCond_LIMIT_RESCAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_EMPTY" +)] +pub const LimitStateCond_LIMIT_EMPTY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_INWINDOW" +)] +pub const LimitStateCond_LIMIT_INWINDOW: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_WINDOWEND_TIES" +)] +pub const LimitStateCond_LIMIT_WINDOWEND_TIES: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_SUBPLANEOF" +)] +pub const LimitStateCond_LIMIT_SUBPLANEOF: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_WINDOWEND" +)] +pub const LimitStateCond_LIMIT_WINDOWEND: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_WINDOWSTART" +)] +pub const LimitStateCond_LIMIT_WINDOWSTART: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_NOT_AVAIL" +)] +pub const LockAcquireResult_LOCKACQUIRE_NOT_AVAIL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_OK" +)] +pub const LockAcquireResult_LOCKACQUIRE_OK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_ALREADY_HELD" +)] +pub const LockAcquireResult_LOCKACQUIRE_ALREADY_HELD: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_ALREADY_CLEAR" +)] +pub const LockAcquireResult_LOCKACQUIRE_ALREADY_CLEAR: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_NONE" +)] +pub const LockClauseStrength_LCS_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORKEYSHARE" +)] +pub const LockClauseStrength_LCS_FORKEYSHARE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORSHARE" +)] +pub const LockClauseStrength_LCS_FORSHARE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORNOKEYUPDATE" +)] +pub const LockClauseStrength_LCS_FORNOKEYUPDATE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORUPDATE" +)] +pub const LockClauseStrength_LCS_FORUPDATE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_RELATION" +)] +pub const LockTagType_LOCKTAG_RELATION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_RELATION_EXTEND" +)] +pub const LockTagType_LOCKTAG_RELATION_EXTEND: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_DATABASE_FROZEN_IDS" +)] +pub const LockTagType_LOCKTAG_DATABASE_FROZEN_IDS: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LockTagType::LOCKTAG_PAGE")] +pub const LockTagType_LOCKTAG_PAGE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LockTagType::LOCKTAG_TUPLE")] +pub const LockTagType_LOCKTAG_TUPLE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_TRANSACTION" +)] +pub const LockTagType_LOCKTAG_TRANSACTION: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_VIRTUALTRANSACTION" +)] +pub const LockTagType_LOCKTAG_VIRTUALTRANSACTION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_SPECULATIVE_TOKEN" +)] +pub const LockTagType_LOCKTAG_SPECULATIVE_TOKEN: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_OBJECT" +)] +pub const LockTagType_LOCKTAG_OBJECT: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_USERLOCK" +)] +pub const LockTagType_LOCKTAG_USERLOCK: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_ADVISORY" +)] +pub const LockTagType_LOCKTAG_ADVISORY: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_APPLY_TRANSACTION" +)] +pub const LockTagType_LOCKTAG_APPLY_TRANSACTION: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleKeyShare" +)] +pub const LockTupleMode_LockTupleKeyShare: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleShare" +)] +pub const LockTupleMode_LockTupleShare: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleNoKeyExclusive" +)] +pub const LockTupleMode_LockTupleNoKeyExclusive: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleExclusive" +)] +pub const LockTupleMode_LockTupleExclusive: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockWaitPolicy::LockWaitBlock" +)] +pub const LockWaitPolicy_LockWaitBlock: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockWaitPolicy::LockWaitSkip" +)] +pub const LockWaitPolicy_LockWaitSkip: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockWaitPolicy::LockWaitError" +)] +pub const LockWaitPolicy_LockWaitError: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_NONE")] +pub const LogStmtLevel_LOGSTMT_NONE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_DDL")] +pub const LogStmtLevel_LOGSTMT_DDL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_MOD")] +pub const LogStmtLevel_LOGSTMT_MOD: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_ALL")] +pub const LogStmtLevel_LOGSTMT_ALL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_BEGIN" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_BEGIN: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_COMMIT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_COMMIT: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_ORIGIN" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_ORIGIN: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_INSERT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_INSERT: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_UPDATE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_UPDATE: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_DELETE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_DELETE: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_TRUNCATE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_TRUNCATE: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_RELATION" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_RELATION: u32 = 82; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_TYPE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_TYPE: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_MESSAGE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_MESSAGE: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_BEGIN_PREPARE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_BEGIN_PREPARE: u32 = 98; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_PREPARE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_PREPARE: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_COMMIT_PREPARED" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_COMMIT_PREPARED: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_ROLLBACK_PREPARED" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_ROLLBACK_PREPARED: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_START" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_START: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_STOP" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_STOP: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_COMMIT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_COMMIT: u32 = 99; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_ABORT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_ABORT: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_PREPARE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_PREPARE: u32 = 112; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MergeMatchKind::MERGE_WHEN_MATCHED" +)] +pub const MergeMatchKind_MERGE_WHEN_MATCHED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MergeMatchKind::MERGE_WHEN_NOT_MATCHED_BY_SOURCE" +)] +pub const MergeMatchKind_MERGE_WHEN_NOT_MATCHED_BY_SOURCE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MergeMatchKind::MERGE_WHEN_NOT_MATCHED_BY_TARGET" +)] +pub const MergeMatchKind_MERGE_WHEN_NOT_MATCHED_BY_TARGET: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::MinMaxOp::IS_GREATEST")] +pub const MinMaxOp_IS_GREATEST: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::MinMaxOp::IS_LEAST")] +pub const MinMaxOp_IS_LEAST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_NONE" +)] +pub const MonotonicFunction_MONOTONICFUNC_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_INCREASING" +)] +pub const MonotonicFunction_MONOTONICFUNC_INCREASING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_DECREASING" +)] +pub const MonotonicFunction_MONOTONICFUNC_DECREASING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_BOTH" +)] +pub const MonotonicFunction_MONOTONICFUNC_BOTH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForKeyShare" +)] +pub const MultiXactStatus_MultiXactStatusForKeyShare: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForShare" +)] +pub const MultiXactStatus_MultiXactStatusForShare: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForNoKeyUpdate" +)] +pub const MultiXactStatus_MultiXactStatusForNoKeyUpdate: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForUpdate" +)] +pub const MultiXactStatus_MultiXactStatusForUpdate: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusNoKeyUpdate" +)] +pub const MultiXactStatus_MultiXactStatusNoKeyUpdate: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusUpdate" +)] +pub const MultiXactStatus_MultiXactStatusUpdate: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::NullTestType::IS_NULL")] +pub const NullTestType_IS_NULL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::NullTestType::IS_NOT_NULL")] +pub const NullTestType_IS_NOT_NULL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_POST_CREATE" +)] +pub const ObjectAccessType_OAT_POST_CREATE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectAccessType::OAT_DROP")] +pub const ObjectAccessType_OAT_DROP: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_POST_ALTER" +)] +pub const ObjectAccessType_OAT_POST_ALTER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_NAMESPACE_SEARCH" +)] +pub const ObjectAccessType_OAT_NAMESPACE_SEARCH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_FUNCTION_EXECUTE" +)] +pub const ObjectAccessType_OAT_FUNCTION_EXECUTE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_TRUNCATE" +)] +pub const ObjectAccessType_OAT_TRUNCATE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_ACCESS_METHOD" +)] +pub const ObjectType_OBJECT_ACCESS_METHOD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_AGGREGATE" +)] +pub const ObjectType_OBJECT_AGGREGATE: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_AMOP")] +pub const ObjectType_OBJECT_AMOP: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_AMPROC")] +pub const ObjectType_OBJECT_AMPROC: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_ATTRIBUTE" +)] +pub const ObjectType_OBJECT_ATTRIBUTE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_CAST")] +pub const ObjectType_OBJECT_CAST: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_COLUMN")] +pub const ObjectType_OBJECT_COLUMN: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_COLLATION" +)] +pub const ObjectType_OBJECT_COLLATION: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_CONVERSION" +)] +pub const ObjectType_OBJECT_CONVERSION: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_DATABASE" +)] +pub const ObjectType_OBJECT_DATABASE: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_DEFAULT")] +pub const ObjectType_OBJECT_DEFAULT: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_DEFACL")] +pub const ObjectType_OBJECT_DEFACL: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_DOMAIN")] +pub const ObjectType_OBJECT_DOMAIN: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_DOMCONSTRAINT" +)] +pub const ObjectType_OBJECT_DOMCONSTRAINT: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_EVENT_TRIGGER" +)] +pub const ObjectType_OBJECT_EVENT_TRIGGER: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_EXTENSION" +)] +pub const ObjectType_OBJECT_EXTENSION: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_FDW")] +pub const ObjectType_OBJECT_FDW: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_FOREIGN_SERVER" +)] +pub const ObjectType_OBJECT_FOREIGN_SERVER: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_FOREIGN_TABLE" +)] +pub const ObjectType_OBJECT_FOREIGN_TABLE: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_FUNCTION" +)] +pub const ObjectType_OBJECT_FUNCTION: u32 = 19; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_INDEX")] +pub const ObjectType_OBJECT_INDEX: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_LANGUAGE" +)] +pub const ObjectType_OBJECT_LANGUAGE: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_LARGEOBJECT" +)] +pub const ObjectType_OBJECT_LARGEOBJECT: u32 = 22; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_MATVIEW")] +pub const ObjectType_OBJECT_MATVIEW: u32 = 23; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_OPCLASS")] +pub const ObjectType_OBJECT_OPCLASS: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_OPERATOR" +)] +pub const ObjectType_OBJECT_OPERATOR: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_OPFAMILY" +)] +pub const ObjectType_OBJECT_OPFAMILY: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PARAMETER_ACL" +)] +pub const ObjectType_OBJECT_PARAMETER_ACL: u32 = 27; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_POLICY")] +pub const ObjectType_OBJECT_POLICY: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PROCEDURE" +)] +pub const ObjectType_OBJECT_PROCEDURE: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PUBLICATION" +)] +pub const ObjectType_OBJECT_PUBLICATION: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PUBLICATION_NAMESPACE" +)] +pub const ObjectType_OBJECT_PUBLICATION_NAMESPACE: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PUBLICATION_REL" +)] +pub const ObjectType_OBJECT_PUBLICATION_REL: u32 = 32; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_ROLE")] +pub const ObjectType_OBJECT_ROLE: u32 = 33; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_ROUTINE")] +pub const ObjectType_OBJECT_ROUTINE: u32 = 34; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_RULE")] +pub const ObjectType_OBJECT_RULE: u32 = 35; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_SCHEMA")] +pub const ObjectType_OBJECT_SCHEMA: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_SEQUENCE" +)] +pub const ObjectType_OBJECT_SEQUENCE: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_SUBSCRIPTION" +)] +pub const ObjectType_OBJECT_SUBSCRIPTION: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_STATISTIC_EXT" +)] +pub const ObjectType_OBJECT_STATISTIC_EXT: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TABCONSTRAINT" +)] +pub const ObjectType_OBJECT_TABCONSTRAINT: u32 = 40; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_TABLE")] +pub const ObjectType_OBJECT_TABLE: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TABLESPACE" +)] +pub const ObjectType_OBJECT_TABLESPACE: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TRANSFORM" +)] +pub const ObjectType_OBJECT_TRANSFORM: u32 = 43; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_TRIGGER")] +pub const ObjectType_OBJECT_TRIGGER: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSCONFIGURATION" +)] +pub const ObjectType_OBJECT_TSCONFIGURATION: u32 = 45; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSDICTIONARY" +)] +pub const ObjectType_OBJECT_TSDICTIONARY: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSPARSER" +)] +pub const ObjectType_OBJECT_TSPARSER: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSTEMPLATE" +)] +pub const ObjectType_OBJECT_TSTEMPLATE: u32 = 48; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_TYPE")] +pub const ObjectType_OBJECT_TYPE: u32 = 49; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_USER_MAPPING" +)] +pub const ObjectType_OBJECT_USER_MAPPING: u32 = 50; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_VIEW")] +pub const ObjectType_OBJECT_VIEW: u32 = 51; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_NOOP" +)] +pub const OnCommitAction_ONCOMMIT_NOOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_PRESERVE_ROWS" +)] +pub const OnCommitAction_ONCOMMIT_PRESERVE_ROWS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_DELETE_ROWS" +)] +pub const OnCommitAction_ONCOMMIT_DELETE_ROWS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_DROP" +)] +pub const OnCommitAction_ONCOMMIT_DROP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnConflictAction::ONCONFLICT_NONE" +)] +pub const OnConflictAction_ONCONFLICT_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnConflictAction::ONCONFLICT_NOTHING" +)] +pub const OnConflictAction_ONCONFLICT_NOTHING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnConflictAction::ONCONFLICT_UPDATE" +)] +pub const OnConflictAction_ONCONFLICT_UPDATE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OutputPluginOutputType::OUTPUT_PLUGIN_BINARY_OUTPUT" +)] +pub const OutputPluginOutputType_OUTPUT_PLUGIN_BINARY_OUTPUT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OutputPluginOutputType::OUTPUT_PLUGIN_TEXTUAL_OUTPUT" +)] +pub const OutputPluginOutputType_OUTPUT_PLUGIN_TEXTUAL_OUTPUT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OverridingKind::OVERRIDING_NOT_SET" +)] +pub const OverridingKind_OVERRIDING_NOT_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OverridingKind::OVERRIDING_USER_VALUE" +)] +pub const OverridingKind_OVERRIDING_USER_VALUE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OverridingKind::OVERRIDING_SYSTEM_VALUE" +)] +pub const OverridingKind_OVERRIDING_SYSTEM_VALUE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PGErrorVerbosity::PGERROR_TERSE" +)] +pub const PGErrorVerbosity_PGERROR_TERSE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PGErrorVerbosity::PGERROR_DEFAULT" +)] +pub const PGErrorVerbosity_PGERROR_DEFAULT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PGErrorVerbosity::PGERROR_VERBOSE" +)] +pub const PGErrorVerbosity_PGERROR_VERBOSE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_VAR" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_VAR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_ROW" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_ROW: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_REC" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_REC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_RECFIELD" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_RECFIELD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_PROMISE" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_PROMISE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ROW_COUNT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ROW_COUNT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_CONTEXT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_CONTEXT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ERROR_CONTEXT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ERROR_CONTEXT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ERROR_DETAIL" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ERROR_DETAIL: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ERROR_HINT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ERROR_HINT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_RETURNED_SQLSTATE" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_RETURNED_SQLSTATE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_COLUMN_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_COLUMN_NAME: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_CONSTRAINT_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_CONSTRAINT_NAME: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_DATATYPE_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_DATATYPE_NAME: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_MESSAGE_TEXT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_MESSAGE_TEXT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_TABLE_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_TABLE_NAME: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_SCHEMA_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_SCHEMA_NAME: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_label_type::PLPGSQL_LABEL_BLOCK" +)] +pub const PLpgSQL_label_type_PLPGSQL_LABEL_BLOCK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_label_type::PLPGSQL_LABEL_LOOP" +)] +pub const PLpgSQL_label_type_PLPGSQL_LABEL_LOOP: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_label_type::PLPGSQL_LABEL_OTHER" +)] +pub const PLpgSQL_label_type_PLPGSQL_LABEL_OTHER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_nsitem_type::PLPGSQL_NSTYPE_LABEL" +)] +pub const PLpgSQL_nsitem_type_PLPGSQL_NSTYPE_LABEL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_nsitem_type::PLPGSQL_NSTYPE_VAR" +)] +pub const PLpgSQL_nsitem_type_PLPGSQL_NSTYPE_VAR: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_nsitem_type::PLPGSQL_NSTYPE_REC" +)] +pub const PLpgSQL_nsitem_type_PLPGSQL_NSTYPE_REC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_NONE" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_NAME" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_NAME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_WHEN" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_WHEN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_LEVEL" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_LEVEL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_OP" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_OP: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_RELID" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_RELID: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_TABLE_NAME" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_TABLE_NAME: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_TABLE_SCHEMA" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_TABLE_SCHEMA: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_NARGS" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_NARGS: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_ARGV" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_ARGV: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_EVENT" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_EVENT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_TAG" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_TAG: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_ERRCODE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_ERRCODE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_MESSAGE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_MESSAGE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_DETAIL" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_DETAIL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_HINT" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_HINT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_COLUMN" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_COLUMN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_CONSTRAINT" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_CONSTRAINT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_DATATYPE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_DATATYPE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_TABLE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_TABLE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_SCHEMA" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_SCHEMA: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_resolve_option::PLPGSQL_RESOLVE_ERROR" +)] +pub const PLpgSQL_resolve_option_PLPGSQL_RESOLVE_ERROR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_resolve_option::PLPGSQL_RESOLVE_VARIABLE" +)] +pub const PLpgSQL_resolve_option_PLPGSQL_RESOLVE_VARIABLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_resolve_option::PLPGSQL_RESOLVE_COLUMN" +)] +pub const PLpgSQL_resolve_option_PLPGSQL_RESOLVE_COLUMN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_BLOCK" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_BLOCK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_ASSIGN" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_ASSIGN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_IF" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_IF: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_CASE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_CASE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_LOOP" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_LOOP: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_WHILE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_WHILE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FORI" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FORI: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FORS" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FORS: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FORC" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FORC: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FOREACH_A" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FOREACH_A: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_EXIT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_EXIT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RETURN" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RETURN: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RETURN_NEXT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RETURN_NEXT: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RETURN_QUERY" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RETURN_QUERY: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RAISE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RAISE: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_ASSERT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_ASSERT: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_EXECSQL" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_EXECSQL: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_DYNEXECUTE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_DYNEXECUTE: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_DYNFORS" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_DYNFORS: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_GETDIAG" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_GETDIAG: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_OPEN" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_OPEN: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FETCH" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FETCH: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_CLOSE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_CLOSE: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_PERFORM" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_PERFORM: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_CALL" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_CALL: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_COMMIT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_COMMIT: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_ROLLBACK" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_ROLLBACK: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_trigtype::PLPGSQL_DML_TRIGGER" +)] +pub const PLpgSQL_trigtype_PLPGSQL_DML_TRIGGER: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_trigtype::PLPGSQL_EVENT_TRIGGER" +)] +pub const PLpgSQL_trigtype_PLPGSQL_EVENT_TRIGGER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_trigtype::PLPGSQL_NOT_TRIGGER" +)] +pub const PLpgSQL_trigtype_PLPGSQL_NOT_TRIGGER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_type_type::PLPGSQL_TTYPE_SCALAR" +)] +pub const PLpgSQL_type_type_PLPGSQL_TTYPE_SCALAR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_type_type::PLPGSQL_TTYPE_REC" +)] +pub const PLpgSQL_type_type_PLPGSQL_TTYPE_REC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_type_type::PLPGSQL_TTYPE_PSEUDO" +)] +pub const PLpgSQL_type_type_PLPGSQL_TTYPE_PSEUDO: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_EXTERN")] +pub const ParamKind_PARAM_EXTERN: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_EXEC")] +pub const ParamKind_PARAM_EXEC: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_SUBLINK")] +pub const ParamKind_PARAM_SUBLINK: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_MULTIEXPR")] +pub const ParamKind_PARAM_MULTIEXPR: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_NONE" +)] +pub const ParseExprKind_EXPR_KIND_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_OTHER" +)] +pub const ParseExprKind_EXPR_KIND_OTHER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_JOIN_ON" +)] +pub const ParseExprKind_EXPR_KIND_JOIN_ON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_JOIN_USING" +)] +pub const ParseExprKind_EXPR_KIND_JOIN_USING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FROM_SUBSELECT" +)] +pub const ParseExprKind_EXPR_KIND_FROM_SUBSELECT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FROM_FUNCTION" +)] +pub const ParseExprKind_EXPR_KIND_FROM_FUNCTION: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WHERE" +)] +pub const ParseExprKind_EXPR_KIND_WHERE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_HAVING" +)] +pub const ParseExprKind_EXPR_KIND_HAVING: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FILTER" +)] +pub const ParseExprKind_EXPR_KIND_FILTER: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_PARTITION" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_PARTITION: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_ORDER" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_ORDER: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_FRAME_RANGE" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_FRAME_RANGE: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_FRAME_ROWS" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_FRAME_ROWS: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_FRAME_GROUPS" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_FRAME_GROUPS: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_SELECT_TARGET" +)] +pub const ParseExprKind_EXPR_KIND_SELECT_TARGET: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_INSERT_TARGET" +)] +pub const ParseExprKind_EXPR_KIND_INSERT_TARGET: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_UPDATE_SOURCE" +)] +pub const ParseExprKind_EXPR_KIND_UPDATE_SOURCE: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_UPDATE_TARGET" +)] +pub const ParseExprKind_EXPR_KIND_UPDATE_TARGET: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_MERGE_WHEN" +)] +pub const ParseExprKind_EXPR_KIND_MERGE_WHEN: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_GROUP_BY" +)] +pub const ParseExprKind_EXPR_KIND_GROUP_BY: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_ORDER_BY" +)] +pub const ParseExprKind_EXPR_KIND_ORDER_BY: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_DISTINCT_ON" +)] +pub const ParseExprKind_EXPR_KIND_DISTINCT_ON: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_LIMIT" +)] +pub const ParseExprKind_EXPR_KIND_LIMIT: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_OFFSET" +)] +pub const ParseExprKind_EXPR_KIND_OFFSET: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_RETURNING" +)] +pub const ParseExprKind_EXPR_KIND_RETURNING: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_MERGE_RETURNING" +)] +pub const ParseExprKind_EXPR_KIND_MERGE_RETURNING: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_VALUES" +)] +pub const ParseExprKind_EXPR_KIND_VALUES: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_VALUES_SINGLE" +)] +pub const ParseExprKind_EXPR_KIND_VALUES_SINGLE: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_CHECK_CONSTRAINT" +)] +pub const ParseExprKind_EXPR_KIND_CHECK_CONSTRAINT: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_DOMAIN_CHECK" +)] +pub const ParseExprKind_EXPR_KIND_DOMAIN_CHECK: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_COLUMN_DEFAULT" +)] +pub const ParseExprKind_EXPR_KIND_COLUMN_DEFAULT: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FUNCTION_DEFAULT" +)] +pub const ParseExprKind_EXPR_KIND_FUNCTION_DEFAULT: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_INDEX_EXPRESSION" +)] +pub const ParseExprKind_EXPR_KIND_INDEX_EXPRESSION: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_INDEX_PREDICATE" +)] +pub const ParseExprKind_EXPR_KIND_INDEX_PREDICATE: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_STATS_EXPRESSION" +)] +pub const ParseExprKind_EXPR_KIND_STATS_EXPRESSION: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_ALTER_COL_TRANSFORM" +)] +pub const ParseExprKind_EXPR_KIND_ALTER_COL_TRANSFORM: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_EXECUTE_PARAMETER" +)] +pub const ParseExprKind_EXPR_KIND_EXECUTE_PARAMETER: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_TRIGGER_WHEN" +)] +pub const ParseExprKind_EXPR_KIND_TRIGGER_WHEN: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_POLICY" +)] +pub const ParseExprKind_EXPR_KIND_POLICY: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_PARTITION_BOUND" +)] +pub const ParseExprKind_EXPR_KIND_PARTITION_BOUND: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_PARTITION_EXPRESSION" +)] +pub const ParseExprKind_EXPR_KIND_PARTITION_EXPRESSION: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_CALL_ARGUMENT" +)] +pub const ParseExprKind_EXPR_KIND_CALL_ARGUMENT: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_COPY_WHERE" +)] +pub const ParseExprKind_EXPR_KIND_COPY_WHERE: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_GENERATED_COLUMN" +)] +pub const ParseExprKind_EXPR_KIND_GENERATED_COLUMN: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_CYCLE_MARK" +)] +pub const ParseExprKind_EXPR_KIND_CYCLE_MARK: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionPruneCombineOp::PARTPRUNE_COMBINE_UNION" +)] +pub const PartitionPruneCombineOp_PARTPRUNE_COMBINE_UNION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionPruneCombineOp::PARTPRUNE_COMBINE_INTERSECT" +)] +pub const PartitionPruneCombineOp_PARTPRUNE_COMBINE_INTERSECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionRangeDatumKind::PARTITION_RANGE_DATUM_MINVALUE" +)] +pub const PartitionRangeDatumKind_PARTITION_RANGE_DATUM_MINVALUE: i32 = -1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionRangeDatumKind::PARTITION_RANGE_DATUM_VALUE" +)] +pub const PartitionRangeDatumKind_PARTITION_RANGE_DATUM_VALUE: i32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionRangeDatumKind::PARTITION_RANGE_DATUM_MAXVALUE" +)] +pub const PartitionRangeDatumKind_PARTITION_RANGE_DATUM_MAXVALUE: i32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionStrategy::PARTITION_STRATEGY_LIST" +)] +pub const PartitionStrategy_PARTITION_STRATEGY_LIST: u32 = 108; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionStrategy::PARTITION_STRATEGY_RANGE" +)] +pub const PartitionStrategy_PARTITION_STRATEGY_RANGE: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionStrategy::PARTITION_STRATEGY_HASH" +)] +pub const PartitionStrategy_PARTITION_STRATEGY_HASH: u32 = 104; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionwiseAggregateType::PARTITIONWISE_AGGREGATE_NONE" +)] +pub const PartitionwiseAggregateType_PARTITIONWISE_AGGREGATE_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionwiseAggregateType::PARTITIONWISE_AGGREGATE_FULL" +)] +pub const PartitionwiseAggregateType_PARTITIONWISE_AGGREGATE_FULL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionwiseAggregateType::PARTITIONWISE_AGGREGATE_PARTIAL" +)] +pub const PartitionwiseAggregateType_PARTITIONWISE_AGGREGATE_PARTIAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PasswordType::PASSWORD_TYPE_PLAINTEXT" +)] +pub const PasswordType_PASSWORD_TYPE_PLAINTEXT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PasswordType::PASSWORD_TYPE_MD5" +)] +pub const PasswordType_PASSWORD_TYPE_MD5: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PasswordType::PASSWORD_TYPE_SCRAM_SHA_256" +)] +pub const PasswordType_PASSWORD_TYPE_SCRAM_SHA_256: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_EQUAL" +)] +pub const PathKeysComparison_PATHKEYS_EQUAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_BETTER1" +)] +pub const PathKeysComparison_PATHKEYS_BETTER1: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_BETTER2" +)] +pub const PathKeysComparison_PATHKEYS_BETTER2: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_DIFFERENT" +)] +pub const PathKeysComparison_PATHKEYS_DIFFERENT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_FetchConsistency::PGSTAT_FETCH_CONSISTENCY_NONE" +)] +pub const PgStat_FetchConsistency_PGSTAT_FETCH_CONSISTENCY_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_FetchConsistency::PGSTAT_FETCH_CONSISTENCY_CACHE" +)] +pub const PgStat_FetchConsistency_PGSTAT_FETCH_CONSISTENCY_CACHE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_FetchConsistency::PGSTAT_FETCH_CONSISTENCY_SNAPSHOT" +)] +pub const PgStat_FetchConsistency_PGSTAT_FETCH_CONSISTENCY_SNAPSHOT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_INVALID" +)] +pub const PgStat_Kind_PGSTAT_KIND_INVALID: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_DATABASE" +)] +pub const PgStat_Kind_PGSTAT_KIND_DATABASE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_RELATION" +)] +pub const PgStat_Kind_PGSTAT_KIND_RELATION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_FUNCTION" +)] +pub const PgStat_Kind_PGSTAT_KIND_FUNCTION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_REPLSLOT" +)] +pub const PgStat_Kind_PGSTAT_KIND_REPLSLOT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_SUBSCRIPTION" +)] +pub const PgStat_Kind_PGSTAT_KIND_SUBSCRIPTION: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_ARCHIVER" +)] +pub const PgStat_Kind_PGSTAT_KIND_ARCHIVER: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_BGWRITER" +)] +pub const PgStat_Kind_PGSTAT_KIND_BGWRITER: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_CHECKPOINTER" +)] +pub const PgStat_Kind_PGSTAT_KIND_CHECKPOINTER: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_IO" +)] +pub const PgStat_Kind_PGSTAT_KIND_IO: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_SLRU" +)] +pub const PgStat_Kind_PGSTAT_KIND_SLRU: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_WAL" +)] +pub const PgStat_Kind_PGSTAT_KIND_WAL: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PlanCacheMode::PLAN_CACHE_MODE_AUTO" +)] +pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PlanCacheMode::PLAN_CACHE_MODE_FORCE_GENERIC_PLAN" +)] +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PlanCacheMode::PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN" +)] +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::PortalStatus::PORTAL_NEW")] +pub const PortalStatus_PORTAL_NEW: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStatus::PORTAL_DEFINED" +)] +pub const PortalStatus_PORTAL_DEFINED: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::PortalStatus::PORTAL_READY")] +pub const PortalStatus_PORTAL_READY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStatus::PORTAL_ACTIVE" +)] +pub const PortalStatus_PORTAL_ACTIVE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::PortalStatus::PORTAL_DONE")] +pub const PortalStatus_PORTAL_DONE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStatus::PORTAL_FAILED" +)] +pub const PortalStatus_PORTAL_FAILED: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_ONE_SELECT" +)] +pub const PortalStrategy_PORTAL_ONE_SELECT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_ONE_RETURNING" +)] +pub const PortalStrategy_PORTAL_ONE_RETURNING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_ONE_MOD_WITH" +)] +pub const PortalStrategy_PORTAL_ONE_MOD_WITH: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_UTIL_SELECT" +)] +pub const PortalStrategy_PORTAL_UTIL_SELECT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_MULTI_QUERY" +)] +pub const PortalStrategy_PORTAL_MULTI_QUERY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalBarrierType::PROCSIGNAL_BARRIER_SMGRRELEASE" +)] +pub const ProcSignalBarrierType_PROCSIGNAL_BARRIER_SMGRRELEASE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_CATCHUP_INTERRUPT" +)] +pub const ProcSignalReason_PROCSIG_CATCHUP_INTERRUPT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_NOTIFY_INTERRUPT" +)] +pub const ProcSignalReason_PROCSIG_NOTIFY_INTERRUPT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_PARALLEL_MESSAGE" +)] +pub const ProcSignalReason_PROCSIG_PARALLEL_MESSAGE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_WALSND_INIT_STOPPING" +)] +pub const ProcSignalReason_PROCSIG_WALSND_INIT_STOPPING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_BARRIER" +)] +pub const ProcSignalReason_PROCSIG_BARRIER: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_LOG_MEMORY_CONTEXT" +)] +pub const ProcSignalReason_PROCSIG_LOG_MEMORY_CONTEXT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_PARALLEL_APPLY_MESSAGE" +)] +pub const ProcSignalReason_PROCSIG_PARALLEL_APPLY_MESSAGE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_FIRST" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_FIRST: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_DATABASE" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_DATABASE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_TABLESPACE" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_TABLESPACE: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_LOCK" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_LOCK: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_SNAPSHOT" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_SNAPSHOT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_BUFFERPIN" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_BUFFERPIN: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_LAST" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_LAST: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::NUM_PROCSIGNALS" +)] +pub const ProcSignalReason_NUM_PROCSIGNALS: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcWaitStatus::PROC_WAIT_STATUS_OK" +)] +pub const ProcWaitStatus_PROC_WAIT_STATUS_OK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcWaitStatus::PROC_WAIT_STATUS_WAITING" +)] +pub const ProcWaitStatus_PROC_WAIT_STATUS_WAITING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcWaitStatus::PROC_WAIT_STATUS_ERROR" +)] +pub const ProcWaitStatus_PROC_WAIT_STATUS_ERROR: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_TOPLEVEL" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_TOPLEVEL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_QUERY" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_QUERY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_QUERY_NONATOMIC" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_QUERY_NONATOMIC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_SUBCOMMAND" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_SUBCOMMAND: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessingMode::BootstrapProcessing" +)] +pub const ProcessingMode_BootstrapProcessing: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessingMode::InitProcessing" +)] +pub const ProcessingMode_InitProcessing: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessingMode::NormalProcessing" +)] +pub const ProcessingMode_NormalProcessing: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_INVALID" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_INVALID: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_VACUUM" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_VACUUM: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_ANALYZE" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_ANALYZE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_CLUSTER" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_CLUSTER: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_CREATE_INDEX" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_CREATE_INDEX: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_BASEBACKUP" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_BASEBACKUP: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_COPY" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_COPY: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PruneReason::PRUNE_ON_ACCESS" +)] +pub const PruneReason_PRUNE_ON_ACCESS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PruneReason::PRUNE_VACUUM_SCAN" +)] +pub const PruneReason_PRUNE_VACUUM_SCAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PruneReason::PRUNE_VACUUM_CLEANUP" +)] +pub const PruneReason_PRUNE_VACUUM_CLEANUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_TABLE" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_TABLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_TABLES_IN_SCHEMA" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_TABLES_IN_SCHEMA: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_CONTINUATION" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_CONTINUATION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationPartOpt::PUBLICATION_PART_ROOT" +)] +pub const PublicationPartOpt_PUBLICATION_PART_ROOT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationPartOpt::PUBLICATION_PART_LEAF" +)] +pub const PublicationPartOpt_PUBLICATION_PART_LEAF: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationPartOpt::PUBLICATION_PART_ALL" +)] +pub const PublicationPartOpt_PUBLICATION_PART_ALL: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::QuerySource::QSRC_ORIGINAL")] +pub const QuerySource_QSRC_ORIGINAL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::QuerySource::QSRC_PARSER")] +pub const QuerySource_QSRC_PARSER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::QuerySource::QSRC_INSTEAD_RULE" +)] +pub const QuerySource_QSRC_INSTEAD_RULE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::QuerySource::QSRC_QUAL_INSTEAD_RULE" +)] +pub const QuerySource_QSRC_QUAL_INSTEAD_RULE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::QuerySource::QSRC_NON_INSTEAD_RULE" +)] +pub const QuerySource_QSRC_NON_INSTEAD_RULE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_RELATION")] +pub const RTEKind_RTE_RELATION: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_SUBQUERY")] +pub const RTEKind_RTE_SUBQUERY: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_JOIN")] +pub const RTEKind_RTE_JOIN: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_FUNCTION")] +pub const RTEKind_RTE_FUNCTION: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_TABLEFUNC")] +pub const RTEKind_RTE_TABLEFUNC: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_VALUES")] +pub const RTEKind_RTE_VALUES: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_CTE")] +pub const RTEKind_RTE_CTE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RTEKind::RTE_NAMEDTUPLESTORE" +)] +pub const RTEKind_RTE_NAMEDTUPLESTORE: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_RESULT")] +pub const RTEKind_RTE_RESULT: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RVROption::RVR_MISSING_OK")] +pub const RVROption_RVR_MISSING_OK: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RVROption::RVR_NOWAIT")] +pub const RVROption_RVR_NOWAIT: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RVROption::RVR_SKIP_LOCKED")] +pub const RVROption_RVR_SKIP_LOCKED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_DEFAULT" +)] +pub const RawParseMode_RAW_PARSE_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_TYPE_NAME" +)] +pub const RawParseMode_RAW_PARSE_TYPE_NAME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_EXPR" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_EXPR: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_ASSIGN1" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN1: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_ASSIGN2" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN2: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_ASSIGN3" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN3: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ReadBufferMode::RBM_NORMAL")] +pub const ReadBufferMode_RBM_NORMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_ZERO_AND_LOCK" +)] +pub const ReadBufferMode_RBM_ZERO_AND_LOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_ZERO_AND_CLEANUP_LOCK" +)] +pub const ReadBufferMode_RBM_ZERO_AND_CLEANUP_LOCK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_ZERO_ON_ERROR" +)] +pub const ReadBufferMode_RBM_ZERO_ON_ERROR: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_NORMAL_NO_LOG" +)] +pub const ReadBufferMode_RBM_NORMAL_NO_LOG: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryPauseState::RECOVERY_NOT_PAUSED" +)] +pub const RecoveryPauseState_RECOVERY_NOT_PAUSED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryPauseState::RECOVERY_PAUSE_REQUESTED" +)] +pub const RecoveryPauseState_RECOVERY_PAUSE_REQUESTED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryPauseState::RECOVERY_PAUSED" +)] +pub const RecoveryPauseState_RECOVERY_PAUSED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryState::RECOVERY_STATE_CRASH" +)] +pub const RecoveryState_RECOVERY_STATE_CRASH: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryState::RECOVERY_STATE_ARCHIVE" +)] +pub const RecoveryState_RECOVERY_STATE_ARCHIVE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryState::RECOVERY_STATE_DONE" +)] +pub const RecoveryState_RECOVERY_STATE_DONE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetAction::RECOVERY_TARGET_ACTION_PAUSE" +)] +pub const RecoveryTargetAction_RECOVERY_TARGET_ACTION_PAUSE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetAction::RECOVERY_TARGET_ACTION_PROMOTE" +)] +pub const RecoveryTargetAction_RECOVERY_TARGET_ACTION_PROMOTE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetAction::RECOVERY_TARGET_ACTION_SHUTDOWN" +)] +pub const RecoveryTargetAction_RECOVERY_TARGET_ACTION_SHUTDOWN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetTimeLineGoal::RECOVERY_TARGET_TIMELINE_CONTROLFILE" +)] +pub const RecoveryTargetTimeLineGoal_RECOVERY_TARGET_TIMELINE_CONTROLFILE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetTimeLineGoal::RECOVERY_TARGET_TIMELINE_LATEST" +)] +pub const RecoveryTargetTimeLineGoal_RECOVERY_TARGET_TIMELINE_LATEST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetTimeLineGoal::RECOVERY_TARGET_TIMELINE_NUMERIC" +)] +pub const RecoveryTargetTimeLineGoal_RECOVERY_TARGET_TIMELINE_NUMERIC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_UNSET" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_UNSET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_XID" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_XID: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_TIME" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_TIME: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_NAME" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_NAME: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_LSN" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_LSN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_IMMEDIATE" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_IMMEDIATE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_INDEX" +)] +pub const ReindexObjectType_REINDEX_OBJECT_INDEX: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_TABLE" +)] +pub const ReindexObjectType_REINDEX_OBJECT_TABLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_SCHEMA" +)] +pub const ReindexObjectType_REINDEX_OBJECT_SCHEMA: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_SYSTEM" +)] +pub const ReindexObjectType_REINDEX_OBJECT_SYSTEM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_DATABASE" +)] +pub const ReindexObjectType_REINDEX_OBJECT_DATABASE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RelOptKind::RELOPT_BASEREL")] +pub const RelOptKind_RELOPT_BASEREL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RelOptKind::RELOPT_JOINREL")] +pub const RelOptKind_RELOPT_JOINREL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_OTHER_MEMBER_REL" +)] +pub const RelOptKind_RELOPT_OTHER_MEMBER_REL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_OTHER_JOINREL" +)] +pub const RelOptKind_RELOPT_OTHER_JOINREL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_UPPER_REL" +)] +pub const RelOptKind_RELOPT_UPPER_REL: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_OTHER_UPPER_REL" +)] +pub const RelOptKind_RELOPT_OTHER_UPPER_REL: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INSERT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INSERT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_UPDATE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_UPDATE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_DELETE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_DELETE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_MESSAGE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_MESSAGE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INVALIDATION" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INVALIDATION: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_COMMAND_ID" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_COMMAND_ID: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_TUPLECID" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_TUPLECID: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_TRUNCATE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_TRUNCATE: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationKind::REPLICATION_KIND_PHYSICAL" +)] +pub const ReplicationKind_REPLICATION_KIND_PHYSICAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationKind::REPLICATION_KIND_LOGICAL" +)] +pub const ReplicationKind_REPLICATION_KIND_LOGICAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_NONE" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_WAL_REMOVED" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_WAL_REMOVED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_HORIZON" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_HORIZON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_WAL_LEVEL" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_WAL_LEVEL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotPersistency::RS_PERSISTENT" +)] +pub const ReplicationSlotPersistency_RS_PERSISTENT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotPersistency::RS_EPHEMERAL" +)] +pub const ReplicationSlotPersistency_RS_EPHEMERAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotPersistency::RS_TEMPORARY" +)] +pub const ReplicationSlotPersistency_RS_TEMPORARY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ResourceReleasePhase::RESOURCE_RELEASE_BEFORE_LOCKS" +)] +pub const ResourceReleasePhase_RESOURCE_RELEASE_BEFORE_LOCKS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ResourceReleasePhase::RESOURCE_RELEASE_LOCKS" +)] +pub const ResourceReleasePhase_RESOURCE_RELEASE_LOCKS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ResourceReleasePhase::RESOURCE_RELEASE_AFTER_LOCKS" +)] +pub const ResourceReleasePhase_RESOURCE_RELEASE_AFTER_LOCKS: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_XLOG_ID")] +pub const RmgrIds_RM_XLOG_ID: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_XACT_ID")] +pub const RmgrIds_RM_XACT_ID: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_SMGR_ID")] +pub const RmgrIds_RM_SMGR_ID: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_CLOG_ID")] +pub const RmgrIds_RM_CLOG_ID: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_DBASE_ID")] +pub const RmgrIds_RM_DBASE_ID: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_TBLSPC_ID")] +pub const RmgrIds_RM_TBLSPC_ID: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_MULTIXACT_ID")] +pub const RmgrIds_RM_MULTIXACT_ID: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_RELMAP_ID")] +pub const RmgrIds_RM_RELMAP_ID: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_STANDBY_ID")] +pub const RmgrIds_RM_STANDBY_ID: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_HEAP2_ID")] +pub const RmgrIds_RM_HEAP2_ID: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_HEAP_ID")] +pub const RmgrIds_RM_HEAP_ID: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_BTREE_ID")] +pub const RmgrIds_RM_BTREE_ID: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_HASH_ID")] +pub const RmgrIds_RM_HASH_ID: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_GIN_ID")] +pub const RmgrIds_RM_GIN_ID: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_GIST_ID")] +pub const RmgrIds_RM_GIST_ID: u32 = 14; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_SEQ_ID")] +pub const RmgrIds_RM_SEQ_ID: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_SPGIST_ID")] +pub const RmgrIds_RM_SPGIST_ID: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_BRIN_ID")] +pub const RmgrIds_RM_BRIN_ID: u32 = 17; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_COMMIT_TS_ID")] +pub const RmgrIds_RM_COMMIT_TS_ID: u32 = 18; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_REPLORIGIN_ID")] +pub const RmgrIds_RM_REPLORIGIN_ID: u32 = 19; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_GENERIC_ID")] +pub const RmgrIds_RM_GENERIC_ID: u32 = 20; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_LOGICALMSG_ID")] +pub const RmgrIds_RM_LOGICALMSG_ID: u32 = 21; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_NEXT_ID")] +pub const RmgrIds_RM_NEXT_ID: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_CSTRING" +)] +pub const RoleSpecType_ROLESPEC_CSTRING: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_CURRENT_ROLE" +)] +pub const RoleSpecType_ROLESPEC_CURRENT_ROLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_CURRENT_USER" +)] +pub const RoleSpecType_ROLESPEC_CURRENT_USER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_SESSION_USER" +)] +pub const RoleSpecType_ROLESPEC_SESSION_USER: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_PUBLIC" +)] +pub const RoleSpecType_ROLESPEC_PUBLIC: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleStmtType::ROLESTMT_ROLE" +)] +pub const RoleStmtType_ROLESTMT_ROLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleStmtType::ROLESTMT_USER" +)] +pub const RoleStmtType_ROLESTMT_USER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleStmtType::ROLESTMT_GROUP" +)] +pub const RoleStmtType_ROLESTMT_GROUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_LT" +)] +pub const RowCompareType_ROWCOMPARE_LT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_LE" +)] +pub const RowCompareType_ROWCOMPARE_LE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_EQ" +)] +pub const RowCompareType_ROWCOMPARE_EQ: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_GE" +)] +pub const RowCompareType_ROWCOMPARE_GE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_GT" +)] +pub const RowCompareType_ROWCOMPARE_GT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_NE" +)] +pub const RowCompareType_ROWCOMPARE_NE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_EXCLUSIVE" +)] +pub const RowMarkType_ROW_MARK_EXCLUSIVE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_NOKEYEXCLUSIVE" +)] +pub const RowMarkType_ROW_MARK_NOKEYEXCLUSIVE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_SHARE" +)] +pub const RowMarkType_ROW_MARK_SHARE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_KEYSHARE" +)] +pub const RowMarkType_ROW_MARK_KEYSHARE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_REFERENCE" +)] +pub const RowMarkType_ROW_MARK_REFERENCE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RowMarkType::ROW_MARK_COPY")] +pub const RowMarkType_ROW_MARK_COPY: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_DATE" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_DATE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIME" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIME_N" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIME_N: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIMESTAMP" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIMESTAMP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIMESTAMP_N" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIMESTAMP_N: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIME" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIME: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIME_N" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIME_N: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIMESTAMP" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIMESTAMP: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIMESTAMP_N" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIMESTAMP_N: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_ROLE" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_ROLE: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_USER" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_USER: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_USER" +)] +pub const SQLValueFunctionOp_SVFOP_USER: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_SESSION_USER" +)] +pub const SQLValueFunctionOp_SVFOP_SESSION_USER: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_CATALOG" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_CATALOG: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_SCHEMA" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_SCHEMA: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanDirection::BackwardScanDirection" +)] +pub const ScanDirection_BackwardScanDirection: i32 = -1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanDirection::NoMovementScanDirection" +)] +pub const ScanDirection_NoMovementScanDirection: i32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanDirection::ForwardScanDirection" +)] +pub const ScanDirection_ForwardScanDirection: i32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_SEQSCAN" +)] +pub const ScanOptions_SO_TYPE_SEQSCAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_BITMAPSCAN" +)] +pub const ScanOptions_SO_TYPE_BITMAPSCAN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_SAMPLESCAN" +)] +pub const ScanOptions_SO_TYPE_SAMPLESCAN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_TIDSCAN" +)] +pub const ScanOptions_SO_TYPE_TIDSCAN: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_TIDRANGESCAN" +)] +pub const ScanOptions_SO_TYPE_TIDRANGESCAN: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_ANALYZE" +)] +pub const ScanOptions_SO_TYPE_ANALYZE: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_ALLOW_STRAT" +)] +pub const ScanOptions_SO_ALLOW_STRAT: u32 = 64; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ScanOptions::SO_ALLOW_SYNC")] +pub const ScanOptions_SO_ALLOW_SYNC: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_ALLOW_PAGEMODE" +)] +pub const ScanOptions_SO_ALLOW_PAGEMODE: u32 = 256; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TEMP_SNAPSHOT" +)] +pub const ScanOptions_SO_TEMP_SNAPSHOT: u32 = 512; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_NEED_TUPLES" +)] +pub const ScanOptions_SO_NEED_TUPLES: u32 = 1024; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionBackupState::SESSION_BACKUP_NONE" +)] +pub const SessionBackupState_SESSION_BACKUP_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionBackupState::SESSION_BACKUP_RUNNING" +)] +pub const SessionBackupState_SESSION_BACKUP_RUNNING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_NOT_YET" +)] +pub const SessionEndType_DISCONNECT_NOT_YET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_NORMAL" +)] +pub const SessionEndType_DISCONNECT_NORMAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_CLIENT_EOF" +)] +pub const SessionEndType_DISCONNECT_CLIENT_EOF: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_FATAL" +)] +pub const SessionEndType_DISCONNECT_FATAL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_KILLED" +)] +pub const SessionEndType_DISCONNECT_KILLED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_ValuePerCall" +)] +pub const SetFunctionReturnMode_SFRM_ValuePerCall: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_Materialize" +)] +pub const SetFunctionReturnMode_SFRM_Materialize: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_Materialize_Random" +)] +pub const SetFunctionReturnMode_SFRM_Materialize_Random: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_Materialize_Preferred" +)] +pub const SetFunctionReturnMode_SFRM_Materialize_Preferred: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpCmd::SETOPCMD_INTERSECT" +)] +pub const SetOpCmd_SETOPCMD_INTERSECT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpCmd::SETOPCMD_INTERSECT_ALL" +)] +pub const SetOpCmd_SETOPCMD_INTERSECT_ALL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOpCmd::SETOPCMD_EXCEPT")] +pub const SetOpCmd_SETOPCMD_EXCEPT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpCmd::SETOPCMD_EXCEPT_ALL" +)] +pub const SetOpCmd_SETOPCMD_EXCEPT_ALL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpStrategy::SETOP_SORTED" +)] +pub const SetOpStrategy_SETOP_SORTED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpStrategy::SETOP_HASHED" +)] +pub const SetOpStrategy_SETOP_HASHED: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOperation::SETOP_NONE")] +pub const SetOperation_SETOP_NONE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOperation::SETOP_UNION")] +pub const SetOperation_SETOP_UNION: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOperation::SETOP_INTERSECT" +)] +pub const SetOperation_SETOP_INTERSECT: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOperation::SETOP_EXCEPT")] +pub const SetOperation_SETOP_EXCEPT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetQuantifier::SET_QUANTIFIER_DEFAULT" +)] +pub const SetQuantifier_SET_QUANTIFIER_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetQuantifier::SET_QUANTIFIER_ALL" +)] +pub const SetQuantifier_SET_QUANTIFIER_ALL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetQuantifier::SET_QUANTIFIER_DISTINCT" +)] +pub const SetQuantifier_SET_QUANTIFIER_DISTINCT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedBitmapState::BM_INITIAL" +)] +pub const SharedBitmapState_BM_INITIAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedBitmapState::BM_INPROGRESS" +)] +pub const SharedBitmapState_BM_INPROGRESS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedBitmapState::BM_FINISHED" +)] +pub const SharedBitmapState_BM_FINISHED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_OWNER" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_OWNER: u32 = 111; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_ACL" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_ACL: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_INITACL" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_INITACL: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_POLICY" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_POLICY: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_TABLESPACE" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_TABLESPACE: u32 = 116; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_INVALID" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_INVALID: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_MVCC" +)] +pub const SnapshotType_SNAPSHOT_MVCC: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_SELF" +)] +pub const SnapshotType_SNAPSHOT_SELF: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SnapshotType::SNAPSHOT_ANY")] +pub const SnapshotType_SNAPSHOT_ANY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_TOAST" +)] +pub const SnapshotType_SNAPSHOT_TOAST: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_DIRTY" +)] +pub const SnapshotType_SNAPSHOT_DIRTY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_HISTORIC_MVCC" +)] +pub const SnapshotType_SNAPSHOT_HISTORIC_MVCC: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_NON_VACUUMABLE" +)] +pub const SnapshotType_SNAPSHOT_NON_VACUUMABLE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_DEFAULT")] +pub const SortByDir_SORTBY_DEFAULT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_ASC")] +pub const SortByDir_SORTBY_ASC: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_DESC")] +pub const SortByDir_SORTBY_DESC: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_USING")] +pub const SortByDir_SORTBY_USING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SortByNulls::SORTBY_NULLS_DEFAULT" +)] +pub const SortByNulls_SORTBY_NULLS_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SortByNulls::SORTBY_NULLS_FIRST" +)] +pub const SortByNulls_SORTBY_NULLS_FIRST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SortByNulls::SORTBY_NULLS_LAST" +)] +pub const SortByNulls_SORTBY_NULLS_LAST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::StdRdOptIndexCleanup::STDRD_OPTION_VACUUM_INDEX_CLEANUP_AUTO" +)] +pub const StdRdOptIndexCleanup_STDRD_OPTION_VACUUM_INDEX_CLEANUP_AUTO: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::StdRdOptIndexCleanup::STDRD_OPTION_VACUUM_INDEX_CLEANUP_OFF" +)] +pub const StdRdOptIndexCleanup_STDRD_OPTION_VACUUM_INDEX_CLEANUP_OFF: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::StdRdOptIndexCleanup::STDRD_OPTION_VACUUM_INDEX_CLEANUP_ON" +)] +pub const StdRdOptIndexCleanup_STDRD_OPTION_VACUUM_INDEX_CLEANUP_ON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubLinkType::EXISTS_SUBLINK" +)] +pub const SubLinkType_EXISTS_SUBLINK: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::ALL_SUBLINK")] +pub const SubLinkType_ALL_SUBLINK: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::ANY_SUBLINK")] +pub const SubLinkType_ANY_SUBLINK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubLinkType::ROWCOMPARE_SUBLINK" +)] +pub const SubLinkType_ROWCOMPARE_SUBLINK: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::EXPR_SUBLINK")] +pub const SubLinkType_EXPR_SUBLINK: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubLinkType::MULTIEXPR_SUBLINK" +)] +pub const SubLinkType_MULTIEXPR_SUBLINK: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::ARRAY_SUBLINK")] +pub const SubLinkType_ARRAY_SUBLINK: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::CTE_SUBLINK")] +pub const SubLinkType_CTE_SUBLINK: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_START_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_START_SUB: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_COMMIT_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_COMMIT_SUB: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_ABORT_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_ABORT_SUB: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_PRE_COMMIT_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_PRE_COMMIT_SUB: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubqueryScanStatus::SUBQUERY_SCAN_UNKNOWN" +)] +pub const SubqueryScanStatus_SUBQUERY_SCAN_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubqueryScanStatus::SUBQUERY_SCAN_TRIVIAL" +)] +pub const SubqueryScanStatus_SUBQUERY_SCAN_TRIVIAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubqueryScanStatus::SUBQUERY_SCAN_NONTRIVIAL" +)] +pub const SubqueryScanStatus_SUBQUERY_SCAN_NONTRIVIAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_OFF" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_LOCAL_FLUSH" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_LOCAL_FLUSH: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_REMOTE_WRITE" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_REMOTE_WRITE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_REMOTE_FLUSH" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_REMOTE_FLUSH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_REMOTE_APPLY" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_REMOTE_APPLY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_MD" +)] +pub const SyncRequestHandler_SYNC_HANDLER_MD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_CLOG" +)] +pub const SyncRequestHandler_SYNC_HANDLER_CLOG: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_COMMIT_TS" +)] +pub const SyncRequestHandler_SYNC_HANDLER_COMMIT_TS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_MULTIXACT_OFFSET" +)] +pub const SyncRequestHandler_SYNC_HANDLER_MULTIXACT_OFFSET: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_MULTIXACT_MEMBER" +)] +pub const SyncRequestHandler_SYNC_HANDLER_MULTIXACT_MEMBER: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_NONE" +)] +pub const SyncRequestHandler_SYNC_HANDLER_NONE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_REQUEST" +)] +pub const SyncRequestType_SYNC_REQUEST: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_UNLINK_REQUEST" +)] +pub const SyncRequestType_SYNC_UNLINK_REQUEST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_FORGET_REQUEST" +)] +pub const SyncRequestType_SYNC_FORGET_REQUEST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_FILTER_REQUEST" +)] +pub const SyncRequestType_SYNC_FILTER_REQUEST: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SysCacheIdentifier::AMNAME")] +pub const SysCacheIdentifier_AMNAME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AMOPOPID" +)] +pub const SysCacheIdentifier_AMOPOPID: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AMOPSTRATEGY" +)] +pub const SysCacheIdentifier_AMOPSTRATEGY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AMPROCNUM" +)] +pub const SysCacheIdentifier_AMPROCNUM: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::ATTNAME" +)] +pub const SysCacheIdentifier_ATTNAME: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SysCacheIdentifier::ATTNUM")] +pub const SysCacheIdentifier_ATTNUM: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AUTHMEMMEMROLE" +)] +pub const SysCacheIdentifier_AUTHMEMMEMROLE: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AUTHMEMROLEMEM" +)] +pub const SysCacheIdentifier_AUTHMEMROLEMEM: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AUTHNAME" +)] +pub const SysCacheIdentifier_AUTHNAME: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CASTSOURCETARGET" +)] +pub const SysCacheIdentifier_CASTSOURCETARGET: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CLAAMNAMENSP" +)] +pub const SysCacheIdentifier_CLAAMNAMENSP: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::COLLNAMEENCNSP" +)] +pub const SysCacheIdentifier_COLLNAMEENCNSP: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CONDEFAULT" +)] +pub const SysCacheIdentifier_CONDEFAULT: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CONNAMENSP" +)] +pub const SysCacheIdentifier_CONNAMENSP: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::DEFACLROLENSPOBJ" +)] +pub const SysCacheIdentifier_DEFACLROLENSPOBJ: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::EVENTTRIGGERNAME" +)] +pub const SysCacheIdentifier_EVENTTRIGGERNAME: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::FOREIGNDATAWRAPPERNAME" +)] +pub const SysCacheIdentifier_FOREIGNDATAWRAPPERNAME: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::FOREIGNSERVERNAME" +)] +pub const SysCacheIdentifier_FOREIGNSERVERNAME: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::FOREIGNTABLEREL" +)] +pub const SysCacheIdentifier_FOREIGNTABLEREL: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::INDEXRELID" +)] +pub const SysCacheIdentifier_INDEXRELID: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::LANGNAME" +)] +pub const SysCacheIdentifier_LANGNAME: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::NAMESPACENAME" +)] +pub const SysCacheIdentifier_NAMESPACENAME: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::OPERNAMENSP" +)] +pub const SysCacheIdentifier_OPERNAMENSP: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::OPFAMILYAMNAMENSP" +)] +pub const SysCacheIdentifier_OPFAMILYAMNAMENSP: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PARAMETERACLNAME" +)] +pub const SysCacheIdentifier_PARAMETERACLNAME: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PARTRELID" +)] +pub const SysCacheIdentifier_PARTRELID: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PROCNAMEARGSNSP" +)] +pub const SysCacheIdentifier_PROCNAMEARGSNSP: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONNAME" +)] +pub const SysCacheIdentifier_PUBLICATIONNAME: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONNAMESPACE" +)] +pub const SysCacheIdentifier_PUBLICATIONNAMESPACE: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONNAMESPACEMAP" +)] +pub const SysCacheIdentifier_PUBLICATIONNAMESPACEMAP: u32 = 48; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONREL" +)] +pub const SysCacheIdentifier_PUBLICATIONREL: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONRELMAP" +)] +pub const SysCacheIdentifier_PUBLICATIONRELMAP: u32 = 51; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RANGEMULTIRANGE" +)] +pub const SysCacheIdentifier_RANGEMULTIRANGE: u32 = 52; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RANGETYPE" +)] +pub const SysCacheIdentifier_RANGETYPE: u32 = 53; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RELNAMENSP" +)] +pub const SysCacheIdentifier_RELNAMENSP: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::REPLORIGIDENT" +)] +pub const SysCacheIdentifier_REPLORIGIDENT: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::REPLORIGNAME" +)] +pub const SysCacheIdentifier_REPLORIGNAME: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RULERELNAME" +)] +pub const SysCacheIdentifier_RULERELNAME: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::SEQRELID" +)] +pub const SysCacheIdentifier_SEQRELID: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::STATEXTNAMENSP" +)] +pub const SysCacheIdentifier_STATEXTNAMENSP: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::STATRELATTINH" +)] +pub const SysCacheIdentifier_STATRELATTINH: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::SUBSCRIPTIONNAME" +)] +pub const SysCacheIdentifier_SUBSCRIPTIONNAME: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::SUBSCRIPTIONRELMAP" +)] +pub const SysCacheIdentifier_SUBSCRIPTIONRELMAP: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TRFTYPELANG" +)] +pub const SysCacheIdentifier_TRFTYPELANG: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSCONFIGMAP" +)] +pub const SysCacheIdentifier_TSCONFIGMAP: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSCONFIGNAMENSP" +)] +pub const SysCacheIdentifier_TSCONFIGNAMENSP: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSDICTNAMENSP" +)] +pub const SysCacheIdentifier_TSDICTNAMENSP: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSPARSERNAMENSP" +)] +pub const SysCacheIdentifier_TSPARSERNAMENSP: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSTEMPLATENAMENSP" +)] +pub const SysCacheIdentifier_TSTEMPLATENAMENSP: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TYPENAMENSP" +)] +pub const SysCacheIdentifier_TYPENAMENSP: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::USERMAPPINGUSERSERVER" +)] +pub const SysCacheIdentifier_USERMAPPINGUSERSERVER: u32 = 82; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Ok")] +pub const TM_Result_TM_Ok: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Invisible")] +pub const TM_Result_TM_Invisible: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_SelfModified")] +pub const TM_Result_TM_SelfModified: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Updated")] +pub const TM_Result_TM_Updated: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Deleted")] +pub const TM_Result_TM_Deleted: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TM_Result::TM_BeingModified" +)] +pub const TM_Result_TM_BeingModified: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_WouldBlock")] +pub const TM_Result_TM_WouldBlock: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TSTernaryValue::TS_NO")] +pub const TSTernaryValue_TS_NO: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TSTernaryValue::TS_YES")] +pub const TSTernaryValue_TS_YES: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TSTernaryValue::TS_MAYBE")] +pub const TSTernaryValue_TS_MAYBE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TU_UpdateIndexes::TU_None")] +pub const TU_UpdateIndexes_TU_None: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TU_UpdateIndexes::TU_All")] +pub const TU_UpdateIndexes_TU_All: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TU_UpdateIndexes::TU_Summarizing" +)] +pub const TU_UpdateIndexes_TU_Summarizing: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableFuncType::TFT_XMLTABLE" +)] +pub const TableFuncType_TFT_XMLTABLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableFuncType::TFT_JSON_TABLE" +)] +pub const TableFuncType_TFT_JSON_TABLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_COMMENTS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_COMMENTS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_COMPRESSION" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_COMPRESSION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_CONSTRAINTS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_CONSTRAINTS: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_DEFAULTS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_DEFAULTS: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_GENERATED" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_GENERATED: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_IDENTITY" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_IDENTITY: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_INDEXES" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_INDEXES: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_STATISTICS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_STATISTICS: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_STORAGE" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_STORAGE: u32 = 256; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_ALL" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_ALL: u32 = 2147483647; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TempNamespaceStatus::TEMP_NAMESPACE_NOT_TEMP" +)] +pub const TempNamespaceStatus_TEMP_NAMESPACE_NOT_TEMP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TempNamespaceStatus::TEMP_NAMESPACE_IDLE" +)] +pub const TempNamespaceStatus_TEMP_NAMESPACE_IDLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TempNamespaceStatus::TEMP_NAMESPACE_IN_USE" +)] +pub const TempNamespaceStatus_TEMP_NAMESPACE_IN_USE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TrackFunctionsLevel::TRACK_FUNC_OFF" +)] +pub const TrackFunctionsLevel_TRACK_FUNC_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TrackFunctionsLevel::TRACK_FUNC_PL" +)] +pub const TrackFunctionsLevel_TRACK_FUNC_PL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TrackFunctionsLevel::TRACK_FUNC_ALL" +)] +pub const TrackFunctionsLevel_TRACK_FUNC_ALL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_BEGIN" +)] +pub const TransactionStmtKind_TRANS_STMT_BEGIN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_START" +)] +pub const TransactionStmtKind_TRANS_STMT_START: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_COMMIT" +)] +pub const TransactionStmtKind_TRANS_STMT_COMMIT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_ROLLBACK" +)] +pub const TransactionStmtKind_TRANS_STMT_ROLLBACK: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_SAVEPOINT" +)] +pub const TransactionStmtKind_TRANS_STMT_SAVEPOINT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_RELEASE" +)] +pub const TransactionStmtKind_TRANS_STMT_RELEASE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_ROLLBACK_TO" +)] +pub const TransactionStmtKind_TRANS_STMT_ROLLBACK_TO: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_PREPARE" +)] +pub const TransactionStmtKind_TRANS_STMT_PREPARE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_COMMIT_PREPARED" +)] +pub const TransactionStmtKind_TRANS_STMT_COMMIT_PREPARED: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_ROLLBACK_PREPARED" +)] +pub const TransactionStmtKind_TRANS_STMT_ROLLBACK_PREPARED: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_STILL_IN_PROGRESS" +)] +pub const TuplesortMethod_SORT_TYPE_STILL_IN_PROGRESS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_TOP_N_HEAPSORT" +)] +pub const TuplesortMethod_SORT_TYPE_TOP_N_HEAPSORT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_QUICKSORT" +)] +pub const TuplesortMethod_SORT_TYPE_QUICKSORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_EXTERNAL_SORT" +)] +pub const TuplesortMethod_SORT_TYPE_EXTERNAL_SORT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_EXTERNAL_MERGE" +)] +pub const TuplesortMethod_SORT_TYPE_EXTERNAL_MERGE: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortSpaceType::SORT_SPACE_TYPE_DISK" +)] +pub const TuplesortSpaceType_SORT_SPACE_TYPE_DISK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortSpaceType::SORT_SPACE_TYPE_MEMORY" +)] +pub const TuplesortSpaceType_SORT_SPACE_TYPE_MEMORY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_SCALAR" +)] +pub const TypeFuncClass_TYPEFUNC_SCALAR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_COMPOSITE" +)] +pub const TypeFuncClass_TYPEFUNC_COMPOSITE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_COMPOSITE_DOMAIN" +)] +pub const TypeFuncClass_TYPEFUNC_COMPOSITE_DOMAIN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_RECORD" +)] +pub const TypeFuncClass_TYPEFUNC_RECORD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_OTHER" +)] +pub const TypeFuncClass_TYPEFUNC_OTHER: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UniquePathMethod::UNIQUE_PATH_NOOP" +)] +pub const UniquePathMethod_UNIQUE_PATH_NOOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UniquePathMethod::UNIQUE_PATH_HASH" +)] +pub const UniquePathMethod_UNIQUE_PATH_HASH: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UniquePathMethod::UNIQUE_PATH_SORT" +)] +pub const UniquePathMethod_UNIQUE_PATH_SORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_SETOP" +)] +pub const UpperRelationKind_UPPERREL_SETOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_PARTIAL_GROUP_AGG" +)] +pub const UpperRelationKind_UPPERREL_PARTIAL_GROUP_AGG: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_GROUP_AGG" +)] +pub const UpperRelationKind_UPPERREL_GROUP_AGG: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_WINDOW" +)] +pub const UpperRelationKind_UPPERREL_WINDOW: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_PARTIAL_DISTINCT" +)] +pub const UpperRelationKind_UPPERREL_PARTIAL_DISTINCT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_DISTINCT" +)] +pub const UpperRelationKind_UPPERREL_DISTINCT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_ORDERED" +)] +pub const UpperRelationKind_UPPERREL_ORDERED: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_FINAL" +)] +pub const UpperRelationKind_UPPERREL_FINAL: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_UNSPECIFIED" +)] +pub const VacOptValue_VACOPTVALUE_UNSPECIFIED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_AUTO" +)] +pub const VacOptValue_VACOPTVALUE_AUTO: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_DISABLED" +)] +pub const VacOptValue_VACOPTVALUE_DISABLED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_ENABLED" +)] +pub const VacOptValue_VACOPTVALUE_ENABLED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_VALUE" +)] +pub const VariableSetKind_VAR_SET_VALUE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_DEFAULT" +)] +pub const VariableSetKind_VAR_SET_DEFAULT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_CURRENT" +)] +pub const VariableSetKind_VAR_SET_CURRENT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_MULTI" +)] +pub const VariableSetKind_VAR_SET_MULTI: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::VariableSetKind::VAR_RESET")] +pub const VariableSetKind_VAR_RESET: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_RESET_ALL" +)] +pub const VariableSetKind_VAR_RESET_ALL: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewCheckOption::NO_CHECK_OPTION" +)] +pub const ViewCheckOption_NO_CHECK_OPTION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewCheckOption::LOCAL_CHECK_OPTION" +)] +pub const ViewCheckOption_LOCAL_CHECK_OPTION: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewCheckOption::CASCADED_CHECK_OPTION" +)] +pub const ViewCheckOption_CASCADED_CHECK_OPTION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewOptCheckOption::VIEW_OPTION_CHECK_OPTION_NOT_SET" +)] +pub const ViewOptCheckOption_VIEW_OPTION_CHECK_OPTION_NOT_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewOptCheckOption::VIEW_OPTION_CHECK_OPTION_LOCAL" +)] +pub const ViewOptCheckOption_VIEW_OPTION_CHECK_OPTION_LOCAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewOptCheckOption::VIEW_OPTION_CHECK_OPTION_CASCADED" +)] +pub const ViewOptCheckOption_VIEW_OPTION_CHECK_OPTION_CASCADED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VolatileFunctionStatus::VOLATILITY_UNKNOWN" +)] +pub const VolatileFunctionStatus_VOLATILITY_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VolatileFunctionStatus::VOLATILITY_VOLATILE" +)] +pub const VolatileFunctionStatus_VOLATILITY_VOLATILE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VolatileFunctionStatus::VOLATILITY_NOVOLATILE" +)] +pub const VolatileFunctionStatus_VOLATILITY_NOVOLATILE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_INVALID_LSN" +)] +pub const WALAvailability_WALAVAIL_INVALID_LSN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_RESERVED" +)] +pub const WALAvailability_WALAVAIL_RESERVED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_EXTENDED" +)] +pub const WALAvailability_WALAVAIL_EXTENDED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_UNRESERVED" +)] +pub const WALAvailability_WALAVAIL_UNRESERVED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_REMOVED" +)] +pub const WALAvailability_WALAVAIL_REMOVED: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::WCOKind::WCO_VIEW_CHECK")] +pub const WCOKind_WCO_VIEW_CHECK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_INSERT_CHECK" +)] +pub const WCOKind_WCO_RLS_INSERT_CHECK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_UPDATE_CHECK" +)] +pub const WCOKind_WCO_RLS_UPDATE_CHECK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_CONFLICT_CHECK" +)] +pub const WCOKind_WCO_RLS_CONFLICT_CHECK: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_MERGE_UPDATE_CHECK" +)] +pub const WCOKind_WCO_RLS_MERGE_UPDATE_CHECK: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_MERGE_DELETE_CHECK" +)] +pub const WCOKind_WCO_RLS_MERGE_DELETE_CHECK: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_ARCHIVER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_ARCHIVER_MAIN: u32 = 83886080; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_AUTOVACUUM_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_AUTOVACUUM_MAIN: u32 = 83886081; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_BGWRITER_HIBERNATE" +)] +pub const WaitEventActivity_WAIT_EVENT_BGWRITER_HIBERNATE: u32 = 83886082; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_BGWRITER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_BGWRITER_MAIN: u32 = 83886083; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_CHECKPOINTER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_CHECKPOINTER_MAIN: u32 = 83886084; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_LOGICAL_APPLY_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_LOGICAL_APPLY_MAIN: u32 = 83886085; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_LOGICAL_LAUNCHER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_LOGICAL_LAUNCHER_MAIN: u32 = 83886086; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN: u32 = 83886087; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_RECOVERY_WAL_STREAM" +)] +pub const WaitEventActivity_WAIT_EVENT_RECOVERY_WAL_STREAM: u32 = 83886088; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN: u32 = 83886089; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN" +)] +pub const WaitEventActivity_WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN: u32 = 83886090; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_SYSLOGGER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_SYSLOGGER_MAIN: u32 = 83886091; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_RECEIVER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_RECEIVER_MAIN: u32 = 83886092; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_SENDER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_SENDER_MAIN: u32 = 83886093; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_SUMMARIZER_WAL" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_SUMMARIZER_WAL: u32 = 83886094; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_WRITER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_WRITER_MAIN: u32 = 83886095; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventBufferPin::WAIT_EVENT_BUFFER_PIN" +)] +pub const WaitEventBufferPin_WAIT_EVENT_BUFFER_PIN: u32 = 67108864; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_CLIENT_READ" +)] +pub const WaitEventClient_WAIT_EVENT_CLIENT_READ: u32 = 100663296; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_CLIENT_WRITE" +)] +pub const WaitEventClient_WAIT_EVENT_CLIENT_WRITE: u32 = 100663297; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_GSS_OPEN_SERVER" +)] +pub const WaitEventClient_WAIT_EVENT_GSS_OPEN_SERVER: u32 = 100663298; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_LIBPQWALRECEIVER_CONNECT" +)] +pub const WaitEventClient_WAIT_EVENT_LIBPQWALRECEIVER_CONNECT: u32 = 100663299; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE" +)] +pub const WaitEventClient_WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE: u32 = 100663300; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_SSL_OPEN_SERVER" +)] +pub const WaitEventClient_WAIT_EVENT_SSL_OPEN_SERVER: u32 = 100663301; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION" +)] +pub const WaitEventClient_WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION: u32 = 100663302; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL" +)] +pub const WaitEventClient_WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL: u32 = 100663303; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_WAL_SENDER_WRITE_DATA" +)] +pub const WaitEventClient_WAIT_EVENT_WAL_SENDER_WRITE_DATA: u32 = 100663304; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BASEBACKUP_READ" +)] +pub const WaitEventIO_WAIT_EVENT_BASEBACKUP_READ: u32 = 167772160; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BASEBACKUP_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_BASEBACKUP_SYNC: u32 = 167772161; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BASEBACKUP_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_BASEBACKUP_WRITE: u32 = 167772162; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BUFFILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_BUFFILE_READ: u32 = 167772163; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BUFFILE_TRUNCATE" +)] +pub const WaitEventIO_WAIT_EVENT_BUFFILE_TRUNCATE: u32 = 167772164; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BUFFILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_BUFFILE_WRITE: u32 = 167772165; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_READ: u32 = 167772166; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_SYNC: u32 = 167772167; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE: u32 = 167772168; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_WRITE: u32 = 167772169; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE: u32 = 167772170; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_COPY_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_COPY_FILE_READ: u32 = 167772171; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_COPY_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_COPY_FILE_WRITE: u32 = 167772172; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_EXTEND" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_EXTEND: u32 = 167772173; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_FLUSH" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_FLUSH: u32 = 167772174; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC: u32 = 167772175; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_PREFETCH" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_PREFETCH: u32 = 167772176; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_READ: u32 = 167772177; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_SYNC: u32 = 167772178; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_TRUNCATE" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_TRUNCATE: u32 = 167772179; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_WRITE: u32 = 167772180; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DSM_ALLOCATE" +)] +pub const WaitEventIO_WAIT_EVENT_DSM_ALLOCATE: u32 = 167772181; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DSM_FILL_ZERO_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_DSM_FILL_ZERO_WRITE: u32 = 167772182; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ: u32 = 167772183; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC: u32 = 167772184; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE: u32 = 167772185; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_CREATE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_CREATE_READ: u32 = 167772186; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_CREATE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_CREATE_SYNC: u32 = 167772187; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_CREATE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_CREATE_WRITE: u32 = 167772188; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ: u32 = 167772189; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC: u32 = 167772190; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC: u32 = 167772191; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE: u32 = 167772192; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_SYNC: u32 = 167772193; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE: u32 = 167772194; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_WRITE: u32 = 167772195; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_RELATION_MAP_READ" +)] +pub const WaitEventIO_WAIT_EVENT_RELATION_MAP_READ: u32 = 167772196; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_RELATION_MAP_REPLACE" +)] +pub const WaitEventIO_WAIT_EVENT_RELATION_MAP_REPLACE: u32 = 167772197; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_RELATION_MAP_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_RELATION_MAP_WRITE: u32 = 167772198; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REORDER_BUFFER_READ" +)] +pub const WaitEventIO_WAIT_EVENT_REORDER_BUFFER_READ: u32 = 167772199; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REORDER_BUFFER_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_REORDER_BUFFER_WRITE: u32 = 167772200; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ" +)] +pub const WaitEventIO_WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ: u32 = 167772201; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_READ" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_READ: u32 = 167772202; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC: u32 = 167772203; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_SYNC: u32 = 167772204; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_WRITE: u32 = 167772205; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_FLUSH_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_FLUSH_SYNC: u32 = 167772206; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_READ" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_READ: u32 = 167772207; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_SYNC: u32 = 167772208; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_WRITE: u32 = 167772209; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SNAPBUILD_READ" +)] +pub const WaitEventIO_WAIT_EVENT_SNAPBUILD_READ: u32 = 167772210; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SNAPBUILD_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_SNAPBUILD_SYNC: u32 = 167772211; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SNAPBUILD_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_SNAPBUILD_WRITE: u32 = 167772212; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC: u32 = 167772213; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE: u32 = 167772214; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_READ: u32 = 167772215; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_SYNC: u32 = 167772216; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_WRITE: u32 = 167772217; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TWOPHASE_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_TWOPHASE_FILE_READ: u32 = 167772218; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TWOPHASE_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_TWOPHASE_FILE_SYNC: u32 = 167772219; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TWOPHASE_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_TWOPHASE_FILE_WRITE: u32 = 167772220; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_VERSION_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_VERSION_FILE_SYNC: u32 = 167772221; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_VERSION_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_VERSION_FILE_WRITE: u32 = 167772222; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ: u32 = 167772223; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_BOOTSTRAP_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_BOOTSTRAP_SYNC: u32 = 167772224; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_BOOTSTRAP_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_BOOTSTRAP_WRITE: u32 = 167772225; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_COPY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_COPY_READ: u32 = 167772226; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_COPY_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_COPY_SYNC: u32 = 167772227; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_COPY_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_COPY_WRITE: u32 = 167772228; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_INIT_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_INIT_SYNC: u32 = 167772229; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_INIT_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_INIT_WRITE: u32 = 167772230; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_READ: u32 = 167772231; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SUMMARY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SUMMARY_READ: u32 = 167772232; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SUMMARY_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SUMMARY_WRITE: u32 = 167772233; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SYNC: u32 = 167772234; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN: u32 = 167772235; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_WRITE: u32 = 167772236; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_APPEND_READY" +)] +pub const WaitEventIPC_WAIT_EVENT_APPEND_READY: u32 = 134217728; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND: u32 = 134217729; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_ARCHIVE_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_ARCHIVE_COMMAND: u32 = 134217730; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BACKEND_TERMINATION" +)] +pub const WaitEventIPC_WAIT_EVENT_BACKEND_TERMINATION: u32 = 134217731; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE" +)] +pub const WaitEventIPC_WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE: u32 = 134217732; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BGWORKER_SHUTDOWN" +)] +pub const WaitEventIPC_WAIT_EVENT_BGWORKER_SHUTDOWN: u32 = 134217733; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BGWORKER_STARTUP" +)] +pub const WaitEventIPC_WAIT_EVENT_BGWORKER_STARTUP: u32 = 134217734; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BTREE_PAGE" +)] +pub const WaitEventIPC_WAIT_EVENT_BTREE_PAGE: u32 = 134217735; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BUFFER_IO" +)] +pub const WaitEventIPC_WAIT_EVENT_BUFFER_IO: u32 = 134217736; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE: u32 = 134217737; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_DELAY_START" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_DELAY_START: u32 = 134217738; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_DONE" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_DONE: u32 = 134217739; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_START" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_START: u32 = 134217740; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_EXECUTE_GATHER" +)] +pub const WaitEventIPC_WAIT_EVENT_EXECUTE_GATHER: u32 = 134217741; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BATCH_ALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BATCH_ALLOCATE: u32 = 134217742; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BATCH_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BATCH_ELECT: u32 = 134217743; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BATCH_LOAD" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BATCH_LOAD: u32 = 134217744; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_ALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_ALLOCATE: u32 = 134217745; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_ELECT: u32 = 134217746; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_HASH_INNER" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_HASH_INNER: u32 = 134217747; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_HASH_OUTER" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_HASH_OUTER: u32 = 134217748; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_DECIDE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: u32 = 134217749; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_ELECT: u32 = 134217750; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_FINISH" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_FINISH: u32 = 134217751; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE: u32 = 134217752; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: u32 = 134217753; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BUCKETS_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: u32 = 134217754; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE: u32 = 134217755; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: u32 = 134217756; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_APPLY_SEND_DATA" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_APPLY_SEND_DATA: u32 = 134217757; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE: u32 = 134217758; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_SYNC_DATA" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_SYNC_DATA: u32 = 134217759; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE: u32 = 134217760; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_INTERNAL" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_INTERNAL: u32 = 134217761; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE: u32 = 134217762; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_RECEIVE" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_RECEIVE: u32 = 134217763; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_SEND" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_SEND: u32 = 134217764; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MULTIXACT_CREATION" +)] +pub const WaitEventIPC_WAIT_EVENT_MULTIXACT_CREATION: u32 = 134217765; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PARALLEL_BITMAP_SCAN" +)] +pub const WaitEventIPC_WAIT_EVENT_PARALLEL_BITMAP_SCAN: u32 = 134217766; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN" +)] +pub const WaitEventIPC_WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN: u32 = 134217767; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PARALLEL_FINISH" +)] +pub const WaitEventIPC_WAIT_EVENT_PARALLEL_FINISH: u32 = 134217768; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PROCARRAY_GROUP_UPDATE" +)] +pub const WaitEventIPC_WAIT_EVENT_PROCARRAY_GROUP_UPDATE: u32 = 134217769; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PROC_SIGNAL_BARRIER" +)] +pub const WaitEventIPC_WAIT_EVENT_PROC_SIGNAL_BARRIER: u32 = 134217770; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PROMOTE" +)] +pub const WaitEventIPC_WAIT_EVENT_PROMOTE: u32 = 134217771; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT: u32 = 134217772; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE: u32 = 134217773; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_END_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_END_COMMAND: u32 = 134217774; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_PAUSE" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_PAUSE: u32 = 134217775; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_REPLICATION_ORIGIN_DROP" +)] +pub const WaitEventIPC_WAIT_EVENT_REPLICATION_ORIGIN_DROP: u32 = 134217776; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_REPLICATION_SLOT_DROP" +)] +pub const WaitEventIPC_WAIT_EVENT_REPLICATION_SLOT_DROP: u32 = 134217777; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RESTORE_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_RESTORE_COMMAND: u32 = 134217778; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_SAFE_SNAPSHOT" +)] +pub const WaitEventIPC_WAIT_EVENT_SAFE_SNAPSHOT: u32 = 134217779; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_SYNC_REP" +)] +pub const WaitEventIPC_WAIT_EVENT_SYNC_REP: u32 = 134217780; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_WAL_RECEIVER_EXIT" +)] +pub const WaitEventIPC_WAIT_EVENT_WAL_RECEIVER_EXIT: u32 = 134217781; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_WAL_RECEIVER_WAIT_START" +)] +pub const WaitEventIPC_WAIT_EVENT_WAL_RECEIVER_WAIT_START: u32 = 134217782; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_WAL_SUMMARY_READY" +)] +pub const WaitEventIPC_WAIT_EVENT_WAL_SUMMARY_READY: u32 = 134217783; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_XACT_GROUP_UPDATE" +)] +pub const WaitEventIPC_WAIT_EVENT_XACT_GROUP_UPDATE: u32 = 134217784; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_BASE_BACKUP_THROTTLE" +)] +pub const WaitEventTimeout_WAIT_EVENT_BASE_BACKUP_THROTTLE: u32 = 150994944; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_CHECKPOINT_WRITE_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_CHECKPOINT_WRITE_DELAY: u32 = 150994945; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_PG_SLEEP" +)] +pub const WaitEventTimeout_WAIT_EVENT_PG_SLEEP: u32 = 150994946; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_RECOVERY_APPLY_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_RECOVERY_APPLY_DELAY: u32 = 150994947; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL" +)] +pub const WaitEventTimeout_WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL: u32 = 150994948; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_REGISTER_SYNC_REQUEST" +)] +pub const WaitEventTimeout_WAIT_EVENT_REGISTER_SYNC_REQUEST: u32 = 150994949; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_SPIN_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_SPIN_DELAY: u32 = 150994950; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_VACUUM_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_VACUUM_DELAY: u32 = 150994951; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_VACUUM_TRUNCATE" +)] +pub const WaitEventTimeout_WAIT_EVENT_VACUUM_TRUNCATE: u32 = 150994952; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_WAL_SUMMARIZER_ERROR" +)] +pub const WaitEventTimeout_WAIT_EVENT_WAL_SUMMARIZER_ERROR: u32 = 150994953; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_NONE" +)] +pub const WalCompression_WAL_COMPRESSION_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_PGLZ" +)] +pub const WalCompression_WAL_COMPRESSION_PGLZ: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_LZ4" +)] +pub const WalCompression_WAL_COMPRESSION_LZ4: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_ZSTD" +)] +pub const WalCompression_WAL_COMPRESSION_ZSTD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalLevel::WAL_LEVEL_MINIMAL" +)] +pub const WalLevel_WAL_LEVEL_MINIMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalLevel::WAL_LEVEL_REPLICA" +)] +pub const WalLevel_WAL_LEVEL_REPLICA: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalLevel::WAL_LEVEL_LOGICAL" +)] +pub const WalLevel_WAL_LEVEL_LOGICAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_ERROR" +)] +pub const WalRcvExecStatus_WALRCV_ERROR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COMMAND" +)] +pub const WalRcvExecStatus_WALRCV_OK_COMMAND: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_TUPLES" +)] +pub const WalRcvExecStatus_WALRCV_OK_TUPLES: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COPY_IN" +)] +pub const WalRcvExecStatus_WALRCV_OK_COPY_IN: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COPY_OUT" +)] +pub const WalRcvExecStatus_WALRCV_OK_COPY_OUT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COPY_BOTH" +)] +pub const WalRcvExecStatus_WALRCV_OK_COPY_BOTH: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STOPPED" +)] +pub const WalRcvState_WALRCV_STOPPED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STARTING" +)] +pub const WalRcvState_WALRCV_STARTING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STREAMING" +)] +pub const WalRcvState_WALRCV_STREAMING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_WAITING" +)] +pub const WalRcvState_WALRCV_WAITING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_RESTARTING" +)] +pub const WalRcvState_WALRCV_RESTARTING: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STOPPING" +)] +pub const WalRcvState_WALRCV_STOPPING: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_FSYNC" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_FSYNC: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_FDATASYNC" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_FDATASYNC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_OPEN" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_OPEN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_FSYNC_WRITETHROUGH" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_FSYNC_WRITETHROUGH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_OPEN_DSYNC" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_OPEN_DSYNC: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_DONE" +)] +pub const WindowAggStatus_WINDOWAGG_DONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_RUN" +)] +pub const WindowAggStatus_WINDOWAGG_RUN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_PASSTHROUGH" +)] +pub const WindowAggStatus_WINDOWAGG_PASSTHROUGH: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_PASSTHROUGH_STRICT" +)] +pub const WindowAggStatus_WINDOWAGG_PASSTHROUGH_STRICT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_None")] +pub const XLTW_Oper_XLTW_None: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_Update")] +pub const XLTW_Oper_XLTW_Update: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_Delete")] +pub const XLTW_Oper_XLTW_Delete: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_Lock")] +pub const XLTW_Oper_XLTW_Lock: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_LockUpdated" +)] +pub const XLTW_Oper_XLTW_LockUpdated: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_InsertIndex" +)] +pub const XLTW_Oper_XLTW_InsertIndex: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_InsertIndexUnique" +)] +pub const XLTW_Oper_XLTW_InsertIndexUnique: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_FetchUpdated" +)] +pub const XLTW_Oper_XLTW_FetchUpdated: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_RecheckExclusionConstr" +)] +pub const XLTW_Oper_XLTW_RecheckExclusionConstr: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogPageReadResult::XLREAD_SUCCESS" +)] +pub const XLogPageReadResult_XLREAD_SUCCESS: i32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogPageReadResult::XLREAD_FAIL" +)] +pub const XLogPageReadResult_XLREAD_FAIL: i32 = -1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogPageReadResult::XLREAD_WOULDBLOCK" +)] +pub const XLogPageReadResult_XLREAD_WOULDBLOCK: i32 = -2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogRedoAction::BLK_NEEDS_REDO" +)] +pub const XLogRedoAction_BLK_NEEDS_REDO: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLogRedoAction::BLK_DONE")] +pub const XLogRedoAction_BLK_DONE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogRedoAction::BLK_RESTORED" +)] +pub const XLogRedoAction_BLK_RESTORED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogRedoAction::BLK_NOTFOUND" +)] +pub const XLogRedoAction_BLK_NOTFOUND: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_COMMIT" +)] +pub const XactEvent_XACT_EVENT_COMMIT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PARALLEL_COMMIT" +)] +pub const XactEvent_XACT_EVENT_PARALLEL_COMMIT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_ABORT" +)] +pub const XactEvent_XACT_EVENT_ABORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PARALLEL_ABORT" +)] +pub const XactEvent_XACT_EVENT_PARALLEL_ABORT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PREPARE" +)] +pub const XactEvent_XACT_EVENT_PREPARE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PRE_COMMIT" +)] +pub const XactEvent_XACT_EVENT_PRE_COMMIT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PARALLEL_PRE_COMMIT" +)] +pub const XactEvent_XACT_EVENT_PARALLEL_PRE_COMMIT: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PRE_PREPARE" +)] +pub const XactEvent_XACT_EVENT_PRE_PREPARE: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLCONCAT")] +pub const XmlExprOp_IS_XMLCONCAT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLELEMENT")] +pub const XmlExprOp_IS_XMLELEMENT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLFOREST")] +pub const XmlExprOp_IS_XMLFOREST: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLPARSE")] +pub const XmlExprOp_IS_XMLPARSE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLPI")] +pub const XmlExprOp_IS_XMLPI: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLROOT")] +pub const XmlExprOp_IS_XMLROOT: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLSERIALIZE")] +pub const XmlExprOp_IS_XMLSERIALIZE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_DOCUMENT")] +pub const XmlExprOp_IS_DOCUMENT: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XmlOptionType::XMLOPTION_DOCUMENT" +)] +pub const XmlOptionType_XMLOPTION_DOCUMENT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XmlOptionType::XMLOPTION_CONTENT" +)] +pub const XmlOptionType_XMLOPTION_CONTENT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__itimer_which::ITIMER_REAL" +)] +pub const __itimer_which_ITIMER_REAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__itimer_which::ITIMER_VIRTUAL" +)] +pub const __itimer_which_ITIMER_VIRTUAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__itimer_which::ITIMER_PROF" +)] +pub const __itimer_which_ITIMER_PROF: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_STREAM")] +pub const __socket_type_SOCK_STREAM: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_DGRAM")] +pub const __socket_type_SOCK_DGRAM: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_RAW")] +pub const __socket_type_SOCK_RAW: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_RDM")] +pub const __socket_type_SOCK_RDM: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__socket_type::SOCK_SEQPACKET" +)] +pub const __socket_type_SOCK_SEQPACKET: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_DCCP")] +pub const __socket_type_SOCK_DCCP: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_PACKET")] +pub const __socket_type_SOCK_PACKET: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__socket_type::SOCK_CLOEXEC" +)] +pub const __socket_type_SOCK_CLOEXEC: u32 = 524288; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__socket_type::SOCK_NONBLOCK" +)] +pub const __socket_type_SOCK_NONBLOCK: u32 = 2048; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_CREATE")] +pub const dsm_op_DSM_OP_CREATE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_ATTACH")] +pub const dsm_op_DSM_OP_ATTACH: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DETACH")] +pub const dsm_op_DSM_OP_DETACH: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] +pub const dsm_op_DSM_OP_DESTROY: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] +pub const jbvType_jbvNull: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] +pub const jbvType_jbvString: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNumeric")] +pub const jbvType_jbvNumeric: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvBool")] +pub const jbvType_jbvBool: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvArray")] +pub const jbvType_jbvArray: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvObject")] +pub const jbvType_jbvObject: u32 = 17; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvBinary")] +pub const jbvType_jbvBinary: u32 = 18; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvDatetime")] +pub const jbvType_jbvDatetime: u32 = 32; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_SQL_ASCII")] +pub const pg_enc_PG_SQL_ASCII: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_JP")] +pub const pg_enc_PG_EUC_JP: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_CN")] +pub const pg_enc_PG_EUC_CN: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_KR")] +pub const pg_enc_PG_EUC_KR: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_TW")] +pub const pg_enc_PG_EUC_TW: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_JIS_2004")] +pub const pg_enc_PG_EUC_JIS_2004: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_UTF8")] +pub const pg_enc_PG_UTF8: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_MULE_INTERNAL")] +pub const pg_enc_PG_MULE_INTERNAL: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN1")] +pub const pg_enc_PG_LATIN1: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN2")] +pub const pg_enc_PG_LATIN2: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN3")] +pub const pg_enc_PG_LATIN3: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN4")] +pub const pg_enc_PG_LATIN4: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN5")] +pub const pg_enc_PG_LATIN5: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN6")] +pub const pg_enc_PG_LATIN6: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN7")] +pub const pg_enc_PG_LATIN7: u32 = 14; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN8")] +pub const pg_enc_PG_LATIN8: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN9")] +pub const pg_enc_PG_LATIN9: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN10")] +pub const pg_enc_PG_LATIN10: u32 = 17; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1256")] +pub const pg_enc_PG_WIN1256: u32 = 18; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1258")] +pub const pg_enc_PG_WIN1258: u32 = 19; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN866")] +pub const pg_enc_PG_WIN866: u32 = 20; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN874")] +pub const pg_enc_PG_WIN874: u32 = 21; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_KOI8R")] +pub const pg_enc_PG_KOI8R: u32 = 22; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1251")] +pub const pg_enc_PG_WIN1251: u32 = 23; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1252")] +pub const pg_enc_PG_WIN1252: u32 = 24; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_5")] +pub const pg_enc_PG_ISO_8859_5: u32 = 25; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_6")] +pub const pg_enc_PG_ISO_8859_6: u32 = 26; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_7")] +pub const pg_enc_PG_ISO_8859_7: u32 = 27; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_8")] +pub const pg_enc_PG_ISO_8859_8: u32 = 28; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1250")] +pub const pg_enc_PG_WIN1250: u32 = 29; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1253")] +pub const pg_enc_PG_WIN1253: u32 = 30; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1254")] +pub const pg_enc_PG_WIN1254: u32 = 31; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1255")] +pub const pg_enc_PG_WIN1255: u32 = 32; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1257")] +pub const pg_enc_PG_WIN1257: u32 = 33; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_KOI8U")] +pub const pg_enc_PG_KOI8U: u32 = 34; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_SJIS")] +pub const pg_enc_PG_SJIS: u32 = 35; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_BIG5")] +pub const pg_enc_PG_BIG5: u32 = 36; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_GBK")] +pub const pg_enc_PG_GBK: u32 = 37; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_UHC")] +pub const pg_enc_PG_UHC: u32 = 38; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_GB18030")] +pub const pg_enc_PG_GB18030: u32 = 39; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_JOHAB")] +pub const pg_enc_PG_JOHAB: u32 = 40; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_SHIFT_JIS_2004")] +pub const pg_enc_PG_SHIFT_JIS_2004: u32 = 41; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::_PG_LAST_ENCODING_")] +pub const pg_enc__PG_LAST_ENCODING_: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_LOCAL" +)] +pub const relopt_kind_RELOPT_KIND_LOCAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_HEAP" +)] +pub const relopt_kind_RELOPT_KIND_HEAP: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_TOAST" +)] +pub const relopt_kind_RELOPT_KIND_TOAST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_BTREE" +)] +pub const relopt_kind_RELOPT_KIND_BTREE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_HASH" +)] +pub const relopt_kind_RELOPT_KIND_HASH: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_GIN" +)] +pub const relopt_kind_RELOPT_KIND_GIN: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_GIST" +)] +pub const relopt_kind_RELOPT_KIND_GIST: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_ATTRIBUTE" +)] +pub const relopt_kind_RELOPT_KIND_ATTRIBUTE: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_TABLESPACE" +)] +pub const relopt_kind_RELOPT_KIND_TABLESPACE: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_SPGIST" +)] +pub const relopt_kind_RELOPT_KIND_SPGIST: u32 = 256; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_VIEW" +)] +pub const relopt_kind_RELOPT_KIND_VIEW: u32 = 512; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_BRIN" +)] +pub const relopt_kind_RELOPT_KIND_BRIN: u32 = 1024; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_PARTITIONED" +)] +pub const relopt_kind_RELOPT_KIND_PARTITIONED: u32 = 2048; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_LAST_DEFAULT" +)] +pub const relopt_kind_RELOPT_KIND_LAST_DEFAULT: u32 = 2048; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_MAX" +)] +pub const relopt_kind_RELOPT_KIND_MAX: u32 = 1073741824; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_BOOL" +)] +pub const relopt_type_RELOPT_TYPE_BOOL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_INT" +)] +pub const relopt_type_RELOPT_TYPE_INT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_REAL" +)] +pub const relopt_type_RELOPT_TYPE_REAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_ENUM" +)] +pub const relopt_type_RELOPT_TYPE_ENUM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_STRING" +)] +pub const relopt_type_RELOPT_TYPE_STRING: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::shm_mq_result::SHM_MQ_SUCCESS" +)] +pub const shm_mq_result_SHM_MQ_SUCCESS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::shm_mq_result::SHM_MQ_WOULD_BLOCK" +)] +pub const shm_mq_result_SHM_MQ_WOULD_BLOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::shm_mq_result::SHM_MQ_DETACHED" +)] +pub const shm_mq_result_SHM_MQ_DETACHED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::subxids_array_status::SUBXIDS_IN_ARRAY" +)] +pub const subxids_array_status_SUBXIDS_IN_ARRAY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::subxids_array_status::SUBXIDS_MISSING" +)] +pub const subxids_array_status_SUBXIDS_MISSING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::subxids_array_status::SUBXIDS_IN_SUBTRANS" +)] +pub const subxids_array_status_SUBXIDS_IN_SUBTRANS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::tuplehash_status::tuplehash_SH_EMPTY" +)] +pub const tuplehash_status_tuplehash_SH_EMPTY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::tuplehash_status::tuplehash_SH_IN_USE" +)] +pub const tuplehash_status_tuplehash_SH_IN_USE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_INDIRECT" +)] +pub const vartag_external_VARTAG_INDIRECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_EXPANDED_RO" +)] +pub const vartag_external_VARTAG_EXPANDED_RO: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_EXPANDED_RW" +)] +pub const vartag_external_VARTAG_EXPANDED_RW: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_ONDISK" +)] +pub const vartag_external_VARTAG_ONDISK: u32 = 18; diff --git a/vendor/pg17_x86_64_debian/pg_config/pg_config b/vendor/pg17_x86_64_debian/pg_config/pg_config new file mode 100755 index 000000000..9239a70ee --- /dev/null +++ b/vendor/pg17_x86_64_debian/pg_config/pg_config @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +$(dirname "$0")/../../../tools/pg_config.sh "$@" < $(dirname "$0")/pg_config.txt diff --git a/vendor/pg17_x86_64_debian/pg_config/pg_config.txt b/vendor/pg17_x86_64_debian/pg_config/pg_config.txt new file mode 100644 index 000000000..adc2cb379 --- /dev/null +++ b/vendor/pg17_x86_64_debian/pg_config/pg_config.txt @@ -0,0 +1,23 @@ +BINDIR = /usr/lib/postgresql/17/bin +DOCDIR = /usr/share/doc/postgresql-doc-17 +HTMLDIR = /usr/share/doc/postgresql-doc-17 +INCLUDEDIR = /usr/include/postgresql +PKGINCLUDEDIR = /usr/include/postgresql +INCLUDEDIR-SERVER = /usr/include/postgresql/17/server +LIBDIR = /usr/lib/x86_64-linux-gnu +PKGLIBDIR = /usr/lib/postgresql/17/lib +LOCALEDIR = /usr/share/locale +MANDIR = /usr/share/postgresql/17/man +SHAREDIR = /usr/share/postgresql/17 +SYSCONFDIR = /etc/postgresql-common +PGXS = /usr/lib/postgresql/17/lib/pgxs/src/makefiles/pgxs.mk +CONFIGURE = '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--runstatedir=/run' '--disable-maintainer-mode' '--disable-dependency-tracking' '--with-tcl' '--with-perl' '--with-python' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--mandir=/usr/share/postgresql/17/man' '--docdir=/usr/share/doc/postgresql-doc-17' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/17' '--bindir=/usr/lib/postgresql/17/bin' '--libdir=/usr/lib/x86_64-linux-gnu/' '--libexecdir=/usr/lib/postgresql/' '--includedir=/usr/include/postgresql/' '--with-extra-version= (Debian 17.0-1.pgdg120+1)' '--enable-nls' '--enable-thread-safety' '--enable-debug' '--disable-rpath' '--with-uuid=e2fs' '--with-gnu-ld' '--with-gssapi' '--with-ldap' '--with-pgport=5432' '--with-system-tzdata=/usr/share/zoneinfo' 'AWK=mawk' 'MKDIR_P=/bin/mkdir -p' 'PROVE=/usr/bin/prove' 'PYTHON=/usr/bin/python3' 'TAR=/bin/tar' 'XSLTPROC=xsltproc --nonet' 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer' 'LDFLAGS=-Wl,-z,relro -Wl,-z,now' '--enable-tap-tests' '--with-icu' '--with-llvm' 'LLVM_CONFIG=/usr/bin/llvm-config-16' 'CLANG=/usr/bin/clang-16' '--with-lz4' '--with-zstd' '--with-systemd' '--with-selinux' '--enable-dtrace' 'build_alias=x86_64-linux-gnu' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector-strong -Wformat -Werror=format-security' +CC = gcc +CPPFLAGS = -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 +CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer +CFLAGS_SL = -fPIC +LDFLAGS = -Wl,-z,relro -Wl,-z,now -L/usr/lib/llvm-16/lib -Wl,--as-needed +LDFLAGS_EX = +LDFLAGS_SL = +LIBS = -lpgcommon -lpgport -lselinux -lzstd -llz4 -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lm +VERSION = PostgreSQL 17.0 (Debian 17.0-1.pgdg120+1) diff --git a/vendor/pg17_x86_64_debian/pgrx_binding/pg17_raw_bindings.rs b/vendor/pg17_x86_64_debian/pgrx_binding/pg17_raw_bindings.rs new file mode 100644 index 000000000..7cc80c374 --- /dev/null +++ b/vendor/pg17_x86_64_debian/pgrx_binding/pg17_raw_bindings.rs @@ -0,0 +1,62576 @@ +/* automatically generated by rust-bindgen 0.70.1 */ + +#[repr(C)] +#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] +pub struct __BindgenBitfieldUnit { + storage: Storage, +} +impl __BindgenBitfieldUnit { + #[inline] + pub const fn new(storage: Storage) -> Self { + Self { storage } + } +} +impl __BindgenBitfieldUnit +where + Storage: AsRef<[u8]> + AsMut<[u8]>, +{ + #[inline] + pub fn get_bit(&self, index: usize) -> bool { + debug_assert!(index / 8 < self.storage.as_ref().len()); + let byte_index = index / 8; + let byte = self.storage.as_ref()[byte_index]; + let bit_index = if cfg!(target_endian = "big") { + 7 - (index % 8) + } else { + index % 8 + }; + let mask = 1 << bit_index; + byte & mask == mask + } + #[inline] + pub fn set_bit(&mut self, index: usize, val: bool) { + debug_assert!(index / 8 < self.storage.as_ref().len()); + let byte_index = index / 8; + let byte = &mut self.storage.as_mut()[byte_index]; + let bit_index = if cfg!(target_endian = "big") { + 7 - (index % 8) + } else { + index % 8 + }; + let mask = 1 << bit_index; + if val { + *byte |= mask; + } else { + *byte &= !mask; + } + } + #[inline] + pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 { + debug_assert!(bit_width <= 64); + debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); + debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); + let mut val = 0; + for i in 0..(bit_width as usize) { + if self.get_bit(i + bit_offset) { + let index = if cfg!(target_endian = "big") { + bit_width as usize - 1 - i + } else { + i + }; + val |= 1 << index; + } + } + val + } + #[inline] + pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) { + debug_assert!(bit_width <= 64); + debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); + debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); + for i in 0..(bit_width as usize) { + let mask = 1 << i; + let val_bit_is_set = val & mask == mask; + let index = if cfg!(target_endian = "big") { + bit_width as usize - 1 - i + } else { + i + }; + self.set_bit(index + bit_offset, val_bit_is_set); + } + } +} +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +impl __IncompleteArrayField { + #[inline] + pub const fn new() -> Self { + __IncompleteArrayField(::core::marker::PhantomData, []) + } + #[inline] + pub fn as_ptr(&self) -> *const T { + self as *const _ as *const T + } + #[inline] + pub fn as_mut_ptr(&mut self) -> *mut T { + self as *mut _ as *mut T + } + #[inline] + pub unsafe fn as_slice(&self, len: usize) -> &[T] { + unsafe { ::core::slice::from_raw_parts(self.as_ptr(), len) } + } + #[inline] + pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { + unsafe { ::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) } + } +} +impl ::core::fmt::Debug for __IncompleteArrayField { + fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + fmt.write_str("__IncompleteArrayField") + } +} +pub const PG_DIAG_SEVERITY: u8 = 83u8; +pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; +pub const PG_DIAG_SQLSTATE: u8 = 67u8; +pub const PG_DIAG_MESSAGE_PRIMARY: u8 = 77u8; +pub const PG_DIAG_MESSAGE_DETAIL: u8 = 68u8; +pub const PG_DIAG_MESSAGE_HINT: u8 = 72u8; +pub const PG_DIAG_STATEMENT_POSITION: u8 = 80u8; +pub const PG_DIAG_INTERNAL_POSITION: u8 = 112u8; +pub const PG_DIAG_INTERNAL_QUERY: u8 = 113u8; +pub const PG_DIAG_CONTEXT: u8 = 87u8; +pub const PG_DIAG_SCHEMA_NAME: u8 = 115u8; +pub const PG_DIAG_TABLE_NAME: u8 = 116u8; +pub const PG_DIAG_COLUMN_NAME: u8 = 99u8; +pub const PG_DIAG_DATATYPE_NAME: u8 = 100u8; +pub const PG_DIAG_CONSTRAINT_NAME: u8 = 110u8; +pub const PG_DIAG_SOURCE_FILE: u8 = 70u8; +pub const PG_DIAG_SOURCE_LINE: u8 = 76u8; +pub const PG_DIAG_SOURCE_FUNCTION: u8 = 82u8; +pub const ALIGNOF_DOUBLE: u32 = 8; +pub const ALIGNOF_INT: u32 = 4; +pub const ALIGNOF_LONG: u32 = 8; +pub const ALIGNOF_PG_INT128_TYPE: u32 = 16; +pub const ALIGNOF_SHORT: u32 = 2; +pub const BLCKSZ: u32 = 8192; +pub const DEF_PGPORT: u32 = 5432; +#[allow(unsafe_code)] +pub const DEF_PGPORT_STR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"5432\0") }; +#[allow(unsafe_code)] +pub const DLSUFFIX: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b".so\0") }; +pub const ENABLE_GSS: u32 = 1; +pub const ENABLE_NLS: u32 = 1; +#[allow(unsafe_code)] +pub const INT64_MODIFIER: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"l\0") }; +pub const MAXIMUM_ALIGNOF: u32 = 8; +pub const MEMSET_LOOP_LIMIT: u32 = 1024; +pub const OPENSSL_API_COMPAT: u32 = 268443648; +#[allow(unsafe_code)] +pub const PACKAGE_BUGREPORT: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pgsql-bugs@lists.postgresql.org\0") +}; +#[allow(unsafe_code)] +pub const PACKAGE_NAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_STRING: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL 17.0\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_TARNAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgresql\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_URL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"https://www.postgresql.org/\0") }; +#[allow(unsafe_code)] +pub const PACKAGE_VERSION: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"17.0\0") }; +#[allow(unsafe_code)] +pub const PG_KRB_SRVNAM: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgres\0") }; +#[allow(unsafe_code)] +pub const PG_MAJORVERSION: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"17\0") }; +pub const PG_MAJORVERSION_NUM: u32 = 17; +pub const PG_MINORVERSION_NUM: u32 = 0; +pub const PG_USE_STDBOOL: u32 = 1; +#[allow(unsafe_code)] +pub const PG_VERSION: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"17.0 (Debian 17.0-1.pgdg120+1)\0") +}; +pub const PG_VERSION_NUM: u32 = 170000; +#[allow(unsafe_code)] +pub const PG_VERSION_STR: &::core::ffi::CStr = unsafe { + :: core :: ffi :: CStr :: from_bytes_with_nul_unchecked (b"PostgreSQL 17.0 (Debian 17.0-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit\0") +}; +pub const RELSEG_SIZE: u32 = 131072; +pub const SIZEOF_BOOL: u32 = 1; +pub const SIZEOF_LONG: u32 = 8; +pub const SIZEOF_OFF_T: u32 = 8; +pub const SIZEOF_SIZE_T: u32 = 8; +pub const SIZEOF_VOID_P: u32 = 8; +pub const STDC_HEADERS: u32 = 1; +pub const USE_AVX512_POPCNT_WITH_RUNTIME_CHECK: u32 = 1; +pub const USE_ICU: u32 = 1; +pub const USE_LDAP: u32 = 1; +pub const USE_LIBXML: u32 = 1; +pub const USE_LIBXSLT: u32 = 1; +pub const USE_LLVM: u32 = 1; +pub const USE_LZ4: u32 = 1; +pub const USE_OPENSSL: u32 = 1; +pub const USE_PAM: u32 = 1; +pub const USE_SSE42_CRC32C_WITH_RUNTIME_CHECK: u32 = 1; +pub const USE_SYSTEMD: u32 = 1; +pub const USE_SYSV_SHARED_MEMORY: u32 = 1; +pub const USE_UNNAMED_POSIX_SEMAPHORES: u32 = 1; +pub const USE_ZSTD: u32 = 1; +pub const XLOG_BLCKSZ: u32 = 8192; +pub const DEFAULT_XLOG_SEG_SIZE: u32 = 16777216; +pub const NAMEDATALEN: u32 = 64; +pub const FUNC_MAX_ARGS: u32 = 100; +#[allow(unsafe_code)] +pub const FMGR_ABI_EXTRA: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL\0") }; +pub const INDEX_MAX_KEYS: u32 = 32; +pub const PARTITION_MAX_KEYS: u32 = 32; +pub const USE_FLOAT8_BYVAL: u32 = 1; +pub const NUM_SPINLOCK_SEMAPHORES: u32 = 128; +pub const NUM_ATOMICS_SEMAPHORES: u32 = 64; +pub const MAXPGPATH: u32 = 1024; +pub const BITS_PER_BYTE: u32 = 8; +pub const ALIGNOF_BUFFER: u32 = 32; +pub const DEFAULT_BACKEND_FLUSH_AFTER: u32 = 0; +pub const DEFAULT_BGWRITER_FLUSH_AFTER: u32 = 64; +pub const DEFAULT_CHECKPOINT_FLUSH_AFTER: u32 = 32; +pub const WRITEBACK_MAX_PENDING_FLUSHES: u32 = 256; +#[allow(unsafe_code)] +pub const DEFAULT_PGSOCKET_DIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/var/run/postgresql\0") }; +#[allow(unsafe_code)] +pub const DEFAULT_EVENT_SOURCE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"PostgreSQL\0") }; +pub const PG_CACHE_LINE_SIZE: u32 = 128; +pub const PG_IO_ALIGN_SIZE: u32 = 4096; +pub const TRACE_SORT: u32 = 1; +pub const _DEFAULT_SOURCE: u32 = 1; +pub const __GLIBC_USE_ISOC2X: u32 = 0; +pub const __USE_ISOC11: u32 = 1; +pub const __USE_ISOC99: u32 = 1; +pub const __USE_ISOC95: u32 = 1; +pub const __USE_POSIX_IMPLICITLY: u32 = 1; +pub const _POSIX_SOURCE: u32 = 1; +pub const _POSIX_C_SOURCE: u32 = 200809; +pub const __USE_POSIX: u32 = 1; +pub const __USE_POSIX2: u32 = 1; +pub const __USE_POSIX199309: u32 = 1; +pub const __USE_POSIX199506: u32 = 1; +pub const __USE_XOPEN2K: u32 = 1; +pub const __USE_XOPEN2K8: u32 = 1; +pub const _ATFILE_SOURCE: u32 = 1; +pub const __WORDSIZE: u32 = 64; +pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; +pub const __SYSCALL_WORDSIZE: u32 = 64; +pub const __TIMESIZE: u32 = 64; +pub const __USE_MISC: u32 = 1; +pub const __USE_ATFILE: u32 = 1; +pub const __USE_FORTIFY_LEVEL: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; +pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; +pub const __STDC_IEC_559__: u32 = 1; +pub const __STDC_IEC_60559_BFP__: u32 = 201404; +pub const __STDC_IEC_559_COMPLEX__: u32 = 1; +pub const __STDC_IEC_60559_COMPLEX__: u32 = 201404; +pub const __STDC_ISO_10646__: u32 = 201706; +pub const __GNU_LIBRARY__: u32 = 6; +pub const __GLIBC__: u32 = 2; +pub const __GLIBC_MINOR__: u32 = 36; +pub const __glibc_c99_flexarr_available: u32 = 1; +pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; +pub const __GLIBC_USE_LIB_EXT2: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; +pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; +pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; +pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; +pub const __INO_T_MATCHES_INO64_T: u32 = 1; +pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; +pub const __STATFS_MATCHES_STATFS64: u32 = 1; +pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; +pub const __FD_SETSIZE: u32 = 1024; +pub const _BITS_TIME64_H: u32 = 1; +pub const _____fpos_t_defined: u32 = 1; +pub const ____mbstate_t_defined: u32 = 1; +pub const _____fpos64_t_defined: u32 = 1; +pub const ____FILE_defined: u32 = 1; +pub const __FILE_defined: u32 = 1; +pub const __struct_FILE_defined: u32 = 1; +pub const _IO_EOF_SEEN: u32 = 16; +pub const _IO_ERR_SEEN: u32 = 32; +pub const _IO_USER_LOCK: u32 = 32768; +pub const _IOFBF: u32 = 0; +pub const _IOLBF: u32 = 1; +pub const _IONBF: u32 = 2; +pub const BUFSIZ: u32 = 8192; +pub const EOF: i32 = -1; +pub const SEEK_SET: u32 = 0; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +#[allow(unsafe_code)] +pub const P_tmpdir: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/tmp\0") }; +pub const L_tmpnam: u32 = 20; +pub const TMP_MAX: u32 = 238328; +pub const FILENAME_MAX: u32 = 4096; +pub const L_ctermid: u32 = 9; +pub const FOPEN_MAX: u32 = 16; +pub const WNOHANG: u32 = 1; +pub const WUNTRACED: u32 = 2; +pub const WSTOPPED: u32 = 2; +pub const WEXITED: u32 = 4; +pub const WCONTINUED: u32 = 8; +pub const WNOWAIT: u32 = 16777216; +pub const __WNOTHREAD: u32 = 536870912; +pub const __WALL: u32 = 1073741824; +pub const __WCLONE: u32 = 2147483648; +pub const __W_CONTINUED: u32 = 65535; +pub const __WCOREFLAG: u32 = 128; +pub const __ldiv_t_defined: u32 = 1; +pub const __lldiv_t_defined: u32 = 1; +pub const RAND_MAX: u32 = 2147483647; +pub const EXIT_FAILURE: u32 = 1; +pub const EXIT_SUCCESS: u32 = 0; +pub const __clock_t_defined: u32 = 1; +pub const __clockid_t_defined: u32 = 1; +pub const __time_t_defined: u32 = 1; +pub const __timer_t_defined: u32 = 1; +pub const __BIT_TYPES_DEFINED__: u32 = 1; +pub const __LITTLE_ENDIAN: u32 = 1234; +pub const __BIG_ENDIAN: u32 = 4321; +pub const __PDP_ENDIAN: u32 = 3412; +pub const __BYTE_ORDER: u32 = 1234; +pub const __FLOAT_WORD_ORDER: u32 = 1234; +pub const LITTLE_ENDIAN: u32 = 1234; +pub const BIG_ENDIAN: u32 = 4321; +pub const PDP_ENDIAN: u32 = 3412; +pub const BYTE_ORDER: u32 = 1234; +pub const __sigset_t_defined: u32 = 1; +pub const __timeval_defined: u32 = 1; +pub const _STRUCT_TIMESPEC: u32 = 1; +pub const FD_SETSIZE: u32 = 1024; +pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40; +pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56; +pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; +pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; +pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4; +pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; +pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; +pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; +pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; +pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; +pub const INT8_MIN: i32 = -128; +pub const INT16_MIN: i32 = -32768; +pub const INT32_MIN: i32 = -2147483648; +pub const INT8_MAX: u32 = 127; +pub const INT16_MAX: u32 = 32767; +pub const INT32_MAX: u32 = 2147483647; +pub const UINT8_MAX: u32 = 255; +pub const UINT16_MAX: u32 = 65535; +pub const UINT32_MAX: u32 = 4294967295; +pub const INT_LEAST8_MIN: i32 = -128; +pub const INT_LEAST16_MIN: i32 = -32768; +pub const INT_LEAST32_MIN: i32 = -2147483648; +pub const INT_LEAST8_MAX: u32 = 127; +pub const INT_LEAST16_MAX: u32 = 32767; +pub const INT_LEAST32_MAX: u32 = 2147483647; +pub const UINT_LEAST8_MAX: u32 = 255; +pub const UINT_LEAST16_MAX: u32 = 65535; +pub const UINT_LEAST32_MAX: u32 = 4294967295; +pub const INT_FAST8_MIN: i32 = -128; +pub const INT_FAST16_MIN: i64 = -9223372036854775808; +pub const INT_FAST32_MIN: i64 = -9223372036854775808; +pub const INT_FAST8_MAX: u32 = 127; +pub const INT_FAST16_MAX: u64 = 9223372036854775807; +pub const INT_FAST32_MAX: u64 = 9223372036854775807; +pub const UINT_FAST8_MAX: u32 = 255; +pub const UINT_FAST16_MAX: i32 = -1; +pub const UINT_FAST32_MAX: i32 = -1; +pub const INTPTR_MIN: i64 = -9223372036854775808; +pub const INTPTR_MAX: u64 = 9223372036854775807; +pub const UINTPTR_MAX: i32 = -1; +pub const PTRDIFF_MIN: i64 = -9223372036854775808; +pub const PTRDIFF_MAX: u64 = 9223372036854775807; +pub const SIG_ATOMIC_MIN: i32 = -2147483648; +pub const SIG_ATOMIC_MAX: u32 = 2147483647; +pub const SIZE_MAX: i32 = -1; +pub const WINT_MIN: u32 = 0; +pub const WINT_MAX: u32 = 4294967295; +pub const EPERM: u32 = 1; +pub const ENOENT: u32 = 2; +pub const ESRCH: u32 = 3; +pub const EINTR: u32 = 4; +pub const EIO: u32 = 5; +pub const ENXIO: u32 = 6; +pub const E2BIG: u32 = 7; +pub const ENOEXEC: u32 = 8; +pub const EBADF: u32 = 9; +pub const ECHILD: u32 = 10; +pub const EAGAIN: u32 = 11; +pub const ENOMEM: u32 = 12; +pub const EACCES: u32 = 13; +pub const EFAULT: u32 = 14; +pub const ENOTBLK: u32 = 15; +pub const EBUSY: u32 = 16; +pub const EEXIST: u32 = 17; +pub const EXDEV: u32 = 18; +pub const ENODEV: u32 = 19; +pub const ENOTDIR: u32 = 20; +pub const EISDIR: u32 = 21; +pub const EINVAL: u32 = 22; +pub const ENFILE: u32 = 23; +pub const EMFILE: u32 = 24; +pub const ENOTTY: u32 = 25; +pub const ETXTBSY: u32 = 26; +pub const EFBIG: u32 = 27; +pub const ENOSPC: u32 = 28; +pub const ESPIPE: u32 = 29; +pub const EROFS: u32 = 30; +pub const EMLINK: u32 = 31; +pub const EPIPE: u32 = 32; +pub const EDOM: u32 = 33; +pub const ERANGE: u32 = 34; +pub const EDEADLK: u32 = 35; +pub const ENAMETOOLONG: u32 = 36; +pub const ENOLCK: u32 = 37; +pub const ENOSYS: u32 = 38; +pub const ENOTEMPTY: u32 = 39; +pub const ELOOP: u32 = 40; +pub const EWOULDBLOCK: u32 = 11; +pub const ENOMSG: u32 = 42; +pub const EIDRM: u32 = 43; +pub const ECHRNG: u32 = 44; +pub const EL2NSYNC: u32 = 45; +pub const EL3HLT: u32 = 46; +pub const EL3RST: u32 = 47; +pub const ELNRNG: u32 = 48; +pub const EUNATCH: u32 = 49; +pub const ENOCSI: u32 = 50; +pub const EL2HLT: u32 = 51; +pub const EBADE: u32 = 52; +pub const EBADR: u32 = 53; +pub const EXFULL: u32 = 54; +pub const ENOANO: u32 = 55; +pub const EBADRQC: u32 = 56; +pub const EBADSLT: u32 = 57; +pub const EDEADLOCK: u32 = 35; +pub const EBFONT: u32 = 59; +pub const ENOSTR: u32 = 60; +pub const ENODATA: u32 = 61; +pub const ETIME: u32 = 62; +pub const ENOSR: u32 = 63; +pub const ENONET: u32 = 64; +pub const ENOPKG: u32 = 65; +pub const EREMOTE: u32 = 66; +pub const ENOLINK: u32 = 67; +pub const EADV: u32 = 68; +pub const ESRMNT: u32 = 69; +pub const ECOMM: u32 = 70; +pub const EPROTO: u32 = 71; +pub const EMULTIHOP: u32 = 72; +pub const EDOTDOT: u32 = 73; +pub const EBADMSG: u32 = 74; +pub const EOVERFLOW: u32 = 75; +pub const ENOTUNIQ: u32 = 76; +pub const EBADFD: u32 = 77; +pub const EREMCHG: u32 = 78; +pub const ELIBACC: u32 = 79; +pub const ELIBBAD: u32 = 80; +pub const ELIBSCN: u32 = 81; +pub const ELIBMAX: u32 = 82; +pub const ELIBEXEC: u32 = 83; +pub const EILSEQ: u32 = 84; +pub const ERESTART: u32 = 85; +pub const ESTRPIPE: u32 = 86; +pub const EUSERS: u32 = 87; +pub const ENOTSOCK: u32 = 88; +pub const EDESTADDRREQ: u32 = 89; +pub const EMSGSIZE: u32 = 90; +pub const EPROTOTYPE: u32 = 91; +pub const ENOPROTOOPT: u32 = 92; +pub const EPROTONOSUPPORT: u32 = 93; +pub const ESOCKTNOSUPPORT: u32 = 94; +pub const EOPNOTSUPP: u32 = 95; +pub const EPFNOSUPPORT: u32 = 96; +pub const EAFNOSUPPORT: u32 = 97; +pub const EADDRINUSE: u32 = 98; +pub const EADDRNOTAVAIL: u32 = 99; +pub const ENETDOWN: u32 = 100; +pub const ENETUNREACH: u32 = 101; +pub const ENETRESET: u32 = 102; +pub const ECONNABORTED: u32 = 103; +pub const ECONNRESET: u32 = 104; +pub const ENOBUFS: u32 = 105; +pub const EISCONN: u32 = 106; +pub const ENOTCONN: u32 = 107; +pub const ESHUTDOWN: u32 = 108; +pub const ETOOMANYREFS: u32 = 109; +pub const ETIMEDOUT: u32 = 110; +pub const ECONNREFUSED: u32 = 111; +pub const EHOSTDOWN: u32 = 112; +pub const EHOSTUNREACH: u32 = 113; +pub const EALREADY: u32 = 114; +pub const EINPROGRESS: u32 = 115; +pub const ESTALE: u32 = 116; +pub const EUCLEAN: u32 = 117; +pub const ENOTNAM: u32 = 118; +pub const ENAVAIL: u32 = 119; +pub const EISNAM: u32 = 120; +pub const EREMOTEIO: u32 = 121; +pub const EDQUOT: u32 = 122; +pub const ENOMEDIUM: u32 = 123; +pub const EMEDIUMTYPE: u32 = 124; +pub const ECANCELED: u32 = 125; +pub const ENOKEY: u32 = 126; +pub const EKEYEXPIRED: u32 = 127; +pub const EKEYREVOKED: u32 = 128; +pub const EKEYREJECTED: u32 = 129; +pub const EOWNERDEAD: u32 = 130; +pub const ENOTRECOVERABLE: u32 = 131; +pub const ERFKILL: u32 = 132; +pub const EHWPOISON: u32 = 133; +pub const ENOTSUP: u32 = 95; +pub const __LC_CTYPE: u32 = 0; +pub const __LC_NUMERIC: u32 = 1; +pub const __LC_TIME: u32 = 2; +pub const __LC_COLLATE: u32 = 3; +pub const __LC_MONETARY: u32 = 4; +pub const __LC_MESSAGES: u32 = 5; +pub const __LC_ALL: u32 = 6; +pub const __LC_PAPER: u32 = 7; +pub const __LC_NAME: u32 = 8; +pub const __LC_ADDRESS: u32 = 9; +pub const __LC_TELEPHONE: u32 = 10; +pub const __LC_MEASUREMENT: u32 = 11; +pub const __LC_IDENTIFICATION: u32 = 12; +pub const LC_CTYPE: u32 = 0; +pub const LC_NUMERIC: u32 = 1; +pub const LC_TIME: u32 = 2; +pub const LC_COLLATE: u32 = 3; +pub const LC_MONETARY: u32 = 4; +pub const LC_MESSAGES: u32 = 5; +pub const LC_ALL: u32 = 6; +pub const LC_PAPER: u32 = 7; +pub const LC_NAME: u32 = 8; +pub const LC_ADDRESS: u32 = 9; +pub const LC_TELEPHONE: u32 = 10; +pub const LC_MEASUREMENT: u32 = 11; +pub const LC_IDENTIFICATION: u32 = 12; +pub const LC_CTYPE_MASK: u32 = 1; +pub const LC_NUMERIC_MASK: u32 = 2; +pub const LC_TIME_MASK: u32 = 4; +pub const LC_COLLATE_MASK: u32 = 8; +pub const LC_MONETARY_MASK: u32 = 16; +pub const LC_MESSAGES_MASK: u32 = 32; +pub const LC_PAPER_MASK: u32 = 128; +pub const LC_NAME_MASK: u32 = 256; +pub const LC_ADDRESS_MASK: u32 = 512; +pub const LC_TELEPHONE_MASK: u32 = 1024; +pub const LC_MEASUREMENT_MASK: u32 = 2048; +pub const LC_IDENTIFICATION_MASK: u32 = 4096; +pub const LC_ALL_MASK: u32 = 8127; +pub const __USE_GNU_GETTEXT: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; +pub const true_: u32 = 1; +pub const false_: u32 = 0; +#[allow(unsafe_code)] +pub const INT64_FORMAT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%ld\0") }; +#[allow(unsafe_code)] +pub const UINT64_FORMAT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%lu\0") }; +pub const PG_INT8_MIN: i32 = -128; +pub const PG_INT8_MAX: u32 = 127; +pub const PG_UINT8_MAX: u32 = 255; +pub const PG_INT16_MIN: i32 = -32768; +pub const PG_INT16_MAX: u32 = 32767; +pub const PG_UINT16_MAX: u32 = 65535; +pub const PG_INT32_MIN: i32 = -2147483648; +pub const PG_INT32_MAX: u32 = 2147483647; +pub const PG_UINT32_MAX: u32 = 4294967295; +pub const FLOAT8PASSBYVAL: u32 = 1; +pub const HIGHBIT: u32 = 128; +pub const ESCAPE_STRING_SYNTAX: u8 = 69u8; +pub const STATUS_OK: u32 = 0; +pub const STATUS_ERROR: i32 = -1; +pub const STATUS_EOF: i32 = -2; +pub const PG_BINARY: u32 = 0; +#[allow(unsafe_code)] +pub const PG_BINARY_A: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"a\0") }; +#[allow(unsafe_code)] +pub const PG_BINARY_R: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"r\0") }; +#[allow(unsafe_code)] +pub const PG_BINARY_W: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"w\0") }; +pub const PGINVALID_SOCKET: i32 = -1; +#[allow(unsafe_code)] +pub const PG_BACKEND_VERSIONSTR: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked( + b"postgres (PostgreSQL) 17.0 (Debian 17.0-1.pgdg120+1)\n\0", + ) +}; +#[allow(unsafe_code)] +pub const EXE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"\0") }; +#[allow(unsafe_code)] +pub const DEVNULL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/dev/null\0") }; +pub const USE_REPL_SNPRINTF: u32 = 1; +pub const PG_STRERROR_R_BUFLEN: u32 = 256; +pub const PG_IOLBF: u32 = 1; +pub const __FP_LOGB0_IS_MIN: u32 = 1; +pub const __FP_LOGBNAN_IS_MIN: u32 = 1; +pub const FP_ILOGB0: i32 = -2147483648; +pub const FP_ILOGBNAN: i32 = -2147483648; +pub const __MATH_DECLARING_DOUBLE: u32 = 1; +pub const __MATH_DECLARING_FLOATN: u32 = 0; +pub const __MATH_DECLARE_LDOUBLE: u32 = 1; +pub const MATH_ERRNO: u32 = 1; +pub const MATH_ERREXCEPT: u32 = 2; +pub const math_errhandling: u32 = 3; +pub const __jmp_buf_tag_defined: u32 = 1; +pub const DEBUG5: u32 = 10; +pub const DEBUG4: u32 = 11; +pub const DEBUG3: u32 = 12; +pub const DEBUG2: u32 = 13; +pub const DEBUG1: u32 = 14; +pub const LOG: u32 = 15; +pub const LOG_SERVER_ONLY: u32 = 16; +pub const COMMERROR: u32 = 16; +pub const INFO: u32 = 17; +pub const NOTICE: u32 = 18; +pub const WARNING: u32 = 19; +pub const PGWARNING: u32 = 19; +pub const WARNING_CLIENT_ONLY: u32 = 20; +pub const ERROR: u32 = 21; +pub const PGERROR: u32 = 21; +pub const FATAL: u32 = 22; +pub const PANIC: u32 = 23; +pub const LOG_DESTINATION_STDERR: u32 = 1; +pub const LOG_DESTINATION_SYSLOG: u32 = 2; +pub const LOG_DESTINATION_EVENTLOG: u32 = 4; +pub const LOG_DESTINATION_CSVLOG: u32 = 8; +pub const LOG_DESTINATION_JSONLOG: u32 = 16; +pub const MCXT_ALLOC_HUGE: u32 = 1; +pub const MCXT_ALLOC_NO_OOM: u32 = 2; +pub const MCXT_ALLOC_ZERO: u32 = 4; +pub const FIELDNO_NULLABLE_DATUM_DATUM: u32 = 0; +pub const FIELDNO_NULLABLE_DATUM_ISNULL: u32 = 1; +pub const SIZEOF_DATUM: u32 = 8; +pub const InvalidAttrNumber: u32 = 0; +pub const MaxAttrNumber: u32 = 32767; +pub const AttributeRelationId: u32 = 1249; +pub const AttributeRelation_Rowtype_Id: u32 = 75; +pub const AttributeRelidNameIndexId: u32 = 2658; +pub const AttributeRelidNumIndexId: u32 = 2659; +pub const Anum_pg_attribute_attrelid: u32 = 1; +pub const Anum_pg_attribute_attname: u32 = 2; +pub const Anum_pg_attribute_atttypid: u32 = 3; +pub const Anum_pg_attribute_attlen: u32 = 4; +pub const Anum_pg_attribute_attnum: u32 = 5; +pub const Anum_pg_attribute_attcacheoff: u32 = 6; +pub const Anum_pg_attribute_atttypmod: u32 = 7; +pub const Anum_pg_attribute_attndims: u32 = 8; +pub const Anum_pg_attribute_attbyval: u32 = 9; +pub const Anum_pg_attribute_attalign: u32 = 10; +pub const Anum_pg_attribute_attstorage: u32 = 11; +pub const Anum_pg_attribute_attcompression: u32 = 12; +pub const Anum_pg_attribute_attnotnull: u32 = 13; +pub const Anum_pg_attribute_atthasdef: u32 = 14; +pub const Anum_pg_attribute_atthasmissing: u32 = 15; +pub const Anum_pg_attribute_attidentity: u32 = 16; +pub const Anum_pg_attribute_attgenerated: u32 = 17; +pub const Anum_pg_attribute_attisdropped: u32 = 18; +pub const Anum_pg_attribute_attislocal: u32 = 19; +pub const Anum_pg_attribute_attinhcount: u32 = 20; +pub const Anum_pg_attribute_attcollation: u32 = 21; +pub const Anum_pg_attribute_attstattarget: u32 = 22; +pub const Anum_pg_attribute_attacl: u32 = 23; +pub const Anum_pg_attribute_attoptions: u32 = 24; +pub const Anum_pg_attribute_attfdwoptions: u32 = 25; +pub const Anum_pg_attribute_attmissingval: u32 = 26; +pub const Natts_pg_attribute: u32 = 26; +pub const ATTRIBUTE_IDENTITY_ALWAYS: u8 = 97u8; +pub const ATTRIBUTE_IDENTITY_BY_DEFAULT: u8 = 100u8; +pub const ATTRIBUTE_GENERATED_STORED: u8 = 115u8; +pub const AGGSPLITOP_COMBINE: u32 = 1; +pub const AGGSPLITOP_SKIPFINAL: u32 = 2; +pub const AGGSPLITOP_SERIALIZE: u32 = 4; +pub const AGGSPLITOP_DESERIALIZE: u32 = 8; +pub const LP_UNUSED: u32 = 0; +pub const LP_NORMAL: u32 = 1; +pub const LP_REDIRECT: u32 = 2; +pub const LP_DEAD: u32 = 3; +pub const SpecTokenOffsetNumber: u32 = 65534; +pub const MovedPartitionsOffsetNumber: u32 = 65533; +pub const FIELDNO_HEAPTUPLEDATA_DATA: u32 = 3; +pub const __O_LARGEFILE: u32 = 0; +pub const F_GETLK64: u32 = 5; +pub const F_SETLK64: u32 = 6; +pub const F_SETLKW64: u32 = 7; +pub const O_ACCMODE: u32 = 3; +pub const O_RDONLY: u32 = 0; +pub const O_WRONLY: u32 = 1; +pub const O_RDWR: u32 = 2; +pub const O_CREAT: u32 = 64; +pub const O_EXCL: u32 = 128; +pub const O_NOCTTY: u32 = 256; +pub const O_TRUNC: u32 = 512; +pub const O_APPEND: u32 = 1024; +pub const O_NONBLOCK: u32 = 2048; +pub const O_NDELAY: u32 = 2048; +pub const O_SYNC: u32 = 1052672; +pub const O_FSYNC: u32 = 1052672; +pub const O_ASYNC: u32 = 8192; +pub const __O_DIRECTORY: u32 = 65536; +pub const __O_NOFOLLOW: u32 = 131072; +pub const __O_CLOEXEC: u32 = 524288; +pub const __O_DIRECT: u32 = 16384; +pub const __O_NOATIME: u32 = 262144; +pub const __O_PATH: u32 = 2097152; +pub const __O_DSYNC: u32 = 4096; +pub const __O_TMPFILE: u32 = 4259840; +pub const F_GETLK: u32 = 5; +pub const F_SETLK: u32 = 6; +pub const F_SETLKW: u32 = 7; +pub const O_DIRECTORY: u32 = 65536; +pub const O_NOFOLLOW: u32 = 131072; +pub const O_CLOEXEC: u32 = 524288; +pub const O_DSYNC: u32 = 4096; +pub const O_RSYNC: u32 = 1052672; +pub const F_DUPFD: u32 = 0; +pub const F_GETFD: u32 = 1; +pub const F_SETFD: u32 = 2; +pub const F_GETFL: u32 = 3; +pub const F_SETFL: u32 = 4; +pub const __F_SETOWN: u32 = 8; +pub const __F_GETOWN: u32 = 9; +pub const F_SETOWN: u32 = 8; +pub const F_GETOWN: u32 = 9; +pub const __F_SETSIG: u32 = 10; +pub const __F_GETSIG: u32 = 11; +pub const __F_SETOWN_EX: u32 = 15; +pub const __F_GETOWN_EX: u32 = 16; +pub const F_DUPFD_CLOEXEC: u32 = 1030; +pub const FD_CLOEXEC: u32 = 1; +pub const F_RDLCK: u32 = 0; +pub const F_WRLCK: u32 = 1; +pub const F_UNLCK: u32 = 2; +pub const F_EXLCK: u32 = 4; +pub const F_SHLCK: u32 = 8; +pub const LOCK_SH: u32 = 1; +pub const LOCK_EX: u32 = 2; +pub const LOCK_NB: u32 = 4; +pub const LOCK_UN: u32 = 8; +pub const FAPPEND: u32 = 1024; +pub const FFSYNC: u32 = 1052672; +pub const FASYNC: u32 = 8192; +pub const FNONBLOCK: u32 = 2048; +pub const FNDELAY: u32 = 2048; +pub const __POSIX_FADV_DONTNEED: u32 = 4; +pub const __POSIX_FADV_NOREUSE: u32 = 5; +pub const POSIX_FADV_NORMAL: u32 = 0; +pub const POSIX_FADV_RANDOM: u32 = 1; +pub const POSIX_FADV_SEQUENTIAL: u32 = 2; +pub const POSIX_FADV_WILLNEED: u32 = 3; +pub const POSIX_FADV_DONTNEED: u32 = 4; +pub const POSIX_FADV_NOREUSE: u32 = 5; +pub const AT_FDCWD: i32 = -100; +pub const AT_SYMLINK_NOFOLLOW: u32 = 256; +pub const AT_REMOVEDIR: u32 = 512; +pub const AT_SYMLINK_FOLLOW: u32 = 1024; +pub const AT_EACCESS: u32 = 512; +pub const __S_IFMT: u32 = 61440; +pub const __S_IFDIR: u32 = 16384; +pub const __S_IFCHR: u32 = 8192; +pub const __S_IFBLK: u32 = 24576; +pub const __S_IFREG: u32 = 32768; +pub const __S_IFIFO: u32 = 4096; +pub const __S_IFLNK: u32 = 40960; +pub const __S_IFSOCK: u32 = 49152; +pub const __S_ISUID: u32 = 2048; +pub const __S_ISGID: u32 = 1024; +pub const __S_ISVTX: u32 = 512; +pub const __S_IREAD: u32 = 256; +pub const __S_IWRITE: u32 = 128; +pub const __S_IEXEC: u32 = 64; +pub const UTIME_NOW: u32 = 1073741823; +pub const UTIME_OMIT: u32 = 1073741822; +pub const S_IFMT: u32 = 61440; +pub const S_IFDIR: u32 = 16384; +pub const S_IFCHR: u32 = 8192; +pub const S_IFBLK: u32 = 24576; +pub const S_IFREG: u32 = 32768; +pub const S_IFIFO: u32 = 4096; +pub const S_IFLNK: u32 = 40960; +pub const S_IFSOCK: u32 = 49152; +pub const S_ISUID: u32 = 2048; +pub const S_ISGID: u32 = 1024; +pub const S_ISVTX: u32 = 512; +pub const S_IRUSR: u32 = 256; +pub const S_IWUSR: u32 = 128; +pub const S_IXUSR: u32 = 64; +pub const S_IRWXU: u32 = 448; +pub const S_IRGRP: u32 = 32; +pub const S_IWGRP: u32 = 16; +pub const S_IXGRP: u32 = 8; +pub const S_IRWXG: u32 = 56; +pub const S_IROTH: u32 = 4; +pub const S_IWOTH: u32 = 2; +pub const S_IXOTH: u32 = 1; +pub const S_IRWXO: u32 = 7; +pub const R_OK: u32 = 4; +pub const W_OK: u32 = 2; +pub const X_OK: u32 = 1; +pub const F_OK: u32 = 0; +pub const F_ULOCK: u32 = 0; +pub const F_LOCK: u32 = 1; +pub const F_TLOCK: u32 = 2; +pub const F_TEST: u32 = 3; +pub const InvalidXLogRecPtr: u32 = 0; +pub const FirstGenbkiObjectId: u32 = 10000; +pub const FirstUnpinnedObjectId: u32 = 12000; +pub const FirstNormalObjectId: u32 = 16384; +pub const TypeRelationId: u32 = 1247; +pub const TypeRelation_Rowtype_Id: u32 = 71; +pub const TypeOidIndexId: u32 = 2703; +pub const TypeNameNspIndexId: u32 = 2704; +pub const Anum_pg_type_oid: u32 = 1; +pub const Anum_pg_type_typname: u32 = 2; +pub const Anum_pg_type_typnamespace: u32 = 3; +pub const Anum_pg_type_typowner: u32 = 4; +pub const Anum_pg_type_typlen: u32 = 5; +pub const Anum_pg_type_typbyval: u32 = 6; +pub const Anum_pg_type_typtype: u32 = 7; +pub const Anum_pg_type_typcategory: u32 = 8; +pub const Anum_pg_type_typispreferred: u32 = 9; +pub const Anum_pg_type_typisdefined: u32 = 10; +pub const Anum_pg_type_typdelim: u32 = 11; +pub const Anum_pg_type_typrelid: u32 = 12; +pub const Anum_pg_type_typsubscript: u32 = 13; +pub const Anum_pg_type_typelem: u32 = 14; +pub const Anum_pg_type_typarray: u32 = 15; +pub const Anum_pg_type_typinput: u32 = 16; +pub const Anum_pg_type_typoutput: u32 = 17; +pub const Anum_pg_type_typreceive: u32 = 18; +pub const Anum_pg_type_typsend: u32 = 19; +pub const Anum_pg_type_typmodin: u32 = 20; +pub const Anum_pg_type_typmodout: u32 = 21; +pub const Anum_pg_type_typanalyze: u32 = 22; +pub const Anum_pg_type_typalign: u32 = 23; +pub const Anum_pg_type_typstorage: u32 = 24; +pub const Anum_pg_type_typnotnull: u32 = 25; +pub const Anum_pg_type_typbasetype: u32 = 26; +pub const Anum_pg_type_typtypmod: u32 = 27; +pub const Anum_pg_type_typndims: u32 = 28; +pub const Anum_pg_type_typcollation: u32 = 29; +pub const Anum_pg_type_typdefaultbin: u32 = 30; +pub const Anum_pg_type_typdefault: u32 = 31; +pub const Anum_pg_type_typacl: u32 = 32; +pub const Natts_pg_type: u32 = 32; +pub const TYPTYPE_BASE: u8 = 98u8; +pub const TYPTYPE_COMPOSITE: u8 = 99u8; +pub const TYPTYPE_DOMAIN: u8 = 100u8; +pub const TYPTYPE_ENUM: u8 = 101u8; +pub const TYPTYPE_MULTIRANGE: u8 = 109u8; +pub const TYPTYPE_PSEUDO: u8 = 112u8; +pub const TYPTYPE_RANGE: u8 = 114u8; +pub const TYPCATEGORY_INVALID: u8 = 0u8; +pub const TYPCATEGORY_ARRAY: u8 = 65u8; +pub const TYPCATEGORY_BOOLEAN: u8 = 66u8; +pub const TYPCATEGORY_COMPOSITE: u8 = 67u8; +pub const TYPCATEGORY_DATETIME: u8 = 68u8; +pub const TYPCATEGORY_ENUM: u8 = 69u8; +pub const TYPCATEGORY_GEOMETRIC: u8 = 71u8; +pub const TYPCATEGORY_NETWORK: u8 = 73u8; +pub const TYPCATEGORY_NUMERIC: u8 = 78u8; +pub const TYPCATEGORY_PSEUDOTYPE: u8 = 80u8; +pub const TYPCATEGORY_RANGE: u8 = 82u8; +pub const TYPCATEGORY_STRING: u8 = 83u8; +pub const TYPCATEGORY_TIMESPAN: u8 = 84u8; +pub const TYPCATEGORY_USER: u8 = 85u8; +pub const TYPCATEGORY_BITSTRING: u8 = 86u8; +pub const TYPCATEGORY_UNKNOWN: u8 = 88u8; +pub const TYPCATEGORY_INTERNAL: u8 = 90u8; +pub const TYPALIGN_CHAR: u8 = 99u8; +pub const TYPALIGN_SHORT: u8 = 115u8; +pub const TYPALIGN_INT: u8 = 105u8; +pub const TYPALIGN_DOUBLE: u8 = 100u8; +pub const TYPSTORAGE_PLAIN: u8 = 112u8; +pub const TYPSTORAGE_EXTERNAL: u8 = 101u8; +pub const TYPSTORAGE_EXTENDED: u8 = 120u8; +pub const TYPSTORAGE_MAIN: u8 = 109u8; +pub const BOOLOID: u32 = 16; +pub const BYTEAOID: u32 = 17; +pub const CHAROID: u32 = 18; +pub const NAMEOID: u32 = 19; +pub const INT8OID: u32 = 20; +pub const INT2OID: u32 = 21; +pub const INT2VECTOROID: u32 = 22; +pub const INT4OID: u32 = 23; +pub const REGPROCOID: u32 = 24; +pub const TEXTOID: u32 = 25; +pub const OIDOID: u32 = 26; +pub const TIDOID: u32 = 27; +pub const XIDOID: u32 = 28; +pub const CIDOID: u32 = 29; +pub const OIDVECTOROID: u32 = 30; +pub const JSONOID: u32 = 114; +pub const XMLOID: u32 = 142; +pub const PG_NODE_TREEOID: u32 = 194; +pub const PG_NDISTINCTOID: u32 = 3361; +pub const PG_DEPENDENCIESOID: u32 = 3402; +pub const PG_MCV_LISTOID: u32 = 5017; +pub const PG_DDL_COMMANDOID: u32 = 32; +pub const XID8OID: u32 = 5069; +pub const POINTOID: u32 = 600; +pub const LSEGOID: u32 = 601; +pub const PATHOID: u32 = 602; +pub const BOXOID: u32 = 603; +pub const POLYGONOID: u32 = 604; +pub const LINEOID: u32 = 628; +pub const FLOAT4OID: u32 = 700; +pub const FLOAT8OID: u32 = 701; +pub const UNKNOWNOID: u32 = 705; +pub const CIRCLEOID: u32 = 718; +pub const MONEYOID: u32 = 790; +pub const MACADDROID: u32 = 829; +pub const INETOID: u32 = 869; +pub const CIDROID: u32 = 650; +pub const MACADDR8OID: u32 = 774; +pub const ACLITEMOID: u32 = 1033; +pub const BPCHAROID: u32 = 1042; +pub const VARCHAROID: u32 = 1043; +pub const DATEOID: u32 = 1082; +pub const TIMEOID: u32 = 1083; +pub const TIMESTAMPOID: u32 = 1114; +pub const TIMESTAMPTZOID: u32 = 1184; +pub const INTERVALOID: u32 = 1186; +pub const TIMETZOID: u32 = 1266; +pub const BITOID: u32 = 1560; +pub const VARBITOID: u32 = 1562; +pub const NUMERICOID: u32 = 1700; +pub const REFCURSOROID: u32 = 1790; +pub const REGPROCEDUREOID: u32 = 2202; +pub const REGOPEROID: u32 = 2203; +pub const REGOPERATOROID: u32 = 2204; +pub const REGCLASSOID: u32 = 2205; +pub const REGCOLLATIONOID: u32 = 4191; +pub const REGTYPEOID: u32 = 2206; +pub const REGROLEOID: u32 = 4096; +pub const REGNAMESPACEOID: u32 = 4089; +pub const UUIDOID: u32 = 2950; +pub const PG_LSNOID: u32 = 3220; +pub const TSVECTOROID: u32 = 3614; +pub const GTSVECTOROID: u32 = 3642; +pub const TSQUERYOID: u32 = 3615; +pub const REGCONFIGOID: u32 = 3734; +pub const REGDICTIONARYOID: u32 = 3769; +pub const JSONBOID: u32 = 3802; +pub const JSONPATHOID: u32 = 4072; +pub const TXID_SNAPSHOTOID: u32 = 2970; +pub const PG_SNAPSHOTOID: u32 = 5038; +pub const INT4RANGEOID: u32 = 3904; +pub const NUMRANGEOID: u32 = 3906; +pub const TSRANGEOID: u32 = 3908; +pub const TSTZRANGEOID: u32 = 3910; +pub const DATERANGEOID: u32 = 3912; +pub const INT8RANGEOID: u32 = 3926; +pub const INT4MULTIRANGEOID: u32 = 4451; +pub const NUMMULTIRANGEOID: u32 = 4532; +pub const TSMULTIRANGEOID: u32 = 4533; +pub const TSTZMULTIRANGEOID: u32 = 4534; +pub const DATEMULTIRANGEOID: u32 = 4535; +pub const INT8MULTIRANGEOID: u32 = 4536; +pub const RECORDOID: u32 = 2249; +pub const RECORDARRAYOID: u32 = 2287; +pub const CSTRINGOID: u32 = 2275; +pub const ANYOID: u32 = 2276; +pub const ANYARRAYOID: u32 = 2277; +pub const VOIDOID: u32 = 2278; +pub const TRIGGEROID: u32 = 2279; +pub const EVENT_TRIGGEROID: u32 = 3838; +pub const LANGUAGE_HANDLEROID: u32 = 2280; +pub const INTERNALOID: u32 = 2281; +pub const ANYELEMENTOID: u32 = 2283; +pub const ANYNONARRAYOID: u32 = 2776; +pub const ANYENUMOID: u32 = 3500; +pub const FDW_HANDLEROID: u32 = 3115; +pub const INDEX_AM_HANDLEROID: u32 = 325; +pub const TSM_HANDLEROID: u32 = 3310; +pub const TABLE_AM_HANDLEROID: u32 = 269; +pub const ANYRANGEOID: u32 = 3831; +pub const ANYCOMPATIBLEOID: u32 = 5077; +pub const ANYCOMPATIBLEARRAYOID: u32 = 5078; +pub const ANYCOMPATIBLENONARRAYOID: u32 = 5079; +pub const ANYCOMPATIBLERANGEOID: u32 = 5080; +pub const ANYMULTIRANGEOID: u32 = 4537; +pub const ANYCOMPATIBLEMULTIRANGEOID: u32 = 4538; +pub const PG_BRIN_BLOOM_SUMMARYOID: u32 = 4600; +pub const PG_BRIN_MINMAX_MULTI_SUMMARYOID: u32 = 4601; +pub const BOOLARRAYOID: u32 = 1000; +pub const BYTEAARRAYOID: u32 = 1001; +pub const CHARARRAYOID: u32 = 1002; +pub const NAMEARRAYOID: u32 = 1003; +pub const INT8ARRAYOID: u32 = 1016; +pub const INT2ARRAYOID: u32 = 1005; +pub const INT2VECTORARRAYOID: u32 = 1006; +pub const INT4ARRAYOID: u32 = 1007; +pub const REGPROCARRAYOID: u32 = 1008; +pub const TEXTARRAYOID: u32 = 1009; +pub const OIDARRAYOID: u32 = 1028; +pub const TIDARRAYOID: u32 = 1010; +pub const XIDARRAYOID: u32 = 1011; +pub const CIDARRAYOID: u32 = 1012; +pub const OIDVECTORARRAYOID: u32 = 1013; +pub const PG_TYPEARRAYOID: u32 = 210; +pub const PG_ATTRIBUTEARRAYOID: u32 = 270; +pub const PG_PROCARRAYOID: u32 = 272; +pub const PG_CLASSARRAYOID: u32 = 273; +pub const JSONARRAYOID: u32 = 199; +pub const XMLARRAYOID: u32 = 143; +pub const XID8ARRAYOID: u32 = 271; +pub const POINTARRAYOID: u32 = 1017; +pub const LSEGARRAYOID: u32 = 1018; +pub const PATHARRAYOID: u32 = 1019; +pub const BOXARRAYOID: u32 = 1020; +pub const POLYGONARRAYOID: u32 = 1027; +pub const LINEARRAYOID: u32 = 629; +pub const FLOAT4ARRAYOID: u32 = 1021; +pub const FLOAT8ARRAYOID: u32 = 1022; +pub const CIRCLEARRAYOID: u32 = 719; +pub const MONEYARRAYOID: u32 = 791; +pub const MACADDRARRAYOID: u32 = 1040; +pub const INETARRAYOID: u32 = 1041; +pub const CIDRARRAYOID: u32 = 651; +pub const MACADDR8ARRAYOID: u32 = 775; +pub const ACLITEMARRAYOID: u32 = 1034; +pub const BPCHARARRAYOID: u32 = 1014; +pub const VARCHARARRAYOID: u32 = 1015; +pub const DATEARRAYOID: u32 = 1182; +pub const TIMEARRAYOID: u32 = 1183; +pub const TIMESTAMPARRAYOID: u32 = 1115; +pub const TIMESTAMPTZARRAYOID: u32 = 1185; +pub const INTERVALARRAYOID: u32 = 1187; +pub const TIMETZARRAYOID: u32 = 1270; +pub const BITARRAYOID: u32 = 1561; +pub const VARBITARRAYOID: u32 = 1563; +pub const NUMERICARRAYOID: u32 = 1231; +pub const REFCURSORARRAYOID: u32 = 2201; +pub const REGPROCEDUREARRAYOID: u32 = 2207; +pub const REGOPERARRAYOID: u32 = 2208; +pub const REGOPERATORARRAYOID: u32 = 2209; +pub const REGCLASSARRAYOID: u32 = 2210; +pub const REGCOLLATIONARRAYOID: u32 = 4192; +pub const REGTYPEARRAYOID: u32 = 2211; +pub const REGROLEARRAYOID: u32 = 4097; +pub const REGNAMESPACEARRAYOID: u32 = 4090; +pub const UUIDARRAYOID: u32 = 2951; +pub const PG_LSNARRAYOID: u32 = 3221; +pub const TSVECTORARRAYOID: u32 = 3643; +pub const GTSVECTORARRAYOID: u32 = 3644; +pub const TSQUERYARRAYOID: u32 = 3645; +pub const REGCONFIGARRAYOID: u32 = 3735; +pub const REGDICTIONARYARRAYOID: u32 = 3770; +pub const JSONBARRAYOID: u32 = 3807; +pub const JSONPATHARRAYOID: u32 = 4073; +pub const TXID_SNAPSHOTARRAYOID: u32 = 2949; +pub const PG_SNAPSHOTARRAYOID: u32 = 5039; +pub const INT4RANGEARRAYOID: u32 = 3905; +pub const NUMRANGEARRAYOID: u32 = 3907; +pub const TSRANGEARRAYOID: u32 = 3909; +pub const TSTZRANGEARRAYOID: u32 = 3911; +pub const DATERANGEARRAYOID: u32 = 3913; +pub const INT8RANGEARRAYOID: u32 = 3927; +pub const INT4MULTIRANGEARRAYOID: u32 = 6150; +pub const NUMMULTIRANGEARRAYOID: u32 = 6151; +pub const TSMULTIRANGEARRAYOID: u32 = 6152; +pub const TSTZMULTIRANGEARRAYOID: u32 = 6153; +pub const DATEMULTIRANGEARRAYOID: u32 = 6155; +pub const INT8MULTIRANGEARRAYOID: u32 = 6157; +pub const CSTRINGARRAYOID: u32 = 1263; +pub const PD_HAS_FREE_LINES: u32 = 1; +pub const PD_PAGE_FULL: u32 = 2; +pub const PD_ALL_VISIBLE: u32 = 4; +pub const PD_VALID_FLAG_BITS: u32 = 7; +pub const PG_PAGE_LAYOUT_VERSION: u32 = 4; +pub const PG_DATA_CHECKSUM_VERSION: u32 = 1; +pub const PAI_OVERWRITE: u32 = 1; +pub const PAI_IS_HEAP: u32 = 2; +pub const PIV_LOG_WARNING: u32 = 1; +pub const PIV_REPORT_STAT: u32 = 2; +pub const VARLENA_EXTSIZE_BITS: u32 = 30; +pub const VARLENA_EXTSIZE_MASK: u32 = 1073741823; +pub const VARATT_SHORT_MAX: u32 = 127; +pub const MaxTupleAttributeNumber: u32 = 1664; +pub const MaxHeapAttributeNumber: u32 = 1600; +pub const FIELDNO_HEAPTUPLEHEADERDATA_INFOMASK2: u32 = 2; +pub const FIELDNO_HEAPTUPLEHEADERDATA_INFOMASK: u32 = 3; +pub const FIELDNO_HEAPTUPLEHEADERDATA_HOFF: u32 = 4; +pub const FIELDNO_HEAPTUPLEHEADERDATA_BITS: u32 = 5; +pub const HEAP_HASNULL: u32 = 1; +pub const HEAP_HASVARWIDTH: u32 = 2; +pub const HEAP_HASEXTERNAL: u32 = 4; +pub const HEAP_HASOID_OLD: u32 = 8; +pub const HEAP_XMAX_KEYSHR_LOCK: u32 = 16; +pub const HEAP_COMBOCID: u32 = 32; +pub const HEAP_XMAX_EXCL_LOCK: u32 = 64; +pub const HEAP_XMAX_LOCK_ONLY: u32 = 128; +pub const HEAP_XMAX_SHR_LOCK: u32 = 80; +pub const HEAP_LOCK_MASK: u32 = 80; +pub const HEAP_XMIN_COMMITTED: u32 = 256; +pub const HEAP_XMIN_INVALID: u32 = 512; +pub const HEAP_XMIN_FROZEN: u32 = 768; +pub const HEAP_XMAX_COMMITTED: u32 = 1024; +pub const HEAP_XMAX_INVALID: u32 = 2048; +pub const HEAP_XMAX_IS_MULTI: u32 = 4096; +pub const HEAP_UPDATED: u32 = 8192; +pub const HEAP_MOVED_OFF: u32 = 16384; +pub const HEAP_MOVED_IN: u32 = 32768; +pub const HEAP_MOVED: u32 = 49152; +pub const HEAP_XACT_MASK: u32 = 65520; +pub const HEAP_XMAX_BITS: u32 = 7376; +pub const HEAP_NATTS_MASK: u32 = 2047; +pub const HEAP_KEYS_UPDATED: u32 = 8192; +pub const HEAP_HOT_UPDATED: u32 = 16384; +pub const HEAP_ONLY_TUPLE: u32 = 32768; +pub const HEAP2_XACT_MASK: u32 = 57344; +pub const HEAP_TUPLE_HAS_MATCH: u32 = 32768; +pub const MaxAttrSize: u32 = 10485760; +pub const SelfItemPointerAttributeNumber: i32 = -1; +pub const MinTransactionIdAttributeNumber: i32 = -2; +pub const MinCommandIdAttributeNumber: i32 = -3; +pub const MaxTransactionIdAttributeNumber: i32 = -4; +pub const MaxCommandIdAttributeNumber: i32 = -5; +pub const TableOidAttributeNumber: i32 = -6; +pub const FirstLowInvalidHeapAttributeNumber: i32 = -7; +pub const InvalidBuffer: u32 = 0; +pub const TTS_FLAG_EMPTY: u32 = 2; +pub const TTS_FLAG_SHOULDFREE: u32 = 4; +pub const TTS_FLAG_SLOW: u32 = 8; +pub const TTS_FLAG_FIXED: u32 = 16; +pub const FIELDNO_TUPLETABLESLOT_FLAGS: u32 = 1; +pub const FIELDNO_TUPLETABLESLOT_NVALID: u32 = 2; +pub const FIELDNO_TUPLETABLESLOT_TUPLEDESCRIPTOR: u32 = 4; +pub const FIELDNO_TUPLETABLESLOT_VALUES: u32 = 5; +pub const FIELDNO_TUPLETABLESLOT_ISNULL: u32 = 6; +pub const FIELDNO_HEAPTUPLETABLESLOT_TUPLE: u32 = 1; +pub const FIELDNO_HEAPTUPLETABLESLOT_OFF: u32 = 2; +pub const FIELDNO_MINIMALTUPLETABLESLOT_TUPLE: u32 = 1; +pub const FIELDNO_MINIMALTUPLETABLESLOT_OFF: u32 = 4; +pub const BITS_PER_BITMAPWORD: u32 = 64; +pub const CLOCK_REALTIME: u32 = 0; +pub const CLOCK_MONOTONIC: u32 = 1; +pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2; +pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3; +pub const CLOCK_MONOTONIC_RAW: u32 = 4; +pub const CLOCK_REALTIME_COARSE: u32 = 5; +pub const CLOCK_MONOTONIC_COARSE: u32 = 6; +pub const CLOCK_BOOTTIME: u32 = 7; +pub const CLOCK_REALTIME_ALARM: u32 = 8; +pub const CLOCK_BOOTTIME_ALARM: u32 = 9; +pub const CLOCK_TAI: u32 = 11; +pub const TIMER_ABSTIME: u32 = 1; +pub const __struct_tm_defined: u32 = 1; +pub const __itimerspec_defined: u32 = 1; +pub const TIME_UTC: u32 = 1; +pub const PG_INSTR_CLOCK: u32 = 1; +pub const FIELDNO_FUNCTIONCALLINFODATA_ISNULL: u32 = 4; +pub const FIELDNO_FUNCTIONCALLINFODATA_ARGS: u32 = 6; +#[allow(unsafe_code)] +pub const PG_MAGIC_FUNCTION_NAME_STRING: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"Pg_magic_func\0") }; +pub const AGG_CONTEXT_AGGREGATE: u32 = 1; +pub const AGG_CONTEXT_WINDOW: u32 = 2; +pub const PARAM_FLAG_CONST: u32 = 1; +pub const BTLessStrategyNumber: u32 = 1; +pub const BTLessEqualStrategyNumber: u32 = 2; +pub const BTEqualStrategyNumber: u32 = 3; +pub const BTGreaterEqualStrategyNumber: u32 = 4; +pub const BTGreaterStrategyNumber: u32 = 5; +pub const BTMaxStrategyNumber: u32 = 5; +pub const HTEqualStrategyNumber: u32 = 1; +pub const HTMaxStrategyNumber: u32 = 1; +pub const RTLeftStrategyNumber: u32 = 1; +pub const RTOverLeftStrategyNumber: u32 = 2; +pub const RTOverlapStrategyNumber: u32 = 3; +pub const RTOverRightStrategyNumber: u32 = 4; +pub const RTRightStrategyNumber: u32 = 5; +pub const RTSameStrategyNumber: u32 = 6; +pub const RTContainsStrategyNumber: u32 = 7; +pub const RTContainedByStrategyNumber: u32 = 8; +pub const RTOverBelowStrategyNumber: u32 = 9; +pub const RTBelowStrategyNumber: u32 = 10; +pub const RTAboveStrategyNumber: u32 = 11; +pub const RTOverAboveStrategyNumber: u32 = 12; +pub const RTOldContainsStrategyNumber: u32 = 13; +pub const RTOldContainedByStrategyNumber: u32 = 14; +pub const RTKNNSearchStrategyNumber: u32 = 15; +pub const RTContainsElemStrategyNumber: u32 = 16; +pub const RTAdjacentStrategyNumber: u32 = 17; +pub const RTEqualStrategyNumber: u32 = 18; +pub const RTNotEqualStrategyNumber: u32 = 19; +pub const RTLessStrategyNumber: u32 = 20; +pub const RTLessEqualStrategyNumber: u32 = 21; +pub const RTGreaterStrategyNumber: u32 = 22; +pub const RTGreaterEqualStrategyNumber: u32 = 23; +pub const RTSubStrategyNumber: u32 = 24; +pub const RTSubEqualStrategyNumber: u32 = 25; +pub const RTSuperStrategyNumber: u32 = 26; +pub const RTSuperEqualStrategyNumber: u32 = 27; +pub const RTPrefixStrategyNumber: u32 = 28; +pub const RTOldBelowStrategyNumber: u32 = 29; +pub const RTOldAboveStrategyNumber: u32 = 30; +pub const RTMaxStrategyNumber: u32 = 30; +pub const CATALOG_VERSION_NO: u32 = 202406281; +pub const OIDCHARS: u32 = 10; +pub const FORKNAMECHARS: u32 = 4; +pub const INNER_VAR: i32 = -1; +pub const OUTER_VAR: i32 = -2; +pub const INDEX_VAR: i32 = -3; +pub const ROWID_VAR: i32 = -4; +pub const PRS2_OLD_VARNO: u32 = 1; +pub const PRS2_NEW_VARNO: u32 = 2; +pub const _LIBC_LIMITS_H_: u32 = 1; +pub const MB_LEN_MAX: u32 = 16; +pub const _BITS_POSIX1_LIM_H: u32 = 1; +pub const _POSIX_AIO_LISTIO_MAX: u32 = 2; +pub const _POSIX_AIO_MAX: u32 = 1; +pub const _POSIX_ARG_MAX: u32 = 4096; +pub const _POSIX_CHILD_MAX: u32 = 25; +pub const _POSIX_DELAYTIMER_MAX: u32 = 32; +pub const _POSIX_HOST_NAME_MAX: u32 = 255; +pub const _POSIX_LINK_MAX: u32 = 8; +pub const _POSIX_LOGIN_NAME_MAX: u32 = 9; +pub const _POSIX_MAX_CANON: u32 = 255; +pub const _POSIX_MAX_INPUT: u32 = 255; +pub const _POSIX_MQ_OPEN_MAX: u32 = 8; +pub const _POSIX_MQ_PRIO_MAX: u32 = 32; +pub const _POSIX_NAME_MAX: u32 = 14; +pub const _POSIX_NGROUPS_MAX: u32 = 8; +pub const _POSIX_OPEN_MAX: u32 = 20; +pub const _POSIX_PATH_MAX: u32 = 256; +pub const _POSIX_PIPE_BUF: u32 = 512; +pub const _POSIX_RE_DUP_MAX: u32 = 255; +pub const _POSIX_RTSIG_MAX: u32 = 8; +pub const _POSIX_SEM_NSEMS_MAX: u32 = 256; +pub const _POSIX_SEM_VALUE_MAX: u32 = 32767; +pub const _POSIX_SIGQUEUE_MAX: u32 = 32; +pub const _POSIX_SSIZE_MAX: u32 = 32767; +pub const _POSIX_STREAM_MAX: u32 = 8; +pub const _POSIX_SYMLINK_MAX: u32 = 255; +pub const _POSIX_SYMLOOP_MAX: u32 = 8; +pub const _POSIX_TIMER_MAX: u32 = 32; +pub const _POSIX_TTY_NAME_MAX: u32 = 9; +pub const _POSIX_TZNAME_MAX: u32 = 6; +pub const _POSIX_CLOCKRES_MIN: u32 = 20000000; +pub const NR_OPEN: u32 = 1024; +pub const NGROUPS_MAX: u32 = 65536; +pub const ARG_MAX: u32 = 131072; +pub const LINK_MAX: u32 = 127; +pub const MAX_CANON: u32 = 255; +pub const MAX_INPUT: u32 = 255; +pub const NAME_MAX: u32 = 255; +pub const PATH_MAX: u32 = 4096; +pub const PIPE_BUF: u32 = 4096; +pub const XATTR_NAME_MAX: u32 = 255; +pub const XATTR_SIZE_MAX: u32 = 65536; +pub const XATTR_LIST_MAX: u32 = 65536; +pub const RTSIG_MAX: u32 = 32; +pub const _POSIX_THREAD_KEYS_MAX: u32 = 128; +pub const PTHREAD_KEYS_MAX: u32 = 1024; +pub const _POSIX_THREAD_DESTRUCTOR_ITERATIONS: u32 = 4; +pub const PTHREAD_DESTRUCTOR_ITERATIONS: u32 = 4; +pub const _POSIX_THREAD_THREADS_MAX: u32 = 64; +pub const AIO_PRIO_DELTA_MAX: u32 = 20; +pub const PTHREAD_STACK_MIN: u32 = 16384; +pub const DELAYTIMER_MAX: u32 = 2147483647; +pub const TTY_NAME_MAX: u32 = 32; +pub const LOGIN_NAME_MAX: u32 = 256; +pub const HOST_NAME_MAX: u32 = 64; +pub const MQ_PRIO_MAX: u32 = 32768; +pub const SEM_VALUE_MAX: u32 = 2147483647; +pub const _BITS_POSIX2_LIM_H: u32 = 1; +pub const _POSIX2_BC_BASE_MAX: u32 = 99; +pub const _POSIX2_BC_DIM_MAX: u32 = 2048; +pub const _POSIX2_BC_SCALE_MAX: u32 = 99; +pub const _POSIX2_BC_STRING_MAX: u32 = 1000; +pub const _POSIX2_COLL_WEIGHTS_MAX: u32 = 2; +pub const _POSIX2_EXPR_NEST_MAX: u32 = 32; +pub const _POSIX2_LINE_MAX: u32 = 2048; +pub const _POSIX2_RE_DUP_MAX: u32 = 255; +pub const _POSIX2_CHARCLASS_NAME_MAX: u32 = 14; +pub const BC_BASE_MAX: u32 = 99; +pub const BC_DIM_MAX: u32 = 2048; +pub const BC_SCALE_MAX: u32 = 99; +pub const BC_STRING_MAX: u32 = 1000; +pub const COLL_WEIGHTS_MAX: u32 = 255; +pub const EXPR_NEST_MAX: u32 = 32; +pub const LINE_MAX: u32 = 2048; +pub const CHARCLASS_NAME_MAX: u32 = 2048; +pub const RE_DUP_MAX: u32 = 32767; +pub const DSM_IMPL_POSIX: u32 = 1; +pub const DSM_IMPL_SYSV: u32 = 2; +pub const DSM_IMPL_WINDOWS: u32 = 3; +pub const DSM_IMPL_MMAP: u32 = 4; +pub const DEFAULT_DYNAMIC_SHARED_MEMORY_TYPE: u32 = 1; +#[allow(unsafe_code)] +pub const PG_DYNSHMEM_DIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_dynshmem\0") }; +#[allow(unsafe_code)] +pub const PG_DYNSHMEM_MMAP_FILE_PREFIX: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"mmap.\0") }; +pub const DSM_CREATE_NULL_IF_MAXSEGMENTS: u32 = 1; +pub const SIZEOF_DSA_POINTER: u32 = 8; +#[allow(unsafe_code)] +pub const DSA_POINTER_FORMAT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"%016lx\0") }; +pub const DSA_ALLOC_HUGE: u32 = 1; +pub const DSA_ALLOC_NO_OOM: u32 = 2; +pub const DSA_ALLOC_ZERO: u32 = 4; +pub const DSA_OFFSET_WIDTH: u32 = 40; +pub const INVALID_PROC_NUMBER: i32 = -1; +pub const DEFAULT_SPINS_PER_DELAY: u32 = 100; +pub const HASH_PARTITION: u32 = 1; +pub const HASH_SEGMENT: u32 = 2; +pub const HASH_DIRSIZE: u32 = 4; +pub const HASH_ELEM: u32 = 8; +pub const HASH_STRINGS: u32 = 16; +pub const HASH_BLOBS: u32 = 32; +pub const HASH_FUNCTION: u32 = 64; +pub const HASH_COMPARE: u32 = 128; +pub const HASH_KEYCOPY: u32 = 256; +pub const HASH_ALLOC: u32 = 512; +pub const HASH_CONTEXT: u32 = 1024; +pub const HASH_SHARED_MEM: u32 = 2048; +pub const HASH_ATTACH: u32 = 4096; +pub const HASH_FIXED_SIZE: u32 = 8192; +pub const NO_MAX_DSIZE: i32 = -1; +pub const __iovec_defined: u32 = 1; +pub const __IOV_MAX: u32 = 1024; +pub const UIO_MAXIOV: u32 = 1024; +pub const _POSIX_VERSION: u32 = 200809; +pub const __POSIX2_THIS_VERSION: u32 = 200809; +pub const _POSIX2_VERSION: u32 = 200809; +pub const _POSIX2_C_VERSION: u32 = 200809; +pub const _POSIX2_C_BIND: u32 = 200809; +pub const _POSIX2_C_DEV: u32 = 200809; +pub const _POSIX2_SW_DEV: u32 = 200809; +pub const _POSIX2_LOCALEDEF: u32 = 200809; +pub const _XOPEN_VERSION: u32 = 700; +pub const _XOPEN_XCU_VERSION: u32 = 4; +pub const _XOPEN_XPG2: u32 = 1; +pub const _XOPEN_XPG3: u32 = 1; +pub const _XOPEN_XPG4: u32 = 1; +pub const _XOPEN_UNIX: u32 = 1; +pub const _XOPEN_ENH_I18N: u32 = 1; +pub const _XOPEN_LEGACY: u32 = 1; +pub const _POSIX_JOB_CONTROL: u32 = 1; +pub const _POSIX_SAVED_IDS: u32 = 1; +pub const _POSIX_PRIORITY_SCHEDULING: u32 = 200809; +pub const _POSIX_SYNCHRONIZED_IO: u32 = 200809; +pub const _POSIX_FSYNC: u32 = 200809; +pub const _POSIX_MAPPED_FILES: u32 = 200809; +pub const _POSIX_MEMLOCK: u32 = 200809; +pub const _POSIX_MEMLOCK_RANGE: u32 = 200809; +pub const _POSIX_MEMORY_PROTECTION: u32 = 200809; +pub const _POSIX_CHOWN_RESTRICTED: u32 = 0; +pub const _POSIX_VDISABLE: u8 = 0u8; +pub const _POSIX_NO_TRUNC: u32 = 1; +pub const _XOPEN_REALTIME: u32 = 1; +pub const _XOPEN_REALTIME_THREADS: u32 = 1; +pub const _XOPEN_SHM: u32 = 1; +pub const _POSIX_THREADS: u32 = 200809; +pub const _POSIX_REENTRANT_FUNCTIONS: u32 = 1; +pub const _POSIX_THREAD_SAFE_FUNCTIONS: u32 = 200809; +pub const _POSIX_THREAD_PRIORITY_SCHEDULING: u32 = 200809; +pub const _POSIX_THREAD_ATTR_STACKSIZE: u32 = 200809; +pub const _POSIX_THREAD_ATTR_STACKADDR: u32 = 200809; +pub const _POSIX_THREAD_PRIO_INHERIT: u32 = 200809; +pub const _POSIX_THREAD_PRIO_PROTECT: u32 = 200809; +pub const _POSIX_THREAD_ROBUST_PRIO_INHERIT: u32 = 200809; +pub const _POSIX_THREAD_ROBUST_PRIO_PROTECT: i32 = -1; +pub const _POSIX_SEMAPHORES: u32 = 200809; +pub const _POSIX_REALTIME_SIGNALS: u32 = 200809; +pub const _POSIX_ASYNCHRONOUS_IO: u32 = 200809; +pub const _POSIX_ASYNC_IO: u32 = 1; +pub const _LFS_ASYNCHRONOUS_IO: u32 = 1; +pub const _POSIX_PRIORITIZED_IO: u32 = 200809; +pub const _LFS64_ASYNCHRONOUS_IO: u32 = 1; +pub const _LFS_LARGEFILE: u32 = 1; +pub const _LFS64_LARGEFILE: u32 = 1; +pub const _LFS64_STDIO: u32 = 1; +pub const _POSIX_SHARED_MEMORY_OBJECTS: u32 = 200809; +pub const _POSIX_CPUTIME: u32 = 0; +pub const _POSIX_THREAD_CPUTIME: u32 = 0; +pub const _POSIX_REGEXP: u32 = 1; +pub const _POSIX_READER_WRITER_LOCKS: u32 = 200809; +pub const _POSIX_SHELL: u32 = 1; +pub const _POSIX_TIMEOUTS: u32 = 200809; +pub const _POSIX_SPIN_LOCKS: u32 = 200809; +pub const _POSIX_SPAWN: u32 = 200809; +pub const _POSIX_TIMERS: u32 = 200809; +pub const _POSIX_BARRIERS: u32 = 200809; +pub const _POSIX_MESSAGE_PASSING: u32 = 200809; +pub const _POSIX_THREAD_PROCESS_SHARED: u32 = 200809; +pub const _POSIX_MONOTONIC_CLOCK: u32 = 0; +pub const _POSIX_CLOCK_SELECTION: u32 = 200809; +pub const _POSIX_ADVISORY_INFO: u32 = 200809; +pub const _POSIX_IPV6: u32 = 200809; +pub const _POSIX_RAW_SOCKETS: u32 = 200809; +pub const _POSIX2_CHAR_TERM: u32 = 200809; +pub const _POSIX_SPORADIC_SERVER: i32 = -1; +pub const _POSIX_THREAD_SPORADIC_SERVER: i32 = -1; +pub const _POSIX_TRACE: i32 = -1; +pub const _POSIX_TRACE_EVENT_FILTER: i32 = -1; +pub const _POSIX_TRACE_INHERIT: i32 = -1; +pub const _POSIX_TRACE_LOG: i32 = -1; +pub const _POSIX_TYPED_MEMORY_OBJECTS: i32 = -1; +pub const _POSIX_V7_LPBIG_OFFBIG: i32 = -1; +pub const _POSIX_V6_LPBIG_OFFBIG: i32 = -1; +pub const _XBS5_LPBIG_OFFBIG: i32 = -1; +pub const _POSIX_V7_LP64_OFF64: u32 = 1; +pub const _POSIX_V6_LP64_OFF64: u32 = 1; +pub const _XBS5_LP64_OFF64: u32 = 1; +#[allow(unsafe_code)] +pub const __ILP32_OFF32_CFLAGS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-m32\0") }; +#[allow(unsafe_code)] +pub const __ILP32_OFF32_LDFLAGS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-m32\0") }; +#[allow(unsafe_code)] +pub const __ILP32_OFFBIG_CFLAGS: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked( + b"-m32 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64\0", + ) +}; +#[allow(unsafe_code)] +pub const __ILP32_OFFBIG_LDFLAGS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-m32\0") }; +#[allow(unsafe_code)] +pub const __LP64_OFF64_CFLAGS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-m64\0") }; +#[allow(unsafe_code)] +pub const __LP64_OFF64_LDFLAGS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-m64\0") }; +pub const STDIN_FILENO: u32 = 0; +pub const STDOUT_FILENO: u32 = 1; +pub const STDERR_FILENO: u32 = 2; +pub const L_SET: u32 = 0; +pub const L_INCR: u32 = 1; +pub const L_XTND: u32 = 2; +pub const IOV_MAX: u32 = 16; +pub const _DIRENT_MATCHES_DIRENT64: u32 = 1; +pub const MAXNAMLEN: u32 = 255; +pub const IO_DIRECT_DATA: u32 = 1; +pub const IO_DIRECT_WAL: u32 = 2; +pub const IO_DIRECT_WAL_INIT: u32 = 4; +pub const PG_O_DIRECT: u32 = 0; +pub const SHARED_TUPLESTORE_SINGLE_PASS: u32 = 1; +pub const MAX_TIMESTAMP_PRECISION: u32 = 6; +pub const MAX_INTERVAL_PRECISION: u32 = 6; +pub const TS_PREC_INV: f64 = 1000000.0; +pub const DAYS_PER_YEAR: f64 = 365.25; +pub const MONTHS_PER_YEAR: u32 = 12; +pub const DAYS_PER_MONTH: u32 = 30; +pub const DAYS_PER_WEEK: u32 = 7; +pub const HOURS_PER_DAY: u32 = 24; +pub const SECS_PER_YEAR: u32 = 31557600; +pub const SECS_PER_DAY: u32 = 86400; +pub const SECS_PER_HOUR: u32 = 3600; +pub const SECS_PER_MINUTE: u32 = 60; +pub const MINS_PER_HOUR: u32 = 60; +pub const MAX_TZDISP_HOUR: u32 = 15; +pub const TZDISP_LIMIT: u32 = 57600; +pub const JULIAN_MINYEAR: i32 = -4713; +pub const JULIAN_MINMONTH: u32 = 11; +pub const JULIAN_MINDAY: u32 = 24; +pub const JULIAN_MAXYEAR: u32 = 5874898; +pub const JULIAN_MAXMONTH: u32 = 6; +pub const JULIAN_MAXDAY: u32 = 3; +pub const UNIX_EPOCH_JDATE: u32 = 2440588; +pub const POSTGRES_EPOCH_JDATE: u32 = 2451545; +pub const DATETIME_MIN_JULIAN: u32 = 0; +pub const DATE_END_JULIAN: u32 = 2147483494; +pub const TIMESTAMP_END_JULIAN: u32 = 109203528; +#[allow(unsafe_code)] +pub const RELCACHE_INIT_FILENAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_internal.init\0") }; +pub const SK_ISNULL: u32 = 1; +pub const SK_UNARY: u32 = 2; +pub const SK_ROW_HEADER: u32 = 4; +pub const SK_ROW_MEMBER: u32 = 8; +pub const SK_ROW_END: u32 = 16; +pub const SK_SEARCHARRAY: u32 = 32; +pub const SK_SEARCHNULL: u32 = 64; +pub const SK_SEARCHNOTNULL: u32 = 128; +pub const SK_ORDER_BY: u32 = 256; +pub const NoLock: u32 = 0; +pub const AccessShareLock: u32 = 1; +pub const RowShareLock: u32 = 2; +pub const RowExclusiveLock: u32 = 3; +pub const ShareUpdateExclusiveLock: u32 = 4; +pub const ShareLock: u32 = 5; +pub const ShareRowExclusiveLock: u32 = 6; +pub const ExclusiveLock: u32 = 7; +pub const AccessExclusiveLock: u32 = 8; +pub const MaxLockMode: u32 = 8; +pub const TYPECACHE_EQ_OPR: u32 = 1; +pub const TYPECACHE_LT_OPR: u32 = 2; +pub const TYPECACHE_GT_OPR: u32 = 4; +pub const TYPECACHE_CMP_PROC: u32 = 8; +pub const TYPECACHE_HASH_PROC: u32 = 16; +pub const TYPECACHE_EQ_OPR_FINFO: u32 = 32; +pub const TYPECACHE_CMP_PROC_FINFO: u32 = 64; +pub const TYPECACHE_HASH_PROC_FINFO: u32 = 128; +pub const TYPECACHE_TUPDESC: u32 = 256; +pub const TYPECACHE_BTREE_OPFAMILY: u32 = 512; +pub const TYPECACHE_HASH_OPFAMILY: u32 = 1024; +pub const TYPECACHE_RANGE_INFO: u32 = 2048; +pub const TYPECACHE_DOMAIN_BASE_INFO: u32 = 4096; +pub const TYPECACHE_DOMAIN_CONSTR_INFO: u32 = 8192; +pub const TYPECACHE_HASH_EXTENDED_PROC: u32 = 16384; +pub const TYPECACHE_HASH_EXTENDED_PROC_FINFO: u32 = 32768; +pub const TYPECACHE_MULTIRANGE_INFO: u32 = 65536; +pub const BRIN_PROCNUM_OPCINFO: u32 = 1; +pub const BRIN_PROCNUM_ADDVALUE: u32 = 2; +pub const BRIN_PROCNUM_CONSISTENT: u32 = 3; +pub const BRIN_PROCNUM_UNION: u32 = 4; +pub const BRIN_MANDATORY_NPROCS: u32 = 4; +pub const BRIN_PROCNUM_OPTIONS: u32 = 5; +pub const BRIN_FIRST_OPTIONAL_PROCNUM: u32 = 11; +pub const BRIN_LAST_OPTIONAL_PROCNUM: u32 = 15; +pub const BRIN_OFFSET_MASK: u32 = 31; +pub const BRIN_EMPTY_RANGE_MASK: u32 = 32; +pub const BRIN_PLACEHOLDER_MASK: u32 = 64; +pub const BRIN_NULLS_MASK: u32 = 128; +pub const INDEX_SIZE_MASK: u32 = 8191; +pub const INDEX_AM_RESERVED_BIT: u32 = 8192; +pub const INDEX_VAR_MASK: u32 = 16384; +pub const INDEX_NULL_MASK: u32 = 32768; +pub const NUM_TUPLESORTMETHODS: u32 = 4; +pub const TUPLESORT_NONE: u32 = 0; +pub const TUPLESORT_RANDOMACCESS: u32 = 1; +pub const TUPLESORT_ALLOWBOUNDED: u32 = 2; +pub const EEO_FLAG_IS_QUAL: u32 = 1; +pub const FIELDNO_EXPRSTATE_RESNULL: u32 = 2; +pub const FIELDNO_EXPRSTATE_RESVALUE: u32 = 3; +pub const FIELDNO_EXPRSTATE_RESULTSLOT: u32 = 4; +pub const FIELDNO_EXPRSTATE_PARENT: u32 = 11; +pub const FIELDNO_EXPRCONTEXT_SCANTUPLE: u32 = 1; +pub const FIELDNO_EXPRCONTEXT_INNERTUPLE: u32 = 2; +pub const FIELDNO_EXPRCONTEXT_OUTERTUPLE: u32 = 3; +pub const FIELDNO_EXPRCONTEXT_AGGVALUES: u32 = 8; +pub const FIELDNO_EXPRCONTEXT_AGGNULLS: u32 = 9; +pub const FIELDNO_EXPRCONTEXT_CASEDATUM: u32 = 10; +pub const FIELDNO_EXPRCONTEXT_CASENULL: u32 = 11; +pub const FIELDNO_EXPRCONTEXT_DOMAINDATUM: u32 = 12; +pub const FIELDNO_EXPRCONTEXT_DOMAINNULL: u32 = 13; +pub const TRY_POPCNT_FAST: u32 = 1; +pub const MERGE_INSERT: u32 = 1; +pub const MERGE_UPDATE: u32 = 2; +pub const MERGE_DELETE: u32 = 4; +pub const FIELDNO_AGGSTATE_CURAGGCONTEXT: u32 = 14; +pub const FIELDNO_AGGSTATE_CURPERTRANS: u32 = 16; +pub const FIELDNO_AGGSTATE_CURRENT_SET: u32 = 20; +pub const FIELDNO_AGGSTATE_ALL_PERGROUPS: u32 = 53; +pub const COMPLETION_TAG_BUFSIZE: u32 = 64; +pub const ACL_INSERT: u32 = 1; +pub const ACL_SELECT: u32 = 2; +pub const ACL_UPDATE: u32 = 4; +pub const ACL_DELETE: u32 = 8; +pub const ACL_TRUNCATE: u32 = 16; +pub const ACL_REFERENCES: u32 = 32; +pub const ACL_TRIGGER: u32 = 64; +pub const ACL_EXECUTE: u32 = 128; +pub const ACL_USAGE: u32 = 256; +pub const ACL_CREATE: u32 = 512; +pub const ACL_CREATE_TEMP: u32 = 1024; +pub const ACL_CONNECT: u32 = 2048; +pub const ACL_SET: u32 = 4096; +pub const ACL_ALTER_SYSTEM: u32 = 8192; +pub const ACL_MAINTAIN: u32 = 16384; +pub const N_ACL_RIGHTS: u32 = 15; +pub const ACL_NO_RIGHTS: u32 = 0; +pub const ACL_SELECT_FOR_UPDATE: u32 = 4; +pub const FRAMEOPTION_NONDEFAULT: u32 = 1; +pub const FRAMEOPTION_RANGE: u32 = 2; +pub const FRAMEOPTION_ROWS: u32 = 4; +pub const FRAMEOPTION_GROUPS: u32 = 8; +pub const FRAMEOPTION_BETWEEN: u32 = 16; +pub const FRAMEOPTION_START_UNBOUNDED_PRECEDING: u32 = 32; +pub const FRAMEOPTION_END_UNBOUNDED_PRECEDING: u32 = 64; +pub const FRAMEOPTION_START_UNBOUNDED_FOLLOWING: u32 = 128; +pub const FRAMEOPTION_END_UNBOUNDED_FOLLOWING: u32 = 256; +pub const FRAMEOPTION_START_CURRENT_ROW: u32 = 512; +pub const FRAMEOPTION_END_CURRENT_ROW: u32 = 1024; +pub const FRAMEOPTION_START_OFFSET_PRECEDING: u32 = 2048; +pub const FRAMEOPTION_END_OFFSET_PRECEDING: u32 = 4096; +pub const FRAMEOPTION_START_OFFSET_FOLLOWING: u32 = 8192; +pub const FRAMEOPTION_END_OFFSET_FOLLOWING: u32 = 16384; +pub const FRAMEOPTION_EXCLUDE_CURRENT_ROW: u32 = 32768; +pub const FRAMEOPTION_EXCLUDE_GROUP: u32 = 65536; +pub const FRAMEOPTION_EXCLUDE_TIES: u32 = 131072; +pub const FRAMEOPTION_START_OFFSET: u32 = 10240; +pub const FRAMEOPTION_END_OFFSET: u32 = 20480; +pub const FRAMEOPTION_EXCLUSION: u32 = 229376; +pub const FRAMEOPTION_DEFAULTS: u32 = 1058; +pub const FKCONSTR_ACTION_NOACTION: u8 = 97u8; +pub const FKCONSTR_ACTION_RESTRICT: u8 = 114u8; +pub const FKCONSTR_ACTION_CASCADE: u8 = 99u8; +pub const FKCONSTR_ACTION_SETNULL: u8 = 110u8; +pub const FKCONSTR_ACTION_SETDEFAULT: u8 = 100u8; +pub const FKCONSTR_MATCH_FULL: u8 = 102u8; +pub const FKCONSTR_MATCH_PARTIAL: u8 = 112u8; +pub const FKCONSTR_MATCH_SIMPLE: u8 = 115u8; +pub const OPCLASS_ITEM_OPERATOR: u32 = 1; +pub const OPCLASS_ITEM_FUNCTION: u32 = 2; +pub const OPCLASS_ITEM_STORAGETYPE: u32 = 3; +pub const CURSOR_OPT_BINARY: u32 = 1; +pub const CURSOR_OPT_SCROLL: u32 = 2; +pub const CURSOR_OPT_NO_SCROLL: u32 = 4; +pub const CURSOR_OPT_INSENSITIVE: u32 = 8; +pub const CURSOR_OPT_ASENSITIVE: u32 = 16; +pub const CURSOR_OPT_HOLD: u32 = 32; +pub const CURSOR_OPT_FAST_PLAN: u32 = 256; +pub const CURSOR_OPT_GENERIC_PLAN: u32 = 512; +pub const CURSOR_OPT_CUSTOM_PLAN: u32 = 1024; +pub const CURSOR_OPT_PARALLEL_OK: u32 = 2048; +pub const MaxAllocHugeSize: u32 = 0; +pub const InvalidAllocSize: i32 = -1; +pub const ALLOCSET_DEFAULT_MINSIZE: u32 = 0; +pub const ALLOCSET_DEFAULT_INITSIZE: u32 = 8192; +pub const ALLOCSET_DEFAULT_MAXSIZE: u32 = 8388608; +pub const ALLOCSET_SMALL_MINSIZE: u32 = 0; +pub const ALLOCSET_SMALL_INITSIZE: u32 = 1024; +pub const ALLOCSET_SMALL_MAXSIZE: u32 = 8192; +pub const ALLOCSET_SEPARATE_THRESHOLD: u32 = 8192; +pub const SLAB_DEFAULT_BLOCK_SIZE: u32 = 8192; +pub const SLAB_LARGE_BLOCK_SIZE: u32 = 8388608; +pub const EXEC_FLAG_EXPLAIN_ONLY: u32 = 1; +pub const EXEC_FLAG_EXPLAIN_GENERIC: u32 = 2; +pub const EXEC_FLAG_REWIND: u32 = 4; +pub const EXEC_FLAG_BACKWARD: u32 = 8; +pub const EXEC_FLAG_MARK: u32 = 16; +pub const EXEC_FLAG_SKIP_TRIGGERS: u32 = 32; +pub const EXEC_FLAG_WITH_NO_DATA: u32 = 64; +pub const MAT_SRF_USE_EXPECTED_DESC: u32 = 1; +pub const MAT_SRF_BLESS: u32 = 2; +pub const SIGINT: u32 = 2; +pub const SIGILL: u32 = 4; +pub const SIGABRT: u32 = 6; +pub const SIGFPE: u32 = 8; +pub const SIGSEGV: u32 = 11; +pub const SIGTERM: u32 = 15; +pub const SIGHUP: u32 = 1; +pub const SIGQUIT: u32 = 3; +pub const SIGTRAP: u32 = 5; +pub const SIGKILL: u32 = 9; +pub const SIGPIPE: u32 = 13; +pub const SIGALRM: u32 = 14; +pub const SIGIOT: u32 = 6; +pub const SIGSTKFLT: u32 = 16; +pub const SIGPWR: u32 = 30; +pub const SIGBUS: u32 = 7; +pub const SIGSYS: u32 = 31; +pub const SIGURG: u32 = 23; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGCONT: u32 = 18; +pub const SIGCHLD: u32 = 17; +pub const SIGTTIN: u32 = 21; +pub const SIGTTOU: u32 = 22; +pub const SIGPOLL: u32 = 29; +pub const SIGXFSZ: u32 = 25; +pub const SIGXCPU: u32 = 24; +pub const SIGVTALRM: u32 = 26; +pub const SIGPROF: u32 = 27; +pub const SIGUSR1: u32 = 10; +pub const SIGUSR2: u32 = 12; +pub const SIGWINCH: u32 = 28; +pub const SIGIO: u32 = 29; +pub const SIGCLD: u32 = 17; +pub const __SIGRTMIN: u32 = 32; +pub const __SIGRTMAX: u32 = 64; +pub const _NSIG: u32 = 65; +pub const __sig_atomic_t_defined: u32 = 1; +pub const __siginfo_t_defined: u32 = 1; +pub const __SI_MAX_SIZE: u32 = 128; +pub const __SI_ERRNO_THEN_CODE: u32 = 1; +pub const __SI_HAVE_SIGSYS: u32 = 1; +pub const __SI_ASYNCIO_AFTER_SIGIO: u32 = 1; +pub const __sigevent_t_defined: u32 = 1; +pub const __SIGEV_MAX_SIZE: u32 = 64; +pub const NSIG: u32 = 65; +pub const SA_NOCLDSTOP: u32 = 1; +pub const SA_NOCLDWAIT: u32 = 2; +pub const SA_SIGINFO: u32 = 4; +pub const SA_ONSTACK: u32 = 134217728; +pub const SA_RESTART: u32 = 268435456; +pub const SA_NODEFER: u32 = 1073741824; +pub const SA_RESETHAND: u32 = 2147483648; +pub const SA_INTERRUPT: u32 = 536870912; +pub const SA_NOMASK: u32 = 1073741824; +pub const SA_ONESHOT: u32 = 2147483648; +pub const SA_STACK: u32 = 134217728; +pub const SIG_BLOCK: u32 = 0; +pub const SIG_UNBLOCK: u32 = 1; +pub const SIG_SETMASK: u32 = 2; +pub const FP_XSTATE_MAGIC1: u32 = 1179670611; +pub const FP_XSTATE_MAGIC2: u32 = 1179670597; +pub const __stack_t_defined: u32 = 1; +pub const __NGREG: u32 = 23; +pub const NGREG: u32 = 23; +pub const MINSIGSTKSZ: u32 = 2048; +pub const SIGSTKSZ: u32 = 8192; +pub const __sigstack_defined: u32 = 1; +pub const TZ_STRLEN_MAX: u32 = 255; +pub const InvalidPid: i32 = -1; +pub const USE_POSTGRES_DATES: u32 = 0; +pub const USE_ISO_DATES: u32 = 1; +pub const USE_SQL_DATES: u32 = 2; +pub const USE_GERMAN_DATES: u32 = 3; +pub const USE_XSD_DATES: u32 = 4; +pub const DATEORDER_YMD: u32 = 0; +pub const DATEORDER_DMY: u32 = 1; +pub const DATEORDER_MDY: u32 = 2; +pub const INTSTYLE_POSTGRES: u32 = 0; +pub const INTSTYLE_POSTGRES_VERBOSE: u32 = 1; +pub const INTSTYLE_SQL_STANDARD: u32 = 2; +pub const INTSTYLE_ISO_8601: u32 = 3; +pub const MAXTZLEN: u32 = 10; +pub const MIN_BAS_VAC_RING_SIZE_KB: u32 = 128; +pub const MAX_BAS_VAC_RING_SIZE_KB: u32 = 16777216; +pub const SECURITY_LOCAL_USERID_CHANGE: u32 = 1; +pub const SECURITY_RESTRICTED_OPERATION: u32 = 2; +pub const SECURITY_NOFORCE_RLS: u32 = 4; +pub const INIT_PG_LOAD_SESSION_LIBS: u32 = 1; +pub const INIT_PG_OVERRIDE_ALLOW_CONNS: u32 = 2; +pub const INIT_PG_OVERRIDE_ROLE_LOGIN: u32 = 4; +pub const MIN_XFN_CHARS: u32 = 16; +pub const MAX_XFN_CHARS: u32 = 40; +#[allow(unsafe_code)] +pub const VALID_XFN_CHARS: &::core::ffi::CStr = unsafe { + ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"0123456789ABCDEF.history.backup.partial\0") +}; +pub const PGSTAT_NUM_PROGRESS_PARAM: u32 = 20; +pub const PF_UNSPEC: u32 = 0; +pub const PF_LOCAL: u32 = 1; +pub const PF_UNIX: u32 = 1; +pub const PF_FILE: u32 = 1; +pub const PF_INET: u32 = 2; +pub const PF_AX25: u32 = 3; +pub const PF_IPX: u32 = 4; +pub const PF_APPLETALK: u32 = 5; +pub const PF_NETROM: u32 = 6; +pub const PF_BRIDGE: u32 = 7; +pub const PF_ATMPVC: u32 = 8; +pub const PF_X25: u32 = 9; +pub const PF_INET6: u32 = 10; +pub const PF_ROSE: u32 = 11; +pub const PF_DECnet: u32 = 12; +pub const PF_NETBEUI: u32 = 13; +pub const PF_SECURITY: u32 = 14; +pub const PF_KEY: u32 = 15; +pub const PF_NETLINK: u32 = 16; +pub const PF_ROUTE: u32 = 16; +pub const PF_PACKET: u32 = 17; +pub const PF_ASH: u32 = 18; +pub const PF_ECONET: u32 = 19; +pub const PF_ATMSVC: u32 = 20; +pub const PF_RDS: u32 = 21; +pub const PF_SNA: u32 = 22; +pub const PF_IRDA: u32 = 23; +pub const PF_PPPOX: u32 = 24; +pub const PF_WANPIPE: u32 = 25; +pub const PF_LLC: u32 = 26; +pub const PF_IB: u32 = 27; +pub const PF_MPLS: u32 = 28; +pub const PF_CAN: u32 = 29; +pub const PF_TIPC: u32 = 30; +pub const PF_BLUETOOTH: u32 = 31; +pub const PF_IUCV: u32 = 32; +pub const PF_RXRPC: u32 = 33; +pub const PF_ISDN: u32 = 34; +pub const PF_PHONET: u32 = 35; +pub const PF_IEEE802154: u32 = 36; +pub const PF_CAIF: u32 = 37; +pub const PF_ALG: u32 = 38; +pub const PF_NFC: u32 = 39; +pub const PF_VSOCK: u32 = 40; +pub const PF_KCM: u32 = 41; +pub const PF_QIPCRTR: u32 = 42; +pub const PF_SMC: u32 = 43; +pub const PF_XDP: u32 = 44; +pub const PF_MCTP: u32 = 45; +pub const PF_MAX: u32 = 46; +pub const AF_UNSPEC: u32 = 0; +pub const AF_LOCAL: u32 = 1; +pub const AF_UNIX: u32 = 1; +pub const AF_FILE: u32 = 1; +pub const AF_INET: u32 = 2; +pub const AF_AX25: u32 = 3; +pub const AF_IPX: u32 = 4; +pub const AF_APPLETALK: u32 = 5; +pub const AF_NETROM: u32 = 6; +pub const AF_BRIDGE: u32 = 7; +pub const AF_ATMPVC: u32 = 8; +pub const AF_X25: u32 = 9; +pub const AF_INET6: u32 = 10; +pub const AF_ROSE: u32 = 11; +pub const AF_DECnet: u32 = 12; +pub const AF_NETBEUI: u32 = 13; +pub const AF_SECURITY: u32 = 14; +pub const AF_KEY: u32 = 15; +pub const AF_NETLINK: u32 = 16; +pub const AF_ROUTE: u32 = 16; +pub const AF_PACKET: u32 = 17; +pub const AF_ASH: u32 = 18; +pub const AF_ECONET: u32 = 19; +pub const AF_ATMSVC: u32 = 20; +pub const AF_RDS: u32 = 21; +pub const AF_SNA: u32 = 22; +pub const AF_IRDA: u32 = 23; +pub const AF_PPPOX: u32 = 24; +pub const AF_WANPIPE: u32 = 25; +pub const AF_LLC: u32 = 26; +pub const AF_IB: u32 = 27; +pub const AF_MPLS: u32 = 28; +pub const AF_CAN: u32 = 29; +pub const AF_TIPC: u32 = 30; +pub const AF_BLUETOOTH: u32 = 31; +pub const AF_IUCV: u32 = 32; +pub const AF_RXRPC: u32 = 33; +pub const AF_ISDN: u32 = 34; +pub const AF_PHONET: u32 = 35; +pub const AF_IEEE802154: u32 = 36; +pub const AF_CAIF: u32 = 37; +pub const AF_ALG: u32 = 38; +pub const AF_NFC: u32 = 39; +pub const AF_VSOCK: u32 = 40; +pub const AF_KCM: u32 = 41; +pub const AF_QIPCRTR: u32 = 42; +pub const AF_SMC: u32 = 43; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; +pub const SOL_RAW: u32 = 255; +pub const SOL_DECNET: u32 = 261; +pub const SOL_X25: u32 = 262; +pub const SOL_PACKET: u32 = 263; +pub const SOL_ATM: u32 = 264; +pub const SOL_AAL: u32 = 265; +pub const SOL_IRDA: u32 = 266; +pub const SOL_NETBEUI: u32 = 267; +pub const SOL_LLC: u32 = 268; +pub const SOL_DCCP: u32 = 269; +pub const SOL_NETLINK: u32 = 270; +pub const SOL_TIPC: u32 = 271; +pub const SOL_RXRPC: u32 = 272; +pub const SOL_PPPOL2TP: u32 = 273; +pub const SOL_BLUETOOTH: u32 = 274; +pub const SOL_PNPIPE: u32 = 275; +pub const SOL_RDS: u32 = 276; +pub const SOL_IUCV: u32 = 277; +pub const SOL_CAIF: u32 = 278; +pub const SOL_ALG: u32 = 279; +pub const SOL_NFC: u32 = 280; +pub const SOL_KCM: u32 = 281; +pub const SOL_TLS: u32 = 282; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const SOMAXCONN: u32 = 4096; +pub const _SS_SIZE: u32 = 128; +pub const __BITS_PER_LONG: u32 = 64; +pub const FIOSETOWN: u32 = 35073; +pub const SIOCSPGRP: u32 = 35074; +pub const FIOGETOWN: u32 = 35075; +pub const SIOCGPGRP: u32 = 35076; +pub const SIOCATMARK: u32 = 35077; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; +pub const SOL_SOCKET: u32 = 1; +pub const SO_DEBUG: u32 = 1; +pub const SO_REUSEADDR: u32 = 2; +pub const SO_TYPE: u32 = 3; +pub const SO_ERROR: u32 = 4; +pub const SO_DONTROUTE: u32 = 5; +pub const SO_BROADCAST: u32 = 6; +pub const SO_SNDBUF: u32 = 7; +pub const SO_RCVBUF: u32 = 8; +pub const SO_SNDBUFFORCE: u32 = 32; +pub const SO_RCVBUFFORCE: u32 = 33; +pub const SO_KEEPALIVE: u32 = 9; +pub const SO_OOBINLINE: u32 = 10; +pub const SO_NO_CHECK: u32 = 11; +pub const SO_PRIORITY: u32 = 12; +pub const SO_LINGER: u32 = 13; +pub const SO_BSDCOMPAT: u32 = 14; +pub const SO_REUSEPORT: u32 = 15; +pub const SO_PASSCRED: u32 = 16; +pub const SO_PEERCRED: u32 = 17; +pub const SO_RCVLOWAT: u32 = 18; +pub const SO_SNDLOWAT: u32 = 19; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; +pub const SO_SECURITY_AUTHENTICATION: u32 = 22; +pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; +pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; +pub const SO_BINDTODEVICE: u32 = 25; +pub const SO_ATTACH_FILTER: u32 = 26; +pub const SO_DETACH_FILTER: u32 = 27; +pub const SO_GET_FILTER: u32 = 26; +pub const SO_PEERNAME: u32 = 28; +pub const SO_ACCEPTCONN: u32 = 30; +pub const SO_PEERSEC: u32 = 31; +pub const SO_PASSSEC: u32 = 34; +pub const SO_MARK: u32 = 36; +pub const SO_PROTOCOL: u32 = 38; +pub const SO_DOMAIN: u32 = 39; +pub const SO_RXQ_OVFL: u32 = 40; +pub const SO_WIFI_STATUS: u32 = 41; +pub const SCM_WIFI_STATUS: u32 = 41; +pub const SO_PEEK_OFF: u32 = 42; +pub const SO_NOFCS: u32 = 43; +pub const SO_LOCK_FILTER: u32 = 44; +pub const SO_SELECT_ERR_QUEUE: u32 = 45; +pub const SO_BUSY_POLL: u32 = 46; +pub const SO_MAX_PACING_RATE: u32 = 47; +pub const SO_BPF_EXTENSIONS: u32 = 48; +pub const SO_INCOMING_CPU: u32 = 49; +pub const SO_ATTACH_BPF: u32 = 50; +pub const SO_DETACH_BPF: u32 = 27; +pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51; +pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52; +pub const SO_CNX_ADVICE: u32 = 53; +pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54; +pub const SO_MEMINFO: u32 = 55; +pub const SO_INCOMING_NAPI_ID: u32 = 56; +pub const SO_COOKIE: u32 = 57; +pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58; +pub const SO_PEERGROUPS: u32 = 59; +pub const SO_ZEROCOPY: u32 = 60; +pub const SO_TXTIME: u32 = 61; +pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_TIMESTAMP: u32 = 29; +pub const SO_TIMESTAMPNS: u32 = 35; +pub const SO_TIMESTAMPING: u32 = 37; +pub const SO_RCVTIMEO: u32 = 20; +pub const SO_SNDTIMEO: u32 = 21; +pub const SCM_TIMESTAMP: u32 = 29; +pub const SCM_TIMESTAMPNS: u32 = 35; +pub const SCM_TIMESTAMPING: u32 = 37; +pub const __osockaddr_defined: u32 = 1; +pub const __USE_KERNEL_IPV6_DEFS: u32 = 0; +pub const IP_OPTIONS: u32 = 4; +pub const IP_HDRINCL: u32 = 3; +pub const IP_TOS: u32 = 1; +pub const IP_TTL: u32 = 2; +pub const IP_RECVOPTS: u32 = 6; +pub const IP_RETOPTS: u32 = 7; +pub const IP_MULTICAST_IF: u32 = 32; +pub const IP_MULTICAST_TTL: u32 = 33; +pub const IP_MULTICAST_LOOP: u32 = 34; +pub const IP_ADD_MEMBERSHIP: u32 = 35; +pub const IP_DROP_MEMBERSHIP: u32 = 36; +pub const IP_UNBLOCK_SOURCE: u32 = 37; +pub const IP_BLOCK_SOURCE: u32 = 38; +pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39; +pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40; +pub const IP_MSFILTER: u32 = 41; +pub const MCAST_JOIN_GROUP: u32 = 42; +pub const MCAST_BLOCK_SOURCE: u32 = 43; +pub const MCAST_UNBLOCK_SOURCE: u32 = 44; +pub const MCAST_LEAVE_GROUP: u32 = 45; +pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46; +pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47; +pub const MCAST_MSFILTER: u32 = 48; +pub const IP_MULTICAST_ALL: u32 = 49; +pub const IP_UNICAST_IF: u32 = 50; +pub const MCAST_EXCLUDE: u32 = 0; +pub const MCAST_INCLUDE: u32 = 1; +pub const IP_ROUTER_ALERT: u32 = 5; +pub const IP_PKTINFO: u32 = 8; +pub const IP_PKTOPTIONS: u32 = 9; +pub const IP_PMTUDISC: u32 = 10; +pub const IP_MTU_DISCOVER: u32 = 10; +pub const IP_RECVERR: u32 = 11; +pub const IP_RECVTTL: u32 = 12; +pub const IP_RECVTOS: u32 = 13; +pub const IP_MTU: u32 = 14; +pub const IP_FREEBIND: u32 = 15; +pub const IP_IPSEC_POLICY: u32 = 16; +pub const IP_XFRM_POLICY: u32 = 17; +pub const IP_PASSSEC: u32 = 18; +pub const IP_TRANSPARENT: u32 = 19; +pub const IP_ORIGDSTADDR: u32 = 20; +pub const IP_RECVORIGDSTADDR: u32 = 20; +pub const IP_MINTTL: u32 = 21; +pub const IP_NODEFRAG: u32 = 22; +pub const IP_CHECKSUM: u32 = 23; +pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; +pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; +pub const IP_PMTUDISC_DONT: u32 = 0; +pub const IP_PMTUDISC_WANT: u32 = 1; +pub const IP_PMTUDISC_DO: u32 = 2; +pub const IP_PMTUDISC_PROBE: u32 = 3; +pub const IP_PMTUDISC_INTERFACE: u32 = 4; +pub const IP_PMTUDISC_OMIT: u32 = 5; +pub const SOL_IP: u32 = 0; +pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; +pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; +pub const IP_MAX_MEMBERSHIPS: u32 = 20; +pub const IPV6_ADDRFORM: u32 = 1; +pub const IPV6_2292PKTINFO: u32 = 2; +pub const IPV6_2292HOPOPTS: u32 = 3; +pub const IPV6_2292DSTOPTS: u32 = 4; +pub const IPV6_2292RTHDR: u32 = 5; +pub const IPV6_2292PKTOPTIONS: u32 = 6; +pub const IPV6_CHECKSUM: u32 = 7; +pub const IPV6_2292HOPLIMIT: u32 = 8; +pub const IPV6_NEXTHOP: u32 = 9; +pub const IPV6_AUTHHDR: u32 = 10; +pub const IPV6_UNICAST_HOPS: u32 = 16; +pub const IPV6_MULTICAST_IF: u32 = 17; +pub const IPV6_MULTICAST_HOPS: u32 = 18; +pub const IPV6_MULTICAST_LOOP: u32 = 19; +pub const IPV6_JOIN_GROUP: u32 = 20; +pub const IPV6_LEAVE_GROUP: u32 = 21; +pub const IPV6_ROUTER_ALERT: u32 = 22; +pub const IPV6_MTU_DISCOVER: u32 = 23; +pub const IPV6_MTU: u32 = 24; +pub const IPV6_RECVERR: u32 = 25; +pub const IPV6_V6ONLY: u32 = 26; +pub const IPV6_JOIN_ANYCAST: u32 = 27; +pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; +pub const IPV6_IPSEC_POLICY: u32 = 34; +pub const IPV6_XFRM_POLICY: u32 = 35; +pub const IPV6_HDRINCL: u32 = 36; +pub const IPV6_RECVPKTINFO: u32 = 49; +pub const IPV6_PKTINFO: u32 = 50; +pub const IPV6_RECVHOPLIMIT: u32 = 51; +pub const IPV6_HOPLIMIT: u32 = 52; +pub const IPV6_RECVHOPOPTS: u32 = 53; +pub const IPV6_HOPOPTS: u32 = 54; +pub const IPV6_RTHDRDSTOPTS: u32 = 55; +pub const IPV6_RECVRTHDR: u32 = 56; +pub const IPV6_RTHDR: u32 = 57; +pub const IPV6_RECVDSTOPTS: u32 = 58; +pub const IPV6_DSTOPTS: u32 = 59; +pub const IPV6_RECVPATHMTU: u32 = 60; +pub const IPV6_PATHMTU: u32 = 61; +pub const IPV6_DONTFRAG: u32 = 62; +pub const IPV6_RECVTCLASS: u32 = 66; +pub const IPV6_TCLASS: u32 = 67; +pub const IPV6_AUTOFLOWLABEL: u32 = 70; +pub const IPV6_ADDR_PREFERENCES: u32 = 72; +pub const IPV6_MINHOPCOUNT: u32 = 73; +pub const IPV6_ORIGDSTADDR: u32 = 74; +pub const IPV6_RECVORIGDSTADDR: u32 = 74; +pub const IPV6_TRANSPARENT: u32 = 75; +pub const IPV6_UNICAST_IF: u32 = 76; +pub const IPV6_RECVFRAGSIZE: u32 = 77; +pub const IPV6_FREEBIND: u32 = 78; +pub const IPV6_ADD_MEMBERSHIP: u32 = 20; +pub const IPV6_DROP_MEMBERSHIP: u32 = 21; +pub const IPV6_RXHOPOPTS: u32 = 54; +pub const IPV6_RXDSTOPTS: u32 = 59; +pub const IPV6_PMTUDISC_DONT: u32 = 0; +pub const IPV6_PMTUDISC_WANT: u32 = 1; +pub const IPV6_PMTUDISC_DO: u32 = 2; +pub const IPV6_PMTUDISC_PROBE: u32 = 3; +pub const IPV6_PMTUDISC_INTERFACE: u32 = 4; +pub const IPV6_PMTUDISC_OMIT: u32 = 5; +pub const SOL_IPV6: u32 = 41; +pub const SOL_ICMPV6: u32 = 58; +pub const IPV6_RTHDR_LOOSE: u32 = 0; +pub const IPV6_RTHDR_STRICT: u32 = 1; +pub const IPV6_RTHDR_TYPE_0: u32 = 0; +pub const IN_CLASSA_NET: u32 = 4278190080; +pub const IN_CLASSA_NSHIFT: u32 = 24; +pub const IN_CLASSA_HOST: u32 = 16777215; +pub const IN_CLASSA_MAX: u32 = 128; +pub const IN_CLASSB_NET: u32 = 4294901760; +pub const IN_CLASSB_NSHIFT: u32 = 16; +pub const IN_CLASSB_HOST: u32 = 65535; +pub const IN_CLASSB_MAX: u32 = 65536; +pub const IN_CLASSC_NET: u32 = 4294967040; +pub const IN_CLASSC_NSHIFT: u32 = 8; +pub const IN_CLASSC_HOST: u32 = 255; +pub const IN_LOOPBACKNET: u32 = 127; +pub const INET_ADDRSTRLEN: u32 = 16; +pub const INET6_ADDRSTRLEN: u32 = 46; +#[allow(unsafe_code)] +pub const _PATH_HEQUIV: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/hosts.equiv\0") }; +#[allow(unsafe_code)] +pub const _PATH_HOSTS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/hosts\0") }; +#[allow(unsafe_code)] +pub const _PATH_NETWORKS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/networks\0") }; +#[allow(unsafe_code)] +pub const _PATH_NSSWITCH_CONF: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/nsswitch.conf\0") }; +#[allow(unsafe_code)] +pub const _PATH_PROTOCOLS: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/protocols\0") }; +#[allow(unsafe_code)] +pub const _PATH_SERVICES: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"/etc/services\0") }; +pub const HOST_NOT_FOUND: u32 = 1; +pub const TRY_AGAIN: u32 = 2; +pub const NO_RECOVERY: u32 = 3; +pub const NO_DATA: u32 = 4; +pub const NETDB_INTERNAL: i32 = -1; +pub const NETDB_SUCCESS: u32 = 0; +pub const NO_ADDRESS: u32 = 4; +pub const AI_PASSIVE: u32 = 1; +pub const AI_CANONNAME: u32 = 2; +pub const AI_NUMERICHOST: u32 = 4; +pub const AI_V4MAPPED: u32 = 8; +pub const AI_ALL: u32 = 16; +pub const AI_ADDRCONFIG: u32 = 32; +pub const AI_NUMERICSERV: u32 = 1024; +pub const EAI_BADFLAGS: i32 = -1; +pub const EAI_NONAME: i32 = -2; +pub const EAI_AGAIN: i32 = -3; +pub const EAI_FAIL: i32 = -4; +pub const EAI_FAMILY: i32 = -6; +pub const EAI_SOCKTYPE: i32 = -7; +pub const EAI_SERVICE: i32 = -8; +pub const EAI_MEMORY: i32 = -10; +pub const EAI_SYSTEM: i32 = -11; +pub const EAI_OVERFLOW: i32 = -12; +pub const NI_MAXHOST: u32 = 1025; +pub const NI_MAXSERV: u32 = 32; +pub const NI_NUMERICHOST: u32 = 1; +pub const NI_NUMERICSERV: u32 = 2; +pub const NI_NOFQDN: u32 = 4; +pub const NI_NAMEREQD: u32 = 8; +pub const NI_DGRAM: u32 = 16; +pub const PqMsg_Bind: u8 = 66u8; +pub const PqMsg_Close: u8 = 67u8; +pub const PqMsg_Describe: u8 = 68u8; +pub const PqMsg_Execute: u8 = 69u8; +pub const PqMsg_FunctionCall: u8 = 70u8; +pub const PqMsg_Flush: u8 = 72u8; +pub const PqMsg_Parse: u8 = 80u8; +pub const PqMsg_Query: u8 = 81u8; +pub const PqMsg_Sync: u8 = 83u8; +pub const PqMsg_Terminate: u8 = 88u8; +pub const PqMsg_CopyFail: u8 = 102u8; +pub const PqMsg_GSSResponse: u8 = 112u8; +pub const PqMsg_PasswordMessage: u8 = 112u8; +pub const PqMsg_SASLInitialResponse: u8 = 112u8; +pub const PqMsg_SASLResponse: u8 = 112u8; +pub const PqMsg_ParseComplete: u8 = 49u8; +pub const PqMsg_BindComplete: u8 = 50u8; +pub const PqMsg_CloseComplete: u8 = 51u8; +pub const PqMsg_NotificationResponse: u8 = 65u8; +pub const PqMsg_CommandComplete: u8 = 67u8; +pub const PqMsg_DataRow: u8 = 68u8; +pub const PqMsg_ErrorResponse: u8 = 69u8; +pub const PqMsg_CopyInResponse: u8 = 71u8; +pub const PqMsg_CopyOutResponse: u8 = 72u8; +pub const PqMsg_EmptyQueryResponse: u8 = 73u8; +pub const PqMsg_BackendKeyData: u8 = 75u8; +pub const PqMsg_NoticeResponse: u8 = 78u8; +pub const PqMsg_AuthenticationRequest: u8 = 82u8; +pub const PqMsg_ParameterStatus: u8 = 83u8; +pub const PqMsg_RowDescription: u8 = 84u8; +pub const PqMsg_FunctionCallResponse: u8 = 86u8; +pub const PqMsg_CopyBothResponse: u8 = 87u8; +pub const PqMsg_ReadyForQuery: u8 = 90u8; +pub const PqMsg_NoData: u8 = 110u8; +pub const PqMsg_PortalSuspended: u8 = 115u8; +pub const PqMsg_ParameterDescription: u8 = 116u8; +pub const PqMsg_NegotiateProtocolVersion: u8 = 118u8; +pub const PqMsg_CopyDone: u8 = 99u8; +pub const PqMsg_CopyData: u8 = 100u8; +pub const PqMsg_Progress: u8 = 80u8; +pub const AUTH_REQ_OK: u32 = 0; +pub const AUTH_REQ_KRB4: u32 = 1; +pub const AUTH_REQ_KRB5: u32 = 2; +pub const AUTH_REQ_PASSWORD: u32 = 3; +pub const AUTH_REQ_CRYPT: u32 = 4; +pub const AUTH_REQ_MD5: u32 = 5; +pub const AUTH_REQ_GSS: u32 = 7; +pub const AUTH_REQ_GSS_CONT: u32 = 8; +pub const AUTH_REQ_SSPI: u32 = 9; +pub const AUTH_REQ_SASL: u32 = 10; +pub const AUTH_REQ_SASL_CONT: u32 = 11; +pub const AUTH_REQ_SASL_FIN: u32 = 12; +pub const AUTH_REQ_MAX: u32 = 12; +pub const MAX_STARTUP_PACKET_LENGTH: u32 = 10000; +#[allow(unsafe_code)] +pub const PG_ALPN_PROTOCOL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgresql\0") }; +pub const PG_WAIT_LWLOCK: u32 = 16777216; +pub const PG_WAIT_LOCK: u32 = 50331648; +pub const PG_WAIT_BUFFERPIN: u32 = 67108864; +pub const PG_WAIT_ACTIVITY: u32 = 83886080; +pub const PG_WAIT_CLIENT: u32 = 100663296; +pub const PG_WAIT_EXTENSION: u32 = 117440512; +pub const PG_WAIT_IPC: u32 = 134217728; +pub const PG_WAIT_TIMEOUT: u32 = 150994944; +pub const PG_WAIT_IO: u32 = 167772160; +pub const PG_WAIT_INJECTIONPOINT: u32 = 184549376; +#[allow(unsafe_code)] +pub const PGSTAT_STAT_PERMANENT_DIRECTORY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat\0") }; +#[allow(unsafe_code)] +pub const PGSTAT_STAT_PERMANENT_FILENAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat/pgstat.stat\0") }; +#[allow(unsafe_code)] +pub const PGSTAT_STAT_PERMANENT_TMPFILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat/pgstat.tmp\0") }; +#[allow(unsafe_code)] +pub const PG_STAT_TMP_DIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_stat_tmp\0") }; +pub const PGSTAT_FILE_FORMAT_ID: u32 = 27638956; +pub const CHECKPOINT_IS_SHUTDOWN: u32 = 1; +pub const CHECKPOINT_END_OF_RECOVERY: u32 = 2; +pub const CHECKPOINT_IMMEDIATE: u32 = 4; +pub const CHECKPOINT_FORCE: u32 = 8; +pub const CHECKPOINT_FLUSH_ALL: u32 = 16; +pub const CHECKPOINT_WAIT: u32 = 32; +pub const CHECKPOINT_REQUESTED: u32 = 64; +pub const CHECKPOINT_CAUSE_XLOG: u32 = 128; +pub const CHECKPOINT_CAUSE_TIME: u32 = 256; +pub const XLOG_INCLUDE_ORIGIN: u32 = 1; +pub const XLOG_MARK_UNIMPORTANT: u32 = 2; +#[allow(unsafe_code)] +pub const RECOVERY_SIGNAL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"recovery.signal\0") }; +#[allow(unsafe_code)] +pub const STANDBY_SIGNAL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"standby.signal\0") }; +#[allow(unsafe_code)] +pub const BACKUP_LABEL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"backup_label\0") }; +#[allow(unsafe_code)] +pub const BACKUP_LABEL_OLD: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"backup_label.old\0") }; +#[allow(unsafe_code)] +pub const TABLESPACE_MAP: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"tablespace_map\0") }; +#[allow(unsafe_code)] +pub const TABLESPACE_MAP_OLD: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"tablespace_map.old\0") }; +#[allow(unsafe_code)] +pub const PROMOTE_SIGNAL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"promote\0") }; +pub const RM_MAX_ID: u32 = 255; +pub const RM_MIN_CUSTOM_ID: u32 = 128; +pub const RM_MAX_CUSTOM_ID: u32 = 255; +pub const RM_N_IDS: u32 = 256; +pub const RM_N_CUSTOM_IDS: u32 = 128; +pub const RM_EXPERIMENTAL_ID: u32 = 128; +pub const XLR_INFO_MASK: u32 = 15; +pub const XLR_RMGR_INFO_MASK: u32 = 240; +pub const XLogRecordMaxSize: u32 = 1069547520; +pub const XLR_SPECIAL_REL_UPDATE: u32 = 1; +pub const XLR_CHECK_CONSISTENCY: u32 = 2; +pub const BKPIMAGE_HAS_HOLE: u32 = 1; +pub const BKPIMAGE_APPLY: u32 = 2; +pub const BKPIMAGE_COMPRESS_PGLZ: u32 = 4; +pub const BKPIMAGE_COMPRESS_LZ4: u32 = 8; +pub const BKPIMAGE_COMPRESS_ZSTD: u32 = 16; +pub const BKPBLOCK_FORK_MASK: u32 = 15; +pub const BKPBLOCK_FLAG_MASK: u32 = 240; +pub const BKPBLOCK_HAS_IMAGE: u32 = 16; +pub const BKPBLOCK_HAS_DATA: u32 = 32; +pub const BKPBLOCK_WILL_INIT: u32 = 64; +pub const BKPBLOCK_SAME_REL: u32 = 128; +pub const XLR_MAX_BLOCK_ID: u32 = 32; +pub const XLR_BLOCK_ID_DATA_SHORT: u32 = 255; +pub const XLR_BLOCK_ID_DATA_LONG: u32 = 254; +pub const XLR_BLOCK_ID_ORIGIN: u32 = 253; +pub const XLR_BLOCK_ID_TOPLEVEL_XID: u32 = 252; +pub const XLR_NORMAL_MAX_BLOCK_ID: u32 = 4; +pub const XLR_NORMAL_RDATAS: u32 = 20; +pub const REGBUF_FORCE_IMAGE: u32 = 1; +pub const REGBUF_NO_IMAGE: u32 = 2; +pub const REGBUF_WILL_INIT: u32 = 6; +pub const REGBUF_STANDARD: u32 = 8; +pub const REGBUF_KEEP_DATA: u32 = 16; +pub const REGBUF_NO_CHANGE: u32 = 32; +pub const RelationRelationId: u32 = 1259; +pub const RelationRelation_Rowtype_Id: u32 = 83; +pub const ClassOidIndexId: u32 = 2662; +pub const ClassNameNspIndexId: u32 = 2663; +pub const ClassTblspcRelfilenodeIndexId: u32 = 3455; +pub const Anum_pg_class_oid: u32 = 1; +pub const Anum_pg_class_relname: u32 = 2; +pub const Anum_pg_class_relnamespace: u32 = 3; +pub const Anum_pg_class_reltype: u32 = 4; +pub const Anum_pg_class_reloftype: u32 = 5; +pub const Anum_pg_class_relowner: u32 = 6; +pub const Anum_pg_class_relam: u32 = 7; +pub const Anum_pg_class_relfilenode: u32 = 8; +pub const Anum_pg_class_reltablespace: u32 = 9; +pub const Anum_pg_class_relpages: u32 = 10; +pub const Anum_pg_class_reltuples: u32 = 11; +pub const Anum_pg_class_relallvisible: u32 = 12; +pub const Anum_pg_class_reltoastrelid: u32 = 13; +pub const Anum_pg_class_relhasindex: u32 = 14; +pub const Anum_pg_class_relisshared: u32 = 15; +pub const Anum_pg_class_relpersistence: u32 = 16; +pub const Anum_pg_class_relkind: u32 = 17; +pub const Anum_pg_class_relnatts: u32 = 18; +pub const Anum_pg_class_relchecks: u32 = 19; +pub const Anum_pg_class_relhasrules: u32 = 20; +pub const Anum_pg_class_relhastriggers: u32 = 21; +pub const Anum_pg_class_relhassubclass: u32 = 22; +pub const Anum_pg_class_relrowsecurity: u32 = 23; +pub const Anum_pg_class_relforcerowsecurity: u32 = 24; +pub const Anum_pg_class_relispopulated: u32 = 25; +pub const Anum_pg_class_relreplident: u32 = 26; +pub const Anum_pg_class_relispartition: u32 = 27; +pub const Anum_pg_class_relrewrite: u32 = 28; +pub const Anum_pg_class_relfrozenxid: u32 = 29; +pub const Anum_pg_class_relminmxid: u32 = 30; +pub const Anum_pg_class_relacl: u32 = 31; +pub const Anum_pg_class_reloptions: u32 = 32; +pub const Anum_pg_class_relpartbound: u32 = 33; +pub const Natts_pg_class: u32 = 33; +pub const RELKIND_RELATION: u8 = 114u8; +pub const RELKIND_INDEX: u8 = 105u8; +pub const RELKIND_SEQUENCE: u8 = 83u8; +pub const RELKIND_TOASTVALUE: u8 = 116u8; +pub const RELKIND_VIEW: u8 = 118u8; +pub const RELKIND_MATVIEW: u8 = 109u8; +pub const RELKIND_COMPOSITE_TYPE: u8 = 99u8; +pub const RELKIND_FOREIGN_TABLE: u8 = 102u8; +pub const RELKIND_PARTITIONED_TABLE: u8 = 112u8; +pub const RELKIND_PARTITIONED_INDEX: u8 = 73u8; +pub const RELPERSISTENCE_PERMANENT: u8 = 112u8; +pub const RELPERSISTENCE_UNLOGGED: u8 = 117u8; +pub const RELPERSISTENCE_TEMP: u8 = 116u8; +pub const REPLICA_IDENTITY_DEFAULT: u8 = 100u8; +pub const REPLICA_IDENTITY_NOTHING: u8 = 110u8; +pub const REPLICA_IDENTITY_FULL: u8 = 102u8; +pub const REPLICA_IDENTITY_INDEX: u8 = 105u8; +pub const IndexRelationId: u32 = 2610; +pub const IndexIndrelidIndexId: u32 = 2678; +pub const IndexRelidIndexId: u32 = 2679; +pub const Anum_pg_index_indexrelid: u32 = 1; +pub const Anum_pg_index_indrelid: u32 = 2; +pub const Anum_pg_index_indnatts: u32 = 3; +pub const Anum_pg_index_indnkeyatts: u32 = 4; +pub const Anum_pg_index_indisunique: u32 = 5; +pub const Anum_pg_index_indnullsnotdistinct: u32 = 6; +pub const Anum_pg_index_indisprimary: u32 = 7; +pub const Anum_pg_index_indisexclusion: u32 = 8; +pub const Anum_pg_index_indimmediate: u32 = 9; +pub const Anum_pg_index_indisclustered: u32 = 10; +pub const Anum_pg_index_indisvalid: u32 = 11; +pub const Anum_pg_index_indcheckxmin: u32 = 12; +pub const Anum_pg_index_indisready: u32 = 13; +pub const Anum_pg_index_indislive: u32 = 14; +pub const Anum_pg_index_indisreplident: u32 = 15; +pub const Anum_pg_index_indkey: u32 = 16; +pub const Anum_pg_index_indcollation: u32 = 17; +pub const Anum_pg_index_indclass: u32 = 18; +pub const Anum_pg_index_indoption: u32 = 19; +pub const Anum_pg_index_indexprs: u32 = 20; +pub const Anum_pg_index_indpred: u32 = 21; +pub const Natts_pg_index: u32 = 21; +pub const INDOPTION_DESC: u32 = 1; +pub const INDOPTION_NULLS_FIRST: u32 = 2; +pub const PublicationRelationId: u32 = 6104; +pub const PublicationObjectIndexId: u32 = 6110; +pub const PublicationNameIndexId: u32 = 6111; +pub const Anum_pg_publication_oid: u32 = 1; +pub const Anum_pg_publication_pubname: u32 = 2; +pub const Anum_pg_publication_pubowner: u32 = 3; +pub const Anum_pg_publication_puballtables: u32 = 4; +pub const Anum_pg_publication_pubinsert: u32 = 5; +pub const Anum_pg_publication_pubupdate: u32 = 6; +pub const Anum_pg_publication_pubdelete: u32 = 7; +pub const Anum_pg_publication_pubtruncate: u32 = 8; +pub const Anum_pg_publication_pubviaroot: u32 = 9; +pub const Natts_pg_publication: u32 = 9; +pub const HEAP_MIN_FILLFACTOR: u32 = 10; +pub const HEAP_DEFAULT_FILLFACTOR: u32 = 100; +pub const MAX_GENERIC_XLOG_PAGES: u32 = 4; +pub const GENERIC_XLOG_FULL_IMAGE: u32 = 1; +pub const GIN_COMPARE_PROC: u32 = 1; +pub const GIN_EXTRACTVALUE_PROC: u32 = 2; +pub const GIN_EXTRACTQUERY_PROC: u32 = 3; +pub const GIN_CONSISTENT_PROC: u32 = 4; +pub const GIN_COMPARE_PARTIAL_PROC: u32 = 5; +pub const GIN_TRICONSISTENT_PROC: u32 = 6; +pub const GIN_OPTIONS_PROC: u32 = 7; +pub const GINNProcs: u32 = 7; +pub const GIN_SEARCH_MODE_DEFAULT: u32 = 0; +pub const GIN_SEARCH_MODE_INCLUDE_EMPTY: u32 = 1; +pub const GIN_SEARCH_MODE_ALL: u32 = 2; +pub const GIN_SEARCH_MODE_EVERYTHING: u32 = 3; +pub const GIN_FALSE: u32 = 0; +pub const GIN_TRUE: u32 = 1; +pub const GIN_MAYBE: u32 = 2; +pub const GIST_CONSISTENT_PROC: u32 = 1; +pub const GIST_UNION_PROC: u32 = 2; +pub const GIST_COMPRESS_PROC: u32 = 3; +pub const GIST_DECOMPRESS_PROC: u32 = 4; +pub const GIST_PENALTY_PROC: u32 = 5; +pub const GIST_PICKSPLIT_PROC: u32 = 6; +pub const GIST_EQUAL_PROC: u32 = 7; +pub const GIST_DISTANCE_PROC: u32 = 8; +pub const GIST_FETCH_PROC: u32 = 9; +pub const GIST_OPTIONS_PROC: u32 = 10; +pub const GIST_SORTSUPPORT_PROC: u32 = 11; +pub const GISTNProcs: u32 = 11; +pub const F_LEAF: u32 = 1; +pub const F_DELETED: u32 = 2; +pub const F_TUPLES_DELETED: u32 = 4; +pub const F_FOLLOW_RIGHT: u32 = 8; +pub const F_HAS_GARBAGE: u32 = 16; +pub const GIST_PAGE_ID: u32 = 65409; +pub const SHAREDINVALCATALOG_ID: i32 = -1; +pub const SHAREDINVALRELCACHE_ID: i32 = -2; +pub const SHAREDINVALSMGR_ID: i32 = -3; +pub const SHAREDINVALRELMAP_ID: i32 = -4; +pub const SHAREDINVALSNAPSHOT_ID: i32 = -5; +pub const GIDSIZE: u32 = 200; +pub const XACT_READ_UNCOMMITTED: u32 = 0; +pub const XACT_READ_COMMITTED: u32 = 1; +pub const XACT_REPEATABLE_READ: u32 = 2; +pub const XACT_SERIALIZABLE: u32 = 3; +pub const XACT_FLAGS_ACCESSEDTEMPNAMESPACE: u32 = 1; +pub const XACT_FLAGS_ACQUIREDACCESSEXCLUSIVELOCK: u32 = 2; +pub const XACT_FLAGS_NEEDIMMEDIATECOMMIT: u32 = 4; +pub const XACT_FLAGS_PIPELINING: u32 = 8; +pub const XLOG_XACT_COMMIT: u32 = 0; +pub const XLOG_XACT_PREPARE: u32 = 16; +pub const XLOG_XACT_ABORT: u32 = 32; +pub const XLOG_XACT_COMMIT_PREPARED: u32 = 48; +pub const XLOG_XACT_ABORT_PREPARED: u32 = 64; +pub const XLOG_XACT_ASSIGNMENT: u32 = 80; +pub const XLOG_XACT_INVALIDATIONS: u32 = 96; +pub const XLOG_XACT_OPMASK: u32 = 112; +pub const XLOG_XACT_HAS_INFO: u32 = 128; +pub const XACT_XINFO_HAS_DBINFO: u32 = 1; +pub const XACT_XINFO_HAS_SUBXACTS: u32 = 2; +pub const XACT_XINFO_HAS_RELFILELOCATORS: u32 = 4; +pub const XACT_XINFO_HAS_INVALS: u32 = 8; +pub const XACT_XINFO_HAS_TWOPHASE: u32 = 16; +pub const XACT_XINFO_HAS_ORIGIN: u32 = 32; +pub const XACT_XINFO_HAS_AE_LOCKS: u32 = 64; +pub const XACT_XINFO_HAS_GID: u32 = 128; +pub const XACT_XINFO_HAS_DROPPED_STATS: u32 = 256; +pub const XACT_COMPLETION_APPLY_FEEDBACK: u32 = 536870912; +pub const XACT_COMPLETION_UPDATE_RELCACHE_FILE: u32 = 1073741824; +pub const XACT_COMPLETION_FORCE_SYNC_COMMIT: u32 = 2147483648; +pub const RELEASE_PRIO_BUFFER_IOS: u32 = 100; +pub const RELEASE_PRIO_BUFFER_PINS: u32 = 200; +pub const RELEASE_PRIO_RELCACHE_REFS: u32 = 300; +pub const RELEASE_PRIO_DSMS: u32 = 400; +pub const RELEASE_PRIO_JIT_CONTEXTS: u32 = 500; +pub const RELEASE_PRIO_CRYPTOHASH_CONTEXTS: u32 = 600; +pub const RELEASE_PRIO_HMAC_CONTEXTS: u32 = 700; +pub const RELEASE_PRIO_CATCACHE_REFS: u32 = 100; +pub const RELEASE_PRIO_CATCACHE_LIST_REFS: u32 = 200; +pub const RELEASE_PRIO_PLANCACHE_REFS: u32 = 300; +pub const RELEASE_PRIO_TUPDESC_REFS: u32 = 400; +pub const RELEASE_PRIO_SNAPSHOT_REFS: u32 = 500; +pub const RELEASE_PRIO_FILES: u32 = 600; +pub const RELEASE_PRIO_WAITEVENTSETS: u32 = 700; +pub const RELEASE_PRIO_FIRST: u32 = 1; +pub const RELEASE_PRIO_LAST: u32 = 4294967295; +pub const READ_BUFFERS_ZERO_ON_ERROR: u32 = 1; +pub const READ_BUFFERS_ISSUE_ADVICE: u32 = 2; +pub const DEFAULT_EFFECTIVE_IO_CONCURRENCY: u32 = 1; +pub const DEFAULT_MAINTENANCE_IO_CONCURRENCY: u32 = 10; +pub const MAX_IO_CONCURRENCY: u32 = 1000; +pub const BUFFER_LOCK_UNLOCK: u32 = 0; +pub const BUFFER_LOCK_SHARE: u32 = 1; +pub const BUFFER_LOCK_EXCLUSIVE: u32 = 2; +pub const READ_STREAM_DEFAULT: u32 = 0; +pub const READ_STREAM_MAINTENANCE: u32 = 1; +pub const READ_STREAM_SEQUENTIAL: u32 = 2; +pub const READ_STREAM_FULL: u32 = 4; +#[allow(unsafe_code)] +pub const DEFAULT_TABLE_ACCESS_METHOD: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"heap\0") }; +pub const TABLE_INSERT_SKIP_FSM: u32 = 2; +pub const TABLE_INSERT_FROZEN: u32 = 4; +pub const TABLE_INSERT_NO_LOGICAL: u32 = 8; +pub const TUPLE_LOCK_FLAG_LOCK_UPDATE_IN_PROGRESS: u32 = 1; +pub const TUPLE_LOCK_FLAG_FIND_LAST_VERSION: u32 = 2; +pub const SHMEM_INDEX_KEYSIZE: u32 = 48; +pub const SHMEM_INDEX_SIZE: u32 = 64; +pub const HEAP_INSERT_SKIP_FSM: u32 = 2; +pub const HEAP_INSERT_FROZEN: u32 = 4; +pub const HEAP_INSERT_NO_LOGICAL: u32 = 8; +pub const HEAP_INSERT_SPECULATIVE: u32 = 16; +pub const HEAP_PAGE_PRUNE_MARK_UNUSED_NOW: u32 = 1; +pub const HEAP_PAGE_PRUNE_FREEZE: u32 = 2; +pub const HEAP_FREEZE_CHECK_XMIN_COMMITTED: u32 = 1; +pub const HEAP_FREEZE_CHECK_XMAX_ABORTED: u32 = 2; +pub const XLOG_MULTIXACT_ZERO_OFF_PAGE: u32 = 0; +pub const XLOG_MULTIXACT_ZERO_MEM_PAGE: u32 = 16; +pub const XLOG_MULTIXACT_CREATE_ID: u32 = 32; +pub const XLOG_MULTIXACT_TRUNCATE_ID: u32 = 48; +pub const NUM_INDIVIDUAL_LWLOCKS: u32 = 53; +pub const LWLOCK_PADDED_SIZE: u32 = 128; +pub const NUM_BUFFER_PARTITIONS: u32 = 128; +pub const LOG2_NUM_LOCK_PARTITIONS: u32 = 4; +pub const NUM_LOCK_PARTITIONS: u32 = 16; +pub const LOG2_NUM_PREDICATELOCK_PARTITIONS: u32 = 4; +pub const NUM_PREDICATELOCK_PARTITIONS: u32 = 16; +pub const BUFFER_MAPPING_LWLOCK_OFFSET: u32 = 53; +pub const LOCK_MANAGER_LWLOCK_OFFSET: u32 = 181; +pub const PREDICATELOCK_MANAGER_LWLOCK_OFFSET: u32 = 197; +pub const NUM_FIXED_LWLOCKS: u32 = 213; +pub const INTERVAL_FULL_RANGE: u32 = 32767; +pub const INTERVAL_RANGE_MASK: u32 = 32767; +pub const INTERVAL_FULL_PRECISION: u32 = 65535; +pub const INTERVAL_PRECISION_MASK: u32 = 65535; +pub const InvalidLocalTransactionId: u32 = 0; +pub const MAX_LOCKMODES: u32 = 10; +pub const DEFAULT_LOCKMETHOD: u32 = 1; +pub const USER_LOCKMETHOD: u32 = 2; +pub const BITS_PER_HEAPBLOCK: u32 = 2; +pub const VISIBILITYMAP_ALL_VISIBLE: u32 = 1; +pub const VISIBILITYMAP_ALL_FROZEN: u32 = 2; +pub const VISIBILITYMAP_VALID_BITS: u32 = 3; +pub const VISIBILITYMAP_XLOG_CATALOG_REL: u32 = 4; +pub const VISIBILITYMAP_XLOG_VALID_BITS: u32 = 7; +pub const XLOG_PAGE_MAGIC: u32 = 53526; +pub const XLP_FIRST_IS_CONTRECORD: u32 = 1; +pub const XLP_LONG_HEADER: u32 = 2; +pub const XLP_BKP_REMOVABLE: u32 = 4; +pub const XLP_FIRST_IS_OVERWRITE_CONTRECORD: u32 = 8; +pub const XLP_ALL_FLAGS: u32 = 15; +pub const WalSegMinSize: u32 = 1048576; +pub const WalSegMaxSize: u32 = 1073741824; +pub const DEFAULT_MIN_WAL_SEGS: u32 = 5; +pub const DEFAULT_MAX_WAL_SEGS: u32 = 64; +#[allow(unsafe_code)] +pub const XLOGDIR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"pg_wal\0") }; +#[allow(unsafe_code)] +pub const XLOG_CONTROL_FILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"global/pg_control\0") }; +pub const MAXFNAMELEN: u32 = 64; +pub const XLOG_FNAME_LEN: u32 = 24; +pub const PG_CONTROL_VERSION: u32 = 1700; +pub const MOCK_AUTH_NONCE_LEN: u32 = 32; +pub const XLOG_CHECKPOINT_SHUTDOWN: u32 = 0; +pub const XLOG_CHECKPOINT_ONLINE: u32 = 16; +pub const XLOG_NOOP: u32 = 32; +pub const XLOG_NEXTOID: u32 = 48; +pub const XLOG_SWITCH: u32 = 64; +pub const XLOG_BACKUP_END: u32 = 80; +pub const XLOG_PARAMETER_CHANGE: u32 = 96; +pub const XLOG_RESTORE_POINT: u32 = 112; +pub const XLOG_FPW_CHANGE: u32 = 128; +pub const XLOG_END_OF_RECOVERY: u32 = 144; +pub const XLOG_FPI_FOR_HINT: u32 = 160; +pub const XLOG_FPI: u32 = 176; +pub const XLOG_OVERWRITE_CONTRECORD: u32 = 208; +pub const XLOG_CHECKPOINT_REDO: u32 = 224; +pub const FLOATFORMAT_VALUE: f64 = 1234567.0; +pub const PG_CONTROL_MAX_SAFE_SIZE: u32 = 512; +pub const PG_CONTROL_FILE_SIZE: u32 = 8192; +pub const PERFORM_DELETION_INTERNAL: u32 = 1; +pub const PERFORM_DELETION_CONCURRENTLY: u32 = 2; +pub const PERFORM_DELETION_QUIETLY: u32 = 4; +pub const PERFORM_DELETION_SKIP_ORIGINAL: u32 = 8; +pub const PERFORM_DELETION_SKIP_EXTENSIONS: u32 = 16; +pub const PERFORM_DELETION_CONCURRENT_LOCK: u32 = 32; +#[allow(unsafe_code)] +pub const DEFAULT_INDEX_TYPE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"btree\0") }; +pub const REINDEXOPT_VERBOSE: u32 = 1; +pub const REINDEXOPT_REPORT_PROGRESS: u32 = 2; +pub const REINDEXOPT_MISSING_OK: u32 = 4; +pub const REINDEXOPT_CONCURRENTLY: u32 = 8; +pub const INDEX_CREATE_IS_PRIMARY: u32 = 1; +pub const INDEX_CREATE_ADD_CONSTRAINT: u32 = 2; +pub const INDEX_CREATE_SKIP_BUILD: u32 = 4; +pub const INDEX_CREATE_CONCURRENT: u32 = 8; +pub const INDEX_CREATE_IF_NOT_EXISTS: u32 = 16; +pub const INDEX_CREATE_PARTITIONED: u32 = 32; +pub const INDEX_CREATE_INVALID: u32 = 64; +pub const INDEX_CONSTR_CREATE_MARK_AS_PRIMARY: u32 = 1; +pub const INDEX_CONSTR_CREATE_DEFERRABLE: u32 = 2; +pub const INDEX_CONSTR_CREATE_INIT_DEFERRED: u32 = 4; +pub const INDEX_CONSTR_CREATE_UPDATE_INDEX: u32 = 8; +pub const INDEX_CONSTR_CREATE_REMOVE_OLD_DEPS: u32 = 16; +pub const REINDEX_REL_PROCESS_TOAST: u32 = 1; +pub const REINDEX_REL_SUPPRESS_INDEX_USE: u32 = 2; +pub const REINDEX_REL_CHECK_CONSTRAINTS: u32 = 4; +pub const REINDEX_REL_FORCE_INDEXES_UNLOGGED: u32 = 8; +pub const REINDEX_REL_FORCE_INDEXES_PERMANENT: u32 = 16; +pub const MAX_CATALOG_MULTI_INSERT_BYTES: u32 = 65535; +pub const AccessMethodRelationId: u32 = 2601; +pub const AmNameIndexId: u32 = 2651; +pub const AmOidIndexId: u32 = 2652; +pub const Anum_pg_am_oid: u32 = 1; +pub const Anum_pg_am_amname: u32 = 2; +pub const Anum_pg_am_amhandler: u32 = 3; +pub const Anum_pg_am_amtype: u32 = 4; +pub const Natts_pg_am: u32 = 4; +pub const AMTYPE_INDEX: u8 = 105u8; +pub const AMTYPE_TABLE: u8 = 116u8; +pub const HEAP_TABLE_AM_OID: u32 = 2; +pub const BTREE_AM_OID: u32 = 403; +pub const HASH_AM_OID: u32 = 405; +pub const GIST_AM_OID: u32 = 783; +pub const GIN_AM_OID: u32 = 2742; +pub const SPGIST_AM_OID: u32 = 4000; +pub const BRIN_AM_OID: u32 = 3580; +pub const AccessMethodOperatorRelationId: u32 = 2602; +pub const AccessMethodStrategyIndexId: u32 = 2653; +pub const AccessMethodOperatorIndexId: u32 = 2654; +pub const AccessMethodOperatorOidIndexId: u32 = 2756; +pub const Anum_pg_amop_oid: u32 = 1; +pub const Anum_pg_amop_amopfamily: u32 = 2; +pub const Anum_pg_amop_amoplefttype: u32 = 3; +pub const Anum_pg_amop_amoprighttype: u32 = 4; +pub const Anum_pg_amop_amopstrategy: u32 = 5; +pub const Anum_pg_amop_amoppurpose: u32 = 6; +pub const Anum_pg_amop_amopopr: u32 = 7; +pub const Anum_pg_amop_amopmethod: u32 = 8; +pub const Anum_pg_amop_amopsortfamily: u32 = 9; +pub const Natts_pg_amop: u32 = 9; +pub const AMOP_SEARCH: u8 = 115u8; +pub const AMOP_ORDER: u8 = 111u8; +pub const AccessMethodProcedureRelationId: u32 = 2603; +pub const AccessMethodProcedureIndexId: u32 = 2655; +pub const AccessMethodProcedureOidIndexId: u32 = 2757; +pub const Anum_pg_amproc_oid: u32 = 1; +pub const Anum_pg_amproc_amprocfamily: u32 = 2; +pub const Anum_pg_amproc_amproclefttype: u32 = 3; +pub const Anum_pg_amproc_amprocrighttype: u32 = 4; +pub const Anum_pg_amproc_amprocnum: u32 = 5; +pub const Anum_pg_amproc_amproc: u32 = 6; +pub const Natts_pg_amproc: u32 = 6; +pub const AuthIdRelationId: u32 = 1260; +pub const AuthIdRelation_Rowtype_Id: u32 = 2842; +pub const PgAuthidToastTable: u32 = 4175; +pub const PgAuthidToastIndex: u32 = 4176; +pub const AuthIdRolnameIndexId: u32 = 2676; +pub const AuthIdOidIndexId: u32 = 2677; +pub const Anum_pg_authid_oid: u32 = 1; +pub const Anum_pg_authid_rolname: u32 = 2; +pub const Anum_pg_authid_rolsuper: u32 = 3; +pub const Anum_pg_authid_rolinherit: u32 = 4; +pub const Anum_pg_authid_rolcreaterole: u32 = 5; +pub const Anum_pg_authid_rolcreatedb: u32 = 6; +pub const Anum_pg_authid_rolcanlogin: u32 = 7; +pub const Anum_pg_authid_rolreplication: u32 = 8; +pub const Anum_pg_authid_rolbypassrls: u32 = 9; +pub const Anum_pg_authid_rolconnlimit: u32 = 10; +pub const Anum_pg_authid_rolpassword: u32 = 11; +pub const Anum_pg_authid_rolvaliduntil: u32 = 12; +pub const Natts_pg_authid: u32 = 12; +pub const BOOTSTRAP_SUPERUSERID: u32 = 10; +pub const ROLE_PG_DATABASE_OWNER: u32 = 6171; +pub const ROLE_PG_READ_ALL_DATA: u32 = 6181; +pub const ROLE_PG_WRITE_ALL_DATA: u32 = 6182; +pub const ROLE_PG_MONITOR: u32 = 3373; +pub const ROLE_PG_READ_ALL_SETTINGS: u32 = 3374; +pub const ROLE_PG_READ_ALL_STATS: u32 = 3375; +pub const ROLE_PG_STAT_SCAN_TABLES: u32 = 3377; +pub const ROLE_PG_READ_SERVER_FILES: u32 = 4569; +pub const ROLE_PG_WRITE_SERVER_FILES: u32 = 4570; +pub const ROLE_PG_EXECUTE_SERVER_PROGRAM: u32 = 4571; +pub const ROLE_PG_SIGNAL_BACKEND: u32 = 4200; +pub const ROLE_PG_CHECKPOINT: u32 = 4544; +pub const ROLE_PG_MAINTAIN: u32 = 6337; +pub const ROLE_PG_USE_RESERVED_CONNECTIONS: u32 = 4550; +pub const ROLE_PG_CREATE_SUBSCRIPTION: u32 = 6304; +pub const CollationRelationId: u32 = 3456; +pub const CollationNameEncNspIndexId: u32 = 3164; +pub const CollationOidIndexId: u32 = 3085; +pub const Anum_pg_collation_oid: u32 = 1; +pub const Anum_pg_collation_collname: u32 = 2; +pub const Anum_pg_collation_collnamespace: u32 = 3; +pub const Anum_pg_collation_collowner: u32 = 4; +pub const Anum_pg_collation_collprovider: u32 = 5; +pub const Anum_pg_collation_collisdeterministic: u32 = 6; +pub const Anum_pg_collation_collencoding: u32 = 7; +pub const Anum_pg_collation_collcollate: u32 = 8; +pub const Anum_pg_collation_collctype: u32 = 9; +pub const Anum_pg_collation_colllocale: u32 = 10; +pub const Anum_pg_collation_collicurules: u32 = 11; +pub const Anum_pg_collation_collversion: u32 = 12; +pub const Natts_pg_collation: u32 = 12; +pub const COLLPROVIDER_DEFAULT: u8 = 100u8; +pub const COLLPROVIDER_BUILTIN: u8 = 98u8; +pub const COLLPROVIDER_ICU: u8 = 105u8; +pub const COLLPROVIDER_LIBC: u8 = 99u8; +pub const DEFAULT_COLLATION_OID: u32 = 100; +pub const C_COLLATION_OID: u32 = 950; +pub const POSIX_COLLATION_OID: u32 = 951; +pub const DatabaseRelationId: u32 = 1262; +pub const DatabaseRelation_Rowtype_Id: u32 = 1248; +pub const PgDatabaseToastTable: u32 = 4177; +pub const PgDatabaseToastIndex: u32 = 4178; +pub const DatabaseNameIndexId: u32 = 2671; +pub const DatabaseOidIndexId: u32 = 2672; +pub const Template0DbOid: u32 = 4; +pub const PostgresDbOid: u32 = 5; +pub const Anum_pg_database_oid: u32 = 1; +pub const Anum_pg_database_datname: u32 = 2; +pub const Anum_pg_database_datdba: u32 = 3; +pub const Anum_pg_database_encoding: u32 = 4; +pub const Anum_pg_database_datlocprovider: u32 = 5; +pub const Anum_pg_database_datistemplate: u32 = 6; +pub const Anum_pg_database_datallowconn: u32 = 7; +pub const Anum_pg_database_dathasloginevt: u32 = 8; +pub const Anum_pg_database_datconnlimit: u32 = 9; +pub const Anum_pg_database_datfrozenxid: u32 = 10; +pub const Anum_pg_database_datminmxid: u32 = 11; +pub const Anum_pg_database_dattablespace: u32 = 12; +pub const Anum_pg_database_datcollate: u32 = 13; +pub const Anum_pg_database_datctype: u32 = 14; +pub const Anum_pg_database_datlocale: u32 = 15; +pub const Anum_pg_database_daticurules: u32 = 16; +pub const Anum_pg_database_datcollversion: u32 = 17; +pub const Anum_pg_database_datacl: u32 = 18; +pub const Natts_pg_database: u32 = 18; +pub const Template1DbOid: u32 = 1; +pub const DATCONNLIMIT_UNLIMITED: i32 = -1; +pub const DATCONNLIMIT_INVALID_DB: i32 = -2; +pub const EnumRelationId: u32 = 3501; +pub const EnumOidIndexId: u32 = 3502; +pub const EnumTypIdLabelIndexId: u32 = 3503; +pub const EnumTypIdSortOrderIndexId: u32 = 3534; +pub const Anum_pg_enum_oid: u32 = 1; +pub const Anum_pg_enum_enumtypid: u32 = 2; +pub const Anum_pg_enum_enumsortorder: u32 = 3; +pub const Anum_pg_enum_enumlabel: u32 = 4; +pub const Natts_pg_enum: u32 = 4; +pub const ExtensionRelationId: u32 = 3079; +pub const ExtensionOidIndexId: u32 = 3080; +pub const ExtensionNameIndexId: u32 = 3081; +pub const Anum_pg_extension_oid: u32 = 1; +pub const Anum_pg_extension_extname: u32 = 2; +pub const Anum_pg_extension_extowner: u32 = 3; +pub const Anum_pg_extension_extnamespace: u32 = 4; +pub const Anum_pg_extension_extrelocatable: u32 = 5; +pub const Anum_pg_extension_extversion: u32 = 6; +pub const Anum_pg_extension_extconfig: u32 = 7; +pub const Anum_pg_extension_extcondition: u32 = 8; +pub const Natts_pg_extension: u32 = 8; +pub const ForeignDataWrapperRelationId: u32 = 2328; +pub const ForeignDataWrapperOidIndexId: u32 = 112; +pub const ForeignDataWrapperNameIndexId: u32 = 548; +pub const Anum_pg_foreign_data_wrapper_oid: u32 = 1; +pub const Anum_pg_foreign_data_wrapper_fdwname: u32 = 2; +pub const Anum_pg_foreign_data_wrapper_fdwowner: u32 = 3; +pub const Anum_pg_foreign_data_wrapper_fdwhandler: u32 = 4; +pub const Anum_pg_foreign_data_wrapper_fdwvalidator: u32 = 5; +pub const Anum_pg_foreign_data_wrapper_fdwacl: u32 = 6; +pub const Anum_pg_foreign_data_wrapper_fdwoptions: u32 = 7; +pub const Natts_pg_foreign_data_wrapper: u32 = 7; +pub const ForeignServerRelationId: u32 = 1417; +pub const ForeignServerOidIndexId: u32 = 113; +pub const ForeignServerNameIndexId: u32 = 549; +pub const Anum_pg_foreign_server_oid: u32 = 1; +pub const Anum_pg_foreign_server_srvname: u32 = 2; +pub const Anum_pg_foreign_server_srvowner: u32 = 3; +pub const Anum_pg_foreign_server_srvfdw: u32 = 4; +pub const Anum_pg_foreign_server_srvtype: u32 = 5; +pub const Anum_pg_foreign_server_srvversion: u32 = 6; +pub const Anum_pg_foreign_server_srvacl: u32 = 7; +pub const Anum_pg_foreign_server_srvoptions: u32 = 8; +pub const Natts_pg_foreign_server: u32 = 8; +pub const ForeignTableRelationId: u32 = 3118; +pub const ForeignTableRelidIndexId: u32 = 3119; +pub const Anum_pg_foreign_table_ftrelid: u32 = 1; +pub const Anum_pg_foreign_table_ftserver: u32 = 2; +pub const Anum_pg_foreign_table_ftoptions: u32 = 3; +pub const Natts_pg_foreign_table: u32 = 3; +pub const OperatorRelationId: u32 = 2617; +pub const OperatorOidIndexId: u32 = 2688; +pub const OperatorNameNspIndexId: u32 = 2689; +pub const Anum_pg_operator_oid: u32 = 1; +pub const Anum_pg_operator_oprname: u32 = 2; +pub const Anum_pg_operator_oprnamespace: u32 = 3; +pub const Anum_pg_operator_oprowner: u32 = 4; +pub const Anum_pg_operator_oprkind: u32 = 5; +pub const Anum_pg_operator_oprcanmerge: u32 = 6; +pub const Anum_pg_operator_oprcanhash: u32 = 7; +pub const Anum_pg_operator_oprleft: u32 = 8; +pub const Anum_pg_operator_oprright: u32 = 9; +pub const Anum_pg_operator_oprresult: u32 = 10; +pub const Anum_pg_operator_oprcom: u32 = 11; +pub const Anum_pg_operator_oprnegate: u32 = 12; +pub const Anum_pg_operator_oprcode: u32 = 13; +pub const Anum_pg_operator_oprrest: u32 = 14; +pub const Anum_pg_operator_oprjoin: u32 = 15; +pub const Natts_pg_operator: u32 = 15; +pub const BooleanNotEqualOperator: u32 = 85; +pub const BooleanEqualOperator: u32 = 91; +pub const Int4EqualOperator: u32 = 96; +pub const Int4LessOperator: u32 = 97; +pub const TextEqualOperator: u32 = 98; +pub const TextPrefixOperator: u32 = 3877; +pub const NameEqualTextOperator: u32 = 254; +pub const NameLessTextOperator: u32 = 255; +pub const NameGreaterEqualTextOperator: u32 = 257; +pub const TIDEqualOperator: u32 = 387; +pub const TIDLessOperator: u32 = 2799; +pub const TIDGreaterOperator: u32 = 2800; +pub const TIDLessEqOperator: u32 = 2801; +pub const TIDGreaterEqOperator: u32 = 2802; +pub const Int8LessOperator: u32 = 412; +pub const OID_NAME_REGEXEQ_OP: u32 = 639; +pub const OID_TEXT_REGEXEQ_OP: u32 = 641; +pub const TextLessOperator: u32 = 664; +pub const TextGreaterEqualOperator: u32 = 667; +pub const Float8LessOperator: u32 = 672; +pub const BpcharEqualOperator: u32 = 1054; +pub const OID_BPCHAR_REGEXEQ_OP: u32 = 1055; +pub const BpcharLessOperator: u32 = 1058; +pub const BpcharGreaterEqualOperator: u32 = 1061; +pub const ARRAY_EQ_OP: u32 = 1070; +pub const ARRAY_LT_OP: u32 = 1072; +pub const ARRAY_GT_OP: u32 = 1073; +pub const OID_NAME_LIKE_OP: u32 = 1207; +pub const OID_TEXT_LIKE_OP: u32 = 1209; +pub const OID_BPCHAR_LIKE_OP: u32 = 1211; +pub const OID_NAME_ICREGEXEQ_OP: u32 = 1226; +pub const OID_TEXT_ICREGEXEQ_OP: u32 = 1228; +pub const OID_BPCHAR_ICREGEXEQ_OP: u32 = 1234; +pub const OID_INET_SUB_OP: u32 = 931; +pub const OID_INET_SUBEQ_OP: u32 = 932; +pub const OID_INET_SUP_OP: u32 = 933; +pub const OID_INET_SUPEQ_OP: u32 = 934; +pub const OID_INET_OVERLAP_OP: u32 = 3552; +pub const OID_NAME_ICLIKE_OP: u32 = 1625; +pub const OID_TEXT_ICLIKE_OP: u32 = 1627; +pub const OID_BPCHAR_ICLIKE_OP: u32 = 1629; +pub const ByteaEqualOperator: u32 = 1955; +pub const ByteaLessOperator: u32 = 1957; +pub const ByteaGreaterEqualOperator: u32 = 1960; +pub const OID_BYTEA_LIKE_OP: u32 = 2016; +pub const TextPatternLessOperator: u32 = 2314; +pub const TextPatternGreaterEqualOperator: u32 = 2317; +pub const BpcharPatternLessOperator: u32 = 2326; +pub const BpcharPatternGreaterEqualOperator: u32 = 2329; +pub const OID_ARRAY_OVERLAP_OP: u32 = 2750; +pub const OID_ARRAY_CONTAINS_OP: u32 = 2751; +pub const OID_ARRAY_CONTAINED_OP: u32 = 2752; +pub const RECORD_EQ_OP: u32 = 2988; +pub const RECORD_LT_OP: u32 = 2990; +pub const RECORD_GT_OP: u32 = 2991; +pub const OID_RANGE_LESS_OP: u32 = 3884; +pub const OID_RANGE_LESS_EQUAL_OP: u32 = 3885; +pub const OID_RANGE_GREATER_EQUAL_OP: u32 = 3886; +pub const OID_RANGE_GREATER_OP: u32 = 3887; +pub const OID_RANGE_OVERLAP_OP: u32 = 3888; +pub const OID_RANGE_CONTAINS_ELEM_OP: u32 = 3889; +pub const OID_RANGE_CONTAINS_OP: u32 = 3890; +pub const OID_RANGE_ELEM_CONTAINED_OP: u32 = 3891; +pub const OID_RANGE_CONTAINED_OP: u32 = 3892; +pub const OID_RANGE_LEFT_OP: u32 = 3893; +pub const OID_RANGE_RIGHT_OP: u32 = 3894; +pub const OID_RANGE_OVERLAPS_LEFT_OP: u32 = 3895; +pub const OID_RANGE_OVERLAPS_RIGHT_OP: u32 = 3896; +pub const OID_MULTIRANGE_LESS_OP: u32 = 2862; +pub const OID_MULTIRANGE_LESS_EQUAL_OP: u32 = 2863; +pub const OID_MULTIRANGE_GREATER_EQUAL_OP: u32 = 2864; +pub const OID_MULTIRANGE_GREATER_OP: u32 = 2865; +pub const OID_RANGE_OVERLAPS_MULTIRANGE_OP: u32 = 2866; +pub const OID_MULTIRANGE_OVERLAPS_RANGE_OP: u32 = 2867; +pub const OID_MULTIRANGE_OVERLAPS_MULTIRANGE_OP: u32 = 2868; +pub const OID_MULTIRANGE_CONTAINS_ELEM_OP: u32 = 2869; +pub const OID_MULTIRANGE_CONTAINS_RANGE_OP: u32 = 2870; +pub const OID_MULTIRANGE_CONTAINS_MULTIRANGE_OP: u32 = 2871; +pub const OID_MULTIRANGE_ELEM_CONTAINED_OP: u32 = 2872; +pub const OID_MULTIRANGE_RANGE_CONTAINED_OP: u32 = 2873; +pub const OID_MULTIRANGE_MULTIRANGE_CONTAINED_OP: u32 = 2874; +pub const OID_RANGE_CONTAINS_MULTIRANGE_OP: u32 = 4539; +pub const OID_RANGE_MULTIRANGE_CONTAINED_OP: u32 = 4540; +pub const OID_RANGE_OVERLAPS_LEFT_MULTIRANGE_OP: u32 = 2875; +pub const OID_MULTIRANGE_OVERLAPS_LEFT_RANGE_OP: u32 = 2876; +pub const OID_MULTIRANGE_OVERLAPS_LEFT_MULTIRANGE_OP: u32 = 2877; +pub const OID_RANGE_OVERLAPS_RIGHT_MULTIRANGE_OP: u32 = 3585; +pub const OID_MULTIRANGE_OVERLAPS_RIGHT_RANGE_OP: u32 = 4035; +pub const OID_MULTIRANGE_OVERLAPS_RIGHT_MULTIRANGE_OP: u32 = 4142; +pub const OID_RANGE_ADJACENT_MULTIRANGE_OP: u32 = 4179; +pub const OID_MULTIRANGE_ADJACENT_RANGE_OP: u32 = 4180; +pub const OID_MULTIRANGE_ADJACENT_MULTIRANGE_OP: u32 = 4198; +pub const OID_RANGE_LEFT_MULTIRANGE_OP: u32 = 4395; +pub const OID_MULTIRANGE_LEFT_RANGE_OP: u32 = 4396; +pub const OID_MULTIRANGE_LEFT_MULTIRANGE_OP: u32 = 4397; +pub const OID_RANGE_RIGHT_MULTIRANGE_OP: u32 = 4398; +pub const OID_MULTIRANGE_RIGHT_RANGE_OP: u32 = 4399; +pub const OID_MULTIRANGE_RIGHT_MULTIRANGE_OP: u32 = 4400; +pub const OperatorClassRelationId: u32 = 2616; +pub const OpclassAmNameNspIndexId: u32 = 2686; +pub const OpclassOidIndexId: u32 = 2687; +pub const Anum_pg_opclass_oid: u32 = 1; +pub const Anum_pg_opclass_opcmethod: u32 = 2; +pub const Anum_pg_opclass_opcname: u32 = 3; +pub const Anum_pg_opclass_opcnamespace: u32 = 4; +pub const Anum_pg_opclass_opcowner: u32 = 5; +pub const Anum_pg_opclass_opcfamily: u32 = 6; +pub const Anum_pg_opclass_opcintype: u32 = 7; +pub const Anum_pg_opclass_opcdefault: u32 = 8; +pub const Anum_pg_opclass_opckeytype: u32 = 9; +pub const Natts_pg_opclass: u32 = 9; +pub const DATE_BTREE_OPS_OID: u32 = 3122; +pub const FLOAT8_BTREE_OPS_OID: u32 = 3123; +pub const INT2_BTREE_OPS_OID: u32 = 1979; +pub const INT4_BTREE_OPS_OID: u32 = 1978; +pub const INT8_BTREE_OPS_OID: u32 = 3124; +pub const NUMERIC_BTREE_OPS_OID: u32 = 3125; +pub const OID_BTREE_OPS_OID: u32 = 1981; +pub const TEXT_BTREE_OPS_OID: u32 = 3126; +pub const TIMESTAMPTZ_BTREE_OPS_OID: u32 = 3127; +pub const TIMESTAMP_BTREE_OPS_OID: u32 = 3128; +pub const TEXT_BTREE_PATTERN_OPS_OID: u32 = 4217; +pub const VARCHAR_BTREE_PATTERN_OPS_OID: u32 = 4218; +pub const BPCHAR_BTREE_PATTERN_OPS_OID: u32 = 4219; +pub const OperatorFamilyRelationId: u32 = 2753; +pub const OpfamilyAmNameNspIndexId: u32 = 2754; +pub const OpfamilyOidIndexId: u32 = 2755; +pub const Anum_pg_opfamily_oid: u32 = 1; +pub const Anum_pg_opfamily_opfmethod: u32 = 2; +pub const Anum_pg_opfamily_opfname: u32 = 3; +pub const Anum_pg_opfamily_opfnamespace: u32 = 4; +pub const Anum_pg_opfamily_opfowner: u32 = 5; +pub const Natts_pg_opfamily: u32 = 5; +pub const BOOL_BTREE_FAM_OID: u32 = 424; +pub const BPCHAR_BTREE_FAM_OID: u32 = 426; +pub const BYTEA_BTREE_FAM_OID: u32 = 428; +pub const NETWORK_BTREE_FAM_OID: u32 = 1974; +pub const INTEGER_BTREE_FAM_OID: u32 = 1976; +pub const INTERVAL_BTREE_FAM_OID: u32 = 1982; +pub const OID_BTREE_FAM_OID: u32 = 1989; +pub const TEXT_BTREE_FAM_OID: u32 = 1994; +pub const TEXT_PATTERN_BTREE_FAM_OID: u32 = 2095; +pub const BPCHAR_PATTERN_BTREE_FAM_OID: u32 = 2097; +pub const BOOL_HASH_FAM_OID: u32 = 2222; +pub const TEXT_SPGIST_FAM_OID: u32 = 4017; +pub const ProcedureRelationId: u32 = 1255; +pub const ProcedureRelation_Rowtype_Id: u32 = 81; +pub const ProcedureOidIndexId: u32 = 2690; +pub const ProcedureNameArgsNspIndexId: u32 = 2691; +pub const Anum_pg_proc_oid: u32 = 1; +pub const Anum_pg_proc_proname: u32 = 2; +pub const Anum_pg_proc_pronamespace: u32 = 3; +pub const Anum_pg_proc_proowner: u32 = 4; +pub const Anum_pg_proc_prolang: u32 = 5; +pub const Anum_pg_proc_procost: u32 = 6; +pub const Anum_pg_proc_prorows: u32 = 7; +pub const Anum_pg_proc_provariadic: u32 = 8; +pub const Anum_pg_proc_prosupport: u32 = 9; +pub const Anum_pg_proc_prokind: u32 = 10; +pub const Anum_pg_proc_prosecdef: u32 = 11; +pub const Anum_pg_proc_proleakproof: u32 = 12; +pub const Anum_pg_proc_proisstrict: u32 = 13; +pub const Anum_pg_proc_proretset: u32 = 14; +pub const Anum_pg_proc_provolatile: u32 = 15; +pub const Anum_pg_proc_proparallel: u32 = 16; +pub const Anum_pg_proc_pronargs: u32 = 17; +pub const Anum_pg_proc_pronargdefaults: u32 = 18; +pub const Anum_pg_proc_prorettype: u32 = 19; +pub const Anum_pg_proc_proargtypes: u32 = 20; +pub const Anum_pg_proc_proallargtypes: u32 = 21; +pub const Anum_pg_proc_proargmodes: u32 = 22; +pub const Anum_pg_proc_proargnames: u32 = 23; +pub const Anum_pg_proc_proargdefaults: u32 = 24; +pub const Anum_pg_proc_protrftypes: u32 = 25; +pub const Anum_pg_proc_prosrc: u32 = 26; +pub const Anum_pg_proc_probin: u32 = 27; +pub const Anum_pg_proc_prosqlbody: u32 = 28; +pub const Anum_pg_proc_proconfig: u32 = 29; +pub const Anum_pg_proc_proacl: u32 = 30; +pub const Natts_pg_proc: u32 = 30; +pub const PROKIND_FUNCTION: u8 = 102u8; +pub const PROKIND_AGGREGATE: u8 = 97u8; +pub const PROKIND_WINDOW: u8 = 119u8; +pub const PROKIND_PROCEDURE: u8 = 112u8; +pub const PROVOLATILE_IMMUTABLE: u8 = 105u8; +pub const PROVOLATILE_STABLE: u8 = 115u8; +pub const PROVOLATILE_VOLATILE: u8 = 118u8; +pub const PROPARALLEL_SAFE: u8 = 115u8; +pub const PROPARALLEL_RESTRICTED: u8 = 114u8; +pub const PROPARALLEL_UNSAFE: u8 = 117u8; +pub const PROARGMODE_IN: u8 = 105u8; +pub const PROARGMODE_OUT: u8 = 111u8; +pub const PROARGMODE_INOUT: u8 = 98u8; +pub const PROARGMODE_VARIADIC: u8 = 118u8; +pub const PROARGMODE_TABLE: u8 = 116u8; +pub const NamespaceRelationId: u32 = 2615; +pub const NamespaceNameIndexId: u32 = 2684; +pub const NamespaceOidIndexId: u32 = 2685; +pub const Anum_pg_namespace_oid: u32 = 1; +pub const Anum_pg_namespace_nspname: u32 = 2; +pub const Anum_pg_namespace_nspowner: u32 = 3; +pub const Anum_pg_namespace_nspacl: u32 = 4; +pub const Natts_pg_namespace: u32 = 4; +pub const PG_CATALOG_NAMESPACE: u32 = 11; +pub const PG_TOAST_NAMESPACE: u32 = 99; +pub const PG_PUBLIC_NAMESPACE: u32 = 2200; +pub const ACL_ID_PUBLIC: u32 = 0; +pub const ACL_MODECHG_ADD: u32 = 1; +pub const ACL_MODECHG_DEL: u32 = 2; +pub const ACL_MODECHG_EQL: u32 = 3; +pub const ACL_INSERT_CHR: u8 = 97u8; +pub const ACL_SELECT_CHR: u8 = 114u8; +pub const ACL_UPDATE_CHR: u8 = 119u8; +pub const ACL_DELETE_CHR: u8 = 100u8; +pub const ACL_TRUNCATE_CHR: u8 = 68u8; +pub const ACL_REFERENCES_CHR: u8 = 120u8; +pub const ACL_TRIGGER_CHR: u8 = 116u8; +pub const ACL_EXECUTE_CHR: u8 = 88u8; +pub const ACL_USAGE_CHR: u8 = 85u8; +pub const ACL_CREATE_CHR: u8 = 67u8; +pub const ACL_CREATE_TEMP_CHR: u8 = 84u8; +pub const ACL_CONNECT_CHR: u8 = 99u8; +pub const ACL_SET_CHR: u8 = 115u8; +pub const ACL_ALTER_SYSTEM_CHR: u8 = 65u8; +pub const ACL_MAINTAIN_CHR: u8 = 109u8; +#[allow(unsafe_code)] +pub const ACL_ALL_RIGHTS_STR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"arwdDxtXUCTcsAm\0") }; +pub const ACL_ALL_RIGHTS_COLUMN: u32 = 39; +pub const ACL_ALL_RIGHTS_RELATION: u32 = 16511; +pub const ACL_ALL_RIGHTS_SEQUENCE: u32 = 262; +pub const ACL_ALL_RIGHTS_DATABASE: u32 = 3584; +pub const ACL_ALL_RIGHTS_FDW: u32 = 256; +pub const ACL_ALL_RIGHTS_FOREIGN_SERVER: u32 = 256; +pub const ACL_ALL_RIGHTS_FUNCTION: u32 = 128; +pub const ACL_ALL_RIGHTS_LANGUAGE: u32 = 256; +pub const ACL_ALL_RIGHTS_LARGEOBJECT: u32 = 6; +pub const ACL_ALL_RIGHTS_PARAMETER_ACL: u32 = 12288; +pub const ACL_ALL_RIGHTS_SCHEMA: u32 = 768; +pub const ACL_ALL_RIGHTS_TABLESPACE: u32 = 512; +pub const ACL_ALL_RIGHTS_TYPE: u32 = 256; +pub const SecLabelRelationId: u32 = 3596; +pub const SecLabelObjectIndexId: u32 = 3597; +pub const Anum_pg_seclabel_objoid: u32 = 1; +pub const Anum_pg_seclabel_classoid: u32 = 2; +pub const Anum_pg_seclabel_objsubid: u32 = 3; +pub const Anum_pg_seclabel_provider: u32 = 4; +pub const Anum_pg_seclabel_label: u32 = 5; +pub const Natts_pg_seclabel: u32 = 5; +pub const TableSpaceRelationId: u32 = 1213; +pub const PgTablespaceToastTable: u32 = 4185; +pub const PgTablespaceToastIndex: u32 = 4186; +pub const TablespaceOidIndexId: u32 = 2697; +pub const TablespaceNameIndexId: u32 = 2698; +pub const Anum_pg_tablespace_oid: u32 = 1; +pub const Anum_pg_tablespace_spcname: u32 = 2; +pub const Anum_pg_tablespace_spcowner: u32 = 3; +pub const Anum_pg_tablespace_spcacl: u32 = 4; +pub const Anum_pg_tablespace_spcoptions: u32 = 5; +pub const Natts_pg_tablespace: u32 = 5; +pub const DEFAULTTABLESPACE_OID: u32 = 1663; +pub const GLOBALTABLESPACE_OID: u32 = 1664; +pub const TriggerRelationId: u32 = 2620; +pub const TriggerConstraintIndexId: u32 = 2699; +pub const TriggerRelidNameIndexId: u32 = 2701; +pub const TriggerOidIndexId: u32 = 2702; +pub const Anum_pg_trigger_oid: u32 = 1; +pub const Anum_pg_trigger_tgrelid: u32 = 2; +pub const Anum_pg_trigger_tgparentid: u32 = 3; +pub const Anum_pg_trigger_tgname: u32 = 4; +pub const Anum_pg_trigger_tgfoid: u32 = 5; +pub const Anum_pg_trigger_tgtype: u32 = 6; +pub const Anum_pg_trigger_tgenabled: u32 = 7; +pub const Anum_pg_trigger_tgisinternal: u32 = 8; +pub const Anum_pg_trigger_tgconstrrelid: u32 = 9; +pub const Anum_pg_trigger_tgconstrindid: u32 = 10; +pub const Anum_pg_trigger_tgconstraint: u32 = 11; +pub const Anum_pg_trigger_tgdeferrable: u32 = 12; +pub const Anum_pg_trigger_tginitdeferred: u32 = 13; +pub const Anum_pg_trigger_tgnargs: u32 = 14; +pub const Anum_pg_trigger_tgattr: u32 = 15; +pub const Anum_pg_trigger_tgargs: u32 = 16; +pub const Anum_pg_trigger_tgqual: u32 = 17; +pub const Anum_pg_trigger_tgoldtable: u32 = 18; +pub const Anum_pg_trigger_tgnewtable: u32 = 19; +pub const Natts_pg_trigger: u32 = 19; +pub const TRIGGER_TYPE_ROW: u32 = 1; +pub const TRIGGER_TYPE_BEFORE: u32 = 2; +pub const TRIGGER_TYPE_INSERT: u32 = 4; +pub const TRIGGER_TYPE_DELETE: u32 = 8; +pub const TRIGGER_TYPE_UPDATE: u32 = 16; +pub const TRIGGER_TYPE_TRUNCATE: u32 = 32; +pub const TRIGGER_TYPE_INSTEAD: u32 = 64; +pub const TRIGGER_TYPE_LEVEL_MASK: u32 = 1; +pub const TRIGGER_TYPE_STATEMENT: u32 = 0; +pub const TRIGGER_TYPE_TIMING_MASK: u32 = 66; +pub const TRIGGER_TYPE_AFTER: u32 = 0; +pub const TRIGGER_TYPE_EVENT_MASK: u32 = 60; +pub const UserMappingRelationId: u32 = 1418; +pub const UserMappingOidIndexId: u32 = 174; +pub const UserMappingUserServerIndexId: u32 = 175; +pub const Anum_pg_user_mapping_oid: u32 = 1; +pub const Anum_pg_user_mapping_umuser: u32 = 2; +pub const Anum_pg_user_mapping_umserver: u32 = 3; +pub const Anum_pg_user_mapping_umoptions: u32 = 4; +pub const Natts_pg_user_mapping: u32 = 4; +pub const EOH_HEADER_MAGIC: i32 = -1; +pub const MAXDIM: u32 = 6; +pub const EA_MAGIC: u32 = 689375833; +pub const EventTriggerRelationId: u32 = 3466; +pub const EventTriggerNameIndexId: u32 = 3467; +pub const EventTriggerOidIndexId: u32 = 3468; +pub const Anum_pg_event_trigger_oid: u32 = 1; +pub const Anum_pg_event_trigger_evtname: u32 = 2; +pub const Anum_pg_event_trigger_evtevent: u32 = 3; +pub const Anum_pg_event_trigger_evtowner: u32 = 4; +pub const Anum_pg_event_trigger_evtfoid: u32 = 5; +pub const Anum_pg_event_trigger_evtenabled: u32 = 6; +pub const Anum_pg_event_trigger_evttags: u32 = 7; +pub const Natts_pg_event_trigger: u32 = 7; +pub const AT_REWRITE_ALTER_PERSISTENCE: u32 = 1; +pub const AT_REWRITE_DEFAULT_VAL: u32 = 2; +pub const AT_REWRITE_COLUMN_REWRITE: u32 = 4; +pub const AT_REWRITE_ACCESS_METHOD: u32 = 8; +pub const CACHEDPLANSOURCE_MAGIC: u32 = 195726186; +pub const CACHEDPLAN_MAGIC: u32 = 953717834; +pub const CACHEDEXPR_MAGIC: u32 = 838275847; +pub const XLOG_TBLSPC_CREATE: u32 = 0; +pub const XLOG_TBLSPC_DROP: u32 = 16; +pub const TRIGGER_EVENT_INSERT: u32 = 0; +pub const TRIGGER_EVENT_DELETE: u32 = 1; +pub const TRIGGER_EVENT_UPDATE: u32 = 2; +pub const TRIGGER_EVENT_TRUNCATE: u32 = 3; +pub const TRIGGER_EVENT_OPMASK: u32 = 3; +pub const TRIGGER_EVENT_ROW: u32 = 4; +pub const TRIGGER_EVENT_BEFORE: u32 = 8; +pub const TRIGGER_EVENT_AFTER: u32 = 0; +pub const TRIGGER_EVENT_INSTEAD: u32 = 16; +pub const TRIGGER_EVENT_TIMINGMASK: u32 = 24; +pub const AFTER_TRIGGER_DEFERRABLE: u32 = 32; +pub const AFTER_TRIGGER_INITDEFERRED: u32 = 64; +pub const SESSION_REPLICATION_ROLE_ORIGIN: u32 = 0; +pub const SESSION_REPLICATION_ROLE_REPLICA: u32 = 1; +pub const SESSION_REPLICATION_ROLE_LOCAL: u32 = 2; +pub const TRIGGER_FIRES_ON_ORIGIN: u8 = 79u8; +pub const TRIGGER_FIRES_ALWAYS: u8 = 65u8; +pub const TRIGGER_FIRES_ON_REPLICA: u8 = 82u8; +pub const TRIGGER_DISABLED: u8 = 68u8; +pub const RI_TRIGGER_PK: u32 = 1; +pub const RI_TRIGGER_FK: u32 = 2; +pub const RI_TRIGGER_NONE: u32 = 0; +#[allow(unsafe_code)] +pub const PG_AUTOCONF_FILENAME: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"postgresql.auto.conf\0") }; +pub const GUC_QUALIFIER_SEPARATOR: u8 = 46u8; +pub const GUC_LIST_INPUT: u32 = 1; +pub const GUC_LIST_QUOTE: u32 = 2; +pub const GUC_NO_SHOW_ALL: u32 = 4; +pub const GUC_NO_RESET: u32 = 8; +pub const GUC_NO_RESET_ALL: u32 = 16; +pub const GUC_EXPLAIN: u32 = 32; +pub const GUC_REPORT: u32 = 64; +pub const GUC_NOT_IN_SAMPLE: u32 = 128; +pub const GUC_DISALLOW_IN_FILE: u32 = 256; +pub const GUC_CUSTOM_PLACEHOLDER: u32 = 512; +pub const GUC_SUPERUSER_ONLY: u32 = 1024; +pub const GUC_IS_NAME: u32 = 2048; +pub const GUC_NOT_WHILE_SEC_REST: u32 = 4096; +pub const GUC_DISALLOW_IN_AUTO_FILE: u32 = 8192; +pub const GUC_RUNTIME_COMPUTED: u32 = 16384; +pub const GUC_ALLOW_IN_PARALLEL: u32 = 32768; +pub const GUC_UNIT_KB: u32 = 16777216; +pub const GUC_UNIT_BLOCKS: u32 = 33554432; +pub const GUC_UNIT_XBLOCKS: u32 = 50331648; +pub const GUC_UNIT_MB: u32 = 67108864; +pub const GUC_UNIT_BYTE: u32 = 83886080; +pub const GUC_UNIT_MEMORY: u32 = 251658240; +pub const GUC_UNIT_MS: u32 = 268435456; +pub const GUC_UNIT_S: u32 = 536870912; +pub const GUC_UNIT_MIN: u32 = 805306368; +pub const GUC_UNIT_TIME: u32 = 1879048192; +pub const GUC_UNIT: u32 = 2130706432; +pub const BGWORKER_SHMEM_ACCESS: u32 = 1; +pub const BGWORKER_BACKEND_DATABASE_CONNECTION: u32 = 2; +pub const BGWORKER_CLASS_PARALLEL: u32 = 16; +pub const BGW_DEFAULT_RESTART_INTERVAL: u32 = 60; +pub const BGW_NEVER_RESTART: i32 = -1; +pub const BGW_MAXLEN: u32 = 96; +pub const BGW_EXTRALEN: u32 = 128; +pub const BGWORKER_BYPASS_ALLOWCONN: u32 = 1; +pub const BGWORKER_BYPASS_ROLELOGINCHECK: u32 = 2; +pub const TRANSACTION_STATUS_IN_PROGRESS: u32 = 0; +pub const TRANSACTION_STATUS_COMMITTED: u32 = 1; +pub const TRANSACTION_STATUS_ABORTED: u32 = 2; +pub const TRANSACTION_STATUS_SUB_COMMITTED: u32 = 3; +pub const CLOG_ZEROPAGE: u32 = 0; +pub const CLOG_TRUNCATE: u32 = 16; +pub const WL_LATCH_SET: u32 = 1; +pub const WL_SOCKET_READABLE: u32 = 2; +pub const WL_SOCKET_WRITEABLE: u32 = 4; +pub const WL_TIMEOUT: u32 = 8; +pub const WL_POSTMASTER_DEATH: u32 = 16; +pub const WL_EXIT_ON_PM_DEATH: u32 = 32; +pub const WL_SOCKET_CONNECTED: u32 = 4; +pub const WL_SOCKET_CLOSED: u32 = 128; +pub const WL_SOCKET_ACCEPT: u32 = 2; +pub const WL_SOCKET_MASK: u32 = 134; +pub const PGPROC_MAX_CACHED_SUBXIDS: u32 = 64; +pub const PROC_IS_AUTOVACUUM: u32 = 1; +pub const PROC_IN_VACUUM: u32 = 2; +pub const PROC_IN_SAFE_IC: u32 = 4; +pub const PROC_VACUUM_FOR_WRAPAROUND: u32 = 8; +pub const PROC_IN_LOGICAL_DECODING: u32 = 16; +pub const PROC_AFFECTS_ALL_HORIZONS: u32 = 32; +pub const PROC_VACUUM_STATE_MASK: u32 = 14; +pub const PROC_XMIN_FLAGS: u32 = 6; +pub const FP_LOCK_SLOTS_PER_BACKEND: u32 = 16; +pub const DELAY_CHKPT_START: u32 = 1; +pub const DELAY_CHKPT_COMPLETE: u32 = 2; +pub const NUM_AUXILIARY_PROCS: u32 = 6; +pub const StatisticRelationId: u32 = 2619; +pub const StatisticRelidAttnumInhIndexId: u32 = 2696; +pub const Anum_pg_statistic_starelid: u32 = 1; +pub const Anum_pg_statistic_staattnum: u32 = 2; +pub const Anum_pg_statistic_stainherit: u32 = 3; +pub const Anum_pg_statistic_stanullfrac: u32 = 4; +pub const Anum_pg_statistic_stawidth: u32 = 5; +pub const Anum_pg_statistic_stadistinct: u32 = 6; +pub const Anum_pg_statistic_stakind1: u32 = 7; +pub const Anum_pg_statistic_stakind2: u32 = 8; +pub const Anum_pg_statistic_stakind3: u32 = 9; +pub const Anum_pg_statistic_stakind4: u32 = 10; +pub const Anum_pg_statistic_stakind5: u32 = 11; +pub const Anum_pg_statistic_staop1: u32 = 12; +pub const Anum_pg_statistic_staop2: u32 = 13; +pub const Anum_pg_statistic_staop3: u32 = 14; +pub const Anum_pg_statistic_staop4: u32 = 15; +pub const Anum_pg_statistic_staop5: u32 = 16; +pub const Anum_pg_statistic_stacoll1: u32 = 17; +pub const Anum_pg_statistic_stacoll2: u32 = 18; +pub const Anum_pg_statistic_stacoll3: u32 = 19; +pub const Anum_pg_statistic_stacoll4: u32 = 20; +pub const Anum_pg_statistic_stacoll5: u32 = 21; +pub const Anum_pg_statistic_stanumbers1: u32 = 22; +pub const Anum_pg_statistic_stanumbers2: u32 = 23; +pub const Anum_pg_statistic_stanumbers3: u32 = 24; +pub const Anum_pg_statistic_stanumbers4: u32 = 25; +pub const Anum_pg_statistic_stanumbers5: u32 = 26; +pub const Anum_pg_statistic_stavalues1: u32 = 27; +pub const Anum_pg_statistic_stavalues2: u32 = 28; +pub const Anum_pg_statistic_stavalues3: u32 = 29; +pub const Anum_pg_statistic_stavalues4: u32 = 30; +pub const Anum_pg_statistic_stavalues5: u32 = 31; +pub const Natts_pg_statistic: u32 = 31; +pub const STATISTIC_KIND_MCV: u32 = 1; +pub const STATISTIC_KIND_HISTOGRAM: u32 = 2; +pub const STATISTIC_KIND_CORRELATION: u32 = 3; +pub const STATISTIC_KIND_MCELEM: u32 = 4; +pub const STATISTIC_KIND_DECHIST: u32 = 5; +pub const STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM: u32 = 6; +pub const STATISTIC_KIND_BOUNDS_HISTOGRAM: u32 = 7; +pub const STATISTIC_NUM_SLOTS: u32 = 5; +pub const VACUUM_OPTION_NO_PARALLEL: u32 = 0; +pub const VACUUM_OPTION_PARALLEL_BULKDEL: u32 = 1; +pub const VACUUM_OPTION_PARALLEL_COND_CLEANUP: u32 = 2; +pub const VACUUM_OPTION_PARALLEL_CLEANUP: u32 = 4; +pub const VACUUM_OPTION_MAX_VALID_VALUE: u32 = 7; +pub const VACOPT_VACUUM: u32 = 1; +pub const VACOPT_ANALYZE: u32 = 2; +pub const VACOPT_VERBOSE: u32 = 4; +pub const VACOPT_FREEZE: u32 = 8; +pub const VACOPT_FULL: u32 = 16; +pub const VACOPT_SKIP_LOCKED: u32 = 32; +pub const VACOPT_PROCESS_MAIN: u32 = 64; +pub const VACOPT_PROCESS_TOAST: u32 = 128; +pub const VACOPT_DISABLE_PAGE_SKIPPING: u32 = 256; +pub const VACOPT_SKIP_DATABASE_STATS: u32 = 512; +pub const VACOPT_ONLY_DATABASE_STATS: u32 = 1024; +pub const MAX_STATISTICS_TARGET: u32 = 10000; +pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUE: u32 = 0; +pub const FIELDNO_AGGSTATEPERGROUPDATA_TRANSVALUEISNULL: u32 = 1; +pub const FIELDNO_AGGSTATEPERGROUPDATA_NOTRANSVALUE: u32 = 2; +pub const EEO_FLAG_INTERPRETER_INITIALIZED: u32 = 2; +pub const EEO_FLAG_DIRECT_THREADED: u32 = 4; +pub const SPI_ERROR_CONNECT: i32 = -1; +pub const SPI_ERROR_COPY: i32 = -2; +pub const SPI_ERROR_OPUNKNOWN: i32 = -3; +pub const SPI_ERROR_UNCONNECTED: i32 = -4; +pub const SPI_ERROR_CURSOR: i32 = -5; +pub const SPI_ERROR_ARGUMENT: i32 = -6; +pub const SPI_ERROR_PARAM: i32 = -7; +pub const SPI_ERROR_TRANSACTION: i32 = -8; +pub const SPI_ERROR_NOATTRIBUTE: i32 = -9; +pub const SPI_ERROR_NOOUTFUNC: i32 = -10; +pub const SPI_ERROR_TYPUNKNOWN: i32 = -11; +pub const SPI_ERROR_REL_DUPLICATE: i32 = -12; +pub const SPI_ERROR_REL_NOT_FOUND: i32 = -13; +pub const SPI_OK_CONNECT: u32 = 1; +pub const SPI_OK_FINISH: u32 = 2; +pub const SPI_OK_FETCH: u32 = 3; +pub const SPI_OK_UTILITY: u32 = 4; +pub const SPI_OK_SELECT: u32 = 5; +pub const SPI_OK_SELINTO: u32 = 6; +pub const SPI_OK_INSERT: u32 = 7; +pub const SPI_OK_DELETE: u32 = 8; +pub const SPI_OK_UPDATE: u32 = 9; +pub const SPI_OK_CURSOR: u32 = 10; +pub const SPI_OK_INSERT_RETURNING: u32 = 11; +pub const SPI_OK_DELETE_RETURNING: u32 = 12; +pub const SPI_OK_UPDATE_RETURNING: u32 = 13; +pub const SPI_OK_REWRITTEN: u32 = 14; +pub const SPI_OK_REL_REGISTER: u32 = 15; +pub const SPI_OK_REL_UNREGISTER: u32 = 16; +pub const SPI_OK_TD_REGISTER: u32 = 17; +pub const SPI_OK_MERGE: u32 = 18; +pub const SPI_OK_MERGE_RETURNING: u32 = 19; +pub const SPI_OPT_NONATOMIC: u32 = 1; +pub const AMFLAG_HAS_TID_RANGE: u32 = 1; +pub const GROUPING_CAN_USE_SORT: u32 = 1; +pub const GROUPING_CAN_USE_HASH: u32 = 2; +pub const GROUPING_CAN_PARTIAL_AGG: u32 = 4; +pub const FSV_MISSING_OK: u32 = 1; +pub const FDW_MISSING_OK: u32 = 1; +pub const PGJIT_NONE: u32 = 0; +pub const PGJIT_PERFORM: u32 = 1; +pub const PGJIT_OPT3: u32 = 2; +pub const PGJIT_INLINE: u32 = 4; +pub const PGJIT_EXPR: u32 = 8; +pub const PGJIT_DEFORM: u32 = 16; +pub const MAX_MULTIBYTE_CHAR_LEN: u32 = 4; +pub const SS2: u32 = 142; +pub const SS3: u32 = 143; +pub const LC_ISO8859_1: u32 = 129; +pub const LC_ISO8859_2: u32 = 130; +pub const LC_ISO8859_3: u32 = 131; +pub const LC_ISO8859_4: u32 = 132; +pub const LC_TIS620: u32 = 133; +pub const LC_ISO8859_7: u32 = 134; +pub const LC_ISO8859_6: u32 = 135; +pub const LC_ISO8859_8: u32 = 136; +pub const LC_JISX0201K: u32 = 137; +pub const LC_JISX0201R: u32 = 138; +pub const LC_KOI8_R: u32 = 139; +pub const LC_ISO8859_5: u32 = 140; +pub const LC_ISO8859_9: u32 = 141; +pub const LC_ISO8859_15: u32 = 142; +pub const LC_JISX0208_1978: u32 = 144; +pub const LC_GB2312_80: u32 = 145; +pub const LC_JISX0208: u32 = 146; +pub const LC_KS5601: u32 = 147; +pub const LC_JISX0212: u32 = 148; +pub const LC_CNS11643_1: u32 = 149; +pub const LC_CNS11643_2: u32 = 150; +pub const LC_JISX0213_1: u32 = 151; +pub const LC_BIG5_1: u32 = 152; +pub const LC_BIG5_2: u32 = 153; +pub const LCPRV1_A: u32 = 154; +pub const LCPRV1_B: u32 = 155; +pub const LCPRV2_A: u32 = 156; +pub const LCPRV2_B: u32 = 157; +pub const LC_SISHENG: u32 = 160; +pub const LC_IPA: u32 = 161; +pub const LC_VISCII_LOWER: u32 = 162; +pub const LC_VISCII_UPPER: u32 = 163; +pub const LC_ARABIC_DIGIT: u32 = 164; +pub const LC_ARABIC_1_COLUMN: u32 = 165; +pub const LC_ASCII_RIGHT_TO_LEFT: u32 = 166; +pub const LC_LAO: u32 = 167; +pub const LC_ARABIC_2_COLUMN: u32 = 168; +pub const LC_INDIAN_1_COLUMN: u32 = 240; +pub const LC_TIBETAN_1_COLUMN: u32 = 241; +pub const LC_UNICODE_SUBSET_2: u32 = 242; +pub const LC_UNICODE_SUBSET_3: u32 = 243; +pub const LC_UNICODE_SUBSET: u32 = 244; +pub const LC_ETHIOPIC: u32 = 245; +pub const LC_CNS11643_3: u32 = 246; +pub const LC_CNS11643_4: u32 = 247; +pub const LC_CNS11643_5: u32 = 248; +pub const LC_CNS11643_6: u32 = 249; +pub const LC_CNS11643_7: u32 = 250; +pub const LC_INDIAN_2_COLUMN: u32 = 251; +pub const LC_TIBETAN: u32 = 252; +pub const MAX_CONVERSION_GROWTH: u32 = 4; +pub const MAX_CONVERSION_INPUT_LENGTH: u32 = 16; +pub const MAX_UNICODE_EQUIVALENT_STRING: u32 = 16; +pub const EXTNODENAME_MAX_LEN: u32 = 64; +pub const CUSTOMPATH_SUPPORT_BACKWARD_SCAN: u32 = 1; +pub const CUSTOMPATH_SUPPORT_MARK_RESTORE: u32 = 2; +pub const CUSTOMPATH_SUPPORT_PROJECTION: u32 = 4; +pub const QTW_IGNORE_RT_SUBQUERIES: u32 = 1; +pub const QTW_IGNORE_CTE_SUBQUERIES: u32 = 2; +pub const QTW_IGNORE_RC_SUBQUERIES: u32 = 3; +pub const QTW_IGNORE_JOINALIASES: u32 = 4; +pub const QTW_IGNORE_RANGE_TABLE: u32 = 8; +pub const QTW_EXAMINE_RTES_BEFORE: u32 = 16; +pub const QTW_EXAMINE_RTES_AFTER: u32 = 32; +pub const QTW_DONT_COPY_QUERY: u32 = 64; +pub const QTW_EXAMINE_SORTGROUP: u32 = 128; +pub const DEFAULT_SEQ_PAGE_COST: f64 = 1.0; +pub const DEFAULT_RANDOM_PAGE_COST: f64 = 4.0; +pub const DEFAULT_CPU_TUPLE_COST: f64 = 0.01; +pub const DEFAULT_CPU_INDEX_TUPLE_COST: f64 = 0.005; +pub const DEFAULT_CPU_OPERATOR_COST: f64 = 0.0025; +pub const DEFAULT_PARALLEL_TUPLE_COST: f64 = 0.1; +pub const DEFAULT_PARALLEL_SETUP_COST: f64 = 1000.0; +pub const DEFAULT_RECURSIVE_WORKTABLE_FACTOR: f64 = 10.0; +pub const DEFAULT_EFFECTIVE_CACHE_SIZE: u32 = 524288; +pub const PVC_INCLUDE_AGGREGATES: u32 = 1; +pub const PVC_RECURSE_AGGREGATES: u32 = 2; +pub const PVC_INCLUDE_WINDOWFUNCS: u32 = 4; +pub const PVC_RECURSE_WINDOWFUNCS: u32 = 8; +pub const PVC_INCLUDE_PLACEHOLDERS: u32 = 16; +pub const PVC_RECURSE_PLACEHOLDERS: u32 = 32; +pub const DEFAULT_CURSOR_TUPLE_FRACTION: f64 = 0.1; +pub const ER_MAGIC: u32 = 1384727874; +pub const ER_FLAG_FVALUE_VALID: u32 = 1; +pub const ER_FLAG_FVALUE_ALLOCED: u32 = 2; +pub const ER_FLAG_DVALUES_VALID: u32 = 4; +pub const ER_FLAG_DVALUES_ALLOCED: u32 = 8; +pub const ER_FLAG_HAVE_EXTERNAL: u32 = 16; +pub const ER_FLAG_TUPDESC_ALLOCED: u32 = 32; +pub const ER_FLAG_IS_DOMAIN: u32 = 64; +pub const ER_FLAG_IS_DUMMY: u32 = 128; +pub const ER_FLAGS_NON_DATA: u32 = 224; +pub const PLPGSQL_XCHECK_NONE: u32 = 0; +pub const PLPGSQL_XCHECK_SHADOWVAR: u32 = 2; +pub const PLPGSQL_XCHECK_TOOMANYROWS: u32 = 4; +pub const PLPGSQL_XCHECK_STRICTMULTIASSIGNMENT: u32 = 8; +pub const POSTMASTER_FD_WATCH: u32 = 0; +pub const POSTMASTER_FD_OWN: u32 = 1; +pub const MAX_BACKENDS: u32 = 262143; +pub const PIPE_PROTO_IS_LAST: u32 = 1; +pub const PIPE_PROTO_DEST_STDERR: u32 = 16; +pub const PIPE_PROTO_DEST_CSVLOG: u32 = 32; +pub const PIPE_PROTO_DEST_JSONLOG: u32 = 64; +#[allow(unsafe_code)] +pub const LOG_METAINFO_DATAFILE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"current_logfiles\0") }; +#[allow(unsafe_code)] +pub const LOG_METAINFO_DATAFILE_TMP: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"current_logfiles.tmp\0") }; +pub const RBTXN_HAS_CATALOG_CHANGES: u32 = 1; +pub const RBTXN_IS_SUBXACT: u32 = 2; +pub const RBTXN_IS_SERIALIZED: u32 = 4; +pub const RBTXN_IS_SERIALIZED_CLEAR: u32 = 8; +pub const RBTXN_IS_STREAMED: u32 = 16; +pub const RBTXN_HAS_PARTIAL_CHANGE: u32 = 32; +pub const RBTXN_PREPARE: u32 = 64; +pub const RBTXN_SKIPPED_PREPARE: u32 = 128; +pub const RBTXN_HAS_STREAMABLE_CHANGE: u32 = 256; +pub const LOGICALREP_PROTO_MIN_VERSION_NUM: u32 = 1; +pub const LOGICALREP_PROTO_VERSION_NUM: u32 = 1; +pub const LOGICALREP_PROTO_STREAM_VERSION_NUM: u32 = 2; +pub const LOGICALREP_PROTO_TWOPHASE_VERSION_NUM: u32 = 3; +pub const LOGICALREP_PROTO_STREAM_PARALLEL_VERSION_NUM: u32 = 4; +pub const LOGICALREP_PROTO_MAX_VERSION_NUM: u32 = 4; +pub const LOGICALREP_COLUMN_NULL: u8 = 110u8; +pub const LOGICALREP_COLUMN_UNCHANGED: u8 = 117u8; +pub const LOGICALREP_COLUMN_TEXT: u8 = 116u8; +pub const LOGICALREP_COLUMN_BINARY: u8 = 98u8; +pub const MAXCONNINFO: u32 = 1024; +pub const XLOG_STANDBY_LOCK: u32 = 0; +pub const XLOG_RUNNING_XACTS: u32 = 16; +pub const XLOG_INVALIDATIONS: u32 = 32; +pub const STACK_DEPTH_SLOP: u32 = 524288; +pub const RESTRICT_RELKIND_VIEW: u32 = 1; +pub const RESTRICT_RELKIND_FOREIGN_TABLE: u32 = 2; +pub const COMMAND_OK_IN_READ_ONLY_TXN: u32 = 1; +pub const COMMAND_OK_IN_PARALLEL_MODE: u32 = 2; +pub const COMMAND_OK_IN_RECOVERY: u32 = 4; +pub const COMMAND_IS_STRICTLY_READ_ONLY: u32 = 7; +pub const COMMAND_IS_NOT_READ_ONLY: u32 = 0; +pub const MAXSTRLEN: u32 = 2047; +pub const MAXSTRPOS: u32 = 1048575; +pub const MAXENTRYPOS: u32 = 16384; +pub const MAXNUMPOS: u32 = 256; +pub const QI_VAL: u32 = 1; +pub const QI_OPR: u32 = 2; +pub const QI_VALSTOP: u32 = 3; +pub const OP_NOT: u32 = 1; +pub const OP_AND: u32 = 2; +pub const OP_OR: u32 = 3; +pub const OP_PHRASE: u32 = 4; +pub const OP_COUNT: u32 = 4; +pub const TSL_ADDPOS: u32 = 1; +pub const TSL_PREFIX: u32 = 2; +pub const TSL_FILTER: u32 = 4; +pub const P_TSV_OPR_IS_DELIM: u32 = 1; +pub const P_TSV_IS_TSQUERY: u32 = 2; +pub const P_TSV_IS_WEB: u32 = 4; +pub const P_TSQ_PLAIN: u32 = 1; +pub const P_TSQ_WEB: u32 = 2; +pub const TS_EXEC_EMPTY: u32 = 0; +pub const TS_EXEC_SKIP_NOT: u32 = 1; +pub const TS_EXEC_PHRASE_NO_POS: u32 = 2; +pub const TSearchStrategyNumber: u32 = 1; +pub const TSearchWithClassStrategyNumber: u32 = 2; +pub const QTN_NEEDFREE: u32 = 1; +pub const QTN_NOCHANGE: u32 = 2; +pub const QTN_WORDFREE: u32 = 4; +pub const MAXINT8LEN: u32 = 20; +pub const FORMAT_TYPE_TYPEMOD_GIVEN: u32 = 1; +pub const FORMAT_TYPE_ALLOW_INVALID: u32 = 2; +pub const FORMAT_TYPE_FORCE_QUALIFY: u32 = 4; +pub const FORMAT_TYPE_INVALID_AS_NULL: u32 = 8; +pub const MAX_TIME_PRECISION: u32 = 6; +#[allow(unsafe_code)] +pub const DAGO: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"ago\0") }; +#[allow(unsafe_code)] +pub const DCURRENT: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"current\0") }; +#[allow(unsafe_code)] +pub const EPOCH: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"epoch\0") }; +#[allow(unsafe_code)] +pub const INVALID: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"invalid\0") }; +#[allow(unsafe_code)] +pub const EARLY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"-infinity\0") }; +#[allow(unsafe_code)] +pub const LATE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"infinity\0") }; +#[allow(unsafe_code)] +pub const NOW: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"now\0") }; +#[allow(unsafe_code)] +pub const TODAY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"today\0") }; +#[allow(unsafe_code)] +pub const TOMORROW: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"tomorrow\0") }; +#[allow(unsafe_code)] +pub const YESTERDAY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"yesterday\0") }; +#[allow(unsafe_code)] +pub const ZULU: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"zulu\0") }; +#[allow(unsafe_code)] +pub const DMICROSEC: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"usecond\0") }; +#[allow(unsafe_code)] +pub const DMILLISEC: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"msecond\0") }; +#[allow(unsafe_code)] +pub const DSECOND: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"second\0") }; +#[allow(unsafe_code)] +pub const DMINUTE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"minute\0") }; +#[allow(unsafe_code)] +pub const DHOUR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"hour\0") }; +#[allow(unsafe_code)] +pub const DDAY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"day\0") }; +#[allow(unsafe_code)] +pub const DWEEK: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"week\0") }; +#[allow(unsafe_code)] +pub const DMONTH: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"month\0") }; +#[allow(unsafe_code)] +pub const DQUARTER: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"quarter\0") }; +#[allow(unsafe_code)] +pub const DYEAR: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"year\0") }; +#[allow(unsafe_code)] +pub const DDECADE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"decade\0") }; +#[allow(unsafe_code)] +pub const DCENTURY: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"century\0") }; +#[allow(unsafe_code)] +pub const DMILLENNIUM: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"millennium\0") }; +#[allow(unsafe_code)] +pub const DA_D: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"ad\0") }; +#[allow(unsafe_code)] +pub const DB_C: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"bc\0") }; +#[allow(unsafe_code)] +pub const DTIMEZONE: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"timezone\0") }; +pub const AM: u32 = 0; +pub const PM: u32 = 1; +pub const HR24: u32 = 2; +pub const AD: u32 = 0; +pub const BC: u32 = 1; +pub const RESERV: u32 = 0; +pub const MONTH: u32 = 1; +pub const YEAR: u32 = 2; +pub const DAY: u32 = 3; +pub const JULIAN: u32 = 4; +pub const TZ: u32 = 5; +pub const DTZ: u32 = 6; +pub const DYNTZ: u32 = 7; +pub const IGNORE_DTF: u32 = 8; +pub const AMPM: u32 = 9; +pub const HOUR: u32 = 10; +pub const MINUTE: u32 = 11; +pub const SECOND: u32 = 12; +pub const MILLISECOND: u32 = 13; +pub const MICROSECOND: u32 = 14; +pub const DOY: u32 = 15; +pub const DOW: u32 = 16; +pub const UNITS: u32 = 17; +pub const ADBC: u32 = 18; +pub const AGO: u32 = 19; +pub const ABS_BEFORE: u32 = 20; +pub const ABS_AFTER: u32 = 21; +pub const ISODATE: u32 = 22; +pub const ISOTIME: u32 = 23; +pub const WEEK: u32 = 24; +pub const DECADE: u32 = 25; +pub const CENTURY: u32 = 26; +pub const MILLENNIUM: u32 = 27; +pub const DTZMOD: u32 = 28; +pub const UNKNOWN_FIELD: u32 = 31; +pub const DTK_NUMBER: u32 = 0; +pub const DTK_STRING: u32 = 1; +pub const DTK_DATE: u32 = 2; +pub const DTK_TIME: u32 = 3; +pub const DTK_TZ: u32 = 4; +pub const DTK_AGO: u32 = 5; +pub const DTK_SPECIAL: u32 = 6; +pub const DTK_EARLY: u32 = 9; +pub const DTK_LATE: u32 = 10; +pub const DTK_EPOCH: u32 = 11; +pub const DTK_NOW: u32 = 12; +pub const DTK_YESTERDAY: u32 = 13; +pub const DTK_TODAY: u32 = 14; +pub const DTK_TOMORROW: u32 = 15; +pub const DTK_ZULU: u32 = 16; +pub const DTK_DELTA: u32 = 17; +pub const DTK_SECOND: u32 = 18; +pub const DTK_MINUTE: u32 = 19; +pub const DTK_HOUR: u32 = 20; +pub const DTK_DAY: u32 = 21; +pub const DTK_WEEK: u32 = 22; +pub const DTK_MONTH: u32 = 23; +pub const DTK_QUARTER: u32 = 24; +pub const DTK_YEAR: u32 = 25; +pub const DTK_DECADE: u32 = 26; +pub const DTK_CENTURY: u32 = 27; +pub const DTK_MILLENNIUM: u32 = 28; +pub const DTK_MILLISEC: u32 = 29; +pub const DTK_MICROSEC: u32 = 30; +pub const DTK_JULIAN: u32 = 31; +pub const DTK_DOW: u32 = 32; +pub const DTK_DOY: u32 = 33; +pub const DTK_TZ_HOUR: u32 = 34; +pub const DTK_TZ_MINUTE: u32 = 35; +pub const DTK_ISOYEAR: u32 = 36; +pub const DTK_ISODOW: u32 = 37; +pub const MAXDATELEN: u32 = 128; +pub const MAXDATEFIELDS: u32 = 25; +pub const TOKMAXLEN: u32 = 10; +pub const DTERR_BAD_FORMAT: i32 = -1; +pub const DTERR_FIELD_OVERFLOW: i32 = -2; +pub const DTERR_MD_FIELD_OVERFLOW: i32 = -3; +pub const DTERR_INTERVAL_OVERFLOW: i32 = -4; +pub const DTERR_TZDISP_OVERFLOW: i32 = -5; +pub const DTERR_BAD_TIMEZONE: i32 = -6; +pub const DTERR_BAD_ZONE_ABBREV: i32 = -7; +pub const TZNAME_FIXED_OFFSET: u32 = 0; +pub const TZNAME_DYNTZ: u32 = 1; +pub const TZNAME_ZONE: u32 = 2; +pub const RADIANS_PER_DEGREE: f64 = 0.017453292519943295; +pub const F_HEAP_TABLEAM_HANDLER: u32 = 3; +pub const F_BYTEAOUT: u32 = 31; +pub const F_CHAROUT: u32 = 33; +pub const F_NAMEIN: u32 = 34; +pub const F_NAMEOUT: u32 = 35; +pub const F_INT2IN: u32 = 38; +pub const F_INT2OUT: u32 = 39; +pub const F_INT2VECTORIN: u32 = 40; +pub const F_INT2VECTOROUT: u32 = 41; +pub const F_INT4IN: u32 = 42; +pub const F_INT4OUT: u32 = 43; +pub const F_REGPROCIN: u32 = 44; +pub const F_REGPROCOUT: u32 = 45; +pub const F_TEXTIN: u32 = 46; +pub const F_TEXTOUT: u32 = 47; +pub const F_TIDIN: u32 = 48; +pub const F_TIDOUT: u32 = 49; +pub const F_XIDIN: u32 = 50; +pub const F_XIDOUT: u32 = 51; +pub const F_CIDIN: u32 = 52; +pub const F_CIDOUT: u32 = 53; +pub const F_OIDVECTORIN: u32 = 54; +pub const F_OIDVECTOROUT: u32 = 55; +pub const F_BOOLLT: u32 = 56; +pub const F_BOOLGT: u32 = 57; +pub const F_BOOLEQ: u32 = 60; +pub const F_CHAREQ: u32 = 61; +pub const F_NAMEEQ: u32 = 62; +pub const F_INT2EQ: u32 = 63; +pub const F_INT2LT: u32 = 64; +pub const F_INT4EQ: u32 = 65; +pub const F_INT4LT: u32 = 66; +pub const F_TEXTEQ: u32 = 67; +pub const F_XIDEQ: u32 = 68; +pub const F_CIDEQ: u32 = 69; +pub const F_CHARNE: u32 = 70; +pub const F_CHARLE: u32 = 72; +pub const F_CHARGT: u32 = 73; +pub const F_CHARGE: u32 = 74; +pub const F_INT4_CHAR: u32 = 77; +pub const F_CHAR_INT4: u32 = 78; +pub const F_NAMEREGEXEQ: u32 = 79; +pub const F_BOOLNE: u32 = 84; +pub const F_PG_DDL_COMMAND_IN: u32 = 86; +pub const F_PG_DDL_COMMAND_OUT: u32 = 87; +pub const F_PG_DDL_COMMAND_RECV: u32 = 88; +pub const F_VERSION: u32 = 89; +pub const F_PG_DDL_COMMAND_SEND: u32 = 90; +pub const F_EQSEL: u32 = 101; +pub const F_NEQSEL: u32 = 102; +pub const F_SCALARLTSEL: u32 = 103; +pub const F_SCALARGTSEL: u32 = 104; +pub const F_EQJOINSEL: u32 = 105; +pub const F_NEQJOINSEL: u32 = 106; +pub const F_SCALARLTJOINSEL: u32 = 107; +pub const F_SCALARGTJOINSEL: u32 = 108; +pub const F_UNKNOWNIN: u32 = 109; +pub const F_UNKNOWNOUT: u32 = 110; +pub const F_BOX_ABOVE_EQ: u32 = 115; +pub const F_BOX_BELOW_EQ: u32 = 116; +pub const F_POINT_IN: u32 = 117; +pub const F_POINT_OUT: u32 = 118; +pub const F_LSEG_IN: u32 = 119; +pub const F_LSEG_OUT: u32 = 120; +pub const F_PATH_IN: u32 = 121; +pub const F_PATH_OUT: u32 = 122; +pub const F_BOX_IN: u32 = 123; +pub const F_BOX_OUT: u32 = 124; +pub const F_BOX_OVERLAP: u32 = 125; +pub const F_BOX_GE: u32 = 126; +pub const F_BOX_GT: u32 = 127; +pub const F_BOX_EQ: u32 = 128; +pub const F_BOX_LT: u32 = 129; +pub const F_BOX_LE: u32 = 130; +pub const F_POINT_ABOVE: u32 = 131; +pub const F_POINT_LEFT: u32 = 132; +pub const F_POINT_RIGHT: u32 = 133; +pub const F_POINT_BELOW: u32 = 134; +pub const F_POINT_EQ: u32 = 135; +pub const F_ON_PB: u32 = 136; +pub const F_ON_PPATH: u32 = 137; +pub const F_BOX_CENTER: u32 = 138; +pub const F_AREASEL: u32 = 139; +pub const F_AREAJOINSEL: u32 = 140; +pub const F_INT4MUL: u32 = 141; +pub const F_INT4NE: u32 = 144; +pub const F_INT2NE: u32 = 145; +pub const F_INT2GT: u32 = 146; +pub const F_INT4GT: u32 = 147; +pub const F_INT2LE: u32 = 148; +pub const F_INT4LE: u32 = 149; +pub const F_INT4GE: u32 = 150; +pub const F_INT2GE: u32 = 151; +pub const F_INT2MUL: u32 = 152; +pub const F_INT2DIV: u32 = 153; +pub const F_INT4DIV: u32 = 154; +pub const F_INT2MOD: u32 = 155; +pub const F_INT4MOD: u32 = 156; +pub const F_TEXTNE: u32 = 157; +pub const F_INT24EQ: u32 = 158; +pub const F_INT42EQ: u32 = 159; +pub const F_INT24LT: u32 = 160; +pub const F_INT42LT: u32 = 161; +pub const F_INT24GT: u32 = 162; +pub const F_INT42GT: u32 = 163; +pub const F_INT24NE: u32 = 164; +pub const F_INT42NE: u32 = 165; +pub const F_INT24LE: u32 = 166; +pub const F_INT42LE: u32 = 167; +pub const F_INT24GE: u32 = 168; +pub const F_INT42GE: u32 = 169; +pub const F_INT24MUL: u32 = 170; +pub const F_INT42MUL: u32 = 171; +pub const F_INT24DIV: u32 = 172; +pub const F_INT42DIV: u32 = 173; +pub const F_INT2PL: u32 = 176; +pub const F_INT4PL: u32 = 177; +pub const F_INT24PL: u32 = 178; +pub const F_INT42PL: u32 = 179; +pub const F_INT2MI: u32 = 180; +pub const F_INT4MI: u32 = 181; +pub const F_INT24MI: u32 = 182; +pub const F_INT42MI: u32 = 183; +pub const F_OIDEQ: u32 = 184; +pub const F_OIDNE: u32 = 185; +pub const F_BOX_SAME: u32 = 186; +pub const F_BOX_CONTAIN: u32 = 187; +pub const F_BOX_LEFT: u32 = 188; +pub const F_BOX_OVERLEFT: u32 = 189; +pub const F_BOX_OVERRIGHT: u32 = 190; +pub const F_BOX_RIGHT: u32 = 191; +pub const F_BOX_CONTAINED: u32 = 192; +pub const F_BOX_CONTAIN_PT: u32 = 193; +pub const F_PG_NODE_TREE_IN: u32 = 195; +pub const F_PG_NODE_TREE_OUT: u32 = 196; +pub const F_PG_NODE_TREE_RECV: u32 = 197; +pub const F_PG_NODE_TREE_SEND: u32 = 198; +pub const F_FLOAT4IN: u32 = 200; +pub const F_FLOAT4OUT: u32 = 201; +pub const F_FLOAT4MUL: u32 = 202; +pub const F_FLOAT4DIV: u32 = 203; +pub const F_FLOAT4PL: u32 = 204; +pub const F_FLOAT4MI: u32 = 205; +pub const F_FLOAT4UM: u32 = 206; +pub const F_FLOAT4ABS: u32 = 207; +pub const F_FLOAT4_ACCUM: u32 = 208; +pub const F_FLOAT4LARGER: u32 = 209; +pub const F_FLOAT4SMALLER: u32 = 211; +pub const F_INT4UM: u32 = 212; +pub const F_INT2UM: u32 = 213; +pub const F_FLOAT8IN: u32 = 214; +pub const F_FLOAT8OUT: u32 = 215; +pub const F_FLOAT8MUL: u32 = 216; +pub const F_FLOAT8DIV: u32 = 217; +pub const F_FLOAT8PL: u32 = 218; +pub const F_FLOAT8MI: u32 = 219; +pub const F_FLOAT8UM: u32 = 220; +pub const F_FLOAT8ABS: u32 = 221; +pub const F_FLOAT8_ACCUM: u32 = 222; +pub const F_FLOAT8LARGER: u32 = 223; +pub const F_FLOAT8SMALLER: u32 = 224; +pub const F_LSEG_CENTER: u32 = 225; +pub const F_POLY_CENTER: u32 = 227; +pub const F_DROUND: u32 = 228; +pub const F_DTRUNC: u32 = 229; +pub const F_DSQRT: u32 = 230; +pub const F_DCBRT: u32 = 231; +pub const F_DPOW: u32 = 232; +pub const F_DEXP: u32 = 233; +pub const F_DLOG1: u32 = 234; +pub const F_FLOAT8_INT2: u32 = 235; +pub const F_FLOAT4_INT2: u32 = 236; +pub const F_INT2_FLOAT8: u32 = 237; +pub const F_INT2_FLOAT4: u32 = 238; +pub const F_LINE_DISTANCE: u32 = 239; +pub const F_NAMEEQTEXT: u32 = 240; +pub const F_NAMELTTEXT: u32 = 241; +pub const F_NAMELETEXT: u32 = 242; +pub const F_NAMEGETEXT: u32 = 243; +pub const F_NAMEGTTEXT: u32 = 244; +pub const F_NAMENETEXT: u32 = 245; +pub const F_BTNAMETEXTCMP: u32 = 246; +pub const F_TEXTEQNAME: u32 = 247; +pub const F_TEXTLTNAME: u32 = 248; +pub const F_TEXTLENAME: u32 = 249; +pub const F_TEXTGENAME: u32 = 250; +pub const F_TEXTGTNAME: u32 = 251; +pub const F_TEXTNENAME: u32 = 252; +pub const F_BTTEXTNAMECMP: u32 = 253; +pub const F_NAMECONCATOID: u32 = 266; +pub const F_TABLE_AM_HANDLER_IN: u32 = 267; +pub const F_TABLE_AM_HANDLER_OUT: u32 = 268; +pub const F_TIMEOFDAY: u32 = 274; +pub const F_PG_NEXTOID: u32 = 275; +pub const F_FLOAT8_COMBINE: u32 = 276; +pub const F_INTER_SL: u32 = 277; +pub const F_INTER_LB: u32 = 278; +pub const F_FLOAT48MUL: u32 = 279; +pub const F_FLOAT48DIV: u32 = 280; +pub const F_FLOAT48PL: u32 = 281; +pub const F_FLOAT48MI: u32 = 282; +pub const F_FLOAT84MUL: u32 = 283; +pub const F_FLOAT84DIV: u32 = 284; +pub const F_FLOAT84PL: u32 = 285; +pub const F_FLOAT84MI: u32 = 286; +pub const F_FLOAT4EQ: u32 = 287; +pub const F_FLOAT4NE: u32 = 288; +pub const F_FLOAT4LT: u32 = 289; +pub const F_FLOAT4LE: u32 = 290; +pub const F_FLOAT4GT: u32 = 291; +pub const F_FLOAT4GE: u32 = 292; +pub const F_FLOAT8EQ: u32 = 293; +pub const F_FLOAT8NE: u32 = 294; +pub const F_FLOAT8LT: u32 = 295; +pub const F_FLOAT8LE: u32 = 296; +pub const F_FLOAT8GT: u32 = 297; +pub const F_FLOAT8GE: u32 = 298; +pub const F_FLOAT48EQ: u32 = 299; +pub const F_FLOAT48NE: u32 = 300; +pub const F_FLOAT48LT: u32 = 301; +pub const F_FLOAT48LE: u32 = 302; +pub const F_FLOAT48GT: u32 = 303; +pub const F_FLOAT48GE: u32 = 304; +pub const F_FLOAT84EQ: u32 = 305; +pub const F_FLOAT84NE: u32 = 306; +pub const F_FLOAT84LT: u32 = 307; +pub const F_FLOAT84LE: u32 = 308; +pub const F_FLOAT84GT: u32 = 309; +pub const F_FLOAT84GE: u32 = 310; +pub const F_FLOAT8_FLOAT4: u32 = 311; +pub const F_FLOAT4_FLOAT8: u32 = 312; +pub const F_INT4_INT2: u32 = 313; +pub const F_INT2_INT4: u32 = 314; +pub const F_PG_JIT_AVAILABLE: u32 = 315; +pub const F_FLOAT8_INT4: u32 = 316; +pub const F_INT4_FLOAT8: u32 = 317; +pub const F_FLOAT4_INT4: u32 = 318; +pub const F_INT4_FLOAT4: u32 = 319; +pub const F_WIDTH_BUCKET_FLOAT8_FLOAT8_FLOAT8_INT4: u32 = 320; +pub const F_JSON_IN: u32 = 321; +pub const F_JSON_OUT: u32 = 322; +pub const F_JSON_RECV: u32 = 323; +pub const F_JSON_SEND: u32 = 324; +pub const F_INDEX_AM_HANDLER_IN: u32 = 326; +pub const F_INDEX_AM_HANDLER_OUT: u32 = 327; +pub const F_HASHMACADDR8: u32 = 328; +pub const F_HASH_ACLITEM: u32 = 329; +pub const F_BTHANDLER: u32 = 330; +pub const F_HASHHANDLER: u32 = 331; +pub const F_GISTHANDLER: u32 = 332; +pub const F_GINHANDLER: u32 = 333; +pub const F_SPGHANDLER: u32 = 334; +pub const F_BRINHANDLER: u32 = 335; +pub const F_SCALARLESEL: u32 = 336; +pub const F_SCALARGESEL: u32 = 337; +pub const F_AMVALIDATE: u32 = 338; +pub const F_POLY_SAME: u32 = 339; +pub const F_POLY_CONTAIN: u32 = 340; +pub const F_POLY_LEFT: u32 = 341; +pub const F_POLY_OVERLEFT: u32 = 342; +pub const F_POLY_OVERRIGHT: u32 = 343; +pub const F_POLY_RIGHT: u32 = 344; +pub const F_POLY_CONTAINED: u32 = 345; +pub const F_POLY_OVERLAP: u32 = 346; +pub const F_POLY_IN: u32 = 347; +pub const F_POLY_OUT: u32 = 348; +pub const F_BTINT2CMP: u32 = 350; +pub const F_BTINT4CMP: u32 = 351; +pub const F_BTFLOAT4CMP: u32 = 354; +pub const F_BTFLOAT8CMP: u32 = 355; +pub const F_BTOIDCMP: u32 = 356; +pub const F_DIST_BP: u32 = 357; +pub const F_BTCHARCMP: u32 = 358; +pub const F_BTNAMECMP: u32 = 359; +pub const F_BTTEXTCMP: u32 = 360; +pub const F_LSEG_DISTANCE: u32 = 361; +pub const F_LSEG_INTERPT: u32 = 362; +pub const F_DIST_PS: u32 = 363; +pub const F_DIST_PB: u32 = 364; +pub const F_DIST_SB: u32 = 365; +pub const F_CLOSE_PS: u32 = 366; +pub const F_CLOSE_PB: u32 = 367; +pub const F_CLOSE_SB: u32 = 368; +pub const F_ON_PS: u32 = 369; +pub const F_PATH_DISTANCE: u32 = 370; +pub const F_DIST_PPATH: u32 = 371; +pub const F_ON_SB: u32 = 372; +pub const F_INTER_SB: u32 = 373; +pub const F_STRING_TO_ARRAY_TEXT_TEXT_TEXT: u32 = 376; +pub const F_CASH_CMP: u32 = 377; +pub const F_ARRAY_APPEND: u32 = 378; +pub const F_ARRAY_PREPEND: u32 = 379; +pub const F_DIST_SP: u32 = 380; +pub const F_DIST_BS: u32 = 381; +pub const F_BTARRAYCMP: u32 = 382; +pub const F_ARRAY_CAT: u32 = 383; +pub const F_ARRAY_TO_STRING_ANYARRAY_TEXT_TEXT: u32 = 384; +pub const F_SCALARLEJOINSEL: u32 = 386; +pub const F_ARRAY_NE: u32 = 390; +pub const F_ARRAY_LT: u32 = 391; +pub const F_ARRAY_GT: u32 = 392; +pub const F_ARRAY_LE: u32 = 393; +pub const F_STRING_TO_ARRAY_TEXT_TEXT: u32 = 394; +pub const F_ARRAY_TO_STRING_ANYARRAY_TEXT: u32 = 395; +pub const F_ARRAY_GE: u32 = 396; +pub const F_SCALARGEJOINSEL: u32 = 398; +pub const F_HASHMACADDR: u32 = 399; +pub const F_HASHTEXT: u32 = 400; +pub const F_TEXT_BPCHAR: u32 = 401; +pub const F_BTOIDVECTORCMP: u32 = 404; +pub const F_TEXT_NAME: u32 = 406; +pub const F_NAME_TEXT: u32 = 407; +pub const F_BPCHAR_NAME: u32 = 408; +pub const F_NAME_BPCHAR: u32 = 409; +pub const F_DIST_PATHP: u32 = 421; +pub const F_HASHINET: u32 = 422; +pub const F_HASHINT4EXTENDED: u32 = 425; +pub const F_HASH_NUMERIC: u32 = 432; +pub const F_MACADDR_IN: u32 = 436; +pub const F_MACADDR_OUT: u32 = 437; +pub const F_NUM_NULLS: u32 = 438; +pub const F_NUM_NONNULLS: u32 = 440; +pub const F_HASHINT2EXTENDED: u32 = 441; +pub const F_HASHINT8EXTENDED: u32 = 442; +pub const F_HASHFLOAT4EXTENDED: u32 = 443; +pub const F_HASHFLOAT8EXTENDED: u32 = 444; +pub const F_HASHOIDEXTENDED: u32 = 445; +pub const F_HASHCHAREXTENDED: u32 = 446; +pub const F_HASHNAMEEXTENDED: u32 = 447; +pub const F_HASHTEXTEXTENDED: u32 = 448; +pub const F_HASHINT2: u32 = 449; +pub const F_HASHINT4: u32 = 450; +pub const F_HASHFLOAT4: u32 = 451; +pub const F_HASHFLOAT8: u32 = 452; +pub const F_HASHOID: u32 = 453; +pub const F_HASHCHAR: u32 = 454; +pub const F_HASHNAME: u32 = 455; +pub const F_HASHVARLENA: u32 = 456; +pub const F_HASHOIDVECTOR: u32 = 457; +pub const F_TEXT_LARGER: u32 = 458; +pub const F_TEXT_SMALLER: u32 = 459; +pub const F_INT8IN: u32 = 460; +pub const F_INT8OUT: u32 = 461; +pub const F_INT8UM: u32 = 462; +pub const F_INT8PL: u32 = 463; +pub const F_INT8MI: u32 = 464; +pub const F_INT8MUL: u32 = 465; +pub const F_INT8DIV: u32 = 466; +pub const F_INT8EQ: u32 = 467; +pub const F_INT8NE: u32 = 468; +pub const F_INT8LT: u32 = 469; +pub const F_INT8GT: u32 = 470; +pub const F_INT8LE: u32 = 471; +pub const F_INT8GE: u32 = 472; +pub const F_INT84EQ: u32 = 474; +pub const F_INT84NE: u32 = 475; +pub const F_INT84LT: u32 = 476; +pub const F_INT84GT: u32 = 477; +pub const F_INT84LE: u32 = 478; +pub const F_INT84GE: u32 = 479; +pub const F_INT4_INT8: u32 = 480; +pub const F_INT8_INT4: u32 = 481; +pub const F_FLOAT8_INT8: u32 = 482; +pub const F_INT8_FLOAT8: u32 = 483; +pub const F_ARRAY_LARGER: u32 = 515; +pub const F_ARRAY_SMALLER: u32 = 516; +pub const F_ABBREV_INET: u32 = 598; +pub const F_ABBREV_CIDR: u32 = 599; +pub const F_SET_MASKLEN_INET_INT4: u32 = 605; +pub const F_OIDVECTORNE: u32 = 619; +pub const F_HASH_ARRAY: u32 = 626; +pub const F_SET_MASKLEN_CIDR_INT4: u32 = 635; +pub const F_PG_INDEXAM_HAS_PROPERTY: u32 = 636; +pub const F_PG_INDEX_HAS_PROPERTY: u32 = 637; +pub const F_PG_INDEX_COLUMN_HAS_PROPERTY: u32 = 638; +pub const F_FLOAT4_INT8: u32 = 652; +pub const F_INT8_FLOAT4: u32 = 653; +pub const F_NAMELT: u32 = 655; +pub const F_NAMELE: u32 = 656; +pub const F_NAMEGT: u32 = 657; +pub const F_NAMEGE: u32 = 658; +pub const F_NAMENE: u32 = 659; +pub const F_BPCHAR_BPCHAR_INT4_BOOL: u32 = 668; +pub const F_VARCHAR_VARCHAR_INT4_BOOL: u32 = 669; +pub const F_PG_INDEXAM_PROGRESS_PHASENAME: u32 = 676; +pub const F_OIDVECTORLT: u32 = 677; +pub const F_OIDVECTORLE: u32 = 678; +pub const F_OIDVECTOREQ: u32 = 679; +pub const F_OIDVECTORGE: u32 = 680; +pub const F_OIDVECTORGT: u32 = 681; +pub const F_NETWORK: u32 = 683; +pub const F_NETMASK: u32 = 696; +pub const F_MASKLEN: u32 = 697; +pub const F_BROADCAST: u32 = 698; +pub const F_HOST: u32 = 699; +pub const F_DIST_LP: u32 = 702; +pub const F_DIST_LS: u32 = 704; +pub const F_GETPGUSERNAME: u32 = 710; +pub const F_FAMILY: u32 = 711; +pub const F_INT2_INT8: u32 = 714; +pub const F_LO_CREATE: u32 = 715; +pub const F_OIDLT: u32 = 716; +pub const F_OIDLE: u32 = 717; +pub const F_OCTET_LENGTH_BYTEA: u32 = 720; +pub const F_GET_BYTE: u32 = 721; +pub const F_SET_BYTE: u32 = 722; +pub const F_GET_BIT_BYTEA_INT8: u32 = 723; +pub const F_SET_BIT_BYTEA_INT8_INT4: u32 = 724; +pub const F_DIST_PL: u32 = 725; +pub const F_DIST_SL: u32 = 727; +pub const F_DIST_CPOLY: u32 = 728; +pub const F_POLY_DISTANCE: u32 = 729; +pub const F_TEXT_INET: u32 = 730; +pub const F_TEXT_LT: u32 = 740; +pub const F_TEXT_LE: u32 = 741; +pub const F_TEXT_GT: u32 = 742; +pub const F_TEXT_GE: u32 = 743; +pub const F_ARRAY_EQ: u32 = 744; +pub const F_CURRENT_USER: u32 = 745; +pub const F_SESSION_USER: u32 = 746; +pub const F_ARRAY_DIMS: u32 = 747; +pub const F_ARRAY_NDIMS: u32 = 748; +pub const F_OVERLAY_BYTEA_BYTEA_INT4_INT4: u32 = 749; +pub const F_ARRAY_IN: u32 = 750; +pub const F_ARRAY_OUT: u32 = 751; +pub const F_OVERLAY_BYTEA_BYTEA_INT4: u32 = 752; +pub const F_TRUNC_MACADDR: u32 = 753; +pub const F_INT8_INT2: u32 = 754; +pub const F_LO_IMPORT_TEXT: u32 = 764; +pub const F_LO_EXPORT: u32 = 765; +pub const F_INT4INC: u32 = 766; +pub const F_LO_IMPORT_TEXT_OID: u32 = 767; +pub const F_INT4LARGER: u32 = 768; +pub const F_INT4SMALLER: u32 = 769; +pub const F_INT2LARGER: u32 = 770; +pub const F_INT2SMALLER: u32 = 771; +pub const F_HASHVARLENAEXTENDED: u32 = 772; +pub const F_HASHOIDVECTOREXTENDED: u32 = 776; +pub const F_HASH_ACLITEM_EXTENDED: u32 = 777; +pub const F_HASHMACADDREXTENDED: u32 = 778; +pub const F_HASHINETEXTENDED: u32 = 779; +pub const F_HASH_NUMERIC_EXTENDED: u32 = 780; +pub const F_HASHMACADDR8EXTENDED: u32 = 781; +pub const F_HASH_ARRAY_EXTENDED: u32 = 782; +pub const F_DIST_POLYC: u32 = 785; +pub const F_PG_CLIENT_ENCODING: u32 = 810; +pub const F_CURRENT_QUERY: u32 = 817; +pub const F_MACADDR_EQ: u32 = 830; +pub const F_MACADDR_LT: u32 = 831; +pub const F_MACADDR_LE: u32 = 832; +pub const F_MACADDR_GT: u32 = 833; +pub const F_MACADDR_GE: u32 = 834; +pub const F_MACADDR_NE: u32 = 835; +pub const F_MACADDR_CMP: u32 = 836; +pub const F_INT82PL: u32 = 837; +pub const F_INT82MI: u32 = 838; +pub const F_INT82MUL: u32 = 839; +pub const F_INT82DIV: u32 = 840; +pub const F_INT28PL: u32 = 841; +pub const F_BTINT8CMP: u32 = 842; +pub const F_CASH_MUL_FLT4: u32 = 846; +pub const F_CASH_DIV_FLT4: u32 = 847; +pub const F_FLT4_MUL_CASH: u32 = 848; +pub const F_POSITION_TEXT_TEXT: u32 = 849; +pub const F_TEXTLIKE: u32 = 850; +pub const F_TEXTNLIKE: u32 = 851; +pub const F_INT48EQ: u32 = 852; +pub const F_INT48NE: u32 = 853; +pub const F_INT48LT: u32 = 854; +pub const F_INT48GT: u32 = 855; +pub const F_INT48LE: u32 = 856; +pub const F_INT48GE: u32 = 857; +pub const F_NAMELIKE: u32 = 858; +pub const F_NAMENLIKE: u32 = 859; +pub const F_BPCHAR_CHAR: u32 = 860; +pub const F_CURRENT_DATABASE: u32 = 861; +pub const F_INT4_MUL_CASH: u32 = 862; +pub const F_INT2_MUL_CASH: u32 = 863; +pub const F_CASH_MUL_INT4: u32 = 864; +pub const F_CASH_DIV_INT4: u32 = 865; +pub const F_CASH_MUL_INT2: u32 = 866; +pub const F_CASH_DIV_INT2: u32 = 867; +pub const F_STRPOS: u32 = 868; +pub const F_LOWER_TEXT: u32 = 870; +pub const F_UPPER_TEXT: u32 = 871; +pub const F_INITCAP: u32 = 872; +pub const F_LPAD_TEXT_INT4_TEXT: u32 = 873; +pub const F_RPAD_TEXT_INT4_TEXT: u32 = 874; +pub const F_LTRIM_TEXT_TEXT: u32 = 875; +pub const F_RTRIM_TEXT_TEXT: u32 = 876; +pub const F_SUBSTR_TEXT_INT4_INT4: u32 = 877; +pub const F_TRANSLATE: u32 = 878; +pub const F_LPAD_TEXT_INT4: u32 = 879; +pub const F_RPAD_TEXT_INT4: u32 = 880; +pub const F_LTRIM_TEXT: u32 = 881; +pub const F_RTRIM_TEXT: u32 = 882; +pub const F_SUBSTR_TEXT_INT4: u32 = 883; +pub const F_BTRIM_TEXT_TEXT: u32 = 884; +pub const F_BTRIM_TEXT: u32 = 885; +pub const F_CASH_IN: u32 = 886; +pub const F_CASH_OUT: u32 = 887; +pub const F_CASH_EQ: u32 = 888; +pub const F_CASH_NE: u32 = 889; +pub const F_CASH_LT: u32 = 890; +pub const F_CASH_LE: u32 = 891; +pub const F_CASH_GT: u32 = 892; +pub const F_CASH_GE: u32 = 893; +pub const F_CASH_PL: u32 = 894; +pub const F_CASH_MI: u32 = 895; +pub const F_CASH_MUL_FLT8: u32 = 896; +pub const F_CASH_DIV_FLT8: u32 = 897; +pub const F_CASHLARGER: u32 = 898; +pub const F_CASHSMALLER: u32 = 899; +pub const F_INET_IN: u32 = 910; +pub const F_INET_OUT: u32 = 911; +pub const F_FLT8_MUL_CASH: u32 = 919; +pub const F_NETWORK_EQ: u32 = 920; +pub const F_NETWORK_LT: u32 = 921; +pub const F_NETWORK_LE: u32 = 922; +pub const F_NETWORK_GT: u32 = 923; +pub const F_NETWORK_GE: u32 = 924; +pub const F_NETWORK_NE: u32 = 925; +pub const F_NETWORK_CMP: u32 = 926; +pub const F_NETWORK_SUB: u32 = 927; +pub const F_NETWORK_SUBEQ: u32 = 928; +pub const F_NETWORK_SUP: u32 = 929; +pub const F_NETWORK_SUPEQ: u32 = 930; +pub const F_CASH_WORDS: u32 = 935; +pub const F_SUBSTRING_TEXT_INT4_INT4: u32 = 936; +pub const F_SUBSTRING_TEXT_INT4: u32 = 937; +pub const F_GENERATE_SERIES_TIMESTAMP_TIMESTAMP_INTERVAL: u32 = 938; +pub const F_GENERATE_SERIES_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL: u32 = 939; +pub const F_MOD_INT2_INT2: u32 = 940; +pub const F_MOD_INT4_INT4: u32 = 941; +pub const F_INT28MI: u32 = 942; +pub const F_INT28MUL: u32 = 943; +pub const F_CHAR_TEXT: u32 = 944; +pub const F_INT8MOD: u32 = 945; +pub const F_TEXT_CHAR: u32 = 946; +pub const F_MOD_INT8_INT8: u32 = 947; +pub const F_INT28DIV: u32 = 948; +pub const F_HASHINT8: u32 = 949; +pub const F_LO_OPEN: u32 = 952; +pub const F_LO_CLOSE: u32 = 953; +pub const F_LOREAD: u32 = 954; +pub const F_LOWRITE: u32 = 955; +pub const F_LO_LSEEK: u32 = 956; +pub const F_LO_CREAT: u32 = 957; +pub const F_LO_TELL: u32 = 958; +pub const F_ON_PL: u32 = 959; +pub const F_ON_SL: u32 = 960; +pub const F_CLOSE_PL: u32 = 961; +pub const F_LO_UNLINK: u32 = 964; +pub const F_HASHBPCHAREXTENDED: u32 = 972; +pub const F_PATH_INTER: u32 = 973; +pub const F_AREA_BOX: u32 = 975; +pub const F_WIDTH: u32 = 976; +pub const F_HEIGHT: u32 = 977; +pub const F_BOX_DISTANCE: u32 = 978; +pub const F_AREA_PATH: u32 = 979; +pub const F_BOX_INTERSECT: u32 = 980; +pub const F_DIAGONAL: u32 = 981; +pub const F_PATH_N_LT: u32 = 982; +pub const F_PATH_N_GT: u32 = 983; +pub const F_PATH_N_EQ: u32 = 984; +pub const F_PATH_N_LE: u32 = 985; +pub const F_PATH_N_GE: u32 = 986; +pub const F_PATH_LENGTH: u32 = 987; +pub const F_POINT_NE: u32 = 988; +pub const F_POINT_VERT: u32 = 989; +pub const F_POINT_HORIZ: u32 = 990; +pub const F_POINT_DISTANCE: u32 = 991; +pub const F_SLOPE: u32 = 992; +pub const F_LSEG_POINT_POINT: u32 = 993; +pub const F_LSEG_INTERSECT: u32 = 994; +pub const F_LSEG_PARALLEL: u32 = 995; +pub const F_LSEG_PERP: u32 = 996; +pub const F_LSEG_VERTICAL: u32 = 997; +pub const F_LSEG_HORIZONTAL: u32 = 998; +pub const F_LSEG_EQ: u32 = 999; +pub const F_LO_TRUNCATE: u32 = 1004; +pub const F_TEXTLIKE_SUPPORT: u32 = 1023; +pub const F_TEXTICREGEXEQ_SUPPORT: u32 = 1024; +pub const F_TEXTICLIKE_SUPPORT: u32 = 1025; +pub const F_TIMEZONE_INTERVAL_TIMESTAMPTZ: u32 = 1026; +pub const F_GIST_POINT_COMPRESS: u32 = 1030; +pub const F_ACLITEMIN: u32 = 1031; +pub const F_ACLITEMOUT: u32 = 1032; +pub const F_ACLINSERT: u32 = 1035; +pub const F_ACLREMOVE: u32 = 1036; +pub const F_ACLCONTAINS: u32 = 1037; +pub const F_GETDATABASEENCODING: u32 = 1039; +pub const F_BPCHARIN: u32 = 1044; +pub const F_BPCHAROUT: u32 = 1045; +pub const F_VARCHARIN: u32 = 1046; +pub const F_VARCHAROUT: u32 = 1047; +pub const F_BPCHAREQ: u32 = 1048; +pub const F_BPCHARLT: u32 = 1049; +pub const F_BPCHARLE: u32 = 1050; +pub const F_BPCHARGT: u32 = 1051; +pub const F_BPCHARGE: u32 = 1052; +pub const F_BPCHARNE: u32 = 1053; +pub const F_ACLITEMEQ: u32 = 1062; +pub const F_BPCHAR_LARGER: u32 = 1063; +pub const F_BPCHAR_SMALLER: u32 = 1064; +pub const F_PG_PREPARED_XACT: u32 = 1065; +pub const F_GENERATE_SERIES_INT4_INT4_INT4: u32 = 1066; +pub const F_GENERATE_SERIES_INT4_INT4: u32 = 1067; +pub const F_GENERATE_SERIES_INT8_INT8_INT8: u32 = 1068; +pub const F_GENERATE_SERIES_INT8_INT8: u32 = 1069; +pub const F_BPCHARCMP: u32 = 1078; +pub const F_REGCLASS: u32 = 1079; +pub const F_HASHBPCHAR: u32 = 1080; +pub const F_FORMAT_TYPE: u32 = 1081; +pub const F_DATE_IN: u32 = 1084; +pub const F_DATE_OUT: u32 = 1085; +pub const F_DATE_EQ: u32 = 1086; +pub const F_DATE_LT: u32 = 1087; +pub const F_DATE_LE: u32 = 1088; +pub const F_DATE_GT: u32 = 1089; +pub const F_DATE_GE: u32 = 1090; +pub const F_DATE_NE: u32 = 1091; +pub const F_DATE_CMP: u32 = 1092; +pub const F_TIME_LT: u32 = 1102; +pub const F_TIME_LE: u32 = 1103; +pub const F_TIME_GT: u32 = 1104; +pub const F_TIME_GE: u32 = 1105; +pub const F_TIME_NE: u32 = 1106; +pub const F_TIME_CMP: u32 = 1107; +pub const F_PG_STAT_GET_WAL: u32 = 1136; +pub const F_PG_GET_WAL_REPLAY_PAUSE_STATE: u32 = 1137; +pub const F_DATE_LARGER: u32 = 1138; +pub const F_DATE_SMALLER: u32 = 1139; +pub const F_DATE_MI: u32 = 1140; +pub const F_DATE_PLI: u32 = 1141; +pub const F_DATE_MII: u32 = 1142; +pub const F_TIME_IN: u32 = 1143; +pub const F_TIME_OUT: u32 = 1144; +pub const F_TIME_EQ: u32 = 1145; +pub const F_CIRCLE_ADD_PT: u32 = 1146; +pub const F_CIRCLE_SUB_PT: u32 = 1147; +pub const F_CIRCLE_MUL_PT: u32 = 1148; +pub const F_CIRCLE_DIV_PT: u32 = 1149; +pub const F_TIMESTAMPTZ_IN: u32 = 1150; +pub const F_TIMESTAMPTZ_OUT: u32 = 1151; +pub const F_TIMESTAMPTZ_EQ: u32 = 1152; +pub const F_TIMESTAMPTZ_NE: u32 = 1153; +pub const F_TIMESTAMPTZ_LT: u32 = 1154; +pub const F_TIMESTAMPTZ_LE: u32 = 1155; +pub const F_TIMESTAMPTZ_GE: u32 = 1156; +pub const F_TIMESTAMPTZ_GT: u32 = 1157; +pub const F_TO_TIMESTAMP_FLOAT8: u32 = 1158; +pub const F_TIMEZONE_TEXT_TIMESTAMPTZ: u32 = 1159; +pub const F_INTERVAL_IN: u32 = 1160; +pub const F_INTERVAL_OUT: u32 = 1161; +pub const F_INTERVAL_EQ: u32 = 1162; +pub const F_INTERVAL_NE: u32 = 1163; +pub const F_INTERVAL_LT: u32 = 1164; +pub const F_INTERVAL_LE: u32 = 1165; +pub const F_INTERVAL_GE: u32 = 1166; +pub const F_INTERVAL_GT: u32 = 1167; +pub const F_INTERVAL_UM: u32 = 1168; +pub const F_INTERVAL_PL: u32 = 1169; +pub const F_INTERVAL_MI: u32 = 1170; +pub const F_DATE_PART_TEXT_TIMESTAMPTZ: u32 = 1171; +pub const F_DATE_PART_TEXT_INTERVAL: u32 = 1172; +pub const F_NETWORK_SUBSET_SUPPORT: u32 = 1173; +pub const F_TIMESTAMPTZ_DATE: u32 = 1174; +pub const F_JUSTIFY_HOURS: u32 = 1175; +pub const F_TIMESTAMPTZ_DATE_TIME: u32 = 1176; +pub const F_JSONB_PATH_EXISTS_TZ: u32 = 1177; +pub const F_DATE_TIMESTAMPTZ: u32 = 1178; +pub const F_JSONB_PATH_QUERY_TZ: u32 = 1179; +pub const F_JSONB_PATH_QUERY_ARRAY_TZ: u32 = 1180; +pub const F_AGE_XID: u32 = 1181; +pub const F_TIMESTAMPTZ_MI: u32 = 1188; +pub const F_TIMESTAMPTZ_PL_INTERVAL: u32 = 1189; +pub const F_TIMESTAMPTZ_MI_INTERVAL: u32 = 1190; +pub const F_GENERATE_SUBSCRIPTS_ANYARRAY_INT4_BOOL: u32 = 1191; +pub const F_GENERATE_SUBSCRIPTS_ANYARRAY_INT4: u32 = 1192; +pub const F_ARRAY_FILL_ANYELEMENT__INT4: u32 = 1193; +pub const F_LOG10_FLOAT8: u32 = 1194; +pub const F_TIMESTAMPTZ_SMALLER: u32 = 1195; +pub const F_TIMESTAMPTZ_LARGER: u32 = 1196; +pub const F_INTERVAL_SMALLER: u32 = 1197; +pub const F_INTERVAL_LARGER: u32 = 1198; +pub const F_AGE_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 1199; +pub const F_INTERVAL_INTERVAL_INT4: u32 = 1200; +pub const F_OBJ_DESCRIPTION_OID_NAME: u32 = 1215; +pub const F_COL_DESCRIPTION: u32 = 1216; +pub const F_DATE_TRUNC_TEXT_TIMESTAMPTZ: u32 = 1217; +pub const F_DATE_TRUNC_TEXT_INTERVAL: u32 = 1218; +pub const F_INT8INC: u32 = 1219; +pub const F_INT8ABS: u32 = 1230; +pub const F_INT8LARGER: u32 = 1236; +pub const F_INT8SMALLER: u32 = 1237; +pub const F_TEXTICREGEXEQ: u32 = 1238; +pub const F_TEXTICREGEXNE: u32 = 1239; +pub const F_NAMEICREGEXEQ: u32 = 1240; +pub const F_NAMEICREGEXNE: u32 = 1241; +pub const F_BOOLIN: u32 = 1242; +pub const F_BOOLOUT: u32 = 1243; +pub const F_BYTEAIN: u32 = 1244; +pub const F_CHARIN: u32 = 1245; +pub const F_CHARLT: u32 = 1246; +pub const F_UNIQUE_KEY_RECHECK: u32 = 1250; +pub const F_INT4ABS: u32 = 1251; +pub const F_NAMEREGEXNE: u32 = 1252; +pub const F_INT2ABS: u32 = 1253; +pub const F_TEXTREGEXEQ: u32 = 1254; +pub const F_TEXTREGEXNE: u32 = 1256; +pub const F_TEXTLEN: u32 = 1257; +pub const F_TEXTCAT: u32 = 1258; +pub const F_PG_CHAR_TO_ENCODING: u32 = 1264; +pub const F_TIDNE: u32 = 1265; +pub const F_CIDR_IN: u32 = 1267; +pub const F_PARSE_IDENT: u32 = 1268; +pub const F_PG_COLUMN_SIZE: u32 = 1269; +pub const F_OVERLAPS_TIMETZ_TIMETZ_TIMETZ_TIMETZ: u32 = 1271; +pub const F_DATETIME_PL: u32 = 1272; +pub const F_DATE_PART_TEXT_TIMETZ: u32 = 1273; +pub const F_INT84PL: u32 = 1274; +pub const F_INT84MI: u32 = 1275; +pub const F_INT84MUL: u32 = 1276; +pub const F_INT84DIV: u32 = 1277; +pub const F_INT48PL: u32 = 1278; +pub const F_INT48MI: u32 = 1279; +pub const F_INT48MUL: u32 = 1280; +pub const F_INT48DIV: u32 = 1281; +pub const F_QUOTE_IDENT: u32 = 1282; +pub const F_QUOTE_LITERAL_TEXT: u32 = 1283; +pub const F_DATE_TRUNC_TEXT_TIMESTAMPTZ_TEXT: u32 = 1284; +pub const F_QUOTE_LITERAL_ANYELEMENT: u32 = 1285; +pub const F_ARRAY_FILL_ANYELEMENT__INT4__INT4: u32 = 1286; +pub const F_OID: u32 = 1287; +pub const F_INT8_OID: u32 = 1288; +pub const F_QUOTE_NULLABLE_TEXT: u32 = 1289; +pub const F_QUOTE_NULLABLE_ANYELEMENT: u32 = 1290; +pub const F_SUPPRESS_REDUNDANT_UPDATES_TRIGGER: u32 = 1291; +pub const F_TIDEQ: u32 = 1292; +pub const F_UNNEST_ANYMULTIRANGE: u32 = 1293; +pub const F_CURRTID2: u32 = 1294; +pub const F_JUSTIFY_DAYS: u32 = 1295; +pub const F_TIMEDATE_PL: u32 = 1296; +pub const F_DATETIMETZ_PL: u32 = 1297; +pub const F_TIMETZDATE_PL: u32 = 1298; +pub const F_NOW: u32 = 1299; +pub const F_POSITIONSEL: u32 = 1300; +pub const F_POSITIONJOINSEL: u32 = 1301; +pub const F_CONTSEL: u32 = 1302; +pub const F_CONTJOINSEL: u32 = 1303; +pub const F_OVERLAPS_TIMESTAMPTZ_TIMESTAMPTZ_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 1304; +pub const F_OVERLAPS_TIMESTAMPTZ_INTERVAL_TIMESTAMPTZ_INTERVAL: u32 = 1305; +pub const F_OVERLAPS_TIMESTAMPTZ_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL: u32 = 1306; +pub const F_OVERLAPS_TIMESTAMPTZ_INTERVAL_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 1307; +pub const F_OVERLAPS_TIME_TIME_TIME_TIME: u32 = 1308; +pub const F_OVERLAPS_TIME_INTERVAL_TIME_INTERVAL: u32 = 1309; +pub const F_OVERLAPS_TIME_TIME_TIME_INTERVAL: u32 = 1310; +pub const F_OVERLAPS_TIME_INTERVAL_TIME_TIME: u32 = 1311; +pub const F_TIMESTAMP_IN: u32 = 1312; +pub const F_TIMESTAMP_OUT: u32 = 1313; +pub const F_TIMESTAMPTZ_CMP: u32 = 1314; +pub const F_INTERVAL_CMP: u32 = 1315; +pub const F_TIME_TIMESTAMP: u32 = 1316; +pub const F_LENGTH_TEXT: u32 = 1317; +pub const F_LENGTH_BPCHAR: u32 = 1318; +pub const F_XIDEQINT4: u32 = 1319; +pub const F_INTERVAL_DIV: u32 = 1326; +pub const F_DLOG10: u32 = 1339; +pub const F_LOG_FLOAT8: u32 = 1340; +pub const F_LN_FLOAT8: u32 = 1341; +pub const F_ROUND_FLOAT8: u32 = 1342; +pub const F_TRUNC_FLOAT8: u32 = 1343; +pub const F_SQRT_FLOAT8: u32 = 1344; +pub const F_CBRT: u32 = 1345; +pub const F_POW_FLOAT8_FLOAT8: u32 = 1346; +pub const F_EXP_FLOAT8: u32 = 1347; +pub const F_OBJ_DESCRIPTION_OID: u32 = 1348; +pub const F_OIDVECTORTYPES: u32 = 1349; +pub const F_TIMETZ_IN: u32 = 1350; +pub const F_TIMETZ_OUT: u32 = 1351; +pub const F_TIMETZ_EQ: u32 = 1352; +pub const F_TIMETZ_NE: u32 = 1353; +pub const F_TIMETZ_LT: u32 = 1354; +pub const F_TIMETZ_LE: u32 = 1355; +pub const F_TIMETZ_GE: u32 = 1356; +pub const F_TIMETZ_GT: u32 = 1357; +pub const F_TIMETZ_CMP: u32 = 1358; +pub const F_TIMESTAMPTZ_DATE_TIMETZ: u32 = 1359; +pub const F_HOSTMASK: u32 = 1362; +pub const F_TEXTREGEXEQ_SUPPORT: u32 = 1364; +pub const F_MAKEACLITEM: u32 = 1365; +pub const F_CHARACTER_LENGTH_BPCHAR: u32 = 1367; +pub const F_POWER_FLOAT8_FLOAT8: u32 = 1368; +pub const F_CHARACTER_LENGTH_TEXT: u32 = 1369; +pub const F_INTERVAL_TIME: u32 = 1370; +pub const F_PG_LOCK_STATUS: u32 = 1371; +pub const F_CHAR_LENGTH_BPCHAR: u32 = 1372; +pub const F_ISFINITE_DATE: u32 = 1373; +pub const F_OCTET_LENGTH_TEXT: u32 = 1374; +pub const F_OCTET_LENGTH_BPCHAR: u32 = 1375; +pub const F_FACTORIAL: u32 = 1376; +pub const F_TIME_LARGER: u32 = 1377; +pub const F_TIME_SMALLER: u32 = 1378; +pub const F_TIMETZ_LARGER: u32 = 1379; +pub const F_TIMETZ_SMALLER: u32 = 1380; +pub const F_CHAR_LENGTH_TEXT: u32 = 1381; +pub const F_DATE_PART_TEXT_DATE: u32 = 1384; +pub const F_DATE_PART_TEXT_TIME: u32 = 1385; +pub const F_AGE_TIMESTAMPTZ: u32 = 1386; +pub const F_PG_GET_CONSTRAINTDEF_OID: u32 = 1387; +pub const F_TIMETZ_TIMESTAMPTZ: u32 = 1388; +pub const F_ISFINITE_TIMESTAMPTZ: u32 = 1389; +pub const F_ISFINITE_INTERVAL: u32 = 1390; +pub const F_PG_STAT_GET_BACKEND_START: u32 = 1391; +pub const F_PG_STAT_GET_BACKEND_CLIENT_ADDR: u32 = 1392; +pub const F_PG_STAT_GET_BACKEND_CLIENT_PORT: u32 = 1393; +pub const F_ABS_FLOAT4: u32 = 1394; +pub const F_ABS_FLOAT8: u32 = 1395; +pub const F_ABS_INT8: u32 = 1396; +pub const F_ABS_INT4: u32 = 1397; +pub const F_ABS_INT2: u32 = 1398; +pub const F_NAME_VARCHAR: u32 = 1400; +pub const F_VARCHAR_NAME: u32 = 1401; +pub const F_CURRENT_SCHEMA: u32 = 1402; +pub const F_CURRENT_SCHEMAS: u32 = 1403; +pub const F_OVERLAY_TEXT_TEXT_INT4_INT4: u32 = 1404; +pub const F_OVERLAY_TEXT_TEXT_INT4: u32 = 1405; +pub const F_ISVERTICAL_POINT_POINT: u32 = 1406; +pub const F_ISHORIZONTAL_POINT_POINT: u32 = 1407; +pub const F_ISPARALLEL_LSEG_LSEG: u32 = 1408; +pub const F_ISPERP_LSEG_LSEG: u32 = 1409; +pub const F_ISVERTICAL_LSEG: u32 = 1410; +pub const F_ISHORIZONTAL_LSEG: u32 = 1411; +pub const F_ISPARALLEL_LINE_LINE: u32 = 1412; +pub const F_ISPERP_LINE_LINE: u32 = 1413; +pub const F_ISVERTICAL_LINE: u32 = 1414; +pub const F_ISHORIZONTAL_LINE: u32 = 1415; +pub const F_POINT_CIRCLE: u32 = 1416; +pub const F_TIME_INTERVAL: u32 = 1419; +pub const F_BOX_POINT_POINT: u32 = 1421; +pub const F_BOX_ADD: u32 = 1422; +pub const F_BOX_SUB: u32 = 1423; +pub const F_BOX_MUL: u32 = 1424; +pub const F_BOX_DIV: u32 = 1425; +pub const F_PATH_CONTAIN_PT: u32 = 1426; +pub const F_CIDR_OUT: u32 = 1427; +pub const F_POLY_CONTAIN_PT: u32 = 1428; +pub const F_PT_CONTAINED_POLY: u32 = 1429; +pub const F_ISCLOSED: u32 = 1430; +pub const F_ISOPEN: u32 = 1431; +pub const F_PATH_NPOINTS: u32 = 1432; +pub const F_PCLOSE: u32 = 1433; +pub const F_POPEN: u32 = 1434; +pub const F_PATH_ADD: u32 = 1435; +pub const F_PATH_ADD_PT: u32 = 1436; +pub const F_PATH_SUB_PT: u32 = 1437; +pub const F_PATH_MUL_PT: u32 = 1438; +pub const F_PATH_DIV_PT: u32 = 1439; +pub const F_POINT_FLOAT8_FLOAT8: u32 = 1440; +pub const F_POINT_ADD: u32 = 1441; +pub const F_POINT_SUB: u32 = 1442; +pub const F_POINT_MUL: u32 = 1443; +pub const F_POINT_DIV: u32 = 1444; +pub const F_POLY_NPOINTS: u32 = 1445; +pub const F_BOX_POLYGON: u32 = 1446; +pub const F_PATH: u32 = 1447; +pub const F_POLYGON_BOX: u32 = 1448; +pub const F_POLYGON_PATH: u32 = 1449; +pub const F_CIRCLE_IN: u32 = 1450; +pub const F_CIRCLE_OUT: u32 = 1451; +pub const F_CIRCLE_SAME: u32 = 1452; +pub const F_CIRCLE_CONTAIN: u32 = 1453; +pub const F_CIRCLE_LEFT: u32 = 1454; +pub const F_CIRCLE_OVERLEFT: u32 = 1455; +pub const F_CIRCLE_OVERRIGHT: u32 = 1456; +pub const F_CIRCLE_RIGHT: u32 = 1457; +pub const F_CIRCLE_CONTAINED: u32 = 1458; +pub const F_CIRCLE_OVERLAP: u32 = 1459; +pub const F_CIRCLE_BELOW: u32 = 1460; +pub const F_CIRCLE_ABOVE: u32 = 1461; +pub const F_CIRCLE_EQ: u32 = 1462; +pub const F_CIRCLE_NE: u32 = 1463; +pub const F_CIRCLE_LT: u32 = 1464; +pub const F_CIRCLE_GT: u32 = 1465; +pub const F_CIRCLE_LE: u32 = 1466; +pub const F_CIRCLE_GE: u32 = 1467; +pub const F_AREA_CIRCLE: u32 = 1468; +pub const F_DIAMETER: u32 = 1469; +pub const F_RADIUS: u32 = 1470; +pub const F_CIRCLE_DISTANCE: u32 = 1471; +pub const F_CIRCLE_CENTER: u32 = 1472; +pub const F_CIRCLE_POINT_FLOAT8: u32 = 1473; +pub const F_CIRCLE_POLYGON: u32 = 1474; +pub const F_POLYGON_INT4_CIRCLE: u32 = 1475; +pub const F_DIST_PC: u32 = 1476; +pub const F_CIRCLE_CONTAIN_PT: u32 = 1477; +pub const F_PT_CONTAINED_CIRCLE: u32 = 1478; +pub const F_CIRCLE_BOX: u32 = 1479; +pub const F_BOX_CIRCLE: u32 = 1480; +pub const F_LOG10_NUMERIC: u32 = 1481; +pub const F_LSEG_NE: u32 = 1482; +pub const F_LSEG_LT: u32 = 1483; +pub const F_LSEG_LE: u32 = 1484; +pub const F_LSEG_GT: u32 = 1485; +pub const F_LSEG_GE: u32 = 1486; +pub const F_LSEG_LENGTH: u32 = 1487; +pub const F_CLOSE_LS: u32 = 1488; +pub const F_CLOSE_LSEG: u32 = 1489; +pub const F_LINE_IN: u32 = 1490; +pub const F_LINE_OUT: u32 = 1491; +pub const F_LINE_EQ: u32 = 1492; +pub const F_LINE: u32 = 1493; +pub const F_LINE_INTERPT: u32 = 1494; +pub const F_LINE_INTERSECT: u32 = 1495; +pub const F_LINE_PARALLEL: u32 = 1496; +pub const F_LINE_PERP: u32 = 1497; +pub const F_LINE_VERTICAL: u32 = 1498; +pub const F_LINE_HORIZONTAL: u32 = 1499; +pub const F_LENGTH_LSEG: u32 = 1530; +pub const F_LENGTH_PATH: u32 = 1531; +pub const F_POINT_LSEG: u32 = 1532; +pub const F_POINT_BOX: u32 = 1534; +pub const F_POINT_POLYGON: u32 = 1540; +pub const F_LSEG_BOX: u32 = 1541; +pub const F_CENTER_BOX: u32 = 1542; +pub const F_CENTER_CIRCLE: u32 = 1543; +pub const F_POLYGON_CIRCLE: u32 = 1544; +pub const F_NPOINTS_PATH: u32 = 1545; +pub const F_NPOINTS_POLYGON: u32 = 1556; +pub const F_BIT_IN: u32 = 1564; +pub const F_BIT_OUT: u32 = 1565; +pub const F_LIKE_TEXT_TEXT: u32 = 1569; +pub const F_NOTLIKE_TEXT_TEXT: u32 = 1570; +pub const F_LIKE_NAME_TEXT: u32 = 1571; +pub const F_NOTLIKE_NAME_TEXT: u32 = 1572; +pub const F_PG_GET_RULEDEF_OID: u32 = 1573; +pub const F_NEXTVAL: u32 = 1574; +pub const F_CURRVAL: u32 = 1575; +pub const F_SETVAL_REGCLASS_INT8: u32 = 1576; +pub const F_VARBIT_IN: u32 = 1579; +pub const F_VARBIT_OUT: u32 = 1580; +pub const F_BITEQ: u32 = 1581; +pub const F_BITNE: u32 = 1582; +pub const F_BITGE: u32 = 1592; +pub const F_BITGT: u32 = 1593; +pub const F_BITLE: u32 = 1594; +pub const F_BITLT: u32 = 1595; +pub const F_BITCMP: u32 = 1596; +pub const F_PG_ENCODING_TO_CHAR: u32 = 1597; +pub const F_RANDOM_: u32 = 1598; +pub const F_SETSEED: u32 = 1599; +pub const F_ASIN: u32 = 1600; +pub const F_ACOS: u32 = 1601; +pub const F_ATAN: u32 = 1602; +pub const F_ATAN2: u32 = 1603; +pub const F_SIN: u32 = 1604; +pub const F_COS: u32 = 1605; +pub const F_TAN: u32 = 1606; +pub const F_COT: u32 = 1607; +pub const F_DEGREES: u32 = 1608; +pub const F_RADIANS: u32 = 1609; +pub const F_PI: u32 = 1610; +pub const F_INTERVAL_MUL: u32 = 1618; +pub const F_PG_TYPEOF: u32 = 1619; +pub const F_ASCII: u32 = 1620; +pub const F_CHR: u32 = 1621; +pub const F_REPEAT: u32 = 1622; +pub const F_SIMILAR_ESCAPE: u32 = 1623; +pub const F_MUL_D_INTERVAL: u32 = 1624; +pub const F_BPCHARLIKE: u32 = 1631; +pub const F_BPCHARNLIKE: u32 = 1632; +pub const F_TEXTICLIKE: u32 = 1633; +pub const F_TEXTICNLIKE: u32 = 1634; +pub const F_NAMEICLIKE: u32 = 1635; +pub const F_NAMEICNLIKE: u32 = 1636; +pub const F_LIKE_ESCAPE_TEXT_TEXT: u32 = 1637; +pub const F_OIDGT: u32 = 1638; +pub const F_OIDGE: u32 = 1639; +pub const F_PG_GET_VIEWDEF_TEXT: u32 = 1640; +pub const F_PG_GET_VIEWDEF_OID: u32 = 1641; +pub const F_PG_GET_USERBYID: u32 = 1642; +pub const F_PG_GET_INDEXDEF_OID: u32 = 1643; +pub const F_RI_FKEY_CHECK_INS: u32 = 1644; +pub const F_RI_FKEY_CHECK_UPD: u32 = 1645; +pub const F_RI_FKEY_CASCADE_DEL: u32 = 1646; +pub const F_RI_FKEY_CASCADE_UPD: u32 = 1647; +pub const F_RI_FKEY_RESTRICT_DEL: u32 = 1648; +pub const F_RI_FKEY_RESTRICT_UPD: u32 = 1649; +pub const F_RI_FKEY_SETNULL_DEL: u32 = 1650; +pub const F_RI_FKEY_SETNULL_UPD: u32 = 1651; +pub const F_RI_FKEY_SETDEFAULT_DEL: u32 = 1652; +pub const F_RI_FKEY_SETDEFAULT_UPD: u32 = 1653; +pub const F_RI_FKEY_NOACTION_DEL: u32 = 1654; +pub const F_RI_FKEY_NOACTION_UPD: u32 = 1655; +pub const F_BPCHARICREGEXEQ: u32 = 1656; +pub const F_BPCHARICREGEXNE: u32 = 1657; +pub const F_BPCHARREGEXEQ: u32 = 1658; +pub const F_BPCHARREGEXNE: u32 = 1659; +pub const F_BPCHARICLIKE: u32 = 1660; +pub const F_BPCHARICNLIKE: u32 = 1661; +pub const F_PG_GET_TRIGGERDEF_OID: u32 = 1662; +pub const F_PG_GET_SERIAL_SEQUENCE: u32 = 1665; +pub const F_VARBITEQ: u32 = 1666; +pub const F_VARBITNE: u32 = 1667; +pub const F_VARBITGE: u32 = 1668; +pub const F_VARBITGT: u32 = 1669; +pub const F_VARBITLE: u32 = 1670; +pub const F_VARBITLT: u32 = 1671; +pub const F_VARBITCMP: u32 = 1672; +pub const F_BITAND: u32 = 1673; +pub const F_BITOR: u32 = 1674; +pub const F_BITXOR: u32 = 1675; +pub const F_BITNOT: u32 = 1676; +pub const F_BITSHIFTLEFT: u32 = 1677; +pub const F_BITSHIFTRIGHT: u32 = 1678; +pub const F_BITCAT: u32 = 1679; +pub const F_SUBSTRING_BIT_INT4_INT4: u32 = 1680; +pub const F_LENGTH_BIT: u32 = 1681; +pub const F_OCTET_LENGTH_BIT: u32 = 1682; +pub const F_BIT_INT4_INT4: u32 = 1683; +pub const F_INT4_BIT: u32 = 1684; +pub const F_BIT_BIT_INT4_BOOL: u32 = 1685; +pub const F_PG_GET_KEYWORDS: u32 = 1686; +pub const F_VARBIT: u32 = 1687; +pub const F_TIME_HASH: u32 = 1688; +pub const F_ACLEXPLODE: u32 = 1689; +pub const F_TIME_MI_TIME: u32 = 1690; +pub const F_BOOLLE: u32 = 1691; +pub const F_BOOLGE: u32 = 1692; +pub const F_BTBOOLCMP: u32 = 1693; +pub const F_TIMETZ_HASH: u32 = 1696; +pub const F_INTERVAL_HASH: u32 = 1697; +pub const F_POSITION_BIT_BIT: u32 = 1698; +pub const F_SUBSTRING_BIT_INT4: u32 = 1699; +pub const F_NUMERIC_IN: u32 = 1701; +pub const F_NUMERIC_OUT: u32 = 1702; +pub const F_NUMERIC_NUMERIC_INT4: u32 = 1703; +pub const F_NUMERIC_ABS: u32 = 1704; +pub const F_ABS_NUMERIC: u32 = 1705; +pub const F_SIGN_NUMERIC: u32 = 1706; +pub const F_ROUND_NUMERIC_INT4: u32 = 1707; +pub const F_ROUND_NUMERIC: u32 = 1708; +pub const F_TRUNC_NUMERIC_INT4: u32 = 1709; +pub const F_TRUNC_NUMERIC: u32 = 1710; +pub const F_CEIL_NUMERIC: u32 = 1711; +pub const F_FLOOR_NUMERIC: u32 = 1712; +pub const F_LENGTH_BYTEA_NAME: u32 = 1713; +pub const F_CONVERT_FROM: u32 = 1714; +pub const F_CIDR: u32 = 1715; +pub const F_PG_GET_EXPR_PG_NODE_TREE_OID: u32 = 1716; +pub const F_CONVERT_TO: u32 = 1717; +pub const F_NUMERIC_EQ: u32 = 1718; +pub const F_NUMERIC_NE: u32 = 1719; +pub const F_NUMERIC_GT: u32 = 1720; +pub const F_NUMERIC_GE: u32 = 1721; +pub const F_NUMERIC_LT: u32 = 1722; +pub const F_NUMERIC_LE: u32 = 1723; +pub const F_NUMERIC_ADD: u32 = 1724; +pub const F_NUMERIC_SUB: u32 = 1725; +pub const F_NUMERIC_MUL: u32 = 1726; +pub const F_NUMERIC_DIV: u32 = 1727; +pub const F_MOD_NUMERIC_NUMERIC: u32 = 1728; +pub const F_NUMERIC_MOD: u32 = 1729; +pub const F_SQRT_NUMERIC: u32 = 1730; +pub const F_NUMERIC_SQRT: u32 = 1731; +pub const F_EXP_NUMERIC: u32 = 1732; +pub const F_NUMERIC_EXP: u32 = 1733; +pub const F_LN_NUMERIC: u32 = 1734; +pub const F_NUMERIC_LN: u32 = 1735; +pub const F_LOG_NUMERIC_NUMERIC: u32 = 1736; +pub const F_NUMERIC_LOG: u32 = 1737; +pub const F_POW_NUMERIC_NUMERIC: u32 = 1738; +pub const F_NUMERIC_POWER: u32 = 1739; +pub const F_NUMERIC_INT4: u32 = 1740; +pub const F_LOG_NUMERIC: u32 = 1741; +pub const F_NUMERIC_FLOAT4: u32 = 1742; +pub const F_NUMERIC_FLOAT8: u32 = 1743; +pub const F_INT4_NUMERIC: u32 = 1744; +pub const F_FLOAT4_NUMERIC: u32 = 1745; +pub const F_FLOAT8_NUMERIC: u32 = 1746; +pub const F_TIME_PL_INTERVAL: u32 = 1747; +pub const F_TIME_MI_INTERVAL: u32 = 1748; +pub const F_TIMETZ_PL_INTERVAL: u32 = 1749; +pub const F_TIMETZ_MI_INTERVAL: u32 = 1750; +pub const F_NUMERIC_INC: u32 = 1764; +pub const F_SETVAL_REGCLASS_INT8_BOOL: u32 = 1765; +pub const F_NUMERIC_SMALLER: u32 = 1766; +pub const F_NUMERIC_LARGER: u32 = 1767; +pub const F_TO_CHAR_INTERVAL_TEXT: u32 = 1768; +pub const F_NUMERIC_CMP: u32 = 1769; +pub const F_TO_CHAR_TIMESTAMPTZ_TEXT: u32 = 1770; +pub const F_NUMERIC_UMINUS: u32 = 1771; +pub const F_TO_CHAR_NUMERIC_TEXT: u32 = 1772; +pub const F_TO_CHAR_INT4_TEXT: u32 = 1773; +pub const F_TO_CHAR_INT8_TEXT: u32 = 1774; +pub const F_TO_CHAR_FLOAT4_TEXT: u32 = 1775; +pub const F_TO_CHAR_FLOAT8_TEXT: u32 = 1776; +pub const F_TO_NUMBER: u32 = 1777; +pub const F_TO_TIMESTAMP_TEXT_TEXT: u32 = 1778; +pub const F_INT8_NUMERIC: u32 = 1779; +pub const F_TO_DATE: u32 = 1780; +pub const F_NUMERIC_INT8: u32 = 1781; +pub const F_NUMERIC_INT2: u32 = 1782; +pub const F_INT2_NUMERIC: u32 = 1783; +pub const F_OIDIN: u32 = 1798; +pub const F_OIDOUT: u32 = 1799; +pub const F_BIT_LENGTH_BYTEA: u32 = 1810; +pub const F_BIT_LENGTH_TEXT: u32 = 1811; +pub const F_BIT_LENGTH_BIT: u32 = 1812; +pub const F_CONVERT: u32 = 1813; +pub const F_ICLIKESEL: u32 = 1814; +pub const F_ICNLIKESEL: u32 = 1815; +pub const F_ICLIKEJOINSEL: u32 = 1816; +pub const F_ICNLIKEJOINSEL: u32 = 1817; +pub const F_REGEXEQSEL: u32 = 1818; +pub const F_LIKESEL: u32 = 1819; +pub const F_ICREGEXEQSEL: u32 = 1820; +pub const F_REGEXNESEL: u32 = 1821; +pub const F_NLIKESEL: u32 = 1822; +pub const F_ICREGEXNESEL: u32 = 1823; +pub const F_REGEXEQJOINSEL: u32 = 1824; +pub const F_LIKEJOINSEL: u32 = 1825; +pub const F_ICREGEXEQJOINSEL: u32 = 1826; +pub const F_REGEXNEJOINSEL: u32 = 1827; +pub const F_NLIKEJOINSEL: u32 = 1828; +pub const F_ICREGEXNEJOINSEL: u32 = 1829; +pub const F_FLOAT8_AVG: u32 = 1830; +pub const F_FLOAT8_VAR_SAMP: u32 = 1831; +pub const F_FLOAT8_STDDEV_SAMP: u32 = 1832; +pub const F_NUMERIC_ACCUM: u32 = 1833; +pub const F_INT2_ACCUM: u32 = 1834; +pub const F_INT4_ACCUM: u32 = 1835; +pub const F_INT8_ACCUM: u32 = 1836; +pub const F_NUMERIC_AVG: u32 = 1837; +pub const F_NUMERIC_VAR_SAMP: u32 = 1838; +pub const F_NUMERIC_STDDEV_SAMP: u32 = 1839; +pub const F_INT2_SUM: u32 = 1840; +pub const F_INT4_SUM: u32 = 1841; +pub const F_INT8_SUM: u32 = 1842; +pub const F_INTERVAL_AVG_ACCUM: u32 = 1843; +pub const F_INTERVAL_AVG: u32 = 1844; +pub const F_TO_ASCII_TEXT: u32 = 1845; +pub const F_TO_ASCII_TEXT_INT4: u32 = 1846; +pub const F_TO_ASCII_TEXT_NAME: u32 = 1847; +pub const F_INTERVAL_PL_TIME: u32 = 1848; +pub const F_INT28EQ: u32 = 1850; +pub const F_INT28NE: u32 = 1851; +pub const F_INT28LT: u32 = 1852; +pub const F_INT28GT: u32 = 1853; +pub const F_INT28LE: u32 = 1854; +pub const F_INT28GE: u32 = 1855; +pub const F_INT82EQ: u32 = 1856; +pub const F_INT82NE: u32 = 1857; +pub const F_INT82LT: u32 = 1858; +pub const F_INT82GT: u32 = 1859; +pub const F_INT82LE: u32 = 1860; +pub const F_INT82GE: u32 = 1861; +pub const F_INT2AND: u32 = 1892; +pub const F_INT2OR: u32 = 1893; +pub const F_INT2XOR: u32 = 1894; +pub const F_INT2NOT: u32 = 1895; +pub const F_INT2SHL: u32 = 1896; +pub const F_INT2SHR: u32 = 1897; +pub const F_INT4AND: u32 = 1898; +pub const F_INT4OR: u32 = 1899; +pub const F_INT4XOR: u32 = 1900; +pub const F_INT4NOT: u32 = 1901; +pub const F_INT4SHL: u32 = 1902; +pub const F_INT4SHR: u32 = 1903; +pub const F_INT8AND: u32 = 1904; +pub const F_INT8OR: u32 = 1905; +pub const F_INT8XOR: u32 = 1906; +pub const F_INT8NOT: u32 = 1907; +pub const F_INT8SHL: u32 = 1908; +pub const F_INT8SHR: u32 = 1909; +pub const F_INT8UP: u32 = 1910; +pub const F_INT2UP: u32 = 1911; +pub const F_INT4UP: u32 = 1912; +pub const F_FLOAT4UP: u32 = 1913; +pub const F_FLOAT8UP: u32 = 1914; +pub const F_NUMERIC_UPLUS: u32 = 1915; +pub const F_HAS_TABLE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 1922; +pub const F_HAS_TABLE_PRIVILEGE_NAME_OID_TEXT: u32 = 1923; +pub const F_HAS_TABLE_PRIVILEGE_OID_TEXT_TEXT: u32 = 1924; +pub const F_HAS_TABLE_PRIVILEGE_OID_OID_TEXT: u32 = 1925; +pub const F_HAS_TABLE_PRIVILEGE_TEXT_TEXT: u32 = 1926; +pub const F_HAS_TABLE_PRIVILEGE_OID_TEXT: u32 = 1927; +pub const F_PG_STAT_GET_NUMSCANS: u32 = 1928; +pub const F_PG_STAT_GET_TUPLES_RETURNED: u32 = 1929; +pub const F_PG_STAT_GET_TUPLES_FETCHED: u32 = 1930; +pub const F_PG_STAT_GET_TUPLES_INSERTED: u32 = 1931; +pub const F_PG_STAT_GET_TUPLES_UPDATED: u32 = 1932; +pub const F_PG_STAT_GET_TUPLES_DELETED: u32 = 1933; +pub const F_PG_STAT_GET_BLOCKS_FETCHED: u32 = 1934; +pub const F_PG_STAT_GET_BLOCKS_HIT: u32 = 1935; +pub const F_PG_STAT_GET_BACKEND_IDSET: u32 = 1936; +pub const F_PG_STAT_GET_BACKEND_PID: u32 = 1937; +pub const F_PG_STAT_GET_BACKEND_DBID: u32 = 1938; +pub const F_PG_STAT_GET_BACKEND_USERID: u32 = 1939; +pub const F_PG_STAT_GET_BACKEND_ACTIVITY: u32 = 1940; +pub const F_PG_STAT_GET_DB_NUMBACKENDS: u32 = 1941; +pub const F_PG_STAT_GET_DB_XACT_COMMIT: u32 = 1942; +pub const F_PG_STAT_GET_DB_XACT_ROLLBACK: u32 = 1943; +pub const F_PG_STAT_GET_DB_BLOCKS_FETCHED: u32 = 1944; +pub const F_PG_STAT_GET_DB_BLOCKS_HIT: u32 = 1945; +pub const F_ENCODE: u32 = 1946; +pub const F_DECODE: u32 = 1947; +pub const F_BYTEAEQ: u32 = 1948; +pub const F_BYTEALT: u32 = 1949; +pub const F_BYTEALE: u32 = 1950; +pub const F_BYTEAGT: u32 = 1951; +pub const F_BYTEAGE: u32 = 1952; +pub const F_BYTEANE: u32 = 1953; +pub const F_BYTEACMP: u32 = 1954; +pub const F_TIMESTAMP_TIMESTAMP_INT4: u32 = 1961; +pub const F_INT2_AVG_ACCUM: u32 = 1962; +pub const F_INT4_AVG_ACCUM: u32 = 1963; +pub const F_INT8_AVG: u32 = 1964; +pub const F_OIDLARGER: u32 = 1965; +pub const F_OIDSMALLER: u32 = 1966; +pub const F_TIMESTAMPTZ_TIMESTAMPTZ_INT4: u32 = 1967; +pub const F_TIME_TIME_INT4: u32 = 1968; +pub const F_TIMETZ_TIMETZ_INT4: u32 = 1969; +pub const F_PG_STAT_GET_TUPLES_HOT_UPDATED: u32 = 1972; +pub const F_DIV: u32 = 1973; +pub const F_NUMERIC_DIV_TRUNC: u32 = 1980; +pub const F_SIMILAR_TO_ESCAPE_TEXT_TEXT: u32 = 1986; +pub const F_SIMILAR_TO_ESCAPE_TEXT: u32 = 1987; +pub const F_SHOBJ_DESCRIPTION: u32 = 1993; +pub const F_TEXTANYCAT: u32 = 2003; +pub const F_ANYTEXTCAT: u32 = 2004; +pub const F_BYTEALIKE: u32 = 2005; +pub const F_BYTEANLIKE: u32 = 2006; +pub const F_LIKE_BYTEA_BYTEA: u32 = 2007; +pub const F_NOTLIKE_BYTEA_BYTEA: u32 = 2008; +pub const F_LIKE_ESCAPE_BYTEA_BYTEA: u32 = 2009; +pub const F_LENGTH_BYTEA: u32 = 2010; +pub const F_BYTEACAT: u32 = 2011; +pub const F_SUBSTRING_BYTEA_INT4_INT4: u32 = 2012; +pub const F_SUBSTRING_BYTEA_INT4: u32 = 2013; +pub const F_POSITION_BYTEA_BYTEA: u32 = 2014; +pub const F_BTRIM_BYTEA_BYTEA: u32 = 2015; +pub const F_TIME_TIMESTAMPTZ: u32 = 2019; +pub const F_DATE_TRUNC_TEXT_TIMESTAMP: u32 = 2020; +pub const F_DATE_PART_TEXT_TIMESTAMP: u32 = 2021; +pub const F_PG_STAT_GET_ACTIVITY: u32 = 2022; +pub const F_JSONB_PATH_QUERY_FIRST_TZ: u32 = 2023; +pub const F_TIMESTAMP_DATE: u32 = 2024; +pub const F_TIMESTAMP_DATE_TIME: u32 = 2025; +pub const F_PG_BACKEND_PID: u32 = 2026; +pub const F_TIMESTAMP_TIMESTAMPTZ: u32 = 2027; +pub const F_TIMESTAMPTZ_TIMESTAMP: u32 = 2028; +pub const F_DATE_TIMESTAMP: u32 = 2029; +pub const F_JSONB_PATH_MATCH_TZ: u32 = 2030; +pub const F_TIMESTAMP_MI: u32 = 2031; +pub const F_TIMESTAMP_PL_INTERVAL: u32 = 2032; +pub const F_TIMESTAMP_MI_INTERVAL: u32 = 2033; +pub const F_PG_CONF_LOAD_TIME: u32 = 2034; +pub const F_TIMESTAMP_SMALLER: u32 = 2035; +pub const F_TIMESTAMP_LARGER: u32 = 2036; +pub const F_TIMEZONE_TEXT_TIMETZ: u32 = 2037; +pub const F_TIMEZONE_INTERVAL_TIMETZ: u32 = 2038; +pub const F_TIMESTAMP_HASH: u32 = 2039; +pub const F_OVERLAPS_TIMESTAMP_TIMESTAMP_TIMESTAMP_TIMESTAMP: u32 = 2041; +pub const F_OVERLAPS_TIMESTAMP_INTERVAL_TIMESTAMP_INTERVAL: u32 = 2042; +pub const F_OVERLAPS_TIMESTAMP_TIMESTAMP_TIMESTAMP_INTERVAL: u32 = 2043; +pub const F_OVERLAPS_TIMESTAMP_INTERVAL_TIMESTAMP_TIMESTAMP: u32 = 2044; +pub const F_TIMESTAMP_CMP: u32 = 2045; +pub const F_TIME_TIMETZ: u32 = 2046; +pub const F_TIMETZ_TIME: u32 = 2047; +pub const F_ISFINITE_TIMESTAMP: u32 = 2048; +pub const F_TO_CHAR_TIMESTAMP_TEXT: u32 = 2049; +pub const F_MAX_ANYARRAY: u32 = 2050; +pub const F_MIN_ANYARRAY: u32 = 2051; +pub const F_TIMESTAMP_EQ: u32 = 2052; +pub const F_TIMESTAMP_NE: u32 = 2053; +pub const F_TIMESTAMP_LT: u32 = 2054; +pub const F_TIMESTAMP_LE: u32 = 2055; +pub const F_TIMESTAMP_GE: u32 = 2056; +pub const F_TIMESTAMP_GT: u32 = 2057; +pub const F_AGE_TIMESTAMP_TIMESTAMP: u32 = 2058; +pub const F_AGE_TIMESTAMP: u32 = 2059; +pub const F_TIMEZONE_TEXT_TIMESTAMP: u32 = 2069; +pub const F_TIMEZONE_INTERVAL_TIMESTAMP: u32 = 2070; +pub const F_DATE_PL_INTERVAL: u32 = 2071; +pub const F_DATE_MI_INTERVAL: u32 = 2072; +pub const F_SUBSTRING_TEXT_TEXT: u32 = 2073; +pub const F_SUBSTRING_TEXT_TEXT_TEXT: u32 = 2074; +pub const F_BIT_INT8_INT4: u32 = 2075; +pub const F_INT8_BIT: u32 = 2076; +pub const F_CURRENT_SETTING_TEXT: u32 = 2077; +pub const F_SET_CONFIG: u32 = 2078; +pub const F_PG_TABLE_IS_VISIBLE: u32 = 2079; +pub const F_PG_TYPE_IS_VISIBLE: u32 = 2080; +pub const F_PG_FUNCTION_IS_VISIBLE: u32 = 2081; +pub const F_PG_OPERATOR_IS_VISIBLE: u32 = 2082; +pub const F_PG_OPCLASS_IS_VISIBLE: u32 = 2083; +pub const F_PG_SHOW_ALL_SETTINGS: u32 = 2084; +pub const F_SUBSTR_BYTEA_INT4_INT4: u32 = 2085; +pub const F_SUBSTR_BYTEA_INT4: u32 = 2086; +pub const F_REPLACE: u32 = 2087; +pub const F_SPLIT_PART: u32 = 2088; +pub const F_TO_HEX_INT4: u32 = 2089; +pub const F_TO_HEX_INT8: u32 = 2090; +pub const F_ARRAY_LOWER: u32 = 2091; +pub const F_ARRAY_UPPER: u32 = 2092; +pub const F_PG_CONVERSION_IS_VISIBLE: u32 = 2093; +pub const F_PG_STAT_GET_BACKEND_ACTIVITY_START: u32 = 2094; +pub const F_PG_TERMINATE_BACKEND: u32 = 2096; +pub const F_PG_GET_FUNCTIONDEF: u32 = 2098; +pub const F_AVG_INT8: u32 = 2100; +pub const F_AVG_INT4: u32 = 2101; +pub const F_AVG_INT2: u32 = 2102; +pub const F_AVG_NUMERIC: u32 = 2103; +pub const F_AVG_FLOAT4: u32 = 2104; +pub const F_AVG_FLOAT8: u32 = 2105; +pub const F_AVG_INTERVAL: u32 = 2106; +pub const F_SUM_INT8: u32 = 2107; +pub const F_SUM_INT4: u32 = 2108; +pub const F_SUM_INT2: u32 = 2109; +pub const F_SUM_FLOAT4: u32 = 2110; +pub const F_SUM_FLOAT8: u32 = 2111; +pub const F_SUM_MONEY: u32 = 2112; +pub const F_SUM_INTERVAL: u32 = 2113; +pub const F_SUM_NUMERIC: u32 = 2114; +pub const F_MAX_INT8: u32 = 2115; +pub const F_MAX_INT4: u32 = 2116; +pub const F_MAX_INT2: u32 = 2117; +pub const F_MAX_OID: u32 = 2118; +pub const F_MAX_FLOAT4: u32 = 2119; +pub const F_MAX_FLOAT8: u32 = 2120; +pub const F_PG_COLUMN_COMPRESSION: u32 = 2121; +pub const F_MAX_DATE: u32 = 2122; +pub const F_MAX_TIME: u32 = 2123; +pub const F_MAX_TIMETZ: u32 = 2124; +pub const F_MAX_MONEY: u32 = 2125; +pub const F_MAX_TIMESTAMP: u32 = 2126; +pub const F_MAX_TIMESTAMPTZ: u32 = 2127; +pub const F_MAX_INTERVAL: u32 = 2128; +pub const F_MAX_TEXT: u32 = 2129; +pub const F_MAX_NUMERIC: u32 = 2130; +pub const F_MIN_INT8: u32 = 2131; +pub const F_MIN_INT4: u32 = 2132; +pub const F_MIN_INT2: u32 = 2133; +pub const F_MIN_OID: u32 = 2134; +pub const F_MIN_FLOAT4: u32 = 2135; +pub const F_MIN_FLOAT8: u32 = 2136; +pub const F_PG_STAT_FORCE_NEXT_FLUSH: u32 = 2137; +pub const F_MIN_DATE: u32 = 2138; +pub const F_MIN_TIME: u32 = 2139; +pub const F_MIN_TIMETZ: u32 = 2140; +pub const F_MIN_MONEY: u32 = 2141; +pub const F_MIN_TIMESTAMP: u32 = 2142; +pub const F_MIN_TIMESTAMPTZ: u32 = 2143; +pub const F_MIN_INTERVAL: u32 = 2144; +pub const F_MIN_TEXT: u32 = 2145; +pub const F_MIN_NUMERIC: u32 = 2146; +pub const F_COUNT_ANY: u32 = 2147; +pub const F_VARIANCE_INT8: u32 = 2148; +pub const F_VARIANCE_INT4: u32 = 2149; +pub const F_VARIANCE_INT2: u32 = 2150; +pub const F_VARIANCE_FLOAT4: u32 = 2151; +pub const F_VARIANCE_FLOAT8: u32 = 2152; +pub const F_VARIANCE_NUMERIC: u32 = 2153; +pub const F_STDDEV_INT8: u32 = 2154; +pub const F_STDDEV_INT4: u32 = 2155; +pub const F_STDDEV_INT2: u32 = 2156; +pub const F_STDDEV_FLOAT4: u32 = 2157; +pub const F_STDDEV_FLOAT8: u32 = 2158; +pub const F_STDDEV_NUMERIC: u32 = 2159; +pub const F_TEXT_PATTERN_LT: u32 = 2160; +pub const F_TEXT_PATTERN_LE: u32 = 2161; +pub const F_PG_GET_FUNCTION_ARGUMENTS: u32 = 2162; +pub const F_TEXT_PATTERN_GE: u32 = 2163; +pub const F_TEXT_PATTERN_GT: u32 = 2164; +pub const F_PG_GET_FUNCTION_RESULT: u32 = 2165; +pub const F_BTTEXT_PATTERN_CMP: u32 = 2166; +pub const F_CEILING_NUMERIC: u32 = 2167; +pub const F_PG_DATABASE_SIZE_NAME: u32 = 2168; +pub const F_POWER_NUMERIC_NUMERIC: u32 = 2169; +pub const F_WIDTH_BUCKET_NUMERIC_NUMERIC_NUMERIC_INT4: u32 = 2170; +pub const F_PG_CANCEL_BACKEND: u32 = 2171; +pub const F_PG_BACKUP_START: u32 = 2172; +pub const F_BPCHAR_PATTERN_LT: u32 = 2174; +pub const F_BPCHAR_PATTERN_LE: u32 = 2175; +pub const F_ARRAY_LENGTH: u32 = 2176; +pub const F_BPCHAR_PATTERN_GE: u32 = 2177; +pub const F_BPCHAR_PATTERN_GT: u32 = 2178; +pub const F_GIST_POINT_CONSISTENT: u32 = 2179; +pub const F_BTBPCHAR_PATTERN_CMP: u32 = 2180; +pub const F_HAS_SEQUENCE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2181; +pub const F_HAS_SEQUENCE_PRIVILEGE_NAME_OID_TEXT: u32 = 2182; +pub const F_HAS_SEQUENCE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2183; +pub const F_HAS_SEQUENCE_PRIVILEGE_OID_OID_TEXT: u32 = 2184; +pub const F_HAS_SEQUENCE_PRIVILEGE_TEXT_TEXT: u32 = 2185; +pub const F_HAS_SEQUENCE_PRIVILEGE_OID_TEXT: u32 = 2186; +pub const F_BTINT48CMP: u32 = 2188; +pub const F_BTINT84CMP: u32 = 2189; +pub const F_BTINT24CMP: u32 = 2190; +pub const F_BTINT42CMP: u32 = 2191; +pub const F_BTINT28CMP: u32 = 2192; +pub const F_BTINT82CMP: u32 = 2193; +pub const F_BTFLOAT48CMP: u32 = 2194; +pub const F_BTFLOAT84CMP: u32 = 2195; +pub const F_INET_CLIENT_ADDR: u32 = 2196; +pub const F_INET_CLIENT_PORT: u32 = 2197; +pub const F_INET_SERVER_ADDR: u32 = 2198; +pub const F_INET_SERVER_PORT: u32 = 2199; +pub const F_REGPROCEDUREIN: u32 = 2212; +pub const F_REGPROCEDUREOUT: u32 = 2213; +pub const F_REGOPERIN: u32 = 2214; +pub const F_REGOPEROUT: u32 = 2215; +pub const F_REGOPERATORIN: u32 = 2216; +pub const F_REGOPERATOROUT: u32 = 2217; +pub const F_REGCLASSIN: u32 = 2218; +pub const F_REGCLASSOUT: u32 = 2219; +pub const F_REGTYPEIN: u32 = 2220; +pub const F_REGTYPEOUT: u32 = 2221; +pub const F_PG_STAT_CLEAR_SNAPSHOT: u32 = 2230; +pub const F_PG_GET_FUNCTION_IDENTITY_ARGUMENTS: u32 = 2232; +pub const F_HASHTID: u32 = 2233; +pub const F_HASHTIDEXTENDED: u32 = 2234; +pub const F_BIT_AND_INT2: u32 = 2236; +pub const F_BIT_OR_INT2: u32 = 2237; +pub const F_BIT_AND_INT4: u32 = 2238; +pub const F_BIT_OR_INT4: u32 = 2239; +pub const F_BIT_AND_INT8: u32 = 2240; +pub const F_BIT_OR_INT8: u32 = 2241; +pub const F_BIT_AND_BIT: u32 = 2242; +pub const F_BIT_OR_BIT: u32 = 2243; +pub const F_MAX_BPCHAR: u32 = 2244; +pub const F_MIN_BPCHAR: u32 = 2245; +pub const F_FMGR_INTERNAL_VALIDATOR: u32 = 2246; +pub const F_FMGR_C_VALIDATOR: u32 = 2247; +pub const F_FMGR_SQL_VALIDATOR: u32 = 2248; +pub const F_HAS_DATABASE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2250; +pub const F_HAS_DATABASE_PRIVILEGE_NAME_OID_TEXT: u32 = 2251; +pub const F_HAS_DATABASE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2252; +pub const F_HAS_DATABASE_PRIVILEGE_OID_OID_TEXT: u32 = 2253; +pub const F_HAS_DATABASE_PRIVILEGE_TEXT_TEXT: u32 = 2254; +pub const F_HAS_DATABASE_PRIVILEGE_OID_TEXT: u32 = 2255; +pub const F_HAS_FUNCTION_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2256; +pub const F_HAS_FUNCTION_PRIVILEGE_NAME_OID_TEXT: u32 = 2257; +pub const F_HAS_FUNCTION_PRIVILEGE_OID_TEXT_TEXT: u32 = 2258; +pub const F_HAS_FUNCTION_PRIVILEGE_OID_OID_TEXT: u32 = 2259; +pub const F_HAS_FUNCTION_PRIVILEGE_TEXT_TEXT: u32 = 2260; +pub const F_HAS_FUNCTION_PRIVILEGE_OID_TEXT: u32 = 2261; +pub const F_HAS_LANGUAGE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2262; +pub const F_HAS_LANGUAGE_PRIVILEGE_NAME_OID_TEXT: u32 = 2263; +pub const F_HAS_LANGUAGE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2264; +pub const F_HAS_LANGUAGE_PRIVILEGE_OID_OID_TEXT: u32 = 2265; +pub const F_HAS_LANGUAGE_PRIVILEGE_TEXT_TEXT: u32 = 2266; +pub const F_HAS_LANGUAGE_PRIVILEGE_OID_TEXT: u32 = 2267; +pub const F_HAS_SCHEMA_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2268; +pub const F_HAS_SCHEMA_PRIVILEGE_NAME_OID_TEXT: u32 = 2269; +pub const F_HAS_SCHEMA_PRIVILEGE_OID_TEXT_TEXT: u32 = 2270; +pub const F_HAS_SCHEMA_PRIVILEGE_OID_OID_TEXT: u32 = 2271; +pub const F_HAS_SCHEMA_PRIVILEGE_TEXT_TEXT: u32 = 2272; +pub const F_HAS_SCHEMA_PRIVILEGE_OID_TEXT: u32 = 2273; +pub const F_PG_STAT_RESET: u32 = 2274; +pub const F_PG_GET_BACKEND_MEMORY_CONTEXTS: u32 = 2282; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT: u32 = 2284; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_TEXT: u32 = 2285; +pub const F_PG_TOTAL_RELATION_SIZE: u32 = 2286; +pub const F_PG_SIZE_PRETTY_INT8: u32 = 2288; +pub const F_PG_OPTIONS_TO_TABLE: u32 = 2289; +pub const F_RECORD_IN: u32 = 2290; +pub const F_RECORD_OUT: u32 = 2291; +pub const F_CSTRING_IN: u32 = 2292; +pub const F_CSTRING_OUT: u32 = 2293; +pub const F_ANY_IN: u32 = 2294; +pub const F_ANY_OUT: u32 = 2295; +pub const F_ANYARRAY_IN: u32 = 2296; +pub const F_ANYARRAY_OUT: u32 = 2297; +pub const F_VOID_IN: u32 = 2298; +pub const F_VOID_OUT: u32 = 2299; +pub const F_TRIGGER_IN: u32 = 2300; +pub const F_TRIGGER_OUT: u32 = 2301; +pub const F_LANGUAGE_HANDLER_IN: u32 = 2302; +pub const F_LANGUAGE_HANDLER_OUT: u32 = 2303; +pub const F_INTERNAL_IN: u32 = 2304; +pub const F_INTERNAL_OUT: u32 = 2305; +pub const F_PG_STAT_GET_SLRU: u32 = 2306; +pub const F_PG_STAT_RESET_SLRU: u32 = 2307; +pub const F_CEIL_FLOAT8: u32 = 2308; +pub const F_FLOOR_FLOAT8: u32 = 2309; +pub const F_SIGN_FLOAT8: u32 = 2310; +pub const F_MD5_TEXT: u32 = 2311; +pub const F_ANYELEMENT_IN: u32 = 2312; +pub const F_ANYELEMENT_OUT: u32 = 2313; +pub const F_POSTGRESQL_FDW_VALIDATOR: u32 = 2316; +pub const F_PG_ENCODING_MAX_LENGTH: u32 = 2319; +pub const F_CEILING_FLOAT8: u32 = 2320; +pub const F_MD5_BYTEA: u32 = 2321; +pub const F_PG_TABLESPACE_SIZE_OID: u32 = 2322; +pub const F_PG_TABLESPACE_SIZE_NAME: u32 = 2323; +pub const F_PG_DATABASE_SIZE_OID: u32 = 2324; +pub const F_PG_RELATION_SIZE_REGCLASS: u32 = 2325; +pub const F_UNNEST_ANYARRAY: u32 = 2331; +pub const F_PG_RELATION_SIZE_REGCLASS_TEXT: u32 = 2332; +pub const F_ARRAY_AGG_TRANSFN: u32 = 2333; +pub const F_ARRAY_AGG_FINALFN: u32 = 2334; +pub const F_ARRAY_AGG_ANYNONARRAY: u32 = 2335; +pub const F_DATE_LT_TIMESTAMP: u32 = 2338; +pub const F_DATE_LE_TIMESTAMP: u32 = 2339; +pub const F_DATE_EQ_TIMESTAMP: u32 = 2340; +pub const F_DATE_GT_TIMESTAMP: u32 = 2341; +pub const F_DATE_GE_TIMESTAMP: u32 = 2342; +pub const F_DATE_NE_TIMESTAMP: u32 = 2343; +pub const F_DATE_CMP_TIMESTAMP: u32 = 2344; +pub const F_DATE_LT_TIMESTAMPTZ: u32 = 2351; +pub const F_DATE_LE_TIMESTAMPTZ: u32 = 2352; +pub const F_DATE_EQ_TIMESTAMPTZ: u32 = 2353; +pub const F_DATE_GT_TIMESTAMPTZ: u32 = 2354; +pub const F_DATE_GE_TIMESTAMPTZ: u32 = 2355; +pub const F_DATE_NE_TIMESTAMPTZ: u32 = 2356; +pub const F_DATE_CMP_TIMESTAMPTZ: u32 = 2357; +pub const F_TIMESTAMP_LT_DATE: u32 = 2364; +pub const F_TIMESTAMP_LE_DATE: u32 = 2365; +pub const F_TIMESTAMP_EQ_DATE: u32 = 2366; +pub const F_TIMESTAMP_GT_DATE: u32 = 2367; +pub const F_TIMESTAMP_GE_DATE: u32 = 2368; +pub const F_TIMESTAMP_NE_DATE: u32 = 2369; +pub const F_TIMESTAMP_CMP_DATE: u32 = 2370; +pub const F_TIMESTAMPTZ_LT_DATE: u32 = 2377; +pub const F_TIMESTAMPTZ_LE_DATE: u32 = 2378; +pub const F_TIMESTAMPTZ_EQ_DATE: u32 = 2379; +pub const F_TIMESTAMPTZ_GT_DATE: u32 = 2380; +pub const F_TIMESTAMPTZ_GE_DATE: u32 = 2381; +pub const F_TIMESTAMPTZ_NE_DATE: u32 = 2382; +pub const F_TIMESTAMPTZ_CMP_DATE: u32 = 2383; +pub const F_HAS_TABLESPACE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 2390; +pub const F_HAS_TABLESPACE_PRIVILEGE_NAME_OID_TEXT: u32 = 2391; +pub const F_HAS_TABLESPACE_PRIVILEGE_OID_TEXT_TEXT: u32 = 2392; +pub const F_HAS_TABLESPACE_PRIVILEGE_OID_OID_TEXT: u32 = 2393; +pub const F_HAS_TABLESPACE_PRIVILEGE_TEXT_TEXT: u32 = 2394; +pub const F_HAS_TABLESPACE_PRIVILEGE_OID_TEXT: u32 = 2395; +pub const F_SHELL_IN: u32 = 2398; +pub const F_SHELL_OUT: u32 = 2399; +pub const F_ARRAY_RECV: u32 = 2400; +pub const F_ARRAY_SEND: u32 = 2401; +pub const F_RECORD_RECV: u32 = 2402; +pub const F_RECORD_SEND: u32 = 2403; +pub const F_INT2RECV: u32 = 2404; +pub const F_INT2SEND: u32 = 2405; +pub const F_INT4RECV: u32 = 2406; +pub const F_INT4SEND: u32 = 2407; +pub const F_INT8RECV: u32 = 2408; +pub const F_INT8SEND: u32 = 2409; +pub const F_INT2VECTORRECV: u32 = 2410; +pub const F_INT2VECTORSEND: u32 = 2411; +pub const F_BYTEARECV: u32 = 2412; +pub const F_BYTEASEND: u32 = 2413; +pub const F_TEXTRECV: u32 = 2414; +pub const F_TEXTSEND: u32 = 2415; +pub const F_UNKNOWNRECV: u32 = 2416; +pub const F_UNKNOWNSEND: u32 = 2417; +pub const F_OIDRECV: u32 = 2418; +pub const F_OIDSEND: u32 = 2419; +pub const F_OIDVECTORRECV: u32 = 2420; +pub const F_OIDVECTORSEND: u32 = 2421; +pub const F_NAMERECV: u32 = 2422; +pub const F_NAMESEND: u32 = 2423; +pub const F_FLOAT4RECV: u32 = 2424; +pub const F_FLOAT4SEND: u32 = 2425; +pub const F_FLOAT8RECV: u32 = 2426; +pub const F_FLOAT8SEND: u32 = 2427; +pub const F_POINT_RECV: u32 = 2428; +pub const F_POINT_SEND: u32 = 2429; +pub const F_BPCHARRECV: u32 = 2430; +pub const F_BPCHARSEND: u32 = 2431; +pub const F_VARCHARRECV: u32 = 2432; +pub const F_VARCHARSEND: u32 = 2433; +pub const F_CHARRECV: u32 = 2434; +pub const F_CHARSEND: u32 = 2435; +pub const F_BOOLRECV: u32 = 2436; +pub const F_BOOLSEND: u32 = 2437; +pub const F_TIDRECV: u32 = 2438; +pub const F_TIDSEND: u32 = 2439; +pub const F_XIDRECV: u32 = 2440; +pub const F_XIDSEND: u32 = 2441; +pub const F_CIDRECV: u32 = 2442; +pub const F_CIDSEND: u32 = 2443; +pub const F_REGPROCRECV: u32 = 2444; +pub const F_REGPROCSEND: u32 = 2445; +pub const F_REGPROCEDURERECV: u32 = 2446; +pub const F_REGPROCEDURESEND: u32 = 2447; +pub const F_REGOPERRECV: u32 = 2448; +pub const F_REGOPERSEND: u32 = 2449; +pub const F_REGOPERATORRECV: u32 = 2450; +pub const F_REGOPERATORSEND: u32 = 2451; +pub const F_REGCLASSRECV: u32 = 2452; +pub const F_REGCLASSSEND: u32 = 2453; +pub const F_REGTYPERECV: u32 = 2454; +pub const F_REGTYPESEND: u32 = 2455; +pub const F_BIT_RECV: u32 = 2456; +pub const F_BIT_SEND: u32 = 2457; +pub const F_VARBIT_RECV: u32 = 2458; +pub const F_VARBIT_SEND: u32 = 2459; +pub const F_NUMERIC_RECV: u32 = 2460; +pub const F_NUMERIC_SEND: u32 = 2461; +pub const F_SINH: u32 = 2462; +pub const F_COSH: u32 = 2463; +pub const F_TANH: u32 = 2464; +pub const F_ASINH: u32 = 2465; +pub const F_ACOSH: u32 = 2466; +pub const F_ATANH: u32 = 2467; +pub const F_DATE_RECV: u32 = 2468; +pub const F_DATE_SEND: u32 = 2469; +pub const F_TIME_RECV: u32 = 2470; +pub const F_TIME_SEND: u32 = 2471; +pub const F_TIMETZ_RECV: u32 = 2472; +pub const F_TIMETZ_SEND: u32 = 2473; +pub const F_TIMESTAMP_RECV: u32 = 2474; +pub const F_TIMESTAMP_SEND: u32 = 2475; +pub const F_TIMESTAMPTZ_RECV: u32 = 2476; +pub const F_TIMESTAMPTZ_SEND: u32 = 2477; +pub const F_INTERVAL_RECV: u32 = 2478; +pub const F_INTERVAL_SEND: u32 = 2479; +pub const F_LSEG_RECV: u32 = 2480; +pub const F_LSEG_SEND: u32 = 2481; +pub const F_PATH_RECV: u32 = 2482; +pub const F_PATH_SEND: u32 = 2483; +pub const F_BOX_RECV: u32 = 2484; +pub const F_BOX_SEND: u32 = 2485; +pub const F_POLY_RECV: u32 = 2486; +pub const F_POLY_SEND: u32 = 2487; +pub const F_LINE_RECV: u32 = 2488; +pub const F_LINE_SEND: u32 = 2489; +pub const F_CIRCLE_RECV: u32 = 2490; +pub const F_CIRCLE_SEND: u32 = 2491; +pub const F_CASH_RECV: u32 = 2492; +pub const F_CASH_SEND: u32 = 2493; +pub const F_MACADDR_RECV: u32 = 2494; +pub const F_MACADDR_SEND: u32 = 2495; +pub const F_INET_RECV: u32 = 2496; +pub const F_INET_SEND: u32 = 2497; +pub const F_CIDR_RECV: u32 = 2498; +pub const F_CIDR_SEND: u32 = 2499; +pub const F_CSTRING_RECV: u32 = 2500; +pub const F_CSTRING_SEND: u32 = 2501; +pub const F_ANYARRAY_RECV: u32 = 2502; +pub const F_ANYARRAY_SEND: u32 = 2503; +pub const F_PG_GET_RULEDEF_OID_BOOL: u32 = 2504; +pub const F_PG_GET_VIEWDEF_TEXT_BOOL: u32 = 2505; +pub const F_PG_GET_VIEWDEF_OID_BOOL: u32 = 2506; +pub const F_PG_GET_INDEXDEF_OID_INT4_BOOL: u32 = 2507; +pub const F_PG_GET_CONSTRAINTDEF_OID_BOOL: u32 = 2508; +pub const F_PG_GET_EXPR_PG_NODE_TREE_OID_BOOL: u32 = 2509; +pub const F_PG_PREPARED_STATEMENT: u32 = 2510; +pub const F_PG_CURSOR: u32 = 2511; +pub const F_FLOAT8_VAR_POP: u32 = 2512; +pub const F_FLOAT8_STDDEV_POP: u32 = 2513; +pub const F_NUMERIC_VAR_POP: u32 = 2514; +pub const F_BOOLAND_STATEFUNC: u32 = 2515; +pub const F_BOOLOR_STATEFUNC: u32 = 2516; +pub const F_BOOL_AND: u32 = 2517; +pub const F_BOOL_OR: u32 = 2518; +pub const F_EVERY: u32 = 2519; +pub const F_TIMESTAMP_LT_TIMESTAMPTZ: u32 = 2520; +pub const F_TIMESTAMP_LE_TIMESTAMPTZ: u32 = 2521; +pub const F_TIMESTAMP_EQ_TIMESTAMPTZ: u32 = 2522; +pub const F_TIMESTAMP_GT_TIMESTAMPTZ: u32 = 2523; +pub const F_TIMESTAMP_GE_TIMESTAMPTZ: u32 = 2524; +pub const F_TIMESTAMP_NE_TIMESTAMPTZ: u32 = 2525; +pub const F_TIMESTAMP_CMP_TIMESTAMPTZ: u32 = 2526; +pub const F_TIMESTAMPTZ_LT_TIMESTAMP: u32 = 2527; +pub const F_TIMESTAMPTZ_LE_TIMESTAMP: u32 = 2528; +pub const F_TIMESTAMPTZ_EQ_TIMESTAMP: u32 = 2529; +pub const F_TIMESTAMPTZ_GT_TIMESTAMP: u32 = 2530; +pub const F_TIMESTAMPTZ_GE_TIMESTAMP: u32 = 2531; +pub const F_TIMESTAMPTZ_NE_TIMESTAMP: u32 = 2532; +pub const F_TIMESTAMPTZ_CMP_TIMESTAMP: u32 = 2533; +pub const F_INTERVAL_PL_DATE: u32 = 2546; +pub const F_INTERVAL_PL_TIMETZ: u32 = 2547; +pub const F_INTERVAL_PL_TIMESTAMP: u32 = 2548; +pub const F_INTERVAL_PL_TIMESTAMPTZ: u32 = 2549; +pub const F_INTEGER_PL_DATE: u32 = 2550; +pub const F_PG_TABLESPACE_DATABASES: u32 = 2556; +pub const F_BOOL_INT4: u32 = 2557; +pub const F_INT4_BOOL: u32 = 2558; +pub const F_LASTVAL: u32 = 2559; +pub const F_PG_POSTMASTER_START_TIME: u32 = 2560; +pub const F_PG_BLOCKING_PIDS: u32 = 2561; +pub const F_BOX_BELOW: u32 = 2562; +pub const F_BOX_OVERBELOW: u32 = 2563; +pub const F_BOX_OVERABOVE: u32 = 2564; +pub const F_BOX_ABOVE: u32 = 2565; +pub const F_POLY_BELOW: u32 = 2566; +pub const F_POLY_OVERBELOW: u32 = 2567; +pub const F_POLY_OVERABOVE: u32 = 2568; +pub const F_POLY_ABOVE: u32 = 2569; +pub const F_GIST_BOX_CONSISTENT: u32 = 2578; +pub const F_FLOAT8_JSONB: u32 = 2580; +pub const F_GIST_BOX_PENALTY: u32 = 2581; +pub const F_GIST_BOX_PICKSPLIT: u32 = 2582; +pub const F_GIST_BOX_UNION: u32 = 2583; +pub const F_GIST_BOX_SAME: u32 = 2584; +pub const F_GIST_POLY_CONSISTENT: u32 = 2585; +pub const F_GIST_POLY_COMPRESS: u32 = 2586; +pub const F_CIRCLE_OVERBELOW: u32 = 2587; +pub const F_CIRCLE_OVERABOVE: u32 = 2588; +pub const F_GIST_CIRCLE_CONSISTENT: u32 = 2591; +pub const F_GIST_CIRCLE_COMPRESS: u32 = 2592; +pub const F_NUMERIC_STDDEV_POP: u32 = 2596; +pub const F_DOMAIN_IN: u32 = 2597; +pub const F_DOMAIN_RECV: u32 = 2598; +pub const F_PG_TIMEZONE_ABBREVS: u32 = 2599; +pub const F_XMLEXISTS: u32 = 2614; +pub const F_PG_RELOAD_CONF: u32 = 2621; +pub const F_PG_ROTATE_LOGFILE: u32 = 2622; +pub const F_PG_STAT_FILE_TEXT: u32 = 2623; +pub const F_PG_READ_FILE_TEXT_INT8_INT8: u32 = 2624; +pub const F_PG_LS_DIR_TEXT: u32 = 2625; +pub const F_PG_SLEEP: u32 = 2626; +pub const F_INETNOT: u32 = 2627; +pub const F_INETAND: u32 = 2628; +pub const F_INETOR: u32 = 2629; +pub const F_INETPL: u32 = 2630; +pub const F_INT8PL_INET: u32 = 2631; +pub const F_INETMI_INT8: u32 = 2632; +pub const F_INETMI: u32 = 2633; +pub const F_VAR_SAMP_INT8: u32 = 2641; +pub const F_VAR_SAMP_INT4: u32 = 2642; +pub const F_VAR_SAMP_INT2: u32 = 2643; +pub const F_VAR_SAMP_FLOAT4: u32 = 2644; +pub const F_VAR_SAMP_FLOAT8: u32 = 2645; +pub const F_VAR_SAMP_NUMERIC: u32 = 2646; +pub const F_TRANSACTION_TIMESTAMP: u32 = 2647; +pub const F_STATEMENT_TIMESTAMP: u32 = 2648; +pub const F_CLOCK_TIMESTAMP: u32 = 2649; +pub const F_GIN_CMP_PREFIX: u32 = 2700; +pub const F_PG_HAS_ROLE_NAME_NAME_TEXT: u32 = 2705; +pub const F_PG_HAS_ROLE_NAME_OID_TEXT: u32 = 2706; +pub const F_PG_HAS_ROLE_OID_NAME_TEXT: u32 = 2707; +pub const F_PG_HAS_ROLE_OID_OID_TEXT: u32 = 2708; +pub const F_PG_HAS_ROLE_NAME_TEXT: u32 = 2709; +pub const F_PG_HAS_ROLE_OID_TEXT: u32 = 2710; +pub const F_JUSTIFY_INTERVAL: u32 = 2711; +pub const F_STDDEV_SAMP_INT8: u32 = 2712; +pub const F_STDDEV_SAMP_INT4: u32 = 2713; +pub const F_STDDEV_SAMP_INT2: u32 = 2714; +pub const F_STDDEV_SAMP_FLOAT4: u32 = 2715; +pub const F_STDDEV_SAMP_FLOAT8: u32 = 2716; +pub const F_STDDEV_SAMP_NUMERIC: u32 = 2717; +pub const F_VAR_POP_INT8: u32 = 2718; +pub const F_VAR_POP_INT4: u32 = 2719; +pub const F_VAR_POP_INT2: u32 = 2720; +pub const F_VAR_POP_FLOAT4: u32 = 2721; +pub const F_VAR_POP_FLOAT8: u32 = 2722; +pub const F_VAR_POP_NUMERIC: u32 = 2723; +pub const F_STDDEV_POP_INT8: u32 = 2724; +pub const F_STDDEV_POP_INT4: u32 = 2725; +pub const F_STDDEV_POP_INT2: u32 = 2726; +pub const F_STDDEV_POP_FLOAT4: u32 = 2727; +pub const F_STDDEV_POP_FLOAT8: u32 = 2728; +pub const F_STDDEV_POP_NUMERIC: u32 = 2729; +pub const F_PG_GET_TRIGGERDEF_OID_BOOL: u32 = 2730; +pub const F_ASIND: u32 = 2731; +pub const F_ACOSD: u32 = 2732; +pub const F_ATAND: u32 = 2733; +pub const F_ATAN2D: u32 = 2734; +pub const F_SIND: u32 = 2735; +pub const F_COSD: u32 = 2736; +pub const F_TAND: u32 = 2737; +pub const F_COTD: u32 = 2738; +pub const F_PG_BACKUP_STOP: u32 = 2739; +pub const F_NUMERIC_AVG_SERIALIZE: u32 = 2740; +pub const F_NUMERIC_AVG_DESERIALIZE: u32 = 2741; +pub const F_GINARRAYEXTRACT_ANYARRAY_INTERNAL_INTERNAL: u32 = 2743; +pub const F_GINARRAYCONSISTENT: u32 = 2744; +pub const F_INT8_AVG_ACCUM: u32 = 2746; +pub const F_ARRAYOVERLAP: u32 = 2747; +pub const F_ARRAYCONTAINS: u32 = 2748; +pub const F_ARRAYCONTAINED: u32 = 2749; +pub const F_PG_STAT_GET_DB_TUPLES_RETURNED: u32 = 2758; +pub const F_PG_STAT_GET_DB_TUPLES_FETCHED: u32 = 2759; +pub const F_PG_STAT_GET_DB_TUPLES_INSERTED: u32 = 2760; +pub const F_PG_STAT_GET_DB_TUPLES_UPDATED: u32 = 2761; +pub const F_PG_STAT_GET_DB_TUPLES_DELETED: u32 = 2762; +pub const F_REGEXP_MATCHES_TEXT_TEXT: u32 = 2763; +pub const F_REGEXP_MATCHES_TEXT_TEXT_TEXT: u32 = 2764; +pub const F_REGEXP_SPLIT_TO_TABLE_TEXT_TEXT: u32 = 2765; +pub const F_REGEXP_SPLIT_TO_TABLE_TEXT_TEXT_TEXT: u32 = 2766; +pub const F_REGEXP_SPLIT_TO_ARRAY_TEXT_TEXT: u32 = 2767; +pub const F_REGEXP_SPLIT_TO_ARRAY_TEXT_TEXT_TEXT: u32 = 2768; +pub const F_PG_STAT_GET_CHECKPOINTER_NUM_TIMED: u32 = 2769; +pub const F_PG_STAT_GET_CHECKPOINTER_NUM_REQUESTED: u32 = 2770; +pub const F_PG_STAT_GET_CHECKPOINTER_BUFFERS_WRITTEN: u32 = 2771; +pub const F_PG_STAT_GET_BGWRITER_BUF_WRITTEN_CLEAN: u32 = 2772; +pub const F_PG_STAT_GET_BGWRITER_MAXWRITTEN_CLEAN: u32 = 2773; +pub const F_GINQUERYARRAYEXTRACT: u32 = 2774; +pub const F_ANYNONARRAY_IN: u32 = 2777; +pub const F_ANYNONARRAY_OUT: u32 = 2778; +pub const F_PG_STAT_GET_LAST_VACUUM_TIME: u32 = 2781; +pub const F_PG_STAT_GET_LAST_AUTOVACUUM_TIME: u32 = 2782; +pub const F_PG_STAT_GET_LAST_ANALYZE_TIME: u32 = 2783; +pub const F_PG_STAT_GET_LAST_AUTOANALYZE_TIME: u32 = 2784; +pub const F_INT8_AVG_COMBINE: u32 = 2785; +pub const F_INT8_AVG_SERIALIZE: u32 = 2786; +pub const F_INT8_AVG_DESERIALIZE: u32 = 2787; +pub const F_PG_STAT_GET_BACKEND_WAIT_EVENT_TYPE: u32 = 2788; +pub const F_TIDGT: u32 = 2790; +pub const F_TIDLT: u32 = 2791; +pub const F_TIDGE: u32 = 2792; +pub const F_TIDLE: u32 = 2793; +pub const F_BTTIDCMP: u32 = 2794; +pub const F_TIDLARGER: u32 = 2795; +pub const F_TIDSMALLER: u32 = 2796; +pub const F_MAX_TID: u32 = 2797; +pub const F_MIN_TID: u32 = 2798; +pub const F_COUNT_: u32 = 2803; +pub const F_INT8INC_ANY: u32 = 2804; +pub const F_INT8INC_FLOAT8_FLOAT8: u32 = 2805; +pub const F_FLOAT8_REGR_ACCUM: u32 = 2806; +pub const F_FLOAT8_REGR_SXX: u32 = 2807; +pub const F_FLOAT8_REGR_SYY: u32 = 2808; +pub const F_FLOAT8_REGR_SXY: u32 = 2809; +pub const F_FLOAT8_REGR_AVGX: u32 = 2810; +pub const F_FLOAT8_REGR_AVGY: u32 = 2811; +pub const F_FLOAT8_REGR_R2: u32 = 2812; +pub const F_FLOAT8_REGR_SLOPE: u32 = 2813; +pub const F_FLOAT8_REGR_INTERCEPT: u32 = 2814; +pub const F_FLOAT8_COVAR_POP: u32 = 2815; +pub const F_FLOAT8_COVAR_SAMP: u32 = 2816; +pub const F_FLOAT8_CORR: u32 = 2817; +pub const F_REGR_COUNT: u32 = 2818; +pub const F_REGR_SXX: u32 = 2819; +pub const F_REGR_SYY: u32 = 2820; +pub const F_REGR_SXY: u32 = 2821; +pub const F_REGR_AVGX: u32 = 2822; +pub const F_REGR_AVGY: u32 = 2823; +pub const F_REGR_R2: u32 = 2824; +pub const F_REGR_SLOPE: u32 = 2825; +pub const F_REGR_INTERCEPT: u32 = 2826; +pub const F_COVAR_POP: u32 = 2827; +pub const F_COVAR_SAMP: u32 = 2828; +pub const F_CORR: u32 = 2829; +pub const F_PG_STAT_GET_DB_BLK_READ_TIME: u32 = 2844; +pub const F_PG_STAT_GET_DB_BLK_WRITE_TIME: u32 = 2845; +pub const F_PG_SWITCH_WAL: u32 = 2848; +pub const F_PG_CURRENT_WAL_LSN: u32 = 2849; +pub const F_PG_WALFILE_NAME_OFFSET: u32 = 2850; +pub const F_PG_WALFILE_NAME: u32 = 2851; +pub const F_PG_CURRENT_WAL_INSERT_LSN: u32 = 2852; +pub const F_PG_STAT_GET_BACKEND_WAIT_EVENT: u32 = 2853; +pub const F_PG_MY_TEMP_SCHEMA: u32 = 2854; +pub const F_PG_IS_OTHER_TEMP_SCHEMA: u32 = 2855; +pub const F_PG_TIMEZONE_NAMES: u32 = 2856; +pub const F_PG_STAT_GET_BACKEND_XACT_START: u32 = 2857; +pub const F_NUMERIC_AVG_ACCUM: u32 = 2858; +pub const F_PG_STAT_GET_BUF_ALLOC: u32 = 2859; +pub const F_PG_STAT_GET_LIVE_TUPLES: u32 = 2878; +pub const F_PG_STAT_GET_DEAD_TUPLES: u32 = 2879; +pub const F_PG_ADVISORY_LOCK_INT8: u32 = 2880; +pub const F_PG_ADVISORY_LOCK_SHARED_INT8: u32 = 2881; +pub const F_PG_TRY_ADVISORY_LOCK_INT8: u32 = 2882; +pub const F_PG_TRY_ADVISORY_LOCK_SHARED_INT8: u32 = 2883; +pub const F_PG_ADVISORY_UNLOCK_INT8: u32 = 2884; +pub const F_PG_ADVISORY_UNLOCK_SHARED_INT8: u32 = 2885; +pub const F_PG_ADVISORY_LOCK_INT4_INT4: u32 = 2886; +pub const F_PG_ADVISORY_LOCK_SHARED_INT4_INT4: u32 = 2887; +pub const F_PG_TRY_ADVISORY_LOCK_INT4_INT4: u32 = 2888; +pub const F_PG_TRY_ADVISORY_LOCK_SHARED_INT4_INT4: u32 = 2889; +pub const F_PG_ADVISORY_UNLOCK_INT4_INT4: u32 = 2890; +pub const F_PG_ADVISORY_UNLOCK_SHARED_INT4_INT4: u32 = 2891; +pub const F_PG_ADVISORY_UNLOCK_ALL: u32 = 2892; +pub const F_XML_IN: u32 = 2893; +pub const F_XML_OUT: u32 = 2894; +pub const F_XMLCOMMENT: u32 = 2895; +pub const F_XML: u32 = 2896; +pub const F_XMLVALIDATE: u32 = 2897; +pub const F_XML_RECV: u32 = 2898; +pub const F_XML_SEND: u32 = 2899; +pub const F_XMLCONCAT2: u32 = 2900; +pub const F_XMLAGG: u32 = 2901; +pub const F_VARBITTYPMODIN: u32 = 2902; +pub const F_INTERVALTYPMODIN: u32 = 2903; +pub const F_INTERVALTYPMODOUT: u32 = 2904; +pub const F_TIMESTAMPTYPMODIN: u32 = 2905; +pub const F_TIMESTAMPTYPMODOUT: u32 = 2906; +pub const F_TIMESTAMPTZTYPMODIN: u32 = 2907; +pub const F_TIMESTAMPTZTYPMODOUT: u32 = 2908; +pub const F_TIMETYPMODIN: u32 = 2909; +pub const F_TIMETYPMODOUT: u32 = 2910; +pub const F_TIMETZTYPMODIN: u32 = 2911; +pub const F_TIMETZTYPMODOUT: u32 = 2912; +pub const F_BPCHARTYPMODIN: u32 = 2913; +pub const F_BPCHARTYPMODOUT: u32 = 2914; +pub const F_VARCHARTYPMODIN: u32 = 2915; +pub const F_VARCHARTYPMODOUT: u32 = 2916; +pub const F_NUMERICTYPMODIN: u32 = 2917; +pub const F_NUMERICTYPMODOUT: u32 = 2918; +pub const F_BITTYPMODIN: u32 = 2919; +pub const F_BITTYPMODOUT: u32 = 2920; +pub const F_VARBITTYPMODOUT: u32 = 2921; +pub const F_TEXT_XML: u32 = 2922; +pub const F_TABLE_TO_XML: u32 = 2923; +pub const F_QUERY_TO_XML: u32 = 2924; +pub const F_CURSOR_TO_XML: u32 = 2925; +pub const F_TABLE_TO_XMLSCHEMA: u32 = 2926; +pub const F_QUERY_TO_XMLSCHEMA: u32 = 2927; +pub const F_CURSOR_TO_XMLSCHEMA: u32 = 2928; +pub const F_TABLE_TO_XML_AND_XMLSCHEMA: u32 = 2929; +pub const F_QUERY_TO_XML_AND_XMLSCHEMA: u32 = 2930; +pub const F_XPATH_TEXT_XML__TEXT: u32 = 2931; +pub const F_XPATH_TEXT_XML: u32 = 2932; +pub const F_SCHEMA_TO_XML: u32 = 2933; +pub const F_SCHEMA_TO_XMLSCHEMA: u32 = 2934; +pub const F_SCHEMA_TO_XML_AND_XMLSCHEMA: u32 = 2935; +pub const F_DATABASE_TO_XML: u32 = 2936; +pub const F_DATABASE_TO_XMLSCHEMA: u32 = 2937; +pub const F_DATABASE_TO_XML_AND_XMLSCHEMA: u32 = 2938; +pub const F_TXID_SNAPSHOT_IN: u32 = 2939; +pub const F_TXID_SNAPSHOT_OUT: u32 = 2940; +pub const F_TXID_SNAPSHOT_RECV: u32 = 2941; +pub const F_TXID_SNAPSHOT_SEND: u32 = 2942; +pub const F_TXID_CURRENT: u32 = 2943; +pub const F_TXID_CURRENT_SNAPSHOT: u32 = 2944; +pub const F_TXID_SNAPSHOT_XMIN: u32 = 2945; +pub const F_TXID_SNAPSHOT_XMAX: u32 = 2946; +pub const F_TXID_SNAPSHOT_XIP: u32 = 2947; +pub const F_TXID_VISIBLE_IN_SNAPSHOT: u32 = 2948; +pub const F_UUID_IN: u32 = 2952; +pub const F_UUID_OUT: u32 = 2953; +pub const F_UUID_LT: u32 = 2954; +pub const F_UUID_LE: u32 = 2955; +pub const F_UUID_EQ: u32 = 2956; +pub const F_UUID_GE: u32 = 2957; +pub const F_UUID_GT: u32 = 2958; +pub const F_UUID_NE: u32 = 2959; +pub const F_UUID_CMP: u32 = 2960; +pub const F_UUID_RECV: u32 = 2961; +pub const F_UUID_SEND: u32 = 2962; +pub const F_UUID_HASH: u32 = 2963; +pub const F_TEXT_BOOL: u32 = 2971; +pub const F_PG_STAT_GET_FUNCTION_CALLS: u32 = 2978; +pub const F_PG_STAT_GET_FUNCTION_TOTAL_TIME: u32 = 2979; +pub const F_PG_STAT_GET_FUNCTION_SELF_TIME: u32 = 2980; +pub const F_RECORD_EQ: u32 = 2981; +pub const F_RECORD_NE: u32 = 2982; +pub const F_RECORD_LT: u32 = 2983; +pub const F_RECORD_GT: u32 = 2984; +pub const F_RECORD_LE: u32 = 2985; +pub const F_RECORD_GE: u32 = 2986; +pub const F_BTRECORDCMP: u32 = 2987; +pub const F_PG_TABLE_SIZE: u32 = 2997; +pub const F_PG_INDEXES_SIZE: u32 = 2998; +pub const F_PG_RELATION_FILENODE: u32 = 2999; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3000; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_NAME_OID_TEXT: u32 = 3001; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_OID_TEXT_TEXT: u32 = 3002; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_OID_OID_TEXT: u32 = 3003; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_TEXT_TEXT: u32 = 3004; +pub const F_HAS_FOREIGN_DATA_WRAPPER_PRIVILEGE_OID_TEXT: u32 = 3005; +pub const F_HAS_SERVER_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3006; +pub const F_HAS_SERVER_PRIVILEGE_NAME_OID_TEXT: u32 = 3007; +pub const F_HAS_SERVER_PRIVILEGE_OID_TEXT_TEXT: u32 = 3008; +pub const F_HAS_SERVER_PRIVILEGE_OID_OID_TEXT: u32 = 3009; +pub const F_HAS_SERVER_PRIVILEGE_TEXT_TEXT: u32 = 3010; +pub const F_HAS_SERVER_PRIVILEGE_OID_TEXT: u32 = 3011; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_TEXT_TEXT_TEXT: u32 = 3012; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_TEXT_INT2_TEXT: u32 = 3013; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_OID_TEXT_TEXT: u32 = 3014; +pub const F_HAS_COLUMN_PRIVILEGE_NAME_OID_INT2_TEXT: u32 = 3015; +pub const F_HAS_COLUMN_PRIVILEGE_OID_TEXT_TEXT_TEXT: u32 = 3016; +pub const F_HAS_COLUMN_PRIVILEGE_OID_TEXT_INT2_TEXT: u32 = 3017; +pub const F_HAS_COLUMN_PRIVILEGE_OID_OID_TEXT_TEXT: u32 = 3018; +pub const F_HAS_COLUMN_PRIVILEGE_OID_OID_INT2_TEXT: u32 = 3019; +pub const F_HAS_COLUMN_PRIVILEGE_TEXT_TEXT_TEXT: u32 = 3020; +pub const F_HAS_COLUMN_PRIVILEGE_TEXT_INT2_TEXT: u32 = 3021; +pub const F_HAS_COLUMN_PRIVILEGE_OID_TEXT_TEXT: u32 = 3022; +pub const F_HAS_COLUMN_PRIVILEGE_OID_INT2_TEXT: u32 = 3023; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3024; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_NAME_OID_TEXT: u32 = 3025; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_OID_TEXT_TEXT: u32 = 3026; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_OID_OID_TEXT: u32 = 3027; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_TEXT_TEXT: u32 = 3028; +pub const F_HAS_ANY_COLUMN_PRIVILEGE_OID_TEXT: u32 = 3029; +pub const F_OVERLAY_BIT_BIT_INT4_INT4: u32 = 3030; +pub const F_OVERLAY_BIT_BIT_INT4: u32 = 3031; +pub const F_GET_BIT_BIT_INT4: u32 = 3032; +pub const F_SET_BIT_BIT_INT4_INT4: u32 = 3033; +pub const F_PG_RELATION_FILEPATH: u32 = 3034; +pub const F_PG_LISTENING_CHANNELS: u32 = 3035; +pub const F_PG_NOTIFY: u32 = 3036; +pub const F_PG_STAT_GET_XACT_NUMSCANS: u32 = 3037; +pub const F_PG_STAT_GET_XACT_TUPLES_RETURNED: u32 = 3038; +pub const F_PG_STAT_GET_XACT_TUPLES_FETCHED: u32 = 3039; +pub const F_PG_STAT_GET_XACT_TUPLES_INSERTED: u32 = 3040; +pub const F_PG_STAT_GET_XACT_TUPLES_UPDATED: u32 = 3041; +pub const F_PG_STAT_GET_XACT_TUPLES_DELETED: u32 = 3042; +pub const F_PG_STAT_GET_XACT_TUPLES_HOT_UPDATED: u32 = 3043; +pub const F_PG_STAT_GET_XACT_BLOCKS_FETCHED: u32 = 3044; +pub const F_PG_STAT_GET_XACT_BLOCKS_HIT: u32 = 3045; +pub const F_PG_STAT_GET_XACT_FUNCTION_CALLS: u32 = 3046; +pub const F_PG_STAT_GET_XACT_FUNCTION_TOTAL_TIME: u32 = 3047; +pub const F_PG_STAT_GET_XACT_FUNCTION_SELF_TIME: u32 = 3048; +pub const F_XPATH_EXISTS_TEXT_XML__TEXT: u32 = 3049; +pub const F_XPATH_EXISTS_TEXT_XML: u32 = 3050; +pub const F_XML_IS_WELL_FORMED: u32 = 3051; +pub const F_XML_IS_WELL_FORMED_DOCUMENT: u32 = 3052; +pub const F_XML_IS_WELL_FORMED_CONTENT: u32 = 3053; +pub const F_PG_STAT_GET_VACUUM_COUNT: u32 = 3054; +pub const F_PG_STAT_GET_AUTOVACUUM_COUNT: u32 = 3055; +pub const F_PG_STAT_GET_ANALYZE_COUNT: u32 = 3056; +pub const F_PG_STAT_GET_AUTOANALYZE_COUNT: u32 = 3057; +pub const F_CONCAT: u32 = 3058; +pub const F_CONCAT_WS: u32 = 3059; +pub const F_LEFT: u32 = 3060; +pub const F_RIGHT: u32 = 3061; +pub const F_REVERSE: u32 = 3062; +pub const F_GIST_POINT_DISTANCE: u32 = 3064; +pub const F_PG_STAT_GET_DB_CONFLICT_TABLESPACE: u32 = 3065; +pub const F_PG_STAT_GET_DB_CONFLICT_LOCK: u32 = 3066; +pub const F_PG_STAT_GET_DB_CONFLICT_SNAPSHOT: u32 = 3067; +pub const F_PG_STAT_GET_DB_CONFLICT_BUFFERPIN: u32 = 3068; +pub const F_PG_STAT_GET_DB_CONFLICT_STARTUP_DEADLOCK: u32 = 3069; +pub const F_PG_STAT_GET_DB_CONFLICT_ALL: u32 = 3070; +pub const F_PG_WAL_REPLAY_PAUSE: u32 = 3071; +pub const F_PG_WAL_REPLAY_RESUME: u32 = 3072; +pub const F_PG_IS_WAL_REPLAY_PAUSED: u32 = 3073; +pub const F_PG_STAT_GET_DB_STAT_RESET_TIME: u32 = 3074; +pub const F_PG_STAT_GET_BGWRITER_STAT_RESET_TIME: u32 = 3075; +pub const F_GINARRAYEXTRACT_ANYARRAY_INTERNAL: u32 = 3076; +pub const F_GIN_EXTRACT_TSVECTOR_TSVECTOR_INTERNAL: u32 = 3077; +pub const F_PG_SEQUENCE_PARAMETERS: u32 = 3078; +pub const F_PG_AVAILABLE_EXTENSIONS: u32 = 3082; +pub const F_PG_AVAILABLE_EXTENSION_VERSIONS: u32 = 3083; +pub const F_PG_EXTENSION_UPDATE_PATHS: u32 = 3084; +pub const F_PG_EXTENSION_CONFIG_DUMP: u32 = 3086; +pub const F_GIN_EXTRACT_TSQUERY_TSQUERY_INTERNAL_INT2_INTERNAL_INTERNAL: u32 = 3087; +pub const F_GIN_TSQUERY_CONSISTENT_INTERNAL_INT2_TSQUERY_INT4_INTERNAL_INTERNAL: u32 = 3088; +pub const F_PG_ADVISORY_XACT_LOCK_INT8: u32 = 3089; +pub const F_PG_ADVISORY_XACT_LOCK_SHARED_INT8: u32 = 3090; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_INT8: u32 = 3091; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_SHARED_INT8: u32 = 3092; +pub const F_PG_ADVISORY_XACT_LOCK_INT4_INT4: u32 = 3093; +pub const F_PG_ADVISORY_XACT_LOCK_SHARED_INT4_INT4: u32 = 3094; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_INT4_INT4: u32 = 3095; +pub const F_PG_TRY_ADVISORY_XACT_LOCK_SHARED_INT4_INT4: u32 = 3096; +pub const F_VARCHAR_SUPPORT: u32 = 3097; +pub const F_PG_CREATE_RESTORE_POINT: u32 = 3098; +pub const F_PG_STAT_GET_WAL_SENDERS: u32 = 3099; +pub const F_ROW_NUMBER: u32 = 3100; +pub const F_RANK_: u32 = 3101; +pub const F_DENSE_RANK_: u32 = 3102; +pub const F_PERCENT_RANK_: u32 = 3103; +pub const F_CUME_DIST_: u32 = 3104; +pub const F_NTILE: u32 = 3105; +pub const F_LAG_ANYELEMENT: u32 = 3106; +pub const F_LAG_ANYELEMENT_INT4: u32 = 3107; +pub const F_LAG_ANYCOMPATIBLE_INT4_ANYCOMPATIBLE: u32 = 3108; +pub const F_LEAD_ANYELEMENT: u32 = 3109; +pub const F_LEAD_ANYELEMENT_INT4: u32 = 3110; +pub const F_LEAD_ANYCOMPATIBLE_INT4_ANYCOMPATIBLE: u32 = 3111; +pub const F_FIRST_VALUE: u32 = 3112; +pub const F_LAST_VALUE: u32 = 3113; +pub const F_NTH_VALUE: u32 = 3114; +pub const F_FDW_HANDLER_IN: u32 = 3116; +pub const F_FDW_HANDLER_OUT: u32 = 3117; +pub const F_VOID_RECV: u32 = 3120; +pub const F_VOID_SEND: u32 = 3121; +pub const F_BTINT2SORTSUPPORT: u32 = 3129; +pub const F_BTINT4SORTSUPPORT: u32 = 3130; +pub const F_BTINT8SORTSUPPORT: u32 = 3131; +pub const F_BTFLOAT4SORTSUPPORT: u32 = 3132; +pub const F_BTFLOAT8SORTSUPPORT: u32 = 3133; +pub const F_BTOIDSORTSUPPORT: u32 = 3134; +pub const F_BTNAMESORTSUPPORT: u32 = 3135; +pub const F_DATE_SORTSUPPORT: u32 = 3136; +pub const F_TIMESTAMP_SORTSUPPORT: u32 = 3137; +pub const F_HAS_TYPE_PRIVILEGE_NAME_TEXT_TEXT: u32 = 3138; +pub const F_HAS_TYPE_PRIVILEGE_NAME_OID_TEXT: u32 = 3139; +pub const F_HAS_TYPE_PRIVILEGE_OID_TEXT_TEXT: u32 = 3140; +pub const F_HAS_TYPE_PRIVILEGE_OID_OID_TEXT: u32 = 3141; +pub const F_HAS_TYPE_PRIVILEGE_TEXT_TEXT: u32 = 3142; +pub const F_HAS_TYPE_PRIVILEGE_OID_TEXT: u32 = 3143; +pub const F_MACADDR_NOT: u32 = 3144; +pub const F_MACADDR_AND: u32 = 3145; +pub const F_MACADDR_OR: u32 = 3146; +pub const F_PG_STAT_GET_DB_TEMP_FILES: u32 = 3150; +pub const F_PG_STAT_GET_DB_TEMP_BYTES: u32 = 3151; +pub const F_PG_STAT_GET_DB_DEADLOCKS: u32 = 3152; +pub const F_ARRAY_TO_JSON_ANYARRAY: u32 = 3153; +pub const F_ARRAY_TO_JSON_ANYARRAY_BOOL: u32 = 3154; +pub const F_ROW_TO_JSON_RECORD: u32 = 3155; +pub const F_ROW_TO_JSON_RECORD_BOOL: u32 = 3156; +pub const F_NUMERIC_SUPPORT: u32 = 3157; +pub const F_VARBIT_SUPPORT: u32 = 3158; +pub const F_PG_GET_VIEWDEF_OID_INT4: u32 = 3159; +pub const F_PG_STAT_GET_CHECKPOINTER_WRITE_TIME: u32 = 3160; +pub const F_PG_STAT_GET_CHECKPOINTER_SYNC_TIME: u32 = 3161; +pub const F_PG_COLLATION_FOR: u32 = 3162; +pub const F_PG_TRIGGER_DEPTH: u32 = 3163; +pub const F_PG_WAL_LSN_DIFF: u32 = 3165; +pub const F_PG_SIZE_PRETTY_NUMERIC: u32 = 3166; +pub const F_ARRAY_REMOVE: u32 = 3167; +pub const F_ARRAY_REPLACE: u32 = 3168; +pub const F_RANGESEL: u32 = 3169; +pub const F_LO_LSEEK64: u32 = 3170; +pub const F_LO_TELL64: u32 = 3171; +pub const F_LO_TRUNCATE64: u32 = 3172; +pub const F_JSON_AGG_TRANSFN: u32 = 3173; +pub const F_JSON_AGG_FINALFN: u32 = 3174; +pub const F_JSON_AGG: u32 = 3175; +pub const F_TO_JSON: u32 = 3176; +pub const F_PG_STAT_GET_MOD_SINCE_ANALYZE: u32 = 3177; +pub const F_NUMERIC_SUM: u32 = 3178; +pub const F_CARDINALITY: u32 = 3179; +pub const F_JSON_OBJECT_AGG_TRANSFN: u32 = 3180; +pub const F_RECORD_IMAGE_EQ: u32 = 3181; +pub const F_RECORD_IMAGE_NE: u32 = 3182; +pub const F_RECORD_IMAGE_LT: u32 = 3183; +pub const F_RECORD_IMAGE_GT: u32 = 3184; +pub const F_RECORD_IMAGE_LE: u32 = 3185; +pub const F_RECORD_IMAGE_GE: u32 = 3186; +pub const F_BTRECORDIMAGECMP: u32 = 3187; +pub const F_PG_STAT_GET_ARCHIVER: u32 = 3195; +pub const F_JSON_OBJECT_AGG_FINALFN: u32 = 3196; +pub const F_JSON_OBJECT_AGG: u32 = 3197; +pub const F_JSON_BUILD_ARRAY_ANY: u32 = 3198; +pub const F_JSON_BUILD_ARRAY_: u32 = 3199; +pub const F_JSON_BUILD_OBJECT_ANY: u32 = 3200; +pub const F_JSON_BUILD_OBJECT_: u32 = 3201; +pub const F_JSON_OBJECT__TEXT: u32 = 3202; +pub const F_JSON_OBJECT__TEXT__TEXT: u32 = 3203; +pub const F_JSON_TO_RECORD: u32 = 3204; +pub const F_JSON_TO_RECORDSET: u32 = 3205; +pub const F_JSONB_ARRAY_LENGTH: u32 = 3207; +pub const F_JSONB_EACH: u32 = 3208; +pub const F_JSONB_POPULATE_RECORD: u32 = 3209; +pub const F_JSONB_TYPEOF: u32 = 3210; +pub const F_JSONB_OBJECT_FIELD_TEXT: u32 = 3214; +pub const F_JSONB_ARRAY_ELEMENT: u32 = 3215; +pub const F_JSONB_ARRAY_ELEMENT_TEXT: u32 = 3216; +pub const F_JSONB_EXTRACT_PATH: u32 = 3217; +pub const F_WIDTH_BUCKET_ANYCOMPATIBLE_ANYCOMPATIBLEARRAY: u32 = 3218; +pub const F_JSONB_ARRAY_ELEMENTS: u32 = 3219; +pub const F_PG_LSN_IN: u32 = 3229; +pub const F_PG_LSN_OUT: u32 = 3230; +pub const F_PG_LSN_LT: u32 = 3231; +pub const F_PG_LSN_LE: u32 = 3232; +pub const F_PG_LSN_EQ: u32 = 3233; +pub const F_PG_LSN_GE: u32 = 3234; +pub const F_PG_LSN_GT: u32 = 3235; +pub const F_PG_LSN_NE: u32 = 3236; +pub const F_PG_LSN_MI: u32 = 3237; +pub const F_PG_LSN_RECV: u32 = 3238; +pub const F_PG_LSN_SEND: u32 = 3239; +pub const F_PG_LSN_CMP: u32 = 3251; +pub const F_PG_LSN_HASH: u32 = 3252; +pub const F_BTTEXTSORTSUPPORT: u32 = 3255; +pub const F_GENERATE_SERIES_NUMERIC_NUMERIC_NUMERIC: u32 = 3259; +pub const F_GENERATE_SERIES_NUMERIC_NUMERIC: u32 = 3260; +pub const F_JSON_STRIP_NULLS: u32 = 3261; +pub const F_JSONB_STRIP_NULLS: u32 = 3262; +pub const F_JSONB_OBJECT__TEXT: u32 = 3263; +pub const F_JSONB_OBJECT__TEXT__TEXT: u32 = 3264; +pub const F_JSONB_AGG_TRANSFN: u32 = 3265; +pub const F_JSONB_AGG_FINALFN: u32 = 3266; +pub const F_JSONB_AGG: u32 = 3267; +pub const F_JSONB_OBJECT_AGG_TRANSFN: u32 = 3268; +pub const F_JSONB_OBJECT_AGG_FINALFN: u32 = 3269; +pub const F_JSONB_OBJECT_AGG: u32 = 3270; +pub const F_JSONB_BUILD_ARRAY_ANY: u32 = 3271; +pub const F_JSONB_BUILD_ARRAY_: u32 = 3272; +pub const F_JSONB_BUILD_OBJECT_ANY: u32 = 3273; +pub const F_JSONB_BUILD_OBJECT_: u32 = 3274; +pub const F_DIST_PPOLY: u32 = 3275; +pub const F_ARRAY_POSITION_ANYCOMPATIBLEARRAY_ANYCOMPATIBLE: u32 = 3277; +pub const F_ARRAY_POSITION_ANYCOMPATIBLEARRAY_ANYCOMPATIBLE_INT4: u32 = 3278; +pub const F_ARRAY_POSITIONS: u32 = 3279; +pub const F_GIST_CIRCLE_DISTANCE: u32 = 3280; +pub const F_SCALE: u32 = 3281; +pub const F_GIST_POINT_FETCH: u32 = 3282; +pub const F_NUMERIC_SORTSUPPORT: u32 = 3283; +pub const F_GIST_POLY_DISTANCE: u32 = 3288; +pub const F_DIST_CPOINT: u32 = 3290; +pub const F_DIST_POLYP: u32 = 3292; +pub const F_PG_READ_FILE_TEXT_INT8_INT8_BOOL: u32 = 3293; +pub const F_CURRENT_SETTING_TEXT_BOOL: u32 = 3294; +pub const F_PG_READ_BINARY_FILE_TEXT_INT8_INT8_BOOL: u32 = 3295; +pub const F_PG_NOTIFICATION_QUEUE_USAGE: u32 = 3296; +pub const F_PG_LS_DIR_TEXT_BOOL_BOOL: u32 = 3297; +pub const F_ROW_SECURITY_ACTIVE_OID: u32 = 3298; +pub const F_ROW_SECURITY_ACTIVE_TEXT: u32 = 3299; +pub const F_UUID_SORTSUPPORT: u32 = 3300; +pub const F_JSONB_CONCAT: u32 = 3301; +pub const F_JSONB_DELETE_JSONB_TEXT: u32 = 3302; +pub const F_JSONB_DELETE_JSONB_INT4: u32 = 3303; +pub const F_JSONB_DELETE_PATH: u32 = 3304; +pub const F_JSONB_SET: u32 = 3305; +pub const F_JSONB_PRETTY: u32 = 3306; +pub const F_PG_STAT_FILE_TEXT_BOOL: u32 = 3307; +pub const F_XIDNEQ: u32 = 3308; +pub const F_XIDNEQINT4: u32 = 3309; +pub const F_TSM_HANDLER_IN: u32 = 3311; +pub const F_TSM_HANDLER_OUT: u32 = 3312; +pub const F_BERNOULLI: u32 = 3313; +pub const F_SYSTEM: u32 = 3314; +pub const F_PG_STAT_GET_WAL_RECEIVER: u32 = 3317; +pub const F_PG_STAT_GET_PROGRESS_INFO: u32 = 3318; +pub const F_TS_FILTER: u32 = 3319; +pub const F_SETWEIGHT_TSVECTOR_CHAR__TEXT: u32 = 3320; +pub const F_TS_DELETE_TSVECTOR_TEXT: u32 = 3321; +pub const F_UNNEST_TSVECTOR: u32 = 3322; +pub const F_TS_DELETE_TSVECTOR__TEXT: u32 = 3323; +pub const F_INT4_AVG_COMBINE: u32 = 3324; +pub const F_INTERVAL_AVG_COMBINE: u32 = 3325; +pub const F_TSVECTOR_TO_ARRAY: u32 = 3326; +pub const F_ARRAY_TO_TSVECTOR: u32 = 3327; +pub const F_BPCHAR_SORTSUPPORT: u32 = 3328; +pub const F_PG_SHOW_ALL_FILE_SETTINGS: u32 = 3329; +pub const F_PG_CURRENT_WAL_FLUSH_LSN: u32 = 3330; +pub const F_BYTEA_SORTSUPPORT: u32 = 3331; +pub const F_BTTEXT_PATTERN_SORTSUPPORT: u32 = 3332; +pub const F_BTBPCHAR_PATTERN_SORTSUPPORT: u32 = 3333; +pub const F_PG_SIZE_BYTES: u32 = 3334; +pub const F_NUMERIC_SERIALIZE: u32 = 3335; +pub const F_NUMERIC_DESERIALIZE: u32 = 3336; +pub const F_NUMERIC_AVG_COMBINE: u32 = 3337; +pub const F_NUMERIC_POLY_COMBINE: u32 = 3338; +pub const F_NUMERIC_POLY_SERIALIZE: u32 = 3339; +pub const F_NUMERIC_POLY_DESERIALIZE: u32 = 3340; +pub const F_NUMERIC_COMBINE: u32 = 3341; +pub const F_FLOAT8_REGR_COMBINE: u32 = 3342; +pub const F_JSONB_DELETE_JSONB__TEXT: u32 = 3343; +pub const F_CASH_MUL_INT8: u32 = 3344; +pub const F_CASH_DIV_INT8: u32 = 3345; +pub const F_TXID_CURRENT_IF_ASSIGNED: u32 = 3348; +pub const F_PG_GET_PARTKEYDEF: u32 = 3352; +pub const F_PG_LS_LOGDIR: u32 = 3353; +pub const F_PG_LS_WALDIR: u32 = 3354; +pub const F_PG_NDISTINCT_IN: u32 = 3355; +pub const F_PG_NDISTINCT_OUT: u32 = 3356; +pub const F_PG_NDISTINCT_RECV: u32 = 3357; +pub const F_PG_NDISTINCT_SEND: u32 = 3358; +pub const F_MACADDR_SORTSUPPORT: u32 = 3359; +pub const F_TXID_STATUS: u32 = 3360; +pub const F_PG_SAFE_SNAPSHOT_BLOCKING_PIDS: u32 = 3376; +pub const F_PG_ISOLATION_TEST_SESSION_IS_BLOCKED: u32 = 3378; +pub const F_PG_IDENTIFY_OBJECT_AS_ADDRESS: u32 = 3382; +pub const F_BRIN_MINMAX_OPCINFO: u32 = 3383; +pub const F_BRIN_MINMAX_ADD_VALUE: u32 = 3384; +pub const F_BRIN_MINMAX_CONSISTENT: u32 = 3385; +pub const F_BRIN_MINMAX_UNION: u32 = 3386; +pub const F_INT8_AVG_ACCUM_INV: u32 = 3387; +pub const F_NUMERIC_POLY_SUM: u32 = 3388; +pub const F_NUMERIC_POLY_AVG: u32 = 3389; +pub const F_NUMERIC_POLY_VAR_POP: u32 = 3390; +pub const F_NUMERIC_POLY_VAR_SAMP: u32 = 3391; +pub const F_NUMERIC_POLY_STDDEV_POP: u32 = 3392; +pub const F_NUMERIC_POLY_STDDEV_SAMP: u32 = 3393; +pub const F_REGEXP_MATCH_TEXT_TEXT: u32 = 3396; +pub const F_REGEXP_MATCH_TEXT_TEXT_TEXT: u32 = 3397; +pub const F_INT8_MUL_CASH: u32 = 3399; +pub const F_PG_CONFIG: u32 = 3400; +pub const F_PG_HBA_FILE_RULES: u32 = 3401; +pub const F_PG_STATISTICS_OBJ_IS_VISIBLE: u32 = 3403; +pub const F_PG_DEPENDENCIES_IN: u32 = 3404; +pub const F_PG_DEPENDENCIES_OUT: u32 = 3405; +pub const F_PG_DEPENDENCIES_RECV: u32 = 3406; +pub const F_PG_DEPENDENCIES_SEND: u32 = 3407; +pub const F_PG_GET_PARTITION_CONSTRAINTDEF: u32 = 3408; +pub const F_TIME_HASH_EXTENDED: u32 = 3409; +pub const F_TIMETZ_HASH_EXTENDED: u32 = 3410; +pub const F_TIMESTAMP_HASH_EXTENDED: u32 = 3411; +pub const F_UUID_HASH_EXTENDED: u32 = 3412; +pub const F_PG_LSN_HASH_EXTENDED: u32 = 3413; +pub const F_HASHENUMEXTENDED: u32 = 3414; +pub const F_PG_GET_STATISTICSOBJDEF: u32 = 3415; +pub const F_JSONB_HASH_EXTENDED: u32 = 3416; +pub const F_HASH_RANGE_EXTENDED: u32 = 3417; +pub const F_INTERVAL_HASH_EXTENDED: u32 = 3418; +pub const F_SHA224: u32 = 3419; +pub const F_SHA256: u32 = 3420; +pub const F_SHA384: u32 = 3421; +pub const F_SHA512: u32 = 3422; +pub const F_PG_PARTITION_TREE: u32 = 3423; +pub const F_PG_PARTITION_ROOT: u32 = 3424; +pub const F_PG_PARTITION_ANCESTORS: u32 = 3425; +pub const F_PG_STAT_GET_DB_CHECKSUM_FAILURES: u32 = 3426; +pub const F_PG_MCV_LIST_ITEMS: u32 = 3427; +pub const F_PG_STAT_GET_DB_CHECKSUM_LAST_FAILURE: u32 = 3428; +pub const F_GEN_RANDOM_UUID: u32 = 3432; +pub const F_GTSVECTOR_OPTIONS: u32 = 3434; +pub const F_GIST_POINT_SORTSUPPORT: u32 = 3435; +pub const F_PG_PROMOTE: u32 = 3436; +pub const F_PREFIXSEL: u32 = 3437; +pub const F_PREFIXJOINSEL: u32 = 3438; +pub const F_PG_CONTROL_SYSTEM: u32 = 3441; +pub const F_PG_CONTROL_CHECKPOINT: u32 = 3442; +pub const F_PG_CONTROL_RECOVERY: u32 = 3443; +pub const F_PG_CONTROL_INIT: u32 = 3444; +pub const F_PG_IMPORT_SYSTEM_COLLATIONS: u32 = 3445; +pub const F_MACADDR8_RECV: u32 = 3446; +pub const F_MACADDR8_SEND: u32 = 3447; +pub const F_PG_COLLATION_ACTUAL_VERSION: u32 = 3448; +pub const F_NUMERIC_JSONB: u32 = 3449; +pub const F_INT2_JSONB: u32 = 3450; +pub const F_INT4_JSONB: u32 = 3451; +pub const F_INT8_JSONB: u32 = 3452; +pub const F_FLOAT4_JSONB: u32 = 3453; +pub const F_PG_FILENODE_RELATION: u32 = 3454; +pub const F_LO_FROM_BYTEA: u32 = 3457; +pub const F_LO_GET_OID: u32 = 3458; +pub const F_LO_GET_OID_INT8_INT4: u32 = 3459; +pub const F_LO_PUT: u32 = 3460; +pub const F_MAKE_TIMESTAMP: u32 = 3461; +pub const F_MAKE_TIMESTAMPTZ_INT4_INT4_INT4_INT4_INT4_FLOAT8: u32 = 3462; +pub const F_MAKE_TIMESTAMPTZ_INT4_INT4_INT4_INT4_INT4_FLOAT8_TEXT: u32 = 3463; +pub const F_MAKE_INTERVAL: u32 = 3464; +pub const F_JSONB_ARRAY_ELEMENTS_TEXT: u32 = 3465; +pub const F_SPG_RANGE_QUAD_CONFIG: u32 = 3469; +pub const F_SPG_RANGE_QUAD_CHOOSE: u32 = 3470; +pub const F_SPG_RANGE_QUAD_PICKSPLIT: u32 = 3471; +pub const F_SPG_RANGE_QUAD_INNER_CONSISTENT: u32 = 3472; +pub const F_SPG_RANGE_QUAD_LEAF_CONSISTENT: u32 = 3473; +pub const F_JSONB_POPULATE_RECORDSET: u32 = 3475; +pub const F_TO_REGOPERATOR: u32 = 3476; +pub const F_JSONB_OBJECT_FIELD: u32 = 3478; +pub const F_TO_REGPROCEDURE: u32 = 3479; +pub const F_GIN_COMPARE_JSONB: u32 = 3480; +pub const F_GIN_EXTRACT_JSONB: u32 = 3482; +pub const F_GIN_EXTRACT_JSONB_QUERY: u32 = 3483; +pub const F_GIN_CONSISTENT_JSONB: u32 = 3484; +pub const F_GIN_EXTRACT_JSONB_PATH: u32 = 3485; +pub const F_GIN_EXTRACT_JSONB_QUERY_PATH: u32 = 3486; +pub const F_GIN_CONSISTENT_JSONB_PATH: u32 = 3487; +pub const F_GIN_TRICONSISTENT_JSONB: u32 = 3488; +pub const F_GIN_TRICONSISTENT_JSONB_PATH: u32 = 3489; +pub const F_JSONB_TO_RECORD: u32 = 3490; +pub const F_JSONB_TO_RECORDSET: u32 = 3491; +pub const F_TO_REGOPER: u32 = 3492; +pub const F_TO_REGTYPE: u32 = 3493; +pub const F_TO_REGPROC: u32 = 3494; +pub const F_TO_REGCLASS: u32 = 3495; +pub const F_BOOL_ACCUM: u32 = 3496; +pub const F_BOOL_ACCUM_INV: u32 = 3497; +pub const F_BOOL_ALLTRUE: u32 = 3498; +pub const F_BOOL_ANYTRUE: u32 = 3499; +pub const F_ANYENUM_IN: u32 = 3504; +pub const F_ANYENUM_OUT: u32 = 3505; +pub const F_ENUM_IN: u32 = 3506; +pub const F_ENUM_OUT: u32 = 3507; +pub const F_ENUM_EQ: u32 = 3508; +pub const F_ENUM_NE: u32 = 3509; +pub const F_ENUM_LT: u32 = 3510; +pub const F_ENUM_GT: u32 = 3511; +pub const F_ENUM_LE: u32 = 3512; +pub const F_ENUM_GE: u32 = 3513; +pub const F_ENUM_CMP: u32 = 3514; +pub const F_HASHENUM: u32 = 3515; +pub const F_ENUM_SMALLER: u32 = 3524; +pub const F_ENUM_LARGER: u32 = 3525; +pub const F_MAX_ANYENUM: u32 = 3526; +pub const F_MIN_ANYENUM: u32 = 3527; +pub const F_ENUM_FIRST: u32 = 3528; +pub const F_ENUM_LAST: u32 = 3529; +pub const F_ENUM_RANGE_ANYENUM_ANYENUM: u32 = 3530; +pub const F_ENUM_RANGE_ANYENUM: u32 = 3531; +pub const F_ENUM_RECV: u32 = 3532; +pub const F_ENUM_SEND: u32 = 3533; +pub const F_STRING_AGG_TRANSFN: u32 = 3535; +pub const F_STRING_AGG_FINALFN: u32 = 3536; +pub const F_PG_DESCRIBE_OBJECT: u32 = 3537; +pub const F_STRING_AGG_TEXT_TEXT: u32 = 3538; +pub const F_FORMAT_TEXT_ANY: u32 = 3539; +pub const F_FORMAT_TEXT: u32 = 3540; +pub const F_BYTEA_STRING_AGG_TRANSFN: u32 = 3543; +pub const F_BYTEA_STRING_AGG_FINALFN: u32 = 3544; +pub const F_STRING_AGG_BYTEA_BYTEA: u32 = 3545; +pub const F_INT8DEC: u32 = 3546; +pub const F_INT8DEC_ANY: u32 = 3547; +pub const F_NUMERIC_ACCUM_INV: u32 = 3548; +pub const F_INTERVAL_AVG_ACCUM_INV: u32 = 3549; +pub const F_NETWORK_OVERLAP: u32 = 3551; +pub const F_INET_GIST_CONSISTENT: u32 = 3553; +pub const F_INET_GIST_UNION: u32 = 3554; +pub const F_INET_GIST_COMPRESS: u32 = 3555; +pub const F_BOOL_JSONB: u32 = 3556; +pub const F_INET_GIST_PENALTY: u32 = 3557; +pub const F_INET_GIST_PICKSPLIT: u32 = 3558; +pub const F_INET_GIST_SAME: u32 = 3559; +pub const F_NETWORKSEL: u32 = 3560; +pub const F_NETWORKJOINSEL: u32 = 3561; +pub const F_NETWORK_LARGER: u32 = 3562; +pub const F_NETWORK_SMALLER: u32 = 3563; +pub const F_MAX_INET: u32 = 3564; +pub const F_MIN_INET: u32 = 3565; +pub const F_PG_EVENT_TRIGGER_DROPPED_OBJECTS: u32 = 3566; +pub const F_INT2_ACCUM_INV: u32 = 3567; +pub const F_INT4_ACCUM_INV: u32 = 3568; +pub const F_INT8_ACCUM_INV: u32 = 3569; +pub const F_INT2_AVG_ACCUM_INV: u32 = 3570; +pub const F_INT4_AVG_ACCUM_INV: u32 = 3571; +pub const F_INT2INT4_SUM: u32 = 3572; +pub const F_INET_GIST_FETCH: u32 = 3573; +pub const F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_TEXT_BOOL: u32 = 3577; +pub const F_PG_LOGICAL_EMIT_MESSAGE_BOOL_TEXT_BYTEA_BOOL: u32 = 3578; +pub const F_JSONB_INSERT: u32 = 3579; +pub const F_PG_XACT_COMMIT_TIMESTAMP: u32 = 3581; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_TYPE_OID: u32 = 3582; +pub const F_PG_LAST_COMMITTED_XACT: u32 = 3583; +pub const F_BINARY_UPGRADE_SET_NEXT_ARRAY_PG_TYPE_OID: u32 = 3584; +pub const F_BINARY_UPGRADE_SET_NEXT_HEAP_PG_CLASS_OID: u32 = 3586; +pub const F_BINARY_UPGRADE_SET_NEXT_INDEX_PG_CLASS_OID: u32 = 3587; +pub const F_BINARY_UPGRADE_SET_NEXT_TOAST_PG_CLASS_OID: u32 = 3588; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_ENUM_OID: u32 = 3589; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_AUTHID_OID: u32 = 3590; +pub const F_BINARY_UPGRADE_CREATE_EMPTY_EXTENSION: u32 = 3591; +pub const F_EVENT_TRIGGER_IN: u32 = 3594; +pub const F_EVENT_TRIGGER_OUT: u32 = 3595; +pub const F_TSVECTORIN: u32 = 3610; +pub const F_TSVECTOROUT: u32 = 3611; +pub const F_TSQUERYIN: u32 = 3612; +pub const F_TSQUERYOUT: u32 = 3613; +pub const F_TSVECTOR_LT: u32 = 3616; +pub const F_TSVECTOR_LE: u32 = 3617; +pub const F_TSVECTOR_EQ: u32 = 3618; +pub const F_TSVECTOR_NE: u32 = 3619; +pub const F_TSVECTOR_GE: u32 = 3620; +pub const F_TSVECTOR_GT: u32 = 3621; +pub const F_TSVECTOR_CMP: u32 = 3622; +pub const F_STRIP: u32 = 3623; +pub const F_SETWEIGHT_TSVECTOR_CHAR: u32 = 3624; +pub const F_TSVECTOR_CONCAT: u32 = 3625; +pub const F_TS_MATCH_VQ: u32 = 3634; +pub const F_TS_MATCH_QV: u32 = 3635; +pub const F_TSVECTORSEND: u32 = 3638; +pub const F_TSVECTORRECV: u32 = 3639; +pub const F_TSQUERYSEND: u32 = 3640; +pub const F_TSQUERYRECV: u32 = 3641; +pub const F_GTSVECTORIN: u32 = 3646; +pub const F_GTSVECTOROUT: u32 = 3647; +pub const F_GTSVECTOR_COMPRESS: u32 = 3648; +pub const F_GTSVECTOR_DECOMPRESS: u32 = 3649; +pub const F_GTSVECTOR_PICKSPLIT: u32 = 3650; +pub const F_GTSVECTOR_UNION: u32 = 3651; +pub const F_GTSVECTOR_SAME: u32 = 3652; +pub const F_GTSVECTOR_PENALTY: u32 = 3653; +pub const F_GTSVECTOR_CONSISTENT_INTERNAL_TSVECTOR_INT2_OID_INTERNAL: u32 = 3654; +pub const F_GIN_EXTRACT_TSVECTOR_TSVECTOR_INTERNAL_INTERNAL: u32 = 3656; +pub const F_GIN_EXTRACT_TSQUERY_TSVECTOR_INTERNAL_INT2_INTERNAL_INTERNAL_INTERNAL_INTERNAL: u32 = + 3657; +pub const F_GIN_TSQUERY_CONSISTENT_INTERNAL_INT2_TSVECTOR_INT4_INTERNAL_INTERNAL_INTERNAL_INTERNAL : u32 = 3658 ; +pub const F_TSQUERY_LT: u32 = 3662; +pub const F_TSQUERY_LE: u32 = 3663; +pub const F_TSQUERY_EQ: u32 = 3664; +pub const F_TSQUERY_NE: u32 = 3665; +pub const F_TSQUERY_GE: u32 = 3666; +pub const F_TSQUERY_GT: u32 = 3667; +pub const F_TSQUERY_CMP: u32 = 3668; +pub const F_TSQUERY_AND: u32 = 3669; +pub const F_TSQUERY_OR: u32 = 3670; +pub const F_TSQUERY_NOT: u32 = 3671; +pub const F_NUMNODE: u32 = 3672; +pub const F_QUERYTREE: u32 = 3673; +pub const F_TS_REWRITE_TSQUERY_TSQUERY_TSQUERY: u32 = 3684; +pub const F_TS_REWRITE_TSQUERY_TEXT: u32 = 3685; +pub const F_TSMATCHSEL: u32 = 3686; +pub const F_TSMATCHJOINSEL: u32 = 3687; +pub const F_TS_TYPANALYZE: u32 = 3688; +pub const F_TS_STAT_TEXT: u32 = 3689; +pub const F_TS_STAT_TEXT_TEXT: u32 = 3690; +pub const F_TSQ_MCONTAINS: u32 = 3691; +pub const F_TSQ_MCONTAINED: u32 = 3692; +pub const F_GTSQUERY_COMPRESS: u32 = 3695; +pub const F_STARTS_WITH: u32 = 3696; +pub const F_GTSQUERY_PICKSPLIT: u32 = 3697; +pub const F_GTSQUERY_UNION: u32 = 3698; +pub const F_GTSQUERY_SAME: u32 = 3699; +pub const F_GTSQUERY_PENALTY: u32 = 3700; +pub const F_GTSQUERY_CONSISTENT_INTERNAL_TSQUERY_INT2_OID_INTERNAL: u32 = 3701; +pub const F_TS_RANK__FLOAT4_TSVECTOR_TSQUERY_INT4: u32 = 3703; +pub const F_TS_RANK__FLOAT4_TSVECTOR_TSQUERY: u32 = 3704; +pub const F_TS_RANK_TSVECTOR_TSQUERY_INT4: u32 = 3705; +pub const F_TS_RANK_TSVECTOR_TSQUERY: u32 = 3706; +pub const F_TS_RANK_CD__FLOAT4_TSVECTOR_TSQUERY_INT4: u32 = 3707; +pub const F_TS_RANK_CD__FLOAT4_TSVECTOR_TSQUERY: u32 = 3708; +pub const F_TS_RANK_CD_TSVECTOR_TSQUERY_INT4: u32 = 3709; +pub const F_TS_RANK_CD_TSVECTOR_TSQUERY: u32 = 3710; +pub const F_LENGTH_TSVECTOR: u32 = 3711; +pub const F_TS_TOKEN_TYPE_OID: u32 = 3713; +pub const F_TS_TOKEN_TYPE_TEXT: u32 = 3714; +pub const F_TS_PARSE_OID_TEXT: u32 = 3715; +pub const F_TS_PARSE_TEXT_TEXT: u32 = 3716; +pub const F_PRSD_START: u32 = 3717; +pub const F_PRSD_NEXTTOKEN: u32 = 3718; +pub const F_PRSD_END: u32 = 3719; +pub const F_PRSD_HEADLINE: u32 = 3720; +pub const F_PRSD_LEXTYPE: u32 = 3721; +pub const F_TS_LEXIZE: u32 = 3723; +pub const F_GIN_CMP_TSLEXEME: u32 = 3724; +pub const F_DSIMPLE_INIT: u32 = 3725; +pub const F_DSIMPLE_LEXIZE: u32 = 3726; +pub const F_DSYNONYM_INIT: u32 = 3728; +pub const F_DSYNONYM_LEXIZE: u32 = 3729; +pub const F_DISPELL_INIT: u32 = 3731; +pub const F_DISPELL_LEXIZE: u32 = 3732; +pub const F_REGCONFIGIN: u32 = 3736; +pub const F_REGCONFIGOUT: u32 = 3737; +pub const F_REGCONFIGRECV: u32 = 3738; +pub const F_REGCONFIGSEND: u32 = 3739; +pub const F_THESAURUS_INIT: u32 = 3740; +pub const F_THESAURUS_LEXIZE: u32 = 3741; +pub const F_TS_HEADLINE_REGCONFIG_TEXT_TSQUERY_TEXT: u32 = 3743; +pub const F_TS_HEADLINE_REGCONFIG_TEXT_TSQUERY: u32 = 3744; +pub const F_TO_TSVECTOR_REGCONFIG_TEXT: u32 = 3745; +pub const F_TO_TSQUERY_REGCONFIG_TEXT: u32 = 3746; +pub const F_PLAINTO_TSQUERY_REGCONFIG_TEXT: u32 = 3747; +pub const F_TO_TSVECTOR_TEXT: u32 = 3749; +pub const F_TO_TSQUERY_TEXT: u32 = 3750; +pub const F_PLAINTO_TSQUERY_TEXT: u32 = 3751; +pub const F_TSVECTOR_UPDATE_TRIGGER: u32 = 3752; +pub const F_TSVECTOR_UPDATE_TRIGGER_COLUMN: u32 = 3753; +pub const F_TS_HEADLINE_TEXT_TSQUERY_TEXT: u32 = 3754; +pub const F_TS_HEADLINE_TEXT_TSQUERY: u32 = 3755; +pub const F_PG_TS_PARSER_IS_VISIBLE: u32 = 3756; +pub const F_PG_TS_DICT_IS_VISIBLE: u32 = 3757; +pub const F_PG_TS_CONFIG_IS_VISIBLE: u32 = 3758; +pub const F_GET_CURRENT_TS_CONFIG: u32 = 3759; +pub const F_TS_MATCH_TT: u32 = 3760; +pub const F_TS_MATCH_TQ: u32 = 3761; +pub const F_PG_TS_TEMPLATE_IS_VISIBLE: u32 = 3768; +pub const F_REGDICTIONARYIN: u32 = 3771; +pub const F_REGDICTIONARYOUT: u32 = 3772; +pub const F_REGDICTIONARYRECV: u32 = 3773; +pub const F_REGDICTIONARYSEND: u32 = 3774; +pub const F_PG_STAT_RESET_SHARED: u32 = 3775; +pub const F_PG_STAT_RESET_SINGLE_TABLE_COUNTERS: u32 = 3776; +pub const F_PG_STAT_RESET_SINGLE_FUNCTION_COUNTERS: u32 = 3777; +pub const F_PG_TABLESPACE_LOCATION: u32 = 3778; +pub const F_PG_CREATE_PHYSICAL_REPLICATION_SLOT: u32 = 3779; +pub const F_PG_DROP_REPLICATION_SLOT: u32 = 3780; +pub const F_PG_GET_REPLICATION_SLOTS: u32 = 3781; +pub const F_PG_LOGICAL_SLOT_GET_CHANGES: u32 = 3782; +pub const F_PG_LOGICAL_SLOT_GET_BINARY_CHANGES: u32 = 3783; +pub const F_PG_LOGICAL_SLOT_PEEK_CHANGES: u32 = 3784; +pub const F_PG_LOGICAL_SLOT_PEEK_BINARY_CHANGES: u32 = 3785; +pub const F_PG_CREATE_LOGICAL_REPLICATION_SLOT: u32 = 3786; +pub const F_TO_JSONB: u32 = 3787; +pub const F_PG_STAT_GET_SNAPSHOT_TIMESTAMP: u32 = 3788; +pub const F_GIN_CLEAN_PENDING_LIST: u32 = 3789; +pub const F_GTSVECTOR_CONSISTENT_INTERNAL_GTSVECTOR_INT4_OID_INTERNAL: u32 = 3790; +pub const F_GIN_EXTRACT_TSQUERY_TSQUERY_INTERNAL_INT2_INTERNAL_INTERNAL_INTERNAL_INTERNAL: u32 = + 3791; +pub const F_GIN_TSQUERY_CONSISTENT_INTERNAL_INT2_TSQUERY_INT4_INTERNAL_INTERNAL_INTERNAL_INTERNAL : u32 = 3792 ; +pub const F_GTSQUERY_CONSISTENT_INTERNAL_INTERNAL_INT4_OID_INTERNAL: u32 = 3793; +pub const F_INET_SPG_CONFIG: u32 = 3795; +pub const F_INET_SPG_CHOOSE: u32 = 3796; +pub const F_INET_SPG_PICKSPLIT: u32 = 3797; +pub const F_INET_SPG_INNER_CONSISTENT: u32 = 3798; +pub const F_INET_SPG_LEAF_CONSISTENT: u32 = 3799; +pub const F_PG_CURRENT_LOGFILE_: u32 = 3800; +pub const F_PG_CURRENT_LOGFILE_TEXT: u32 = 3801; +pub const F_JSONB_SEND: u32 = 3803; +pub const F_JSONB_OUT: u32 = 3804; +pub const F_JSONB_RECV: u32 = 3805; +pub const F_JSONB_IN: u32 = 3806; +pub const F_PG_GET_FUNCTION_ARG_DEFAULT: u32 = 3808; +pub const F_PG_EXPORT_SNAPSHOT: u32 = 3809; +pub const F_PG_IS_IN_RECOVERY: u32 = 3810; +pub const F_MONEY_INT4: u32 = 3811; +pub const F_MONEY_INT8: u32 = 3812; +pub const F_XMLTEXT: u32 = 3813; +pub const F_PG_COLLATION_IS_VISIBLE: u32 = 3815; +pub const F_ARRAY_TYPANALYZE: u32 = 3816; +pub const F_ARRAYCONTSEL: u32 = 3817; +pub const F_ARRAYCONTJOINSEL: u32 = 3818; +pub const F_PG_GET_MULTIXACT_MEMBERS: u32 = 3819; +pub const F_PG_LAST_WAL_RECEIVE_LSN: u32 = 3820; +pub const F_PG_LAST_WAL_REPLAY_LSN: u32 = 3821; +pub const F_CASH_DIV_CASH: u32 = 3822; +pub const F_NUMERIC_MONEY: u32 = 3823; +pub const F_MONEY_NUMERIC: u32 = 3824; +pub const F_PG_READ_FILE_TEXT: u32 = 3826; +pub const F_PG_READ_BINARY_FILE_TEXT_INT8_INT8: u32 = 3827; +pub const F_PG_READ_BINARY_FILE_TEXT: u32 = 3828; +pub const F_PG_OPFAMILY_IS_VISIBLE: u32 = 3829; +pub const F_PG_LAST_XACT_REPLAY_TIMESTAMP: u32 = 3830; +pub const F_ANYRANGE_IN: u32 = 3832; +pub const F_ANYRANGE_OUT: u32 = 3833; +pub const F_RANGE_IN: u32 = 3834; +pub const F_RANGE_OUT: u32 = 3835; +pub const F_RANGE_RECV: u32 = 3836; +pub const F_RANGE_SEND: u32 = 3837; +pub const F_PG_IDENTIFY_OBJECT: u32 = 3839; +pub const F_INT4RANGE_INT4_INT4: u32 = 3840; +pub const F_INT4RANGE_INT4_INT4_TEXT: u32 = 3841; +pub const F_PG_RELATION_IS_UPDATABLE: u32 = 3842; +pub const F_PG_COLUMN_IS_UPDATABLE: u32 = 3843; +pub const F_NUMRANGE_NUMERIC_NUMERIC: u32 = 3844; +pub const F_NUMRANGE_NUMERIC_NUMERIC_TEXT: u32 = 3845; +pub const F_MAKE_DATE: u32 = 3846; +pub const F_MAKE_TIME: u32 = 3847; +pub const F_LOWER_ANYRANGE: u32 = 3848; +pub const F_UPPER_ANYRANGE: u32 = 3849; +pub const F_ISEMPTY_ANYRANGE: u32 = 3850; +pub const F_LOWER_INC_ANYRANGE: u32 = 3851; +pub const F_UPPER_INC_ANYRANGE: u32 = 3852; +pub const F_LOWER_INF_ANYRANGE: u32 = 3853; +pub const F_UPPER_INF_ANYRANGE: u32 = 3854; +pub const F_RANGE_EQ: u32 = 3855; +pub const F_RANGE_NE: u32 = 3856; +pub const F_RANGE_OVERLAPS: u32 = 3857; +pub const F_RANGE_CONTAINS_ELEM: u32 = 3858; +pub const F_RANGE_CONTAINS: u32 = 3859; +pub const F_ELEM_CONTAINED_BY_RANGE: u32 = 3860; +pub const F_RANGE_CONTAINED_BY: u32 = 3861; +pub const F_RANGE_ADJACENT: u32 = 3862; +pub const F_RANGE_BEFORE: u32 = 3863; +pub const F_RANGE_AFTER: u32 = 3864; +pub const F_RANGE_OVERLEFT: u32 = 3865; +pub const F_RANGE_OVERRIGHT: u32 = 3866; +pub const F_RANGE_UNION: u32 = 3867; +pub const F_RANGE_INTERSECT: u32 = 3868; +pub const F_RANGE_MINUS: u32 = 3869; +pub const F_RANGE_CMP: u32 = 3870; +pub const F_RANGE_LT: u32 = 3871; +pub const F_RANGE_LE: u32 = 3872; +pub const F_RANGE_GE: u32 = 3873; +pub const F_RANGE_GT: u32 = 3874; +pub const F_RANGE_GIST_CONSISTENT: u32 = 3875; +pub const F_RANGE_GIST_UNION: u32 = 3876; +pub const F_PG_REPLICATION_SLOT_ADVANCE: u32 = 3878; +pub const F_RANGE_GIST_PENALTY: u32 = 3879; +pub const F_RANGE_GIST_PICKSPLIT: u32 = 3880; +pub const F_RANGE_GIST_SAME: u32 = 3881; +pub const F_HASH_RANGE: u32 = 3902; +pub const F_INT4RANGE_CANONICAL: u32 = 3914; +pub const F_DATERANGE_CANONICAL: u32 = 3915; +pub const F_RANGE_TYPANALYZE: u32 = 3916; +pub const F_TIMESTAMP_SUPPORT: u32 = 3917; +pub const F_INTERVAL_SUPPORT: u32 = 3918; +pub const F_GINARRAYTRICONSISTENT: u32 = 3920; +pub const F_GIN_TSQUERY_TRICONSISTENT: u32 = 3921; +pub const F_INT4RANGE_SUBDIFF: u32 = 3922; +pub const F_INT8RANGE_SUBDIFF: u32 = 3923; +pub const F_NUMRANGE_SUBDIFF: u32 = 3924; +pub const F_DATERANGE_SUBDIFF: u32 = 3925; +pub const F_INT8RANGE_CANONICAL: u32 = 3928; +pub const F_TSRANGE_SUBDIFF: u32 = 3929; +pub const F_TSTZRANGE_SUBDIFF: u32 = 3930; +pub const F_JSONB_OBJECT_KEYS: u32 = 3931; +pub const F_JSONB_EACH_TEXT: u32 = 3932; +pub const F_TSRANGE_TIMESTAMP_TIMESTAMP: u32 = 3933; +pub const F_TSRANGE_TIMESTAMP_TIMESTAMP_TEXT: u32 = 3934; +pub const F_PG_SLEEP_FOR: u32 = 3935; +pub const F_PG_SLEEP_UNTIL: u32 = 3936; +pub const F_TSTZRANGE_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 3937; +pub const F_TSTZRANGE_TIMESTAMPTZ_TIMESTAMPTZ_TEXT: u32 = 3938; +pub const F_MXID_AGE: u32 = 3939; +pub const F_JSONB_EXTRACT_PATH_TEXT: u32 = 3940; +pub const F_DATERANGE_DATE_DATE: u32 = 3941; +pub const F_DATERANGE_DATE_DATE_TEXT: u32 = 3942; +pub const F_ACLDEFAULT: u32 = 3943; +pub const F_TIME_SUPPORT: u32 = 3944; +pub const F_INT8RANGE_INT8_INT8: u32 = 3945; +pub const F_INT8RANGE_INT8_INT8_TEXT: u32 = 3946; +pub const F_JSON_OBJECT_FIELD: u32 = 3947; +pub const F_JSON_OBJECT_FIELD_TEXT: u32 = 3948; +pub const F_JSON_ARRAY_ELEMENT: u32 = 3949; +pub const F_JSON_ARRAY_ELEMENT_TEXT: u32 = 3950; +pub const F_JSON_EXTRACT_PATH: u32 = 3951; +pub const F_BRIN_SUMMARIZE_NEW_VALUES: u32 = 3952; +pub const F_JSON_EXTRACT_PATH_TEXT: u32 = 3953; +pub const F_PG_GET_OBJECT_ADDRESS: u32 = 3954; +pub const F_JSON_ARRAY_ELEMENTS: u32 = 3955; +pub const F_JSON_ARRAY_LENGTH: u32 = 3956; +pub const F_JSON_OBJECT_KEYS: u32 = 3957; +pub const F_JSON_EACH: u32 = 3958; +pub const F_JSON_EACH_TEXT: u32 = 3959; +pub const F_JSON_POPULATE_RECORD: u32 = 3960; +pub const F_JSON_POPULATE_RECORDSET: u32 = 3961; +pub const F_JSON_TYPEOF: u32 = 3968; +pub const F_JSON_ARRAY_ELEMENTS_TEXT: u32 = 3969; +pub const F_ORDERED_SET_TRANSITION: u32 = 3970; +pub const F_ORDERED_SET_TRANSITION_MULTI: u32 = 3971; +pub const F_PERCENTILE_DISC_FLOAT8_ANYELEMENT: u32 = 3972; +pub const F_PERCENTILE_DISC_FINAL: u32 = 3973; +pub const F_PERCENTILE_CONT_FLOAT8_FLOAT8: u32 = 3974; +pub const F_PERCENTILE_CONT_FLOAT8_FINAL: u32 = 3975; +pub const F_PERCENTILE_CONT_FLOAT8_INTERVAL: u32 = 3976; +pub const F_PERCENTILE_CONT_INTERVAL_FINAL: u32 = 3977; +pub const F_PERCENTILE_DISC__FLOAT8_ANYELEMENT: u32 = 3978; +pub const F_PERCENTILE_DISC_MULTI_FINAL: u32 = 3979; +pub const F_PERCENTILE_CONT__FLOAT8_FLOAT8: u32 = 3980; +pub const F_PERCENTILE_CONT_FLOAT8_MULTI_FINAL: u32 = 3981; +pub const F_PERCENTILE_CONT__FLOAT8_INTERVAL: u32 = 3982; +pub const F_PERCENTILE_CONT_INTERVAL_MULTI_FINAL: u32 = 3983; +pub const F_MODE: u32 = 3984; +pub const F_MODE_FINAL: u32 = 3985; +pub const F_RANK_ANY: u32 = 3986; +pub const F_RANK_FINAL: u32 = 3987; +pub const F_PERCENT_RANK_ANY: u32 = 3988; +pub const F_PERCENT_RANK_FINAL: u32 = 3989; +pub const F_CUME_DIST_ANY: u32 = 3990; +pub const F_CUME_DIST_FINAL: u32 = 3991; +pub const F_DENSE_RANK_ANY: u32 = 3992; +pub const F_DENSE_RANK_FINAL: u32 = 3993; +pub const F_GENERATE_SERIES_INT4_SUPPORT: u32 = 3994; +pub const F_GENERATE_SERIES_INT8_SUPPORT: u32 = 3995; +pub const F_ARRAY_UNNEST_SUPPORT: u32 = 3996; +pub const F_GIST_BOX_DISTANCE: u32 = 3998; +pub const F_BRIN_SUMMARIZE_RANGE: u32 = 3999; +pub const F_JSONPATH_IN: u32 = 4001; +pub const F_JSONPATH_RECV: u32 = 4002; +pub const F_JSONPATH_OUT: u32 = 4003; +pub const F_JSONPATH_SEND: u32 = 4004; +pub const F_JSONB_PATH_EXISTS: u32 = 4005; +pub const F_JSONB_PATH_QUERY: u32 = 4006; +pub const F_JSONB_PATH_QUERY_ARRAY: u32 = 4007; +pub const F_JSONB_PATH_QUERY_FIRST: u32 = 4008; +pub const F_JSONB_PATH_MATCH: u32 = 4009; +pub const F_JSONB_PATH_EXISTS_OPR: u32 = 4010; +pub const F_JSONB_PATH_MATCH_OPR: u32 = 4011; +pub const F_BRIN_DESUMMARIZE_RANGE: u32 = 4014; +pub const F_SPG_QUAD_CONFIG: u32 = 4018; +pub const F_SPG_QUAD_CHOOSE: u32 = 4019; +pub const F_SPG_QUAD_PICKSPLIT: u32 = 4020; +pub const F_SPG_QUAD_INNER_CONSISTENT: u32 = 4021; +pub const F_SPG_QUAD_LEAF_CONSISTENT: u32 = 4022; +pub const F_SPG_KD_CONFIG: u32 = 4023; +pub const F_SPG_KD_CHOOSE: u32 = 4024; +pub const F_SPG_KD_PICKSPLIT: u32 = 4025; +pub const F_SPG_KD_INNER_CONSISTENT: u32 = 4026; +pub const F_SPG_TEXT_CONFIG: u32 = 4027; +pub const F_SPG_TEXT_CHOOSE: u32 = 4028; +pub const F_SPG_TEXT_PICKSPLIT: u32 = 4029; +pub const F_SPG_TEXT_INNER_CONSISTENT: u32 = 4030; +pub const F_SPG_TEXT_LEAF_CONSISTENT: u32 = 4031; +pub const F_PG_SEQUENCE_LAST_VALUE: u32 = 4032; +pub const F_JSONB_NE: u32 = 4038; +pub const F_JSONB_LT: u32 = 4039; +pub const F_JSONB_GT: u32 = 4040; +pub const F_JSONB_LE: u32 = 4041; +pub const F_JSONB_GE: u32 = 4042; +pub const F_JSONB_EQ: u32 = 4043; +pub const F_JSONB_CMP: u32 = 4044; +pub const F_JSONB_HASH: u32 = 4045; +pub const F_JSONB_CONTAINS: u32 = 4046; +pub const F_JSONB_EXISTS: u32 = 4047; +pub const F_JSONB_EXISTS_ANY: u32 = 4048; +pub const F_JSONB_EXISTS_ALL: u32 = 4049; +pub const F_JSONB_CONTAINED: u32 = 4050; +pub const F_ARRAY_AGG_ARRAY_TRANSFN: u32 = 4051; +pub const F_ARRAY_AGG_ARRAY_FINALFN: u32 = 4052; +pub const F_ARRAY_AGG_ANYARRAY: u32 = 4053; +pub const F_RANGE_MERGE_ANYRANGE_ANYRANGE: u32 = 4057; +pub const F_INET_MERGE: u32 = 4063; +pub const F_BOUND_BOX: u32 = 4067; +pub const F_INET_SAME_FAMILY: u32 = 4071; +pub const F_BINARY_UPGRADE_SET_RECORD_INIT_PRIVS: u32 = 4083; +pub const F_REGNAMESPACEIN: u32 = 4084; +pub const F_REGNAMESPACEOUT: u32 = 4085; +pub const F_TO_REGNAMESPACE: u32 = 4086; +pub const F_REGNAMESPACERECV: u32 = 4087; +pub const F_REGNAMESPACESEND: u32 = 4088; +pub const F_BOX_POINT: u32 = 4091; +pub const F_REGROLEOUT: u32 = 4092; +pub const F_TO_REGROLE: u32 = 4093; +pub const F_REGROLERECV: u32 = 4094; +pub const F_REGROLESEND: u32 = 4095; +pub const F_REGROLEIN: u32 = 4098; +pub const F_BINARY_UPGRADE_SET_MISSING_VALUE: u32 = 4101; +pub const F_BRIN_INCLUSION_OPCINFO: u32 = 4105; +pub const F_BRIN_INCLUSION_ADD_VALUE: u32 = 4106; +pub const F_BRIN_INCLUSION_CONSISTENT: u32 = 4107; +pub const F_BRIN_INCLUSION_UNION: u32 = 4108; +pub const F_MACADDR8_IN: u32 = 4110; +pub const F_MACADDR8_OUT: u32 = 4111; +pub const F_TRUNC_MACADDR8: u32 = 4112; +pub const F_MACADDR8_EQ: u32 = 4113; +pub const F_MACADDR8_LT: u32 = 4114; +pub const F_MACADDR8_LE: u32 = 4115; +pub const F_MACADDR8_GT: u32 = 4116; +pub const F_MACADDR8_GE: u32 = 4117; +pub const F_MACADDR8_NE: u32 = 4118; +pub const F_MACADDR8_CMP: u32 = 4119; +pub const F_MACADDR8_NOT: u32 = 4120; +pub const F_MACADDR8_AND: u32 = 4121; +pub const F_MACADDR8_OR: u32 = 4122; +pub const F_MACADDR8: u32 = 4123; +pub const F_MACADDR: u32 = 4124; +pub const F_MACADDR8_SET7BIT: u32 = 4125; +pub const F_IN_RANGE_INT8_INT8_INT8_BOOL_BOOL: u32 = 4126; +pub const F_IN_RANGE_INT4_INT4_INT8_BOOL_BOOL: u32 = 4127; +pub const F_IN_RANGE_INT4_INT4_INT4_BOOL_BOOL: u32 = 4128; +pub const F_IN_RANGE_INT4_INT4_INT2_BOOL_BOOL: u32 = 4129; +pub const F_IN_RANGE_INT2_INT2_INT8_BOOL_BOOL: u32 = 4130; +pub const F_IN_RANGE_INT2_INT2_INT4_BOOL_BOOL: u32 = 4131; +pub const F_IN_RANGE_INT2_INT2_INT2_BOOL_BOOL: u32 = 4132; +pub const F_IN_RANGE_DATE_DATE_INTERVAL_BOOL_BOOL: u32 = 4133; +pub const F_IN_RANGE_TIMESTAMP_TIMESTAMP_INTERVAL_BOOL_BOOL: u32 = 4134; +pub const F_IN_RANGE_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL_BOOL_BOOL: u32 = 4135; +pub const F_IN_RANGE_INTERVAL_INTERVAL_INTERVAL_BOOL_BOOL: u32 = 4136; +pub const F_IN_RANGE_TIME_TIME_INTERVAL_BOOL_BOOL: u32 = 4137; +pub const F_IN_RANGE_TIMETZ_TIMETZ_INTERVAL_BOOL_BOOL: u32 = 4138; +pub const F_IN_RANGE_FLOAT8_FLOAT8_FLOAT8_BOOL_BOOL: u32 = 4139; +pub const F_IN_RANGE_FLOAT4_FLOAT4_FLOAT8_BOOL_BOOL: u32 = 4140; +pub const F_IN_RANGE_NUMERIC_NUMERIC_NUMERIC_BOOL_BOOL: u32 = 4141; +pub const F_PG_LSN_LARGER: u32 = 4187; +pub const F_PG_LSN_SMALLER: u32 = 4188; +pub const F_MAX_PG_LSN: u32 = 4189; +pub const F_MIN_PG_LSN: u32 = 4190; +pub const F_REGCOLLATIONIN: u32 = 4193; +pub const F_REGCOLLATIONOUT: u32 = 4194; +pub const F_TO_REGCOLLATION: u32 = 4195; +pub const F_REGCOLLATIONRECV: u32 = 4196; +pub const F_REGCOLLATIONSEND: u32 = 4197; +pub const F_TS_HEADLINE_REGCONFIG_JSONB_TSQUERY_TEXT: u32 = 4201; +pub const F_TS_HEADLINE_REGCONFIG_JSONB_TSQUERY: u32 = 4202; +pub const F_TS_HEADLINE_JSONB_TSQUERY_TEXT: u32 = 4203; +pub const F_TS_HEADLINE_JSONB_TSQUERY: u32 = 4204; +pub const F_TS_HEADLINE_REGCONFIG_JSON_TSQUERY_TEXT: u32 = 4205; +pub const F_TS_HEADLINE_REGCONFIG_JSON_TSQUERY: u32 = 4206; +pub const F_TS_HEADLINE_JSON_TSQUERY_TEXT: u32 = 4207; +pub const F_TS_HEADLINE_JSON_TSQUERY: u32 = 4208; +pub const F_TO_TSVECTOR_JSONB: u32 = 4209; +pub const F_TO_TSVECTOR_JSON: u32 = 4210; +pub const F_TO_TSVECTOR_REGCONFIG_JSONB: u32 = 4211; +pub const F_TO_TSVECTOR_REGCONFIG_JSON: u32 = 4212; +pub const F_JSONB_TO_TSVECTOR_JSONB_JSONB: u32 = 4213; +pub const F_JSONB_TO_TSVECTOR_REGCONFIG_JSONB_JSONB: u32 = 4214; +pub const F_JSON_TO_TSVECTOR_JSON_JSONB: u32 = 4215; +pub const F_JSON_TO_TSVECTOR_REGCONFIG_JSON_JSONB: u32 = 4216; +pub const F_PG_COPY_PHYSICAL_REPLICATION_SLOT_NAME_NAME_BOOL: u32 = 4220; +pub const F_PG_COPY_PHYSICAL_REPLICATION_SLOT_NAME_NAME: u32 = 4221; +pub const F_PG_COPY_LOGICAL_REPLICATION_SLOT_NAME_NAME_BOOL_NAME: u32 = 4222; +pub const F_PG_COPY_LOGICAL_REPLICATION_SLOT_NAME_NAME_BOOL: u32 = 4223; +pub const F_PG_COPY_LOGICAL_REPLICATION_SLOT_NAME_NAME: u32 = 4224; +pub const F_ANYCOMPATIBLEMULTIRANGE_IN: u32 = 4226; +pub const F_ANYCOMPATIBLEMULTIRANGE_OUT: u32 = 4227; +pub const F_RANGE_MERGE_ANYMULTIRANGE: u32 = 4228; +pub const F_ANYMULTIRANGE_IN: u32 = 4229; +pub const F_ANYMULTIRANGE_OUT: u32 = 4230; +pub const F_MULTIRANGE_IN: u32 = 4231; +pub const F_MULTIRANGE_OUT: u32 = 4232; +pub const F_MULTIRANGE_RECV: u32 = 4233; +pub const F_MULTIRANGE_SEND: u32 = 4234; +pub const F_LOWER_ANYMULTIRANGE: u32 = 4235; +pub const F_UPPER_ANYMULTIRANGE: u32 = 4236; +pub const F_ISEMPTY_ANYMULTIRANGE: u32 = 4237; +pub const F_LOWER_INC_ANYMULTIRANGE: u32 = 4238; +pub const F_UPPER_INC_ANYMULTIRANGE: u32 = 4239; +pub const F_LOWER_INF_ANYMULTIRANGE: u32 = 4240; +pub const F_UPPER_INF_ANYMULTIRANGE: u32 = 4241; +pub const F_MULTIRANGE_TYPANALYZE: u32 = 4242; +pub const F_MULTIRANGESEL: u32 = 4243; +pub const F_MULTIRANGE_EQ: u32 = 4244; +pub const F_MULTIRANGE_NE: u32 = 4245; +pub const F_RANGE_OVERLAPS_MULTIRANGE: u32 = 4246; +pub const F_MULTIRANGE_OVERLAPS_RANGE: u32 = 4247; +pub const F_MULTIRANGE_OVERLAPS_MULTIRANGE: u32 = 4248; +pub const F_MULTIRANGE_CONTAINS_ELEM: u32 = 4249; +pub const F_MULTIRANGE_CONTAINS_RANGE: u32 = 4250; +pub const F_MULTIRANGE_CONTAINS_MULTIRANGE: u32 = 4251; +pub const F_ELEM_CONTAINED_BY_MULTIRANGE: u32 = 4252; +pub const F_RANGE_CONTAINED_BY_MULTIRANGE: u32 = 4253; +pub const F_MULTIRANGE_CONTAINED_BY_MULTIRANGE: u32 = 4254; +pub const F_RANGE_ADJACENT_MULTIRANGE: u32 = 4255; +pub const F_MULTIRANGE_ADJACENT_MULTIRANGE: u32 = 4256; +pub const F_MULTIRANGE_ADJACENT_RANGE: u32 = 4257; +pub const F_RANGE_BEFORE_MULTIRANGE: u32 = 4258; +pub const F_MULTIRANGE_BEFORE_RANGE: u32 = 4259; +pub const F_MULTIRANGE_BEFORE_MULTIRANGE: u32 = 4260; +pub const F_RANGE_AFTER_MULTIRANGE: u32 = 4261; +pub const F_MULTIRANGE_AFTER_RANGE: u32 = 4262; +pub const F_MULTIRANGE_AFTER_MULTIRANGE: u32 = 4263; +pub const F_RANGE_OVERLEFT_MULTIRANGE: u32 = 4264; +pub const F_MULTIRANGE_OVERLEFT_RANGE: u32 = 4265; +pub const F_MULTIRANGE_OVERLEFT_MULTIRANGE: u32 = 4266; +pub const F_RANGE_OVERRIGHT_MULTIRANGE: u32 = 4267; +pub const F_MULTIRANGE_OVERRIGHT_RANGE: u32 = 4268; +pub const F_MULTIRANGE_OVERRIGHT_MULTIRANGE: u32 = 4269; +pub const F_MULTIRANGE_UNION: u32 = 4270; +pub const F_MULTIRANGE_MINUS: u32 = 4271; +pub const F_MULTIRANGE_INTERSECT: u32 = 4272; +pub const F_MULTIRANGE_CMP: u32 = 4273; +pub const F_MULTIRANGE_LT: u32 = 4274; +pub const F_MULTIRANGE_LE: u32 = 4275; +pub const F_MULTIRANGE_GE: u32 = 4276; +pub const F_MULTIRANGE_GT: u32 = 4277; +pub const F_HASH_MULTIRANGE: u32 = 4278; +pub const F_HASH_MULTIRANGE_EXTENDED: u32 = 4279; +pub const F_INT4MULTIRANGE_: u32 = 4280; +pub const F_INT4MULTIRANGE_INT4RANGE: u32 = 4281; +pub const F_INT4MULTIRANGE__INT4RANGE: u32 = 4282; +pub const F_NUMMULTIRANGE_: u32 = 4283; +pub const F_NUMMULTIRANGE_NUMRANGE: u32 = 4284; +pub const F_NUMMULTIRANGE__NUMRANGE: u32 = 4285; +pub const F_TSMULTIRANGE_: u32 = 4286; +pub const F_TSMULTIRANGE_TSRANGE: u32 = 4287; +pub const F_TSMULTIRANGE__TSRANGE: u32 = 4288; +pub const F_TSTZMULTIRANGE_: u32 = 4289; +pub const F_TSTZMULTIRANGE_TSTZRANGE: u32 = 4290; +pub const F_TSTZMULTIRANGE__TSTZRANGE: u32 = 4291; +pub const F_DATEMULTIRANGE_: u32 = 4292; +pub const F_DATEMULTIRANGE_DATERANGE: u32 = 4293; +pub const F_DATEMULTIRANGE__DATERANGE: u32 = 4294; +pub const F_INT8MULTIRANGE_: u32 = 4295; +pub const F_INT8MULTIRANGE_INT8RANGE: u32 = 4296; +pub const F_INT8MULTIRANGE__INT8RANGE: u32 = 4297; +pub const F_MULTIRANGE: u32 = 4298; +pub const F_RANGE_AGG_TRANSFN: u32 = 4299; +pub const F_RANGE_AGG_FINALFN: u32 = 4300; +pub const F_RANGE_AGG_ANYRANGE: u32 = 4301; +pub const F_KOI8R_TO_MIC: u32 = 4302; +pub const F_MIC_TO_KOI8R: u32 = 4303; +pub const F_ISO_TO_MIC: u32 = 4304; +pub const F_MIC_TO_ISO: u32 = 4305; +pub const F_WIN1251_TO_MIC: u32 = 4306; +pub const F_MIC_TO_WIN1251: u32 = 4307; +pub const F_WIN866_TO_MIC: u32 = 4308; +pub const F_MIC_TO_WIN866: u32 = 4309; +pub const F_KOI8R_TO_WIN1251: u32 = 4310; +pub const F_WIN1251_TO_KOI8R: u32 = 4311; +pub const F_KOI8R_TO_WIN866: u32 = 4312; +pub const F_WIN866_TO_KOI8R: u32 = 4313; +pub const F_WIN866_TO_WIN1251: u32 = 4314; +pub const F_WIN1251_TO_WIN866: u32 = 4315; +pub const F_ISO_TO_KOI8R: u32 = 4316; +pub const F_KOI8R_TO_ISO: u32 = 4317; +pub const F_ISO_TO_WIN1251: u32 = 4318; +pub const F_WIN1251_TO_ISO: u32 = 4319; +pub const F_ISO_TO_WIN866: u32 = 4320; +pub const F_WIN866_TO_ISO: u32 = 4321; +pub const F_EUC_CN_TO_MIC: u32 = 4322; +pub const F_MIC_TO_EUC_CN: u32 = 4323; +pub const F_EUC_JP_TO_SJIS: u32 = 4324; +pub const F_SJIS_TO_EUC_JP: u32 = 4325; +pub const F_EUC_JP_TO_MIC: u32 = 4326; +pub const F_SJIS_TO_MIC: u32 = 4327; +pub const F_MIC_TO_EUC_JP: u32 = 4328; +pub const F_MIC_TO_SJIS: u32 = 4329; +pub const F_EUC_KR_TO_MIC: u32 = 4330; +pub const F_MIC_TO_EUC_KR: u32 = 4331; +pub const F_EUC_TW_TO_BIG5: u32 = 4332; +pub const F_BIG5_TO_EUC_TW: u32 = 4333; +pub const F_EUC_TW_TO_MIC: u32 = 4334; +pub const F_BIG5_TO_MIC: u32 = 4335; +pub const F_MIC_TO_EUC_TW: u32 = 4336; +pub const F_MIC_TO_BIG5: u32 = 4337; +pub const F_LATIN2_TO_MIC: u32 = 4338; +pub const F_MIC_TO_LATIN2: u32 = 4339; +pub const F_WIN1250_TO_MIC: u32 = 4340; +pub const F_MIC_TO_WIN1250: u32 = 4341; +pub const F_LATIN2_TO_WIN1250: u32 = 4342; +pub const F_WIN1250_TO_LATIN2: u32 = 4343; +pub const F_LATIN1_TO_MIC: u32 = 4344; +pub const F_MIC_TO_LATIN1: u32 = 4345; +pub const F_LATIN3_TO_MIC: u32 = 4346; +pub const F_MIC_TO_LATIN3: u32 = 4347; +pub const F_LATIN4_TO_MIC: u32 = 4348; +pub const F_MIC_TO_LATIN4: u32 = 4349; +pub const F_NORMALIZE: u32 = 4350; +pub const F_IS_NORMALIZED: u32 = 4351; +pub const F_BIG5_TO_UTF8: u32 = 4352; +pub const F_UTF8_TO_BIG5: u32 = 4353; +pub const F_UTF8_TO_KOI8R: u32 = 4354; +pub const F_KOI8R_TO_UTF8: u32 = 4355; +pub const F_UTF8_TO_KOI8U: u32 = 4356; +pub const F_KOI8U_TO_UTF8: u32 = 4357; +pub const F_UTF8_TO_WIN: u32 = 4358; +pub const F_WIN_TO_UTF8: u32 = 4359; +pub const F_EUC_CN_TO_UTF8: u32 = 4360; +pub const F_UTF8_TO_EUC_CN: u32 = 4361; +pub const F_EUC_JP_TO_UTF8: u32 = 4362; +pub const F_UTF8_TO_EUC_JP: u32 = 4363; +pub const F_EUC_KR_TO_UTF8: u32 = 4364; +pub const F_UTF8_TO_EUC_KR: u32 = 4365; +pub const F_EUC_TW_TO_UTF8: u32 = 4366; +pub const F_UTF8_TO_EUC_TW: u32 = 4367; +pub const F_GB18030_TO_UTF8: u32 = 4368; +pub const F_UTF8_TO_GB18030: u32 = 4369; +pub const F_GBK_TO_UTF8: u32 = 4370; +pub const F_UTF8_TO_GBK: u32 = 4371; +pub const F_UTF8_TO_ISO8859: u32 = 4372; +pub const F_ISO8859_TO_UTF8: u32 = 4373; +pub const F_ISO8859_1_TO_UTF8: u32 = 4374; +pub const F_UTF8_TO_ISO8859_1: u32 = 4375; +pub const F_JOHAB_TO_UTF8: u32 = 4376; +pub const F_UTF8_TO_JOHAB: u32 = 4377; +pub const F_SJIS_TO_UTF8: u32 = 4378; +pub const F_UTF8_TO_SJIS: u32 = 4379; +pub const F_UHC_TO_UTF8: u32 = 4380; +pub const F_UTF8_TO_UHC: u32 = 4381; +pub const F_EUC_JIS_2004_TO_UTF8: u32 = 4382; +pub const F_UTF8_TO_EUC_JIS_2004: u32 = 4383; +pub const F_SHIFT_JIS_2004_TO_UTF8: u32 = 4384; +pub const F_UTF8_TO_SHIFT_JIS_2004: u32 = 4385; +pub const F_EUC_JIS_2004_TO_SHIFT_JIS_2004: u32 = 4386; +pub const F_SHIFT_JIS_2004_TO_EUC_JIS_2004: u32 = 4387; +pub const F_MULTIRANGE_INTERSECT_AGG_TRANSFN: u32 = 4388; +pub const F_RANGE_INTERSECT_AGG_ANYMULTIRANGE: u32 = 4389; +pub const F_BINARY_UPGRADE_SET_NEXT_MULTIRANGE_PG_TYPE_OID: u32 = 4390; +pub const F_BINARY_UPGRADE_SET_NEXT_MULTIRANGE_ARRAY_PG_TYPE_OID: u32 = 4391; +pub const F_RANGE_INTERSECT_AGG_TRANSFN: u32 = 4401; +pub const F_RANGE_INTERSECT_AGG_ANYRANGE: u32 = 4450; +pub const F_RANGE_CONTAINS_MULTIRANGE: u32 = 4541; +pub const F_MULTIRANGE_CONTAINED_BY_RANGE: u32 = 4542; +pub const F_PG_LOG_BACKEND_MEMORY_CONTEXTS: u32 = 4543; +pub const F_BINARY_UPGRADE_SET_NEXT_HEAP_RELFILENODE: u32 = 4545; +pub const F_BINARY_UPGRADE_SET_NEXT_INDEX_RELFILENODE: u32 = 4546; +pub const F_BINARY_UPGRADE_SET_NEXT_TOAST_RELFILENODE: u32 = 4547; +pub const F_BINARY_UPGRADE_SET_NEXT_PG_TABLESPACE_OID: u32 = 4548; +pub const F_UNICODE_VERSION: u32 = 4549; +pub const F_PG_EVENT_TRIGGER_TABLE_REWRITE_OID: u32 = 4566; +pub const F_PG_EVENT_TRIGGER_TABLE_REWRITE_REASON: u32 = 4567; +pub const F_PG_EVENT_TRIGGER_DDL_COMMANDS: u32 = 4568; +pub const F_BRIN_BLOOM_OPCINFO: u32 = 4591; +pub const F_BRIN_BLOOM_ADD_VALUE: u32 = 4592; +pub const F_BRIN_BLOOM_CONSISTENT: u32 = 4593; +pub const F_BRIN_BLOOM_UNION: u32 = 4594; +pub const F_BRIN_BLOOM_OPTIONS: u32 = 4595; +pub const F_BRIN_BLOOM_SUMMARY_IN: u32 = 4596; +pub const F_BRIN_BLOOM_SUMMARY_OUT: u32 = 4597; +pub const F_BRIN_BLOOM_SUMMARY_RECV: u32 = 4598; +pub const F_BRIN_BLOOM_SUMMARY_SEND: u32 = 4599; +pub const F_BRIN_MINMAX_MULTI_OPCINFO: u32 = 4616; +pub const F_BRIN_MINMAX_MULTI_ADD_VALUE: u32 = 4617; +pub const F_BRIN_MINMAX_MULTI_CONSISTENT: u32 = 4618; +pub const F_BRIN_MINMAX_MULTI_UNION: u32 = 4619; +pub const F_BRIN_MINMAX_MULTI_OPTIONS: u32 = 4620; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INT2: u32 = 4621; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INT4: u32 = 4622; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INT8: u32 = 4623; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_FLOAT4: u32 = 4624; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_FLOAT8: u32 = 4625; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_NUMERIC: u32 = 4626; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TID: u32 = 4627; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_UUID: u32 = 4628; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_DATE: u32 = 4629; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TIME: u32 = 4630; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INTERVAL: u32 = 4631; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TIMETZ: u32 = 4632; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_PG_LSN: u32 = 4633; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_MACADDR: u32 = 4634; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_MACADDR8: u32 = 4635; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_INET: u32 = 4636; +pub const F_BRIN_MINMAX_MULTI_DISTANCE_TIMESTAMP: u32 = 4637; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_IN: u32 = 4638; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_OUT: u32 = 4639; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_RECV: u32 = 4640; +pub const F_BRIN_MINMAX_MULTI_SUMMARY_SEND: u32 = 4641; +pub const F_PHRASETO_TSQUERY_TEXT: u32 = 5001; +pub const F_TSQUERY_PHRASE_TSQUERY_TSQUERY: u32 = 5003; +pub const F_TSQUERY_PHRASE_TSQUERY_TSQUERY_INT4: u32 = 5004; +pub const F_PHRASETO_TSQUERY_REGCONFIG_TEXT: u32 = 5006; +pub const F_WEBSEARCH_TO_TSQUERY_REGCONFIG_TEXT: u32 = 5007; +pub const F_WEBSEARCH_TO_TSQUERY_TEXT: u32 = 5009; +pub const F_SPG_BBOX_QUAD_CONFIG: u32 = 5010; +pub const F_SPG_POLY_QUAD_COMPRESS: u32 = 5011; +pub const F_SPG_BOX_QUAD_CONFIG: u32 = 5012; +pub const F_SPG_BOX_QUAD_CHOOSE: u32 = 5013; +pub const F_SPG_BOX_QUAD_PICKSPLIT: u32 = 5014; +pub const F_SPG_BOX_QUAD_INNER_CONSISTENT: u32 = 5015; +pub const F_SPG_BOX_QUAD_LEAF_CONSISTENT: u32 = 5016; +pub const F_PG_MCV_LIST_IN: u32 = 5018; +pub const F_PG_MCV_LIST_OUT: u32 = 5019; +pub const F_PG_MCV_LIST_RECV: u32 = 5020; +pub const F_PG_MCV_LIST_SEND: u32 = 5021; +pub const F_PG_LSN_PLI: u32 = 5022; +pub const F_NUMERIC_PL_PG_LSN: u32 = 5023; +pub const F_PG_LSN_MII: u32 = 5024; +pub const F_SATISFIES_HASH_PARTITION: u32 = 5028; +pub const F_PG_LS_TMPDIR_: u32 = 5029; +pub const F_PG_LS_TMPDIR_OID: u32 = 5030; +pub const F_PG_LS_ARCHIVE_STATUSDIR: u32 = 5031; +pub const F_NETWORK_SORTSUPPORT: u32 = 5033; +pub const F_XID8LT: u32 = 5034; +pub const F_XID8GT: u32 = 5035; +pub const F_XID8LE: u32 = 5036; +pub const F_XID8GE: u32 = 5037; +pub const F_MATCHINGSEL: u32 = 5040; +pub const F_MATCHINGJOINSEL: u32 = 5041; +pub const F_MIN_SCALE: u32 = 5042; +pub const F_TRIM_SCALE: u32 = 5043; +pub const F_GCD_INT4_INT4: u32 = 5044; +pub const F_GCD_INT8_INT8: u32 = 5045; +pub const F_LCM_INT4_INT4: u32 = 5046; +pub const F_LCM_INT8_INT8: u32 = 5047; +pub const F_GCD_NUMERIC_NUMERIC: u32 = 5048; +pub const F_LCM_NUMERIC_NUMERIC: u32 = 5049; +pub const F_BTVARSTREQUALIMAGE: u32 = 5050; +pub const F_BTEQUALIMAGE: u32 = 5051; +pub const F_PG_GET_SHMEM_ALLOCATIONS: u32 = 5052; +pub const F_PG_STAT_GET_INS_SINCE_VACUUM: u32 = 5053; +pub const F_JSONB_SET_LAX: u32 = 5054; +pub const F_PG_SNAPSHOT_IN: u32 = 5055; +pub const F_PG_SNAPSHOT_OUT: u32 = 5056; +pub const F_PG_SNAPSHOT_RECV: u32 = 5057; +pub const F_PG_SNAPSHOT_SEND: u32 = 5058; +pub const F_PG_CURRENT_XACT_ID: u32 = 5059; +pub const F_PG_CURRENT_XACT_ID_IF_ASSIGNED: u32 = 5060; +pub const F_PG_CURRENT_SNAPSHOT: u32 = 5061; +pub const F_PG_SNAPSHOT_XMIN: u32 = 5062; +pub const F_PG_SNAPSHOT_XMAX: u32 = 5063; +pub const F_PG_SNAPSHOT_XIP: u32 = 5064; +pub const F_PG_VISIBLE_IN_SNAPSHOT: u32 = 5065; +pub const F_PG_XACT_STATUS: u32 = 5066; +pub const F_XID8IN: u32 = 5070; +pub const F_XID: u32 = 5071; +pub const F_XID8OUT: u32 = 5081; +pub const F_XID8RECV: u32 = 5082; +pub const F_XID8SEND: u32 = 5083; +pub const F_XID8EQ: u32 = 5084; +pub const F_XID8NE: u32 = 5085; +pub const F_ANYCOMPATIBLE_IN: u32 = 5086; +pub const F_ANYCOMPATIBLE_OUT: u32 = 5087; +pub const F_ANYCOMPATIBLEARRAY_IN: u32 = 5088; +pub const F_ANYCOMPATIBLEARRAY_OUT: u32 = 5089; +pub const F_ANYCOMPATIBLEARRAY_RECV: u32 = 5090; +pub const F_ANYCOMPATIBLEARRAY_SEND: u32 = 5091; +pub const F_ANYCOMPATIBLENONARRAY_IN: u32 = 5092; +pub const F_ANYCOMPATIBLENONARRAY_OUT: u32 = 5093; +pub const F_ANYCOMPATIBLERANGE_IN: u32 = 5094; +pub const F_ANYCOMPATIBLERANGE_OUT: u32 = 5095; +pub const F_XID8CMP: u32 = 5096; +pub const F_XID8_LARGER: u32 = 5097; +pub const F_XID8_SMALLER: u32 = 5098; +pub const F_MAX_XID8: u32 = 5099; +pub const F_MIN_XID8: u32 = 5100; +pub const F_PG_REPLICATION_ORIGIN_CREATE: u32 = 6003; +pub const F_PG_REPLICATION_ORIGIN_DROP: u32 = 6004; +pub const F_PG_REPLICATION_ORIGIN_OID: u32 = 6005; +pub const F_PG_REPLICATION_ORIGIN_SESSION_SETUP: u32 = 6006; +pub const F_PG_REPLICATION_ORIGIN_SESSION_RESET: u32 = 6007; +pub const F_PG_REPLICATION_ORIGIN_SESSION_IS_SETUP: u32 = 6008; +pub const F_PG_REPLICATION_ORIGIN_SESSION_PROGRESS: u32 = 6009; +pub const F_PG_REPLICATION_ORIGIN_XACT_SETUP: u32 = 6010; +pub const F_PG_REPLICATION_ORIGIN_XACT_RESET: u32 = 6011; +pub const F_PG_REPLICATION_ORIGIN_ADVANCE: u32 = 6012; +pub const F_PG_REPLICATION_ORIGIN_PROGRESS: u32 = 6013; +pub const F_PG_SHOW_REPLICATION_ORIGIN_STATUS: u32 = 6014; +pub const F_JSONB_SUBSCRIPT_HANDLER: u32 = 6098; +pub const F_ICU_UNICODE_VERSION: u32 = 6099; +pub const F_PG_LSN: u32 = 6103; +pub const F_UNICODE_ASSIGNED: u32 = 6105; +pub const F_PG_STAT_GET_BACKEND_SUBXACT: u32 = 6107; +pub const F_PG_STAT_GET_SUBSCRIPTION: u32 = 6118; +pub const F_PG_GET_PUBLICATION_TABLES: u32 = 6119; +pub const F_PG_GET_REPLICA_IDENTITY_INDEX: u32 = 6120; +pub const F_PG_RELATION_IS_PUBLISHABLE: u32 = 6121; +pub const F_MULTIRANGE_GIST_CONSISTENT: u32 = 6154; +pub const F_MULTIRANGE_GIST_COMPRESS: u32 = 6156; +pub const F_PG_GET_CATALOG_FOREIGN_KEYS: u32 = 6159; +pub const F_STRING_TO_TABLE_TEXT_TEXT: u32 = 6160; +pub const F_STRING_TO_TABLE_TEXT_TEXT_TEXT: u32 = 6161; +pub const F_BIT_COUNT_BIT: u32 = 6162; +pub const F_BIT_COUNT_BYTEA: u32 = 6163; +pub const F_BIT_XOR_INT2: u32 = 6164; +pub const F_BIT_XOR_INT4: u32 = 6165; +pub const F_BIT_XOR_INT8: u32 = 6166; +pub const F_BIT_XOR_BIT: u32 = 6167; +pub const F_PG_XACT_COMMIT_TIMESTAMP_ORIGIN: u32 = 6168; +pub const F_PG_STAT_GET_REPLICATION_SLOT: u32 = 6169; +pub const F_PG_STAT_RESET_REPLICATION_SLOT: u32 = 6170; +pub const F_TRIM_ARRAY: u32 = 6172; +pub const F_PG_GET_STATISTICSOBJDEF_EXPRESSIONS: u32 = 6173; +pub const F_PG_GET_STATISTICSOBJDEF_COLUMNS: u32 = 6174; +pub const F_DATE_BIN_INTERVAL_TIMESTAMP_TIMESTAMP: u32 = 6177; +pub const F_DATE_BIN_INTERVAL_TIMESTAMPTZ_TIMESTAMPTZ: u32 = 6178; +pub const F_ARRAY_SUBSCRIPT_HANDLER: u32 = 6179; +pub const F_RAW_ARRAY_SUBSCRIPT_HANDLER: u32 = 6180; +pub const F_TS_DEBUG_REGCONFIG_TEXT: u32 = 6183; +pub const F_TS_DEBUG_TEXT: u32 = 6184; +pub const F_PG_STAT_GET_DB_SESSION_TIME: u32 = 6185; +pub const F_PG_STAT_GET_DB_ACTIVE_TIME: u32 = 6186; +pub const F_PG_STAT_GET_DB_IDLE_IN_TRANSACTION_TIME: u32 = 6187; +pub const F_PG_STAT_GET_DB_SESSIONS: u32 = 6188; +pub const F_PG_STAT_GET_DB_SESSIONS_ABANDONED: u32 = 6189; +pub const F_PG_STAT_GET_DB_SESSIONS_FATAL: u32 = 6190; +pub const F_PG_STAT_GET_DB_SESSIONS_KILLED: u32 = 6191; +pub const F_HASH_RECORD: u32 = 6192; +pub const F_HASH_RECORD_EXTENDED: u32 = 6193; +pub const F_LTRIM_BYTEA_BYTEA: u32 = 6195; +pub const F_RTRIM_BYTEA_BYTEA: u32 = 6196; +pub const F_PG_GET_FUNCTION_SQLBODY: u32 = 6197; +pub const F_UNISTR: u32 = 6198; +pub const F_EXTRACT_TEXT_DATE: u32 = 6199; +pub const F_EXTRACT_TEXT_TIME: u32 = 6200; +pub const F_EXTRACT_TEXT_TIMETZ: u32 = 6201; +pub const F_EXTRACT_TEXT_TIMESTAMP: u32 = 6202; +pub const F_EXTRACT_TEXT_TIMESTAMPTZ: u32 = 6203; +pub const F_EXTRACT_TEXT_INTERVAL: u32 = 6204; +pub const F_HAS_PARAMETER_PRIVILEGE_NAME_TEXT_TEXT: u32 = 6205; +pub const F_HAS_PARAMETER_PRIVILEGE_OID_TEXT_TEXT: u32 = 6206; +pub const F_HAS_PARAMETER_PRIVILEGE_TEXT_TEXT: u32 = 6207; +pub const F_PG_READ_FILE_TEXT_BOOL: u32 = 6208; +pub const F_PG_READ_BINARY_FILE_TEXT_BOOL: u32 = 6209; +pub const F_PG_INPUT_IS_VALID: u32 = 6210; +pub const F_PG_INPUT_ERROR_INFO: u32 = 6211; +pub const F_RANDOM_NORMAL: u32 = 6212; +pub const F_PG_SPLIT_WALFILE_NAME: u32 = 6213; +pub const F_PG_STAT_GET_IO: u32 = 6214; +pub const F_ARRAY_SHUFFLE: u32 = 6215; +pub const F_ARRAY_SAMPLE: u32 = 6216; +pub const F_PG_STAT_GET_TUPLES_NEWPAGE_UPDATED: u32 = 6217; +pub const F_PG_STAT_GET_XACT_TUPLES_NEWPAGE_UPDATED: u32 = 6218; +pub const F_ERF: u32 = 6219; +pub const F_ERFC: u32 = 6220; +pub const F_DATE_ADD_TIMESTAMPTZ_INTERVAL: u32 = 6221; +pub const F_DATE_ADD_TIMESTAMPTZ_INTERVAL_TEXT: u32 = 6222; +pub const F_DATE_SUBTRACT_TIMESTAMPTZ_INTERVAL: u32 = 6223; +pub const F_PG_GET_WAL_RESOURCE_MANAGERS: u32 = 6224; +pub const F_MULTIRANGE_AGG_TRANSFN: u32 = 6225; +pub const F_MULTIRANGE_AGG_FINALFN: u32 = 6226; +pub const F_RANGE_AGG_ANYMULTIRANGE: u32 = 6227; +pub const F_PG_STAT_HAVE_STATS: u32 = 6230; +pub const F_PG_STAT_GET_SUBSCRIPTION_STATS: u32 = 6231; +pub const F_PG_STAT_RESET_SUBSCRIPTION_STATS: u32 = 6232; +pub const F_WINDOW_ROW_NUMBER_SUPPORT: u32 = 6233; +pub const F_WINDOW_RANK_SUPPORT: u32 = 6234; +pub const F_WINDOW_DENSE_RANK_SUPPORT: u32 = 6235; +pub const F_INT8INC_SUPPORT: u32 = 6236; +pub const F_PG_SETTINGS_GET_FLAGS: u32 = 6240; +pub const F_PG_STOP_MAKING_PINNED_OBJECTS: u32 = 6241; +pub const F_TEXT_STARTS_WITH_SUPPORT: u32 = 6242; +pub const F_PG_STAT_GET_RECOVERY_PREFETCH: u32 = 6248; +pub const F_PG_DATABASE_COLLATION_ACTUAL_VERSION: u32 = 6249; +pub const F_PG_IDENT_FILE_MAPPINGS: u32 = 6250; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_INT4_INT4_TEXT: u32 = 6251; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_INT4_INT4: u32 = 6252; +pub const F_REGEXP_REPLACE_TEXT_TEXT_TEXT_INT4: u32 = 6253; +pub const F_REGEXP_COUNT_TEXT_TEXT: u32 = 6254; +pub const F_REGEXP_COUNT_TEXT_TEXT_INT4: u32 = 6255; +pub const F_REGEXP_COUNT_TEXT_TEXT_INT4_TEXT: u32 = 6256; +pub const F_REGEXP_INSTR_TEXT_TEXT: u32 = 6257; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4: u32 = 6258; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4: u32 = 6259; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4_INT4: u32 = 6260; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4_INT4_TEXT: u32 = 6261; +pub const F_REGEXP_INSTR_TEXT_TEXT_INT4_INT4_INT4_TEXT_INT4: u32 = 6262; +pub const F_REGEXP_LIKE_TEXT_TEXT: u32 = 6263; +pub const F_REGEXP_LIKE_TEXT_TEXT_TEXT: u32 = 6264; +pub const F_REGEXP_SUBSTR_TEXT_TEXT: u32 = 6265; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4: u32 = 6266; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4_INT4: u32 = 6267; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4_INT4_TEXT: u32 = 6268; +pub const F_REGEXP_SUBSTR_TEXT_TEXT_INT4_INT4_TEXT_INT4: u32 = 6269; +pub const F_PG_LS_LOGICALSNAPDIR: u32 = 6270; +pub const F_PG_LS_LOGICALMAPDIR: u32 = 6271; +pub const F_PG_LS_REPLSLOTDIR: u32 = 6272; +pub const F_DATE_SUBTRACT_TIMESTAMPTZ_INTERVAL_TEXT: u32 = 6273; +pub const F_GENERATE_SERIES_TIMESTAMPTZ_TIMESTAMPTZ_INTERVAL_TEXT: u32 = 6274; +pub const F_JSON_AGG_STRICT_TRANSFN: u32 = 6275; +pub const F_JSON_AGG_STRICT: u32 = 6276; +pub const F_JSON_OBJECT_AGG_STRICT_TRANSFN: u32 = 6277; +pub const F_JSON_OBJECT_AGG_UNIQUE_TRANSFN: u32 = 6278; +pub const F_JSON_OBJECT_AGG_UNIQUE_STRICT_TRANSFN: u32 = 6279; +pub const F_JSON_OBJECT_AGG_STRICT: u32 = 6280; +pub const F_JSON_OBJECT_AGG_UNIQUE: u32 = 6281; +pub const F_JSON_OBJECT_AGG_UNIQUE_STRICT: u32 = 6282; +pub const F_JSONB_AGG_STRICT_TRANSFN: u32 = 6283; +pub const F_JSONB_AGG_STRICT: u32 = 6284; +pub const F_JSONB_OBJECT_AGG_STRICT_TRANSFN: u32 = 6285; +pub const F_JSONB_OBJECT_AGG_UNIQUE_TRANSFN: u32 = 6286; +pub const F_JSONB_OBJECT_AGG_UNIQUE_STRICT_TRANSFN: u32 = 6287; +pub const F_JSONB_OBJECT_AGG_STRICT: u32 = 6288; +pub const F_JSONB_OBJECT_AGG_UNIQUE: u32 = 6289; +pub const F_JSONB_OBJECT_AGG_UNIQUE_STRICT: u32 = 6290; +pub const F_ANY_VALUE: u32 = 6291; +pub const F_ANY_VALUE_TRANSFN: u32 = 6292; +pub const F_ARRAY_AGG_COMBINE: u32 = 6293; +pub const F_ARRAY_AGG_SERIALIZE: u32 = 6294; +pub const F_ARRAY_AGG_DESERIALIZE: u32 = 6295; +pub const F_ARRAY_AGG_ARRAY_COMBINE: u32 = 6296; +pub const F_ARRAY_AGG_ARRAY_SERIALIZE: u32 = 6297; +pub const F_ARRAY_AGG_ARRAY_DESERIALIZE: u32 = 6298; +pub const F_STRING_AGG_COMBINE: u32 = 6299; +pub const F_STRING_AGG_SERIALIZE: u32 = 6300; +pub const F_STRING_AGG_DESERIALIZE: u32 = 6301; +pub const F_PG_LOG_STANDBY_SNAPSHOT: u32 = 6305; +pub const F_WINDOW_PERCENT_RANK_SUPPORT: u32 = 6306; +pub const F_WINDOW_CUME_DIST_SUPPORT: u32 = 6307; +pub const F_WINDOW_NTILE_SUPPORT: u32 = 6308; +pub const F_PG_STAT_GET_DB_CONFLICT_LOGICALSLOT: u32 = 6309; +pub const F_PG_STAT_GET_LASTSCAN: u32 = 6310; +pub const F_SYSTEM_USER: u32 = 6311; +pub const F_BINARY_UPGRADE_LOGICAL_SLOT_HAS_CAUGHT_UP: u32 = 6312; +pub const F_PG_STAT_GET_CHECKPOINTER_STAT_RESET_TIME: u32 = 6314; +pub const F_PG_BASETYPE: u32 = 6315; +pub const F_PG_COLUMN_TOAST_CHUNK_ID: u32 = 6316; +pub const F_TO_REGTYPEMOD: u32 = 6317; +pub const F_PG_GET_WAIT_EVENTS: u32 = 6318; +pub const F_BINARY_UPGRADE_ADD_SUB_REL_STATE: u32 = 6319; +pub const F_BINARY_UPGRADE_REPLORIGIN_ADVANCE: u32 = 6320; +pub const F_PG_AVAILABLE_WAL_SUMMARIES: u32 = 6321; +pub const F_PG_WAL_SUMMARY_CONTENTS: u32 = 6322; +pub const F_PG_GET_WAL_SUMMARIZER_STATE: u32 = 6323; +pub const F_INTERVAL_AVG_SERIALIZE: u32 = 6324; +pub const F_INTERVAL_AVG_DESERIALIZE: u32 = 6325; +pub const F_INTERVAL_SUM: u32 = 6326; +pub const F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_TIMED: u32 = 6327; +pub const F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_REQUESTED: u32 = 6328; +pub const F_PG_STAT_GET_CHECKPOINTER_RESTARTPOINTS_PERFORMED: u32 = 6329; +pub const F_TO_BIN_INT4: u32 = 6330; +pub const F_TO_BIN_INT8: u32 = 6331; +pub const F_TO_OCT_INT4: u32 = 6332; +pub const F_TO_OCT_INT8: u32 = 6333; +pub const F_TIMEZONE_TIMESTAMPTZ: u32 = 6334; +pub const F_TIMEZONE_TIMESTAMP: u32 = 6335; +pub const F_TIMEZONE_TIMETZ: u32 = 6336; +pub const F_JSONB_POPULATE_RECORD_VALID: u32 = 6338; +pub const F_RANDOM_INT4_INT4: u32 = 6339; +pub const F_RANDOM_INT8_INT8: u32 = 6340; +pub const F_RANDOM_NUMERIC_NUMERIC: u32 = 6341; +pub const F_UUID_EXTRACT_TIMESTAMP: u32 = 6342; +pub const F_UUID_EXTRACT_VERSION: u32 = 6343; +pub const F_PG_SYNC_REPLICATION_SLOTS: u32 = 6344; +pub const F_RANGE_CONTAINS_ELEM_SUPPORT: u32 = 6345; +pub const F_ELEM_CONTAINED_BY_RANGE_SUPPORT: u32 = 6346; +pub const NUMERIC_MAX_PRECISION: u32 = 1000; +pub const NUMERIC_MIN_SCALE: i32 = -1000; +pub const NUMERIC_MAX_SCALE: u32 = 1000; +pub const NUMERIC_MAX_DISPLAY_SCALE: u32 = 1000; +pub const NUMERIC_MIN_DISPLAY_SCALE: u32 = 0; +pub const NUMERIC_MAX_RESULT_SCALE: u32 = 2000; +pub const NUMERIC_MIN_SIG_DIGITS: u32 = 16; +pub const JsonbContainsStrategyNumber: u32 = 7; +pub const JsonbExistsStrategyNumber: u32 = 9; +pub const JsonbExistsAnyStrategyNumber: u32 = 10; +pub const JsonbExistsAllStrategyNumber: u32 = 11; +pub const JsonbJsonpathExistsStrategyNumber: u32 = 15; +pub const JsonbJsonpathPredicateStrategyNumber: u32 = 16; +pub const JGINFLAG_KEY: u32 = 1; +pub const JGINFLAG_NULL: u32 = 2; +pub const JGINFLAG_BOOL: u32 = 3; +pub const JGINFLAG_NUM: u32 = 4; +pub const JGINFLAG_STR: u32 = 5; +pub const JGINFLAG_HASHED: u32 = 16; +pub const JGIN_MAXLENGTH: u32 = 125; +pub const JENTRY_OFFLENMASK: u32 = 268435455; +pub const JENTRY_TYPEMASK: u32 = 1879048192; +pub const JENTRY_HAS_OFF: u32 = 2147483648; +pub const JENTRY_ISSTRING: u32 = 0; +pub const JENTRY_ISNUMERIC: u32 = 268435456; +pub const JENTRY_ISBOOL_FALSE: u32 = 536870912; +pub const JENTRY_ISBOOL_TRUE: u32 = 805306368; +pub const JENTRY_ISNULL: u32 = 1073741824; +pub const JENTRY_ISCONTAINER: u32 = 1342177280; +pub const JB_OFFSET_STRIDE: u32 = 32; +pub const JB_CMASK: u32 = 268435455; +pub const JB_FSCALAR: u32 = 268435456; +pub const JB_FOBJECT: u32 = 536870912; +pub const JB_FARRAY: u32 = 1073741824; +pub const ATTSTATSSLOT_VALUES: u32 = 1; +pub const ATTSTATSSLOT_NUMBERS: u32 = 2; +pub const FORMAT_PROC_INVALID_AS_NULL: u32 = 1; +pub const FORMAT_PROC_FORCE_QUALIFY: u32 = 2; +pub const FORMAT_OPERATOR_INVALID_AS_NULL: u32 = 1; +pub const FORMAT_OPERATOR_FORCE_QUALIFY: u32 = 2; +pub const RULE_INDEXDEF_PRETTY: u32 = 1; +pub const RULE_INDEXDEF_KEYS_ONLY: u32 = 2; +pub const DEFAULT_EQ_SEL: f64 = 0.005; +pub const DEFAULT_INEQ_SEL: f64 = 0.3333333333333333; +pub const DEFAULT_RANGE_INEQ_SEL: f64 = 0.005; +pub const DEFAULT_MULTIRANGE_INEQ_SEL: f64 = 0.005; +pub const DEFAULT_MATCH_SEL: f64 = 0.005; +pub const DEFAULT_MATCHING_SEL: f64 = 0.01; +pub const DEFAULT_NUM_DISTINCT: u32 = 200; +pub const DEFAULT_UNK_SEL: f64 = 0.005; +pub const DEFAULT_NOT_UNK_SEL: f64 = 0.995; +pub const SELFLAG_USED_DEFAULT: u32 = 1; +pub const CATCACHE_MAXKEYS: u32 = 4; +pub const CT_MAGIC: u32 = 1462113538; +pub const CL_MAGIC: u32 = 1383485699; +#[allow(unsafe_code)] +pub const RANGE_EMPTY_LITERAL: &::core::ffi::CStr = + unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(b"empty\0") }; +pub const RANGE_EMPTY: u32 = 1; +pub const RANGE_LB_INC: u32 = 2; +pub const RANGE_UB_INC: u32 = 4; +pub const RANGE_LB_INF: u32 = 8; +pub const RANGE_UB_INF: u32 = 16; +pub const RANGE_LB_NULL: u32 = 32; +pub const RANGE_UB_NULL: u32 = 64; +pub const RANGE_CONTAIN_EMPTY: u32 = 128; +pub const RANGESTRAT_BEFORE: u32 = 1; +pub const RANGESTRAT_OVERLEFT: u32 = 2; +pub const RANGESTRAT_OVERLAPS: u32 = 3; +pub const RANGESTRAT_OVERRIGHT: u32 = 4; +pub const RANGESTRAT_AFTER: u32 = 5; +pub const RANGESTRAT_ADJACENT: u32 = 6; +pub const RANGESTRAT_CONTAINS: u32 = 7; +pub const RANGESTRAT_CONTAINED_BY: u32 = 8; +pub const RANGESTRAT_CONTAINS_ELEM: u32 = 16; +pub const RANGESTRAT_EQ: u32 = 18; +pub type pg_int64 = ::core::ffi::c_long; +pub type __gnuc_va_list = __builtin_va_list; +pub type __u_char = ::core::ffi::c_uchar; +pub type __u_short = ::core::ffi::c_ushort; +pub type __u_int = ::core::ffi::c_uint; +pub type __u_long = ::core::ffi::c_ulong; +pub type __int8_t = ::core::ffi::c_schar; +pub type __uint8_t = ::core::ffi::c_uchar; +pub type __int16_t = ::core::ffi::c_short; +pub type __uint16_t = ::core::ffi::c_ushort; +pub type __int32_t = ::core::ffi::c_int; +pub type __uint32_t = ::core::ffi::c_uint; +pub type __int64_t = ::core::ffi::c_long; +pub type __uint64_t = ::core::ffi::c_ulong; +pub type __int_least8_t = __int8_t; +pub type __uint_least8_t = __uint8_t; +pub type __int_least16_t = __int16_t; +pub type __uint_least16_t = __uint16_t; +pub type __int_least32_t = __int32_t; +pub type __uint_least32_t = __uint32_t; +pub type __int_least64_t = __int64_t; +pub type __uint_least64_t = __uint64_t; +pub type __quad_t = ::core::ffi::c_long; +pub type __u_quad_t = ::core::ffi::c_ulong; +pub type __intmax_t = ::core::ffi::c_long; +pub type __uintmax_t = ::core::ffi::c_ulong; +pub type __dev_t = ::core::ffi::c_ulong; +pub type __uid_t = ::core::ffi::c_uint; +pub type __gid_t = ::core::ffi::c_uint; +pub type __ino_t = ::core::ffi::c_ulong; +pub type __ino64_t = ::core::ffi::c_ulong; +pub type __mode_t = ::core::ffi::c_uint; +pub type __nlink_t = ::core::ffi::c_ulong; +pub type __off_t = ::core::ffi::c_long; +pub type __off64_t = ::core::ffi::c_long; +pub type __pid_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __fsid_t { + pub __val: [::core::ffi::c_int; 2usize], +} +pub type __clock_t = ::core::ffi::c_long; +pub type __rlim_t = ::core::ffi::c_ulong; +pub type __rlim64_t = ::core::ffi::c_ulong; +pub type __id_t = ::core::ffi::c_uint; +pub type __time_t = ::core::ffi::c_long; +pub type __useconds_t = ::core::ffi::c_uint; +pub type __suseconds_t = ::core::ffi::c_long; +pub type __suseconds64_t = ::core::ffi::c_long; +pub type __daddr_t = ::core::ffi::c_int; +pub type __key_t = ::core::ffi::c_int; +pub type __clockid_t = ::core::ffi::c_int; +pub type __timer_t = *mut ::core::ffi::c_void; +pub type __blksize_t = ::core::ffi::c_long; +pub type __blkcnt_t = ::core::ffi::c_long; +pub type __blkcnt64_t = ::core::ffi::c_long; +pub type __fsblkcnt_t = ::core::ffi::c_ulong; +pub type __fsblkcnt64_t = ::core::ffi::c_ulong; +pub type __fsfilcnt_t = ::core::ffi::c_ulong; +pub type __fsfilcnt64_t = ::core::ffi::c_ulong; +pub type __fsword_t = ::core::ffi::c_long; +pub type __ssize_t = ::core::ffi::c_long; +pub type __syscall_slong_t = ::core::ffi::c_long; +pub type __syscall_ulong_t = ::core::ffi::c_ulong; +pub type __loff_t = __off64_t; +pub type __caddr_t = *mut ::core::ffi::c_char; +pub type __intptr_t = ::core::ffi::c_long; +pub type __socklen_t = ::core::ffi::c_uint; +pub type __sig_atomic_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __mbstate_t { + pub __count: ::core::ffi::c_int, + pub __value: __mbstate_t__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __mbstate_t__bindgen_ty_1 { + pub __wch: ::core::ffi::c_uint, + pub __wchb: [::core::ffi::c_char; 4usize], +} +impl Default for __mbstate_t__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for __mbstate_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct _G_fpos_t { + pub __pos: __off_t, + pub __state: __mbstate_t, +} +impl Default for _G_fpos_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __fpos_t = _G_fpos_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct _G_fpos64_t { + pub __pos: __off64_t, + pub __state: __mbstate_t, +} +impl Default for _G_fpos64_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __fpos64_t = _G_fpos64_t; +pub type __FILE = _IO_FILE; +pub type FILE = _IO_FILE; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_marker { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_codecvt { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_wide_data { + _unused: [u8; 0], +} +pub type _IO_lock_t = ::core::ffi::c_void; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _IO_FILE { + pub _flags: ::core::ffi::c_int, + pub _IO_read_ptr: *mut ::core::ffi::c_char, + pub _IO_read_end: *mut ::core::ffi::c_char, + pub _IO_read_base: *mut ::core::ffi::c_char, + pub _IO_write_base: *mut ::core::ffi::c_char, + pub _IO_write_ptr: *mut ::core::ffi::c_char, + pub _IO_write_end: *mut ::core::ffi::c_char, + pub _IO_buf_base: *mut ::core::ffi::c_char, + pub _IO_buf_end: *mut ::core::ffi::c_char, + pub _IO_save_base: *mut ::core::ffi::c_char, + pub _IO_backup_base: *mut ::core::ffi::c_char, + pub _IO_save_end: *mut ::core::ffi::c_char, + pub _markers: *mut _IO_marker, + pub _chain: *mut _IO_FILE, + pub _fileno: ::core::ffi::c_int, + pub _flags2: ::core::ffi::c_int, + pub _old_offset: __off_t, + pub _cur_column: ::core::ffi::c_ushort, + pub _vtable_offset: ::core::ffi::c_schar, + pub _shortbuf: [::core::ffi::c_char; 1usize], + pub _lock: *mut _IO_lock_t, + pub _offset: __off64_t, + pub _codecvt: *mut _IO_codecvt, + pub _wide_data: *mut _IO_wide_data, + pub _freeres_list: *mut _IO_FILE, + pub _freeres_buf: *mut ::core::ffi::c_void, + pub __pad5: usize, + pub _mode: ::core::ffi::c_int, + pub _unused2: [::core::ffi::c_char; 20usize], +} +impl Default for _IO_FILE { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type va_list = __gnuc_va_list; +pub type off_t = __off_t; +pub type fpos_t = __fpos_t; +pub type _Float32 = f32; +pub type _Float64 = f64; +pub type _Float32x = f64; +pub type _Float64x = u128; +pub type wchar_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct div_t { + pub quot: ::core::ffi::c_int, + pub rem: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ldiv_t { + pub quot: ::core::ffi::c_long, + pub rem: ::core::ffi::c_long, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct lldiv_t { + pub quot: ::core::ffi::c_longlong, + pub rem: ::core::ffi::c_longlong, +} +pub type u_char = __u_char; +pub type u_short = __u_short; +pub type u_int = __u_int; +pub type u_long = __u_long; +pub type quad_t = __quad_t; +pub type u_quad_t = __u_quad_t; +pub type fsid_t = __fsid_t; +pub type loff_t = __loff_t; +pub type ino_t = __ino_t; +pub type dev_t = __dev_t; +pub type gid_t = __gid_t; +pub type mode_t = __mode_t; +pub type nlink_t = __nlink_t; +pub type uid_t = __uid_t; +pub type pid_t = __pid_t; +pub type id_t = __id_t; +pub type daddr_t = __daddr_t; +pub type caddr_t = __caddr_t; +pub type key_t = __key_t; +pub type clock_t = __clock_t; +pub type clockid_t = __clockid_t; +pub type time_t = __time_t; +pub type timer_t = __timer_t; +pub type ulong = ::core::ffi::c_ulong; +pub type ushort = ::core::ffi::c_ushort; +pub type uint = ::core::ffi::c_uint; +pub type u_int8_t = __uint8_t; +pub type u_int16_t = __uint16_t; +pub type u_int32_t = __uint32_t; +pub type u_int64_t = __uint64_t; +pub type register_t = ::core::ffi::c_long; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __sigset_t { + pub __val: [::core::ffi::c_ulong; 16usize], +} +pub type sigset_t = __sigset_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct timeval { + pub tv_sec: __time_t, + pub tv_usec: __suseconds_t, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct timespec { + pub tv_sec: __time_t, + pub tv_nsec: __syscall_slong_t, +} +pub type suseconds_t = __suseconds_t; +pub type __fd_mask = ::core::ffi::c_long; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct fd_set { + pub __fds_bits: [__fd_mask; 16usize], +} +pub type fd_mask = __fd_mask; +pub type blksize_t = __blksize_t; +pub type blkcnt_t = __blkcnt_t; +pub type fsblkcnt_t = __fsblkcnt_t; +pub type fsfilcnt_t = __fsfilcnt_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub union __atomic_wide_counter { + pub __value64: ::core::ffi::c_ulonglong, + pub __value32: __atomic_wide_counter__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __atomic_wide_counter__bindgen_ty_1 { + pub __low: ::core::ffi::c_uint, + pub __high: ::core::ffi::c_uint, +} +impl Default for __atomic_wide_counter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_list { + pub __prev: *mut __pthread_internal_list, + pub __next: *mut __pthread_internal_list, +} +impl Default for __pthread_internal_list { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_list_t = __pthread_internal_list; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __pthread_internal_slist { + pub __next: *mut __pthread_internal_slist, +} +impl Default for __pthread_internal_slist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __pthread_slist_t = __pthread_internal_slist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __pthread_mutex_s { + pub __lock: ::core::ffi::c_int, + pub __count: ::core::ffi::c_uint, + pub __owner: ::core::ffi::c_int, + pub __nusers: ::core::ffi::c_uint, + pub __kind: ::core::ffi::c_int, + pub __spins: ::core::ffi::c_short, + pub __elision: ::core::ffi::c_short, + pub __list: __pthread_list_t, +} +impl Default for __pthread_mutex_s { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __pthread_rwlock_arch_t { + pub __readers: ::core::ffi::c_uint, + pub __writers: ::core::ffi::c_uint, + pub __wrphase_futex: ::core::ffi::c_uint, + pub __writers_futex: ::core::ffi::c_uint, + pub __pad3: ::core::ffi::c_uint, + pub __pad4: ::core::ffi::c_uint, + pub __cur_writer: ::core::ffi::c_int, + pub __shared: ::core::ffi::c_int, + pub __rwelision: ::core::ffi::c_schar, + pub __pad1: [::core::ffi::c_uchar; 7usize], + pub __pad2: ::core::ffi::c_ulong, + pub __flags: ::core::ffi::c_uint, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __pthread_cond_s { + pub __wseq: __atomic_wide_counter, + pub __g1_start: __atomic_wide_counter, + pub __g_refs: [::core::ffi::c_uint; 2usize], + pub __g_size: [::core::ffi::c_uint; 2usize], + pub __g1_orig_size: ::core::ffi::c_uint, + pub __wrefs: ::core::ffi::c_uint, + pub __g_signals: [::core::ffi::c_uint; 2usize], +} +impl Default for __pthread_cond_s { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __tss_t = ::core::ffi::c_uint; +pub type __thrd_t = ::core::ffi::c_ulong; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __once_flag { + pub __data: ::core::ffi::c_int, +} +pub type pthread_t = ::core::ffi::c_ulong; +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_mutexattr_t { + pub __size: [::core::ffi::c_char; 4usize], + pub __align: ::core::ffi::c_int, +} +impl Default for pthread_mutexattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_condattr_t { + pub __size: [::core::ffi::c_char; 4usize], + pub __align: ::core::ffi::c_int, +} +impl Default for pthread_condattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pthread_key_t = ::core::ffi::c_uint; +pub type pthread_once_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_attr_t { + pub __size: [::core::ffi::c_char; 56usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_attr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_mutex_t { + pub __data: __pthread_mutex_s, + pub __size: [::core::ffi::c_char; 40usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_mutex_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_cond_t { + pub __data: __pthread_cond_s, + pub __size: [::core::ffi::c_char; 48usize], + pub __align: ::core::ffi::c_longlong, +} +impl Default for pthread_cond_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_rwlock_t { + pub __data: __pthread_rwlock_arch_t, + pub __size: [::core::ffi::c_char; 56usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_rwlock_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_rwlockattr_t { + pub __size: [::core::ffi::c_char; 8usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_rwlockattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pthread_spinlock_t = ::core::ffi::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_barrier_t { + pub __size: [::core::ffi::c_char; 32usize], + pub __align: ::core::ffi::c_long, +} +impl Default for pthread_barrier_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pthread_barrierattr_t { + pub __size: [::core::ffi::c_char; 4usize], + pub __align: ::core::ffi::c_int, +} +impl Default for pthread_barrierattr_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct random_data { + pub fptr: *mut i32, + pub rptr: *mut i32, + pub state: *mut i32, + pub rand_type: ::core::ffi::c_int, + pub rand_deg: ::core::ffi::c_int, + pub rand_sep: ::core::ffi::c_int, + pub end_ptr: *mut i32, +} +impl Default for random_data { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct drand48_data { + pub __x: [::core::ffi::c_ushort; 3usize], + pub __old_x: [::core::ffi::c_ushort; 3usize], + pub __c: ::core::ffi::c_ushort, + pub __init: ::core::ffi::c_ushort, + pub __a: ::core::ffi::c_ulonglong, +} +pub type __compar_fn_t = ::core::option::Option< + unsafe extern "C" fn( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __locale_struct { + pub __locales: [*mut __locale_data; 13usize], + pub __ctype_b: *const ::core::ffi::c_ushort, + pub __ctype_tolower: *const ::core::ffi::c_int, + pub __ctype_toupper: *const ::core::ffi::c_int, + pub __names: [*const ::core::ffi::c_char; 13usize], +} +impl Default for __locale_struct { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __locale_t = *mut __locale_struct; +pub type locale_t = __locale_t; +#[repr(C)] +#[repr(align(16))] +#[derive(Debug, Default, Copy, Clone)] +pub struct max_align_t { + pub __clang_max_align_nonce1: ::core::ffi::c_longlong, + pub __bindgen_padding_0: u64, + pub __clang_max_align_nonce2: u128, +} +pub type int_least8_t = __int_least8_t; +pub type int_least16_t = __int_least16_t; +pub type int_least32_t = __int_least32_t; +pub type int_least64_t = __int_least64_t; +pub type uint_least8_t = __uint_least8_t; +pub type uint_least16_t = __uint_least16_t; +pub type uint_least32_t = __uint_least32_t; +pub type uint_least64_t = __uint_least64_t; +pub type int_fast8_t = ::core::ffi::c_schar; +pub type int_fast16_t = ::core::ffi::c_long; +pub type int_fast32_t = ::core::ffi::c_long; +pub type int_fast64_t = ::core::ffi::c_long; +pub type uint_fast8_t = ::core::ffi::c_uchar; +pub type uint_fast16_t = ::core::ffi::c_ulong; +pub type uint_fast32_t = ::core::ffi::c_ulong; +pub type uint_fast64_t = ::core::ffi::c_ulong; +pub type intmax_t = __intmax_t; +pub type uintmax_t = __uintmax_t; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct lconv { + pub decimal_point: *mut ::core::ffi::c_char, + pub thousands_sep: *mut ::core::ffi::c_char, + pub grouping: *mut ::core::ffi::c_char, + pub int_curr_symbol: *mut ::core::ffi::c_char, + pub currency_symbol: *mut ::core::ffi::c_char, + pub mon_decimal_point: *mut ::core::ffi::c_char, + pub mon_thousands_sep: *mut ::core::ffi::c_char, + pub mon_grouping: *mut ::core::ffi::c_char, + pub positive_sign: *mut ::core::ffi::c_char, + pub negative_sign: *mut ::core::ffi::c_char, + pub int_frac_digits: ::core::ffi::c_char, + pub frac_digits: ::core::ffi::c_char, + pub p_cs_precedes: ::core::ffi::c_char, + pub p_sep_by_space: ::core::ffi::c_char, + pub n_cs_precedes: ::core::ffi::c_char, + pub n_sep_by_space: ::core::ffi::c_char, + pub p_sign_posn: ::core::ffi::c_char, + pub n_sign_posn: ::core::ffi::c_char, + pub int_p_cs_precedes: ::core::ffi::c_char, + pub int_p_sep_by_space: ::core::ffi::c_char, + pub int_n_cs_precedes: ::core::ffi::c_char, + pub int_n_sep_by_space: ::core::ffi::c_char, + pub int_p_sign_posn: ::core::ffi::c_char, + pub int_n_sign_posn: ::core::ffi::c_char, +} +impl Default for lconv { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pg_funcptr_t = ::core::option::Option; +pub type Pointer = *mut ::core::ffi::c_char; +pub type int8 = ::core::ffi::c_schar; +pub type int16 = ::core::ffi::c_short; +pub type int32 = ::core::ffi::c_int; +pub type uint8 = ::core::ffi::c_uchar; +pub type uint16 = ::core::ffi::c_ushort; +pub type uint32 = ::core::ffi::c_uint; +pub type bits8 = uint8; +pub type bits16 = uint16; +pub type bits32 = uint32; +pub type int64 = ::core::ffi::c_long; +pub type uint64 = ::core::ffi::c_ulong; +pub type int128 = i128; +pub type uint128 = u128; +pub type Size = usize; +pub type Index = ::core::ffi::c_uint; +pub type Offset = ::core::ffi::c_int; +pub type float4 = f32; +pub type float8 = f64; +pub type regproc = Oid; +pub type RegProcedure = regproc; +pub type TransactionId = uint32; +pub type LocalTransactionId = uint32; +pub type SubTransactionId = uint32; +pub type MultiXactId = TransactionId; +pub type MultiXactOffset = uint32; +pub type CommandId = uint32; +#[repr(C)] +#[derive(Debug, Default)] +pub struct varlena { + pub vl_len_: [::core::ffi::c_char; 4usize], + pub vl_dat: __IncompleteArrayField<::core::ffi::c_char>, +} +pub type bytea = varlena; +pub type text = varlena; +pub type BpChar = varlena; +pub type VarChar = varlena; +#[repr(C)] +#[derive(Debug)] +pub struct int2vector { + pub vl_len_: int32, + pub ndim: ::core::ffi::c_int, + pub dataoffset: int32, + pub elemtype: Oid, + pub dim1: ::core::ffi::c_int, + pub lbound1: ::core::ffi::c_int, + pub values: __IncompleteArrayField, +} +impl Default for int2vector { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct oidvector { + pub vl_len_: int32, + pub ndim: ::core::ffi::c_int, + pub dataoffset: int32, + pub elemtype: Oid, + pub dim1: ::core::ffi::c_int, + pub lbound1: ::core::ffi::c_int, + pub values: __IncompleteArrayField, +} +impl Default for oidvector { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nameData { + pub data: [::core::ffi::c_char; 64usize], +} +impl Default for nameData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type NameData = nameData; +pub type Name = *mut NameData; +#[repr(C)] +#[derive(Copy, Clone)] +pub union PGAlignedBlock { + pub data: [::core::ffi::c_char; 8192usize], + pub force_align_d: f64, + pub force_align_i64: int64, +} +impl Default for PGAlignedBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[repr(align(4096))] +#[derive(Copy, Clone)] +pub union PGIOAlignedBlock { + pub data: [::core::ffi::c_char; 8192usize], + pub force_align_d: f64, + pub force_align_i64: int64, +} +impl Default for PGIOAlignedBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[repr(align(4096))] +#[derive(Copy, Clone)] +pub union PGAlignedXLogBlock { + pub data: [::core::ffi::c_char; 8192usize], + pub force_align_d: f64, + pub force_align_i64: int64, +} +impl Default for PGAlignedXLogBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_1 { + pub type Type = ::core::ffi::c_uint; + pub const _ISupper: Type = 256; + pub const _ISlower: Type = 512; + pub const _ISalpha: Type = 1024; + pub const _ISdigit: Type = 2048; + pub const _ISxdigit: Type = 4096; + pub const _ISspace: Type = 8192; + pub const _ISprint: Type = 16384; + pub const _ISgraph: Type = 32768; + pub const _ISblank: Type = 1; + pub const _IScntrl: Type = 2; + pub const _ISpunct: Type = 4; + pub const _ISalnum: Type = 8; +} +pub type pgsocket = ::core::ffi::c_int; +pub type float_t = f32; +pub type double_t = f64; +pub mod _bindgen_ty_2 { + pub type Type = ::core::ffi::c_uint; + pub const FP_NAN: Type = 0; + pub const FP_INFINITE: Type = 1; + pub const FP_ZERO: Type = 2; + pub const FP_SUBNORMAL: Type = 3; + pub const FP_NORMAL: Type = 4; +} +pub type qsort_arg_comparator = ::core::option::Option< + unsafe extern "C" fn( + a: *const ::core::ffi::c_void, + b: *const ::core::ffi::c_void, + arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int, +>; +pub type pqsigfunc = + ::core::option::Option; +pub type __jmp_buf = [::core::ffi::c_long; 8usize]; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __jmp_buf_tag { + pub __jmpbuf: __jmp_buf, + pub __mask_was_saved: ::core::ffi::c_int, + pub __saved_mask: __sigset_t, +} +pub type jmp_buf = [__jmp_buf_tag; 1usize]; +pub type sigjmp_buf = [__jmp_buf_tag; 1usize]; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StringInfoData { + pub data: *mut ::core::ffi::c_char, + pub len: ::core::ffi::c_int, + pub maxlen: ::core::ffi::c_int, + pub cursor: ::core::ffi::c_int, +} +impl Default for StringInfoData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type StringInfo = *mut StringInfoData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ErrorContextCallback { + pub previous: *mut ErrorContextCallback, + pub callback: ::core::option::Option, + pub arg: *mut ::core::ffi::c_void, +} +impl Default for ErrorContextCallback { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ErrorData { + pub elevel: ::core::ffi::c_int, + pub output_to_server: bool, + pub output_to_client: bool, + pub hide_stmt: bool, + pub hide_ctx: bool, + pub filename: *const ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub funcname: *const ::core::ffi::c_char, + pub domain: *const ::core::ffi::c_char, + pub context_domain: *const ::core::ffi::c_char, + pub sqlerrcode: ::core::ffi::c_int, + pub message: *mut ::core::ffi::c_char, + pub detail: *mut ::core::ffi::c_char, + pub detail_log: *mut ::core::ffi::c_char, + pub hint: *mut ::core::ffi::c_char, + pub context: *mut ::core::ffi::c_char, + pub backtrace: *mut ::core::ffi::c_char, + pub message_id: *const ::core::ffi::c_char, + pub schema_name: *mut ::core::ffi::c_char, + pub table_name: *mut ::core::ffi::c_char, + pub column_name: *mut ::core::ffi::c_char, + pub datatype_name: *mut ::core::ffi::c_char, + pub constraint_name: *mut ::core::ffi::c_char, + pub cursorpos: ::core::ffi::c_int, + pub internalpos: ::core::ffi::c_int, + pub internalquery: *mut ::core::ffi::c_char, + pub saved_errno: ::core::ffi::c_int, + pub assoc_context: *mut MemoryContextData, +} +impl Default for ErrorData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type emit_log_hook_type = ::core::option::Option; +pub mod PGErrorVerbosity { + pub type Type = ::core::ffi::c_uint; + pub const PGERROR_TERSE: Type = 0; + pub const PGERROR_DEFAULT: Type = 1; + pub const PGERROR_VERBOSE: Type = 2; +} +pub type MemoryContext = *mut MemoryContextData; +pub type MemoryContextCallbackFunction = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoryContextCallback { + pub func: MemoryContextCallbackFunction, + pub arg: *mut ::core::ffi::c_void, + pub next: *mut MemoryContextCallback, +} +impl Default for MemoryContextCallback { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NullableDatum { + pub value: Datum, + pub isnull: bool, +} +impl Default for NullableDatum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type AttrNumber = int16; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_attribute { + pub attrelid: Oid, + pub attname: NameData, + pub atttypid: Oid, + pub attlen: int16, + pub attnum: int16, + pub attcacheoff: int32, + pub atttypmod: int32, + pub attndims: int16, + pub attbyval: bool, + pub attalign: ::core::ffi::c_char, + pub attstorage: ::core::ffi::c_char, + pub attcompression: ::core::ffi::c_char, + pub attnotnull: bool, + pub atthasdef: bool, + pub atthasmissing: bool, + pub attidentity: ::core::ffi::c_char, + pub attgenerated: ::core::ffi::c_char, + pub attisdropped: bool, + pub attislocal: bool, + pub attinhcount: int16, + pub attcollation: Oid, +} +impl Default for FormData_pg_attribute { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_attribute = *mut FormData_pg_attribute; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormExtraData_pg_attribute { + pub attstattarget: NullableDatum, + pub attoptions: NullableDatum, +} +impl Default for FormExtraData_pg_attribute { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum NodeTag { + T_Invalid = 0, + T_List = 1, + T_Alias = 2, + T_RangeVar = 3, + T_TableFunc = 4, + T_IntoClause = 5, + T_Var = 6, + T_Const = 7, + T_Param = 8, + T_Aggref = 9, + T_GroupingFunc = 10, + T_WindowFunc = 11, + T_WindowFuncRunCondition = 12, + T_MergeSupportFunc = 13, + T_SubscriptingRef = 14, + T_FuncExpr = 15, + T_NamedArgExpr = 16, + T_OpExpr = 17, + T_DistinctExpr = 18, + T_NullIfExpr = 19, + T_ScalarArrayOpExpr = 20, + T_BoolExpr = 21, + T_SubLink = 22, + T_SubPlan = 23, + T_AlternativeSubPlan = 24, + T_FieldSelect = 25, + T_FieldStore = 26, + T_RelabelType = 27, + T_CoerceViaIO = 28, + T_ArrayCoerceExpr = 29, + T_ConvertRowtypeExpr = 30, + T_CollateExpr = 31, + T_CaseExpr = 32, + T_CaseWhen = 33, + T_CaseTestExpr = 34, + T_ArrayExpr = 35, + T_RowExpr = 36, + T_RowCompareExpr = 37, + T_CoalesceExpr = 38, + T_MinMaxExpr = 39, + T_SQLValueFunction = 40, + T_XmlExpr = 41, + T_JsonFormat = 42, + T_JsonReturning = 43, + T_JsonValueExpr = 44, + T_JsonConstructorExpr = 45, + T_JsonIsPredicate = 46, + T_JsonBehavior = 47, + T_JsonExpr = 48, + T_JsonTablePath = 49, + T_JsonTablePathScan = 50, + T_JsonTableSiblingJoin = 51, + T_NullTest = 52, + T_BooleanTest = 53, + T_MergeAction = 54, + T_CoerceToDomain = 55, + T_CoerceToDomainValue = 56, + T_SetToDefault = 57, + T_CurrentOfExpr = 58, + T_NextValueExpr = 59, + T_InferenceElem = 60, + T_TargetEntry = 61, + T_RangeTblRef = 62, + T_JoinExpr = 63, + T_FromExpr = 64, + T_OnConflictExpr = 65, + T_Query = 66, + T_TypeName = 67, + T_ColumnRef = 68, + T_ParamRef = 69, + T_A_Expr = 70, + T_A_Const = 71, + T_TypeCast = 72, + T_CollateClause = 73, + T_RoleSpec = 74, + T_FuncCall = 75, + T_A_Star = 76, + T_A_Indices = 77, + T_A_Indirection = 78, + T_A_ArrayExpr = 79, + T_ResTarget = 80, + T_MultiAssignRef = 81, + T_SortBy = 82, + T_WindowDef = 83, + T_RangeSubselect = 84, + T_RangeFunction = 85, + T_RangeTableFunc = 86, + T_RangeTableFuncCol = 87, + T_RangeTableSample = 88, + T_ColumnDef = 89, + T_TableLikeClause = 90, + T_IndexElem = 91, + T_DefElem = 92, + T_LockingClause = 93, + T_XmlSerialize = 94, + T_PartitionElem = 95, + T_PartitionSpec = 96, + T_PartitionBoundSpec = 97, + T_PartitionRangeDatum = 98, + T_SinglePartitionSpec = 99, + T_PartitionCmd = 100, + T_RangeTblEntry = 101, + T_RTEPermissionInfo = 102, + T_RangeTblFunction = 103, + T_TableSampleClause = 104, + T_WithCheckOption = 105, + T_SortGroupClause = 106, + T_GroupingSet = 107, + T_WindowClause = 108, + T_RowMarkClause = 109, + T_WithClause = 110, + T_InferClause = 111, + T_OnConflictClause = 112, + T_CTESearchClause = 113, + T_CTECycleClause = 114, + T_CommonTableExpr = 115, + T_MergeWhenClause = 116, + T_TriggerTransition = 117, + T_JsonOutput = 118, + T_JsonArgument = 119, + T_JsonFuncExpr = 120, + T_JsonTablePathSpec = 121, + T_JsonTable = 122, + T_JsonTableColumn = 123, + T_JsonKeyValue = 124, + T_JsonParseExpr = 125, + T_JsonScalarExpr = 126, + T_JsonSerializeExpr = 127, + T_JsonObjectConstructor = 128, + T_JsonArrayConstructor = 129, + T_JsonArrayQueryConstructor = 130, + T_JsonAggConstructor = 131, + T_JsonObjectAgg = 132, + T_JsonArrayAgg = 133, + T_RawStmt = 134, + T_InsertStmt = 135, + T_DeleteStmt = 136, + T_UpdateStmt = 137, + T_MergeStmt = 138, + T_SelectStmt = 139, + T_SetOperationStmt = 140, + T_ReturnStmt = 141, + T_PLAssignStmt = 142, + T_CreateSchemaStmt = 143, + T_AlterTableStmt = 144, + T_ReplicaIdentityStmt = 145, + T_AlterTableCmd = 146, + T_AlterCollationStmt = 147, + T_AlterDomainStmt = 148, + T_GrantStmt = 149, + T_ObjectWithArgs = 150, + T_AccessPriv = 151, + T_GrantRoleStmt = 152, + T_AlterDefaultPrivilegesStmt = 153, + T_CopyStmt = 154, + T_VariableSetStmt = 155, + T_VariableShowStmt = 156, + T_CreateStmt = 157, + T_Constraint = 158, + T_CreateTableSpaceStmt = 159, + T_DropTableSpaceStmt = 160, + T_AlterTableSpaceOptionsStmt = 161, + T_AlterTableMoveAllStmt = 162, + T_CreateExtensionStmt = 163, + T_AlterExtensionStmt = 164, + T_AlterExtensionContentsStmt = 165, + T_CreateFdwStmt = 166, + T_AlterFdwStmt = 167, + T_CreateForeignServerStmt = 168, + T_AlterForeignServerStmt = 169, + T_CreateForeignTableStmt = 170, + T_CreateUserMappingStmt = 171, + T_AlterUserMappingStmt = 172, + T_DropUserMappingStmt = 173, + T_ImportForeignSchemaStmt = 174, + T_CreatePolicyStmt = 175, + T_AlterPolicyStmt = 176, + T_CreateAmStmt = 177, + T_CreateTrigStmt = 178, + T_CreateEventTrigStmt = 179, + T_AlterEventTrigStmt = 180, + T_CreatePLangStmt = 181, + T_CreateRoleStmt = 182, + T_AlterRoleStmt = 183, + T_AlterRoleSetStmt = 184, + T_DropRoleStmt = 185, + T_CreateSeqStmt = 186, + T_AlterSeqStmt = 187, + T_DefineStmt = 188, + T_CreateDomainStmt = 189, + T_CreateOpClassStmt = 190, + T_CreateOpClassItem = 191, + T_CreateOpFamilyStmt = 192, + T_AlterOpFamilyStmt = 193, + T_DropStmt = 194, + T_TruncateStmt = 195, + T_CommentStmt = 196, + T_SecLabelStmt = 197, + T_DeclareCursorStmt = 198, + T_ClosePortalStmt = 199, + T_FetchStmt = 200, + T_IndexStmt = 201, + T_CreateStatsStmt = 202, + T_StatsElem = 203, + T_AlterStatsStmt = 204, + T_CreateFunctionStmt = 205, + T_FunctionParameter = 206, + T_AlterFunctionStmt = 207, + T_DoStmt = 208, + T_InlineCodeBlock = 209, + T_CallStmt = 210, + T_CallContext = 211, + T_RenameStmt = 212, + T_AlterObjectDependsStmt = 213, + T_AlterObjectSchemaStmt = 214, + T_AlterOwnerStmt = 215, + T_AlterOperatorStmt = 216, + T_AlterTypeStmt = 217, + T_RuleStmt = 218, + T_NotifyStmt = 219, + T_ListenStmt = 220, + T_UnlistenStmt = 221, + T_TransactionStmt = 222, + T_CompositeTypeStmt = 223, + T_CreateEnumStmt = 224, + T_CreateRangeStmt = 225, + T_AlterEnumStmt = 226, + T_ViewStmt = 227, + T_LoadStmt = 228, + T_CreatedbStmt = 229, + T_AlterDatabaseStmt = 230, + T_AlterDatabaseRefreshCollStmt = 231, + T_AlterDatabaseSetStmt = 232, + T_DropdbStmt = 233, + T_AlterSystemStmt = 234, + T_ClusterStmt = 235, + T_VacuumStmt = 236, + T_VacuumRelation = 237, + T_ExplainStmt = 238, + T_CreateTableAsStmt = 239, + T_RefreshMatViewStmt = 240, + T_CheckPointStmt = 241, + T_DiscardStmt = 242, + T_LockStmt = 243, + T_ConstraintsSetStmt = 244, + T_ReindexStmt = 245, + T_CreateConversionStmt = 246, + T_CreateCastStmt = 247, + T_CreateTransformStmt = 248, + T_PrepareStmt = 249, + T_ExecuteStmt = 250, + T_DeallocateStmt = 251, + T_DropOwnedStmt = 252, + T_ReassignOwnedStmt = 253, + T_AlterTSDictionaryStmt = 254, + T_AlterTSConfigurationStmt = 255, + T_PublicationTable = 256, + T_PublicationObjSpec = 257, + T_CreatePublicationStmt = 258, + T_AlterPublicationStmt = 259, + T_CreateSubscriptionStmt = 260, + T_AlterSubscriptionStmt = 261, + T_DropSubscriptionStmt = 262, + T_PlannerGlobal = 263, + T_PlannerInfo = 264, + T_RelOptInfo = 265, + T_IndexOptInfo = 266, + T_ForeignKeyOptInfo = 267, + T_StatisticExtInfo = 268, + T_JoinDomain = 269, + T_EquivalenceClass = 270, + T_EquivalenceMember = 271, + T_PathKey = 272, + T_GroupByOrdering = 273, + T_PathTarget = 274, + T_ParamPathInfo = 275, + T_Path = 276, + T_IndexPath = 277, + T_IndexClause = 278, + T_BitmapHeapPath = 279, + T_BitmapAndPath = 280, + T_BitmapOrPath = 281, + T_TidPath = 282, + T_TidRangePath = 283, + T_SubqueryScanPath = 284, + T_ForeignPath = 285, + T_CustomPath = 286, + T_AppendPath = 287, + T_MergeAppendPath = 288, + T_GroupResultPath = 289, + T_MaterialPath = 290, + T_MemoizePath = 291, + T_UniquePath = 292, + T_GatherPath = 293, + T_GatherMergePath = 294, + T_NestPath = 295, + T_MergePath = 296, + T_HashPath = 297, + T_ProjectionPath = 298, + T_ProjectSetPath = 299, + T_SortPath = 300, + T_IncrementalSortPath = 301, + T_GroupPath = 302, + T_UpperUniquePath = 303, + T_AggPath = 304, + T_GroupingSetData = 305, + T_RollupData = 306, + T_GroupingSetsPath = 307, + T_MinMaxAggPath = 308, + T_WindowAggPath = 309, + T_SetOpPath = 310, + T_RecursiveUnionPath = 311, + T_LockRowsPath = 312, + T_ModifyTablePath = 313, + T_LimitPath = 314, + T_RestrictInfo = 315, + T_PlaceHolderVar = 316, + T_SpecialJoinInfo = 317, + T_OuterJoinClauseInfo = 318, + T_AppendRelInfo = 319, + T_RowIdentityVarInfo = 320, + T_PlaceHolderInfo = 321, + T_MinMaxAggInfo = 322, + T_PlannerParamItem = 323, + T_AggInfo = 324, + T_AggTransInfo = 325, + T_PlannedStmt = 326, + T_Result = 327, + T_ProjectSet = 328, + T_ModifyTable = 329, + T_Append = 330, + T_MergeAppend = 331, + T_RecursiveUnion = 332, + T_BitmapAnd = 333, + T_BitmapOr = 334, + T_SeqScan = 335, + T_SampleScan = 336, + T_IndexScan = 337, + T_IndexOnlyScan = 338, + T_BitmapIndexScan = 339, + T_BitmapHeapScan = 340, + T_TidScan = 341, + T_TidRangeScan = 342, + T_SubqueryScan = 343, + T_FunctionScan = 344, + T_ValuesScan = 345, + T_TableFuncScan = 346, + T_CteScan = 347, + T_NamedTuplestoreScan = 348, + T_WorkTableScan = 349, + T_ForeignScan = 350, + T_CustomScan = 351, + T_NestLoop = 352, + T_NestLoopParam = 353, + T_MergeJoin = 354, + T_HashJoin = 355, + T_Material = 356, + T_Memoize = 357, + T_Sort = 358, + T_IncrementalSort = 359, + T_Group = 360, + T_Agg = 361, + T_WindowAgg = 362, + T_Unique = 363, + T_Gather = 364, + T_GatherMerge = 365, + T_Hash = 366, + T_SetOp = 367, + T_LockRows = 368, + T_Limit = 369, + T_PlanRowMark = 370, + T_PartitionPruneInfo = 371, + T_PartitionedRelPruneInfo = 372, + T_PartitionPruneStepOp = 373, + T_PartitionPruneStepCombine = 374, + T_PlanInvalItem = 375, + T_ExprState = 376, + T_IndexInfo = 377, + T_ExprContext = 378, + T_ReturnSetInfo = 379, + T_ProjectionInfo = 380, + T_JunkFilter = 381, + T_OnConflictSetState = 382, + T_MergeActionState = 383, + T_ResultRelInfo = 384, + T_EState = 385, + T_WindowFuncExprState = 386, + T_SetExprState = 387, + T_SubPlanState = 388, + T_DomainConstraintState = 389, + T_ResultState = 390, + T_ProjectSetState = 391, + T_ModifyTableState = 392, + T_AppendState = 393, + T_MergeAppendState = 394, + T_RecursiveUnionState = 395, + T_BitmapAndState = 396, + T_BitmapOrState = 397, + T_ScanState = 398, + T_SeqScanState = 399, + T_SampleScanState = 400, + T_IndexScanState = 401, + T_IndexOnlyScanState = 402, + T_BitmapIndexScanState = 403, + T_BitmapHeapScanState = 404, + T_TidScanState = 405, + T_TidRangeScanState = 406, + T_SubqueryScanState = 407, + T_FunctionScanState = 408, + T_ValuesScanState = 409, + T_TableFuncScanState = 410, + T_CteScanState = 411, + T_NamedTuplestoreScanState = 412, + T_WorkTableScanState = 413, + T_ForeignScanState = 414, + T_CustomScanState = 415, + T_JoinState = 416, + T_NestLoopState = 417, + T_MergeJoinState = 418, + T_HashJoinState = 419, + T_MaterialState = 420, + T_MemoizeState = 421, + T_SortState = 422, + T_IncrementalSortState = 423, + T_GroupState = 424, + T_AggState = 425, + T_WindowAggState = 426, + T_UniqueState = 427, + T_GatherState = 428, + T_GatherMergeState = 429, + T_HashState = 430, + T_SetOpState = 431, + T_LockRowsState = 432, + T_LimitState = 433, + T_IndexAmRoutine = 434, + T_TableAmRoutine = 435, + T_TsmRoutine = 436, + T_EventTriggerData = 437, + T_TriggerData = 438, + T_TupleTableSlot = 439, + T_FdwRoutine = 440, + T_Bitmapset = 441, + T_ExtensibleNode = 442, + T_ErrorSaveContext = 443, + T_IdentifySystemCmd = 444, + T_BaseBackupCmd = 445, + T_CreateReplicationSlotCmd = 446, + T_DropReplicationSlotCmd = 447, + T_AlterReplicationSlotCmd = 448, + T_StartReplicationCmd = 449, + T_ReadReplicationSlotCmd = 450, + T_TimeLineHistoryCmd = 451, + T_UploadManifestCmd = 452, + T_SupportRequestSimplify = 453, + T_SupportRequestSelectivity = 454, + T_SupportRequestCost = 455, + T_SupportRequestRows = 456, + T_SupportRequestIndexCondition = 457, + T_SupportRequestWFuncMonotonic = 458, + T_SupportRequestOptimizeWindowClause = 459, + T_Integer = 460, + T_Float = 461, + T_Boolean = 462, + T_String = 463, + T_BitString = 464, + T_ForeignKeyCacheInfo = 465, + T_IntList = 466, + T_OidList = 467, + T_XidList = 468, + T_AllocSetContext = 469, + T_GenerationContext = 470, + T_SlabContext = 471, + T_BumpContext = 472, + T_TIDBitmap = 473, + T_WindowObjectData = 474, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Node { + pub type_: NodeTag, +} +impl Default for Node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParseLoc = ::core::ffi::c_int; +pub type Selectivity = f64; +pub type Cost = f64; +pub type Cardinality = f64; +pub mod CmdType { + pub type Type = ::core::ffi::c_uint; + pub const CMD_UNKNOWN: Type = 0; + pub const CMD_SELECT: Type = 1; + pub const CMD_UPDATE: Type = 2; + pub const CMD_INSERT: Type = 3; + pub const CMD_DELETE: Type = 4; + pub const CMD_MERGE: Type = 5; + pub const CMD_UTILITY: Type = 6; + pub const CMD_NOTHING: Type = 7; +} +pub mod JoinType { + pub type Type = ::core::ffi::c_uint; + pub const JOIN_INNER: Type = 0; + pub const JOIN_LEFT: Type = 1; + pub const JOIN_FULL: Type = 2; + pub const JOIN_RIGHT: Type = 3; + pub const JOIN_SEMI: Type = 4; + pub const JOIN_ANTI: Type = 5; + pub const JOIN_RIGHT_ANTI: Type = 6; + pub const JOIN_UNIQUE_OUTER: Type = 7; + pub const JOIN_UNIQUE_INNER: Type = 8; +} +pub mod AggStrategy { + pub type Type = ::core::ffi::c_uint; + pub const AGG_PLAIN: Type = 0; + pub const AGG_SORTED: Type = 1; + pub const AGG_HASHED: Type = 2; + pub const AGG_MIXED: Type = 3; +} +pub mod AggSplit { + pub type Type = ::core::ffi::c_uint; + pub const AGGSPLIT_SIMPLE: Type = 0; + pub const AGGSPLIT_INITIAL_SERIAL: Type = 6; + pub const AGGSPLIT_FINAL_DESERIAL: Type = 9; +} +pub mod SetOpCmd { + pub type Type = ::core::ffi::c_uint; + pub const SETOPCMD_INTERSECT: Type = 0; + pub const SETOPCMD_INTERSECT_ALL: Type = 1; + pub const SETOPCMD_EXCEPT: Type = 2; + pub const SETOPCMD_EXCEPT_ALL: Type = 3; +} +pub mod SetOpStrategy { + pub type Type = ::core::ffi::c_uint; + pub const SETOP_SORTED: Type = 0; + pub const SETOP_HASHED: Type = 1; +} +pub mod OnConflictAction { + pub type Type = ::core::ffi::c_uint; + pub const ONCONFLICT_NONE: Type = 0; + pub const ONCONFLICT_NOTHING: Type = 1; + pub const ONCONFLICT_UPDATE: Type = 2; +} +pub mod LimitOption { + pub type Type = ::core::ffi::c_uint; + pub const LIMIT_OPTION_COUNT: Type = 0; + pub const LIMIT_OPTION_WITH_TIES: Type = 1; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ListCell { + pub ptr_value: *mut ::core::ffi::c_void, + pub int_value: ::core::ffi::c_int, + pub oid_value: Oid, + pub xid_value: TransactionId, +} +impl Default for ListCell { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +pub struct List { + pub type_: NodeTag, + pub length: ::core::ffi::c_int, + pub max_length: ::core::ffi::c_int, + pub elements: *mut ListCell, + pub initial_elements: __IncompleteArrayField, +} +impl Default for List { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForEachState { + pub l: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForEachState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForBothState { + pub l1: *const List, + pub l2: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForBothState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForBothCellState { + pub l1: *const List, + pub l2: *const List, + pub i1: ::core::ffi::c_int, + pub i2: ::core::ffi::c_int, +} +impl Default for ForBothCellState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForThreeState { + pub l1: *const List, + pub l2: *const List, + pub l3: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForThreeState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForFourState { + pub l1: *const List, + pub l2: *const List, + pub l3: *const List, + pub l4: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForFourState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForFiveState { + pub l1: *const List, + pub l2: *const List, + pub l3: *const List, + pub l4: *const List, + pub l5: *const List, + pub i: ::core::ffi::c_int, +} +impl Default for ForFiveState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type list_sort_comparator = ::core::option::Option< + unsafe extern "C" fn(a: *const ListCell, b: *const ListCell) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttrDefault { + pub adnum: AttrNumber, + pub adbin: *mut ::core::ffi::c_char, +} +impl Default for AttrDefault { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConstrCheck { + pub ccname: *mut ::core::ffi::c_char, + pub ccbin: *mut ::core::ffi::c_char, + pub ccvalid: bool, + pub ccnoinherit: bool, +} +impl Default for ConstrCheck { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleConstr { + pub defval: *mut AttrDefault, + pub check: *mut ConstrCheck, + pub missing: *mut AttrMissing, + pub num_defval: uint16, + pub num_check: uint16, + pub has_not_null: bool, + pub has_generated_stored: bool, +} +impl Default for TupleConstr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct TupleDescData { + pub natts: ::core::ffi::c_int, + pub tdtypeid: Oid, + pub tdtypmod: int32, + pub tdrefcount: ::core::ffi::c_int, + pub constr: *mut TupleConstr, + pub attrs: __IncompleteArrayField, +} +impl Default for TupleDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TupleDesc = *mut TupleDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttrMap { + pub attnums: *mut AttrNumber, + pub maplen: ::core::ffi::c_int, +} +impl Default for AttrMap { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type BlockNumber = uint32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BlockIdData { + pub bi_hi: uint16, + pub bi_lo: uint16, +} +pub type BlockId = *mut BlockIdData; +#[repr(C)] +#[repr(align(4))] +#[derive(Debug, Default, Copy, Clone)] +pub struct ItemIdData { + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +} +impl ItemIdData { + #[inline] + pub fn lp_off(&self) -> ::core::ffi::c_uint { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 15u8) as u32) } + } + #[inline] + pub fn set_lp_off(&mut self, val: ::core::ffi::c_uint) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 15u8, val as u64) + } + } + #[inline] + pub fn lp_flags(&self) -> ::core::ffi::c_uint { + unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 2u8) as u32) } + } + #[inline] + pub fn set_lp_flags(&mut self, val: ::core::ffi::c_uint) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(15usize, 2u8, val as u64) + } + } + #[inline] + pub fn lp_len(&self) -> ::core::ffi::c_uint { + unsafe { ::core::mem::transmute(self._bitfield_1.get(17usize, 15u8) as u32) } + } + #[inline] + pub fn set_lp_len(&mut self, val: ::core::ffi::c_uint) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(17usize, 15u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + lp_off: ::core::ffi::c_uint, + lp_flags: ::core::ffi::c_uint, + lp_len: ::core::ffi::c_uint, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 15u8, { + let lp_off: u32 = unsafe { ::core::mem::transmute(lp_off) }; + lp_off as u64 + }); + __bindgen_bitfield_unit.set(15usize, 2u8, { + let lp_flags: u32 = unsafe { ::core::mem::transmute(lp_flags) }; + lp_flags as u64 + }); + __bindgen_bitfield_unit.set(17usize, 15u8, { + let lp_len: u32 = unsafe { ::core::mem::transmute(lp_len) }; + lp_len as u64 + }); + __bindgen_bitfield_unit + } +} +pub type ItemId = *mut ItemIdData; +pub type ItemOffset = uint16; +pub type ItemLength = uint16; +pub type OffsetNumber = uint16; +#[repr(C, packed(2))] +#[derive(Debug, Default, Copy, Clone)] +pub struct ItemPointerData { + pub ip_blkid: BlockIdData, + pub ip_posid: OffsetNumber, +} +pub type ItemPointer = *mut ItemPointerData; +pub type HeapTupleHeader = *mut HeapTupleHeaderData; +pub type MinimalTuple = *mut MinimalTupleData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeapTupleData { + pub t_len: uint32, + pub t_self: ItemPointerData, + pub t_tableOid: Oid, + pub t_data: HeapTupleHeader, +} +impl Default for HeapTupleData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type HeapTuple = *mut HeapTupleData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct flock { + pub l_type: ::core::ffi::c_short, + pub l_whence: ::core::ffi::c_short, + pub l_start: __off_t, + pub l_len: __off_t, + pub l_pid: __pid_t, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct stat { + pub st_dev: __dev_t, + pub st_ino: __ino_t, + pub st_nlink: __nlink_t, + pub st_mode: __mode_t, + pub st_uid: __uid_t, + pub st_gid: __gid_t, + pub __pad0: ::core::ffi::c_int, + pub st_rdev: __dev_t, + pub st_size: __off_t, + pub st_blksize: __blksize_t, + pub st_blocks: __blkcnt_t, + pub st_atim: timespec, + pub st_mtim: timespec, + pub st_ctim: timespec, + pub __glibc_reserved: [__syscall_slong_t; 3usize], +} +pub type XLogRecPtr = uint64; +pub type XLogSegNo = uint64; +pub type TimeLineID = uint32; +pub type RepOriginId = uint16; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct FullTransactionId { + pub value: uint64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TransamVariablesData { + pub nextOid: Oid, + pub oidCount: uint32, + pub nextXid: FullTransactionId, + pub oldestXid: TransactionId, + pub xidVacLimit: TransactionId, + pub xidWarnLimit: TransactionId, + pub xidStopLimit: TransactionId, + pub xidWrapLimit: TransactionId, + pub oldestXidDB: Oid, + pub oldestCommitTsXid: TransactionId, + pub newestCommitTsXid: TransactionId, + pub latestCompletedXid: FullTransactionId, + pub xactCompletionCount: uint64, + pub oldestClogXid: TransactionId, +} +impl Default for TransamVariablesData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Item = Pointer; +pub type Page = Pointer; +pub type LocationIndex = uint16; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PageXLogRecPtr { + pub xlogid: uint32, + pub xrecoff: uint32, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct PageHeaderData { + pub pd_lsn: PageXLogRecPtr, + pub pd_checksum: uint16, + pub pd_flags: uint16, + pub pd_lower: LocationIndex, + pub pd_upper: LocationIndex, + pub pd_special: LocationIndex, + pub pd_pagesize_version: uint16, + pub pd_prune_xid: TransactionId, + pub pd_linp: __IncompleteArrayField, +} +pub type PageHeader = *mut PageHeaderData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct varatt_external { + pub va_rawsize: int32, + pub va_extinfo: uint32, + pub va_valueid: Oid, + pub va_toastrelid: Oid, +} +impl Default for varatt_external { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct varatt_indirect { + pub pointer: *mut varlena, +} +impl Default for varatt_indirect { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct varatt_expanded { + pub eohptr: *mut ExpandedObjectHeader, +} +impl Default for varatt_expanded { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod vartag_external { + pub type Type = ::core::ffi::c_uint; + pub const VARTAG_INDIRECT: Type = 1; + pub const VARTAG_EXPANDED_RO: Type = 2; + pub const VARTAG_EXPANDED_RW: Type = 3; + pub const VARTAG_ONDISK: Type = 18; +} +#[repr(C)] +pub union varattrib_4b { + pub va_4byte: ::core::mem::ManuallyDrop, + pub va_compressed: ::core::mem::ManuallyDrop, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_4b__bindgen_ty_1 { + pub va_header: uint32, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_4b__bindgen_ty_2 { + pub va_header: uint32, + pub va_tcinfo: uint32, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for varattrib_4b { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_1b { + pub va_header: uint8, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct varattrib_1b_e { + pub va_header: uint8, + pub va_tag: uint8, + pub va_data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct HeapTupleFields { + pub t_xmin: TransactionId, + pub t_xmax: TransactionId, + pub t_field3: HeapTupleFields__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union HeapTupleFields__bindgen_ty_1 { + pub t_cid: CommandId, + pub t_xvac: TransactionId, +} +impl Default for HeapTupleFields__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for HeapTupleFields { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DatumTupleFields { + pub datum_len_: int32, + pub datum_typmod: int32, + pub datum_typeid: Oid, +} +impl Default for DatumTupleFields { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +pub struct HeapTupleHeaderData { + pub t_choice: HeapTupleHeaderData__bindgen_ty_1, + pub t_ctid: ItemPointerData, + pub t_infomask2: uint16, + pub t_infomask: uint16, + pub t_hoff: uint8, + pub t_bits: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union HeapTupleHeaderData__bindgen_ty_1 { + pub t_heap: HeapTupleFields, + pub t_datum: DatumTupleFields, +} +impl Default for HeapTupleHeaderData__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for HeapTupleHeaderData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct MinimalTupleData { + pub t_len: uint32, + pub mt_padding: [::core::ffi::c_char; 6usize], + pub t_infomask2: uint16, + pub t_infomask: uint16, + pub t_hoff: uint8, + pub t_bits: __IncompleteArrayField, +} +pub type Buffer = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufferAccessStrategyData { + _unused: [u8; 0], +} +pub type BufferAccessStrategy = *mut BufferAccessStrategyData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleTableSlot { + pub type_: NodeTag, + pub tts_flags: uint16, + pub tts_nvalid: AttrNumber, + pub tts_ops: *const TupleTableSlotOps, + pub tts_tupleDescriptor: TupleDesc, + pub tts_values: *mut Datum, + pub tts_isnull: *mut bool, + pub tts_mcxt: MemoryContext, + pub tts_tid: ItemPointerData, + pub tts_tableOid: Oid, +} +impl Default for TupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TupleTableSlotOps { + pub base_slot_size: usize, + pub init: ::core::option::Option, + pub release: ::core::option::Option, + pub clear: ::core::option::Option, + pub getsomeattrs: ::core::option::Option< + unsafe extern "C" fn(slot: *mut TupleTableSlot, natts: ::core::ffi::c_int), + >, + pub getsysattr: ::core::option::Option< + unsafe extern "C" fn( + slot: *mut TupleTableSlot, + attnum: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum, + >, + pub is_current_xact_tuple: + ::core::option::Option bool>, + pub materialize: ::core::option::Option, + pub copyslot: ::core::option::Option< + unsafe extern "C" fn(dstslot: *mut TupleTableSlot, srcslot: *mut TupleTableSlot), + >, + pub get_heap_tuple: + ::core::option::Option HeapTuple>, + pub get_minimal_tuple: + ::core::option::Option MinimalTuple>, + pub copy_heap_tuple: + ::core::option::Option HeapTuple>, + pub copy_minimal_tuple: + ::core::option::Option MinimalTuple>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VirtualTupleTableSlot { + pub base: TupleTableSlot, + pub data: *mut ::core::ffi::c_char, +} +impl Default for VirtualTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeapTupleTableSlot { + pub base: TupleTableSlot, + pub tuple: HeapTuple, + pub off: uint32, + pub tupdata: HeapTupleData, +} +impl Default for HeapTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufferHeapTupleTableSlot { + pub base: HeapTupleTableSlot, + pub buffer: Buffer, +} +impl Default for BufferHeapTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinimalTupleTableSlot { + pub base: TupleTableSlot, + pub tuple: HeapTuple, + pub mintuple: MinimalTuple, + pub minhdr: HeapTupleData, + pub off: uint32, +} +impl Default for MinimalTupleTableSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type bitmapword = uint64; +pub type signedbitmapword = int64; +#[repr(C)] +#[derive(Debug)] +pub struct Bitmapset { + pub type_: NodeTag, + pub nwords: ::core::ffi::c_int, + pub words: __IncompleteArrayField, +} +impl Default for Bitmapset { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BMS_Comparison { + pub type Type = ::core::ffi::c_uint; + pub const BMS_EQUAL: Type = 0; + pub const BMS_SUBSET1: Type = 1; + pub const BMS_SUBSET2: Type = 2; + pub const BMS_DIFFERENT: Type = 3; +} +pub mod BMS_Membership { + pub type Type = ::core::ffi::c_uint; + pub const BMS_EMPTY_SET: Type = 0; + pub const BMS_SINGLETON: Type = 1; + pub const BMS_MULTIPLE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleConversionMap { + pub indesc: TupleDesc, + pub outdesc: TupleDesc, + pub attrMap: *mut AttrMap, + pub invalues: *mut Datum, + pub inisnull: *mut bool, + pub outvalues: *mut Datum, + pub outisnull: *mut bool, +} +impl Default for TupleConversionMap { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct instr_time { + pub ticks: int64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tm { + pub tm_sec: ::core::ffi::c_int, + pub tm_min: ::core::ffi::c_int, + pub tm_hour: ::core::ffi::c_int, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, + pub tm_wday: ::core::ffi::c_int, + pub tm_yday: ::core::ffi::c_int, + pub tm_isdst: ::core::ffi::c_int, + pub tm_gmtoff: ::core::ffi::c_long, + pub tm_zone: *const ::core::ffi::c_char, +} +impl Default for tm { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct itimerspec { + pub it_interval: timespec, + pub it_value: timespec, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BufferUsage { + pub shared_blks_hit: int64, + pub shared_blks_read: int64, + pub shared_blks_dirtied: int64, + pub shared_blks_written: int64, + pub local_blks_hit: int64, + pub local_blks_read: int64, + pub local_blks_dirtied: int64, + pub local_blks_written: int64, + pub temp_blks_read: int64, + pub temp_blks_written: int64, + pub shared_blk_read_time: instr_time, + pub shared_blk_write_time: instr_time, + pub local_blk_read_time: instr_time, + pub local_blk_write_time: instr_time, + pub temp_blk_read_time: instr_time, + pub temp_blk_write_time: instr_time, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WalUsage { + pub wal_records: int64, + pub wal_fpi: int64, + pub wal_bytes: uint64, +} +pub mod InstrumentOption { + pub type Type = ::core::ffi::c_uint; + pub const INSTRUMENT_TIMER: Type = 1; + pub const INSTRUMENT_BUFFERS: Type = 2; + pub const INSTRUMENT_ROWS: Type = 4; + pub const INSTRUMENT_WAL: Type = 8; + pub const INSTRUMENT_ALL: Type = 2147483647; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Instrumentation { + pub need_timer: bool, + pub need_bufusage: bool, + pub need_walusage: bool, + pub async_mode: bool, + pub running: bool, + pub starttime: instr_time, + pub counter: instr_time, + pub firsttuple: f64, + pub tuplecount: f64, + pub bufusage_start: BufferUsage, + pub walusage_start: WalUsage, + pub startup: f64, + pub total: f64, + pub ntuples: f64, + pub ntuples2: f64, + pub nloops: f64, + pub nfiltered1: f64, + pub nfiltered2: f64, + pub bufusage: BufferUsage, + pub walusage: WalUsage, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct WorkerInstrumentation { + pub num_workers: ::core::ffi::c_int, + pub instrument: __IncompleteArrayField, +} +pub type fmNodePtr = *mut Node; +pub type fmAggrefPtr = *mut Aggref; +pub type fmExprContextCallbackFunction = ::core::option::Option; +pub type fmStringInfo = *mut StringInfoData; +pub type FunctionCallInfo = *mut FunctionCallInfoBaseData; +pub type PGFunction = + ::core::option::Option Datum>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FmgrInfo { + pub fn_addr: PGFunction, + pub fn_oid: Oid, + pub fn_nargs: ::core::ffi::c_short, + pub fn_strict: bool, + pub fn_retset: bool, + pub fn_stats: ::core::ffi::c_uchar, + pub fn_extra: *mut ::core::ffi::c_void, + pub fn_mcxt: MemoryContext, + pub fn_expr: fmNodePtr, +} +impl Default for FmgrInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct FunctionCallInfoBaseData { + pub flinfo: *mut FmgrInfo, + pub context: fmNodePtr, + pub resultinfo: fmNodePtr, + pub fncollation: Oid, + pub isnull: bool, + pub nargs: ::core::ffi::c_short, + pub args: __IncompleteArrayField, +} +impl Default for FunctionCallInfoBaseData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Pg_finfo_record { + pub api_version: ::core::ffi::c_int, +} +pub type PGFInfoFunction = ::core::option::Option *const Pg_finfo_record>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Pg_magic_struct { + pub len: ::core::ffi::c_int, + pub version: ::core::ffi::c_int, + pub funcmaxargs: ::core::ffi::c_int, + pub indexmaxkeys: ::core::ffi::c_int, + pub namedatalen: ::core::ffi::c_int, + pub float8byval: ::core::ffi::c_int, + pub abi_extra: [::core::ffi::c_char; 32usize], +} +pub type PGModuleMagicFunction = + ::core::option::Option *const Pg_magic_struct>; +pub mod FmgrHookEventType { + pub type Type = ::core::ffi::c_uint; + pub const FHET_START: Type = 0; + pub const FHET_END: Type = 1; + pub const FHET_ABORT: Type = 2; +} +pub type needs_fmgr_hook_type = ::core::option::Option bool>; +pub type fmgr_hook_type = ::core::option::Option< + unsafe extern "C" fn(event: FmgrHookEventType::Type, flinfo: *mut FmgrInfo, arg: *mut Datum), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_node { + pub prev: *mut dlist_node, + pub next: *mut dlist_node, +} +impl Default for dlist_node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_head { + pub head: dlist_node, +} +impl Default for dlist_head { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_iter { + pub cur: *mut dlist_node, + pub end: *mut dlist_node, +} +impl Default for dlist_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dlist_mutable_iter { + pub cur: *mut dlist_node, + pub next: *mut dlist_node, + pub end: *mut dlist_node, +} +impl Default for dlist_mutable_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dclist_head { + pub dlist: dlist_head, + pub count: uint32, +} +impl Default for dclist_head { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_node { + pub next: *mut slist_node, +} +impl Default for slist_node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_head { + pub head: slist_node, +} +impl Default for slist_head { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_iter { + pub cur: *mut slist_node, +} +impl Default for slist_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct slist_mutable_iter { + pub cur: *mut slist_node, + pub next: *mut slist_node, + pub prev: *mut slist_node, +} +impl Default for slist_mutable_iter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pairingheap_node { + pub first_child: *mut pairingheap_node, + pub next_sibling: *mut pairingheap_node, + pub prev_or_parent: *mut pairingheap_node, +} +impl Default for pairingheap_node { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pairingheap_comparator = ::core::option::Option< + unsafe extern "C" fn( + a: *const pairingheap_node, + b: *const pairingheap_node, + arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pairingheap { + pub ph_compare: pairingheap_comparator, + pub ph_arg: *mut ::core::ffi::c_void, + pub ph_root: *mut pairingheap_node, +} +impl Default for pairingheap { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ErrorSaveContext { + pub type_: NodeTag, + pub error_occurred: bool, + pub details_wanted: bool, + pub error_data: *mut ErrorData, +} +impl Default for ErrorSaveContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamExternData { + pub value: Datum, + pub isnull: bool, + pub pflags: uint16, + pub ptype: Oid, +} +impl Default for ParamExternData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParamListInfo = *mut ParamListInfoData; +pub type ParamFetchHook = ::core::option::Option< + unsafe extern "C" fn( + params: ParamListInfo, + paramid: ::core::ffi::c_int, + speculative: bool, + workspace: *mut ParamExternData, + ) -> *mut ParamExternData, +>; +pub type ParamCompileHook = ::core::option::Option< + unsafe extern "C" fn( + params: ParamListInfo, + param: *mut Param, + state: *mut ExprState, + resv: *mut Datum, + resnull: *mut bool, + ), +>; +pub type ParserSetupHook = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, arg: *mut ::core::ffi::c_void), +>; +#[repr(C)] +#[derive(Debug)] +pub struct ParamListInfoData { + pub paramFetch: ParamFetchHook, + pub paramFetchArg: *mut ::core::ffi::c_void, + pub paramCompile: ParamCompileHook, + pub paramCompileArg: *mut ::core::ffi::c_void, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub paramValuesStr: *mut ::core::ffi::c_char, + pub numParams: ::core::ffi::c_int, + pub params: __IncompleteArrayField, +} +impl Default for ParamListInfoData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamExecData { + pub execPlan: *mut ::core::ffi::c_void, + pub value: Datum, + pub isnull: bool, +} +impl Default for ParamExecData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamsErrorCbData { + pub portalName: *const ::core::ffi::c_char, + pub params: ParamListInfo, +} +impl Default for ParamsErrorCbData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ScanDirection { + pub type Type = ::core::ffi::c_int; + pub const BackwardScanDirection: Type = -1; + pub const NoMovementScanDirection: Type = 0; + pub const ForwardScanDirection: Type = 1; +} +pub type StrategyNumber = uint16; +pub type RelFileNumber = Oid; +pub mod ForkNumber { + pub type Type = ::core::ffi::c_int; + pub const InvalidForkNumber: Type = -1; + pub const MAIN_FORKNUM: Type = 0; + pub const FSM_FORKNUM: Type = 1; + pub const VISIBILITYMAP_FORKNUM: Type = 2; + pub const INIT_FORKNUM: Type = 3; +} +pub mod LockClauseStrength { + pub type Type = ::core::ffi::c_uint; + pub const LCS_NONE: Type = 0; + pub const LCS_FORKEYSHARE: Type = 1; + pub const LCS_FORSHARE: Type = 2; + pub const LCS_FORNOKEYUPDATE: Type = 3; + pub const LCS_FORUPDATE: Type = 4; +} +pub mod LockWaitPolicy { + pub type Type = ::core::ffi::c_uint; + pub const LockWaitBlock: Type = 0; + pub const LockWaitSkip: Type = 1; + pub const LockWaitError: Type = 2; +} +pub mod LockTupleMode { + pub type Type = ::core::ffi::c_uint; + pub const LockTupleKeyShare: Type = 0; + pub const LockTupleShare: Type = 1; + pub const LockTupleNoKeyExclusive: Type = 2; + pub const LockTupleExclusive: Type = 3; +} +pub mod OverridingKind { + pub type Type = ::core::ffi::c_uint; + pub const OVERRIDING_NOT_SET: Type = 0; + pub const OVERRIDING_USER_VALUE: Type = 1; + pub const OVERRIDING_SYSTEM_VALUE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Alias { + pub type_: NodeTag, + pub aliasname: *mut ::core::ffi::c_char, + pub colnames: *mut List, +} +impl Default for Alias { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod OnCommitAction { + pub type Type = ::core::ffi::c_uint; + pub const ONCOMMIT_NOOP: Type = 0; + pub const ONCOMMIT_PRESERVE_ROWS: Type = 1; + pub const ONCOMMIT_DELETE_ROWS: Type = 2; + pub const ONCOMMIT_DROP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeVar { + pub type_: NodeTag, + pub catalogname: *mut ::core::ffi::c_char, + pub schemaname: *mut ::core::ffi::c_char, + pub relname: *mut ::core::ffi::c_char, + pub inh: bool, + pub relpersistence: ::core::ffi::c_char, + pub alias: *mut Alias, + pub location: ParseLoc, +} +impl Default for RangeVar { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TableFuncType { + pub type Type = ::core::ffi::c_uint; + pub const TFT_XMLTABLE: Type = 0; + pub const TFT_JSON_TABLE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableFunc { + pub type_: NodeTag, + pub functype: TableFuncType::Type, + pub ns_uris: *mut List, + pub ns_names: *mut List, + pub docexpr: *mut Node, + pub rowexpr: *mut Node, + pub colnames: *mut List, + pub coltypes: *mut List, + pub coltypmods: *mut List, + pub colcollations: *mut List, + pub colexprs: *mut List, + pub coldefexprs: *mut List, + pub colvalexprs: *mut List, + pub passingvalexprs: *mut List, + pub notnulls: *mut Bitmapset, + pub plan: *mut Node, + pub ordinalitycol: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for TableFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IntoClause { + pub type_: NodeTag, + pub rel: *mut RangeVar, + pub colNames: *mut List, + pub accessMethod: *mut ::core::ffi::c_char, + pub options: *mut List, + pub onCommit: OnCommitAction::Type, + pub tableSpaceName: *mut ::core::ffi::c_char, + pub viewQuery: *mut Node, + pub skipData: bool, +} +impl Default for IntoClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Expr { + pub type_: NodeTag, +} +impl Default for Expr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Var { + pub xpr: Expr, + pub varno: ::core::ffi::c_int, + pub varattno: AttrNumber, + pub vartype: Oid, + pub vartypmod: int32, + pub varcollid: Oid, + pub varnullingrels: *mut Bitmapset, + pub varlevelsup: Index, + pub varnosyn: Index, + pub varattnosyn: AttrNumber, + pub location: ParseLoc, +} +impl Default for Var { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Const { + pub xpr: Expr, + pub consttype: Oid, + pub consttypmod: int32, + pub constcollid: Oid, + pub constlen: ::core::ffi::c_int, + pub constvalue: Datum, + pub constisnull: bool, + pub constbyval: bool, + pub location: ParseLoc, +} +impl Default for Const { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ParamKind { + pub type Type = ::core::ffi::c_uint; + pub const PARAM_EXTERN: Type = 0; + pub const PARAM_EXEC: Type = 1; + pub const PARAM_SUBLINK: Type = 2; + pub const PARAM_MULTIEXPR: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Param { + pub xpr: Expr, + pub paramkind: ParamKind::Type, + pub paramid: ::core::ffi::c_int, + pub paramtype: Oid, + pub paramtypmod: int32, + pub paramcollid: Oid, + pub location: ParseLoc, +} +impl Default for Param { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Aggref { + pub xpr: Expr, + pub aggfnoid: Oid, + pub aggtype: Oid, + pub aggcollid: Oid, + pub inputcollid: Oid, + pub aggtranstype: Oid, + pub aggargtypes: *mut List, + pub aggdirectargs: *mut List, + pub args: *mut List, + pub aggorder: *mut List, + pub aggdistinct: *mut List, + pub aggfilter: *mut Expr, + pub aggstar: bool, + pub aggvariadic: bool, + pub aggkind: ::core::ffi::c_char, + pub aggpresorted: bool, + pub agglevelsup: Index, + pub aggsplit: AggSplit::Type, + pub aggno: ::core::ffi::c_int, + pub aggtransno: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for Aggref { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingFunc { + pub xpr: Expr, + pub args: *mut List, + pub refs: *mut List, + pub cols: *mut List, + pub agglevelsup: Index, + pub location: ParseLoc, +} +impl Default for GroupingFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFunc { + pub xpr: Expr, + pub winfnoid: Oid, + pub wintype: Oid, + pub wincollid: Oid, + pub inputcollid: Oid, + pub args: *mut List, + pub aggfilter: *mut Expr, + pub runCondition: *mut List, + pub winref: Index, + pub winstar: bool, + pub winagg: bool, + pub location: ParseLoc, +} +impl Default for WindowFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFuncRunCondition { + pub xpr: Expr, + pub opno: Oid, + pub inputcollid: Oid, + pub wfunc_left: bool, + pub arg: *mut Expr, +} +impl Default for WindowFuncRunCondition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeSupportFunc { + pub xpr: Expr, + pub msftype: Oid, + pub msfcollid: Oid, + pub location: ParseLoc, +} +impl Default for MergeSupportFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubscriptingRef { + pub xpr: Expr, + pub refcontainertype: Oid, + pub refelemtype: Oid, + pub refrestype: Oid, + pub reftypmod: int32, + pub refcollid: Oid, + pub refupperindexpr: *mut List, + pub reflowerindexpr: *mut List, + pub refexpr: *mut Expr, + pub refassgnexpr: *mut Expr, +} +impl Default for SubscriptingRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CoercionContext { + pub type Type = ::core::ffi::c_uint; + pub const COERCION_IMPLICIT: Type = 0; + pub const COERCION_ASSIGNMENT: Type = 1; + pub const COERCION_PLPGSQL: Type = 2; + pub const COERCION_EXPLICIT: Type = 3; +} +pub mod CoercionForm { + pub type Type = ::core::ffi::c_uint; + pub const COERCE_EXPLICIT_CALL: Type = 0; + pub const COERCE_EXPLICIT_CAST: Type = 1; + pub const COERCE_IMPLICIT_CAST: Type = 2; + pub const COERCE_SQL_SYNTAX: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FuncExpr { + pub xpr: Expr, + pub funcid: Oid, + pub funcresulttype: Oid, + pub funcretset: bool, + pub funcvariadic: bool, + pub funcformat: CoercionForm::Type, + pub funccollid: Oid, + pub inputcollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for FuncExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedArgExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub name: *mut ::core::ffi::c_char, + pub argnumber: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for NamedArgExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OpExpr { + pub xpr: Expr, + pub opno: Oid, + pub opfuncid: Oid, + pub opresulttype: Oid, + pub opretset: bool, + pub opcollid: Oid, + pub inputcollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for OpExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type DistinctExpr = OpExpr; +pub type NullIfExpr = OpExpr; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScalarArrayOpExpr { + pub xpr: Expr, + pub opno: Oid, + pub opfuncid: Oid, + pub hashfuncid: Oid, + pub negfuncid: Oid, + pub useOr: bool, + pub inputcollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for ScalarArrayOpExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BoolExprType { + pub type Type = ::core::ffi::c_uint; + pub const AND_EXPR: Type = 0; + pub const OR_EXPR: Type = 1; + pub const NOT_EXPR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BoolExpr { + pub xpr: Expr, + pub boolop: BoolExprType::Type, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for BoolExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SubLinkType { + pub type Type = ::core::ffi::c_uint; + pub const EXISTS_SUBLINK: Type = 0; + pub const ALL_SUBLINK: Type = 1; + pub const ANY_SUBLINK: Type = 2; + pub const ROWCOMPARE_SUBLINK: Type = 3; + pub const EXPR_SUBLINK: Type = 4; + pub const MULTIEXPR_SUBLINK: Type = 5; + pub const ARRAY_SUBLINK: Type = 6; + pub const CTE_SUBLINK: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubLink { + pub xpr: Expr, + pub subLinkType: SubLinkType::Type, + pub subLinkId: ::core::ffi::c_int, + pub testexpr: *mut Node, + pub operName: *mut List, + pub subselect: *mut Node, + pub location: ParseLoc, +} +impl Default for SubLink { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubPlan { + pub xpr: Expr, + pub subLinkType: SubLinkType::Type, + pub testexpr: *mut Node, + pub paramIds: *mut List, + pub plan_id: ::core::ffi::c_int, + pub plan_name: *mut ::core::ffi::c_char, + pub firstColType: Oid, + pub firstColTypmod: int32, + pub firstColCollation: Oid, + pub useHashTable: bool, + pub unknownEqFalse: bool, + pub parallel_safe: bool, + pub setParam: *mut List, + pub parParam: *mut List, + pub args: *mut List, + pub startup_cost: Cost, + pub per_call_cost: Cost, +} +impl Default for SubPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlternativeSubPlan { + pub xpr: Expr, + pub subplans: *mut List, +} +impl Default for AlternativeSubPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FieldSelect { + pub xpr: Expr, + pub arg: *mut Expr, + pub fieldnum: AttrNumber, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, +} +impl Default for FieldSelect { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FieldStore { + pub xpr: Expr, + pub arg: *mut Expr, + pub newvals: *mut List, + pub fieldnums: *mut List, + pub resulttype: Oid, +} +impl Default for FieldStore { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelabelType { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, + pub relabelformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for RelabelType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoerceViaIO { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub resultcollid: Oid, + pub coerceformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for CoerceViaIO { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayCoerceExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub elemexpr: *mut Expr, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, + pub coerceformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for ArrayCoerceExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConvertRowtypeExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub convertformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for ConvertRowtypeExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollateExpr { + pub xpr: Expr, + pub arg: *mut Expr, + pub collOid: Oid, + pub location: ParseLoc, +} +impl Default for CollateExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CaseExpr { + pub xpr: Expr, + pub casetype: Oid, + pub casecollid: Oid, + pub arg: *mut Expr, + pub args: *mut List, + pub defresult: *mut Expr, + pub location: ParseLoc, +} +impl Default for CaseExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CaseWhen { + pub xpr: Expr, + pub expr: *mut Expr, + pub result: *mut Expr, + pub location: ParseLoc, +} +impl Default for CaseWhen { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CaseTestExpr { + pub xpr: Expr, + pub typeId: Oid, + pub typeMod: int32, + pub collation: Oid, +} +impl Default for CaseTestExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayExpr { + pub xpr: Expr, + pub array_typeid: Oid, + pub array_collid: Oid, + pub element_typeid: Oid, + pub elements: *mut List, + pub multidims: bool, + pub location: ParseLoc, +} +impl Default for ArrayExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowExpr { + pub xpr: Expr, + pub args: *mut List, + pub row_typeid: Oid, + pub row_format: CoercionForm::Type, + pub colnames: *mut List, + pub location: ParseLoc, +} +impl Default for RowExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RowCompareType { + pub type Type = ::core::ffi::c_uint; + pub const ROWCOMPARE_LT: Type = 1; + pub const ROWCOMPARE_LE: Type = 2; + pub const ROWCOMPARE_EQ: Type = 3; + pub const ROWCOMPARE_GE: Type = 4; + pub const ROWCOMPARE_GT: Type = 5; + pub const ROWCOMPARE_NE: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowCompareExpr { + pub xpr: Expr, + pub rctype: RowCompareType::Type, + pub opnos: *mut List, + pub opfamilies: *mut List, + pub inputcollids: *mut List, + pub largs: *mut List, + pub rargs: *mut List, +} +impl Default for RowCompareExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoalesceExpr { + pub xpr: Expr, + pub coalescetype: Oid, + pub coalescecollid: Oid, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for CoalesceExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MinMaxOp { + pub type Type = ::core::ffi::c_uint; + pub const IS_GREATEST: Type = 0; + pub const IS_LEAST: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinMaxExpr { + pub xpr: Expr, + pub minmaxtype: Oid, + pub minmaxcollid: Oid, + pub inputcollid: Oid, + pub op: MinMaxOp::Type, + pub args: *mut List, + pub location: ParseLoc, +} +impl Default for MinMaxExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SQLValueFunctionOp { + pub type Type = ::core::ffi::c_uint; + pub const SVFOP_CURRENT_DATE: Type = 0; + pub const SVFOP_CURRENT_TIME: Type = 1; + pub const SVFOP_CURRENT_TIME_N: Type = 2; + pub const SVFOP_CURRENT_TIMESTAMP: Type = 3; + pub const SVFOP_CURRENT_TIMESTAMP_N: Type = 4; + pub const SVFOP_LOCALTIME: Type = 5; + pub const SVFOP_LOCALTIME_N: Type = 6; + pub const SVFOP_LOCALTIMESTAMP: Type = 7; + pub const SVFOP_LOCALTIMESTAMP_N: Type = 8; + pub const SVFOP_CURRENT_ROLE: Type = 9; + pub const SVFOP_CURRENT_USER: Type = 10; + pub const SVFOP_USER: Type = 11; + pub const SVFOP_SESSION_USER: Type = 12; + pub const SVFOP_CURRENT_CATALOG: Type = 13; + pub const SVFOP_CURRENT_SCHEMA: Type = 14; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SQLValueFunction { + pub xpr: Expr, + pub op: SQLValueFunctionOp::Type, + pub type_: Oid, + pub typmod: int32, + pub location: ParseLoc, +} +impl Default for SQLValueFunction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod XmlExprOp { + pub type Type = ::core::ffi::c_uint; + pub const IS_XMLCONCAT: Type = 0; + pub const IS_XMLELEMENT: Type = 1; + pub const IS_XMLFOREST: Type = 2; + pub const IS_XMLPARSE: Type = 3; + pub const IS_XMLPI: Type = 4; + pub const IS_XMLROOT: Type = 5; + pub const IS_XMLSERIALIZE: Type = 6; + pub const IS_DOCUMENT: Type = 7; +} +pub mod XmlOptionType { + pub type Type = ::core::ffi::c_uint; + pub const XMLOPTION_DOCUMENT: Type = 0; + pub const XMLOPTION_CONTENT: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XmlExpr { + pub xpr: Expr, + pub op: XmlExprOp::Type, + pub name: *mut ::core::ffi::c_char, + pub named_args: *mut List, + pub arg_names: *mut List, + pub args: *mut List, + pub xmloption: XmlOptionType::Type, + pub indent: bool, + pub type_: Oid, + pub typmod: int32, + pub location: ParseLoc, +} +impl Default for XmlExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonEncoding { + pub type Type = ::core::ffi::c_uint; + pub const JS_ENC_DEFAULT: Type = 0; + pub const JS_ENC_UTF8: Type = 1; + pub const JS_ENC_UTF16: Type = 2; + pub const JS_ENC_UTF32: Type = 3; +} +pub mod JsonFormatType { + pub type Type = ::core::ffi::c_uint; + pub const JS_FORMAT_DEFAULT: Type = 0; + pub const JS_FORMAT_JSON: Type = 1; + pub const JS_FORMAT_JSONB: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonFormat { + pub type_: NodeTag, + pub format_type: JsonFormatType::Type, + pub encoding: JsonEncoding::Type, + pub location: ParseLoc, +} +impl Default for JsonFormat { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonReturning { + pub type_: NodeTag, + pub format: *mut JsonFormat, + pub typid: Oid, + pub typmod: int32, +} +impl Default for JsonReturning { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonValueExpr { + pub type_: NodeTag, + pub raw_expr: *mut Expr, + pub formatted_expr: *mut Expr, + pub format: *mut JsonFormat, +} +impl Default for JsonValueExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonConstructorType { + pub type Type = ::core::ffi::c_uint; + pub const JSCTOR_JSON_OBJECT: Type = 1; + pub const JSCTOR_JSON_ARRAY: Type = 2; + pub const JSCTOR_JSON_OBJECTAGG: Type = 3; + pub const JSCTOR_JSON_ARRAYAGG: Type = 4; + pub const JSCTOR_JSON_PARSE: Type = 5; + pub const JSCTOR_JSON_SCALAR: Type = 6; + pub const JSCTOR_JSON_SERIALIZE: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExpr { + pub xpr: Expr, + pub type_: JsonConstructorType::Type, + pub args: *mut List, + pub func: *mut Expr, + pub coercion: *mut Expr, + pub returning: *mut JsonReturning, + pub absent_on_null: bool, + pub unique: bool, + pub location: ParseLoc, +} +impl Default for JsonConstructorExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonValueType { + pub type Type = ::core::ffi::c_uint; + pub const JS_TYPE_ANY: Type = 0; + pub const JS_TYPE_OBJECT: Type = 1; + pub const JS_TYPE_ARRAY: Type = 2; + pub const JS_TYPE_SCALAR: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonIsPredicate { + pub type_: NodeTag, + pub expr: *mut Node, + pub format: *mut JsonFormat, + pub item_type: JsonValueType::Type, + pub unique_keys: bool, + pub location: ParseLoc, +} +impl Default for JsonIsPredicate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonWrapper { + pub type Type = ::core::ffi::c_uint; + pub const JSW_UNSPEC: Type = 0; + pub const JSW_NONE: Type = 1; + pub const JSW_CONDITIONAL: Type = 2; + pub const JSW_UNCONDITIONAL: Type = 3; +} +pub mod JsonBehaviorType { + pub type Type = ::core::ffi::c_uint; + pub const JSON_BEHAVIOR_NULL: Type = 0; + pub const JSON_BEHAVIOR_ERROR: Type = 1; + pub const JSON_BEHAVIOR_EMPTY: Type = 2; + pub const JSON_BEHAVIOR_TRUE: Type = 3; + pub const JSON_BEHAVIOR_FALSE: Type = 4; + pub const JSON_BEHAVIOR_UNKNOWN: Type = 5; + pub const JSON_BEHAVIOR_EMPTY_ARRAY: Type = 6; + pub const JSON_BEHAVIOR_EMPTY_OBJECT: Type = 7; + pub const JSON_BEHAVIOR_DEFAULT: Type = 8; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonBehavior { + pub type_: NodeTag, + pub btype: JsonBehaviorType::Type, + pub expr: *mut Node, + pub coerce: bool, + pub location: ParseLoc, +} +impl Default for JsonBehavior { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonExprOp { + pub type Type = ::core::ffi::c_uint; + pub const JSON_EXISTS_OP: Type = 0; + pub const JSON_QUERY_OP: Type = 1; + pub const JSON_VALUE_OP: Type = 2; + pub const JSON_TABLE_OP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonExpr { + pub xpr: Expr, + pub op: JsonExprOp::Type, + pub column_name: *mut ::core::ffi::c_char, + pub formatted_expr: *mut Node, + pub format: *mut JsonFormat, + pub path_spec: *mut Node, + pub returning: *mut JsonReturning, + pub passing_names: *mut List, + pub passing_values: *mut List, + pub on_empty: *mut JsonBehavior, + pub on_error: *mut JsonBehavior, + pub use_io_coercion: bool, + pub use_json_coercion: bool, + pub wrapper: JsonWrapper::Type, + pub omit_quotes: bool, + pub collation: Oid, + pub location: ParseLoc, +} +impl Default for JsonExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePath { + pub type_: NodeTag, + pub value: *mut Const, + pub name: *mut ::core::ffi::c_char, +} +impl Default for JsonTablePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePlan { + pub type_: NodeTag, +} +impl Default for JsonTablePlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePathScan { + pub plan: JsonTablePlan, + pub path: *mut JsonTablePath, + pub errorOnError: bool, + pub child: *mut JsonTablePlan, + pub colMin: ::core::ffi::c_int, + pub colMax: ::core::ffi::c_int, +} +impl Default for JsonTablePathScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTableSiblingJoin { + pub plan: JsonTablePlan, + pub lplan: *mut JsonTablePlan, + pub rplan: *mut JsonTablePlan, +} +impl Default for JsonTableSiblingJoin { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod NullTestType { + pub type Type = ::core::ffi::c_uint; + pub const IS_NULL: Type = 0; + pub const IS_NOT_NULL: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NullTest { + pub xpr: Expr, + pub arg: *mut Expr, + pub nulltesttype: NullTestType::Type, + pub argisrow: bool, + pub location: ParseLoc, +} +impl Default for NullTest { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BoolTestType { + pub type Type = ::core::ffi::c_uint; + pub const IS_TRUE: Type = 0; + pub const IS_NOT_TRUE: Type = 1; + pub const IS_FALSE: Type = 2; + pub const IS_NOT_FALSE: Type = 3; + pub const IS_UNKNOWN: Type = 4; + pub const IS_NOT_UNKNOWN: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BooleanTest { + pub xpr: Expr, + pub arg: *mut Expr, + pub booltesttype: BoolTestType::Type, + pub location: ParseLoc, +} +impl Default for BooleanTest { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MergeMatchKind { + pub type Type = ::core::ffi::c_uint; + pub const MERGE_WHEN_MATCHED: Type = 0; + pub const MERGE_WHEN_NOT_MATCHED_BY_SOURCE: Type = 1; + pub const MERGE_WHEN_NOT_MATCHED_BY_TARGET: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAction { + pub type_: NodeTag, + pub matchKind: MergeMatchKind::Type, + pub commandType: CmdType::Type, + pub override_: OverridingKind::Type, + pub qual: *mut Node, + pub targetList: *mut List, + pub updateColnos: *mut List, +} +impl Default for MergeAction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoerceToDomain { + pub xpr: Expr, + pub arg: *mut Expr, + pub resulttype: Oid, + pub resulttypmod: int32, + pub resultcollid: Oid, + pub coercionformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for CoerceToDomain { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CoerceToDomainValue { + pub xpr: Expr, + pub typeId: Oid, + pub typeMod: int32, + pub collation: Oid, + pub location: ParseLoc, +} +impl Default for CoerceToDomainValue { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetToDefault { + pub xpr: Expr, + pub typeId: Oid, + pub typeMod: int32, + pub collation: Oid, + pub location: ParseLoc, +} +impl Default for SetToDefault { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CurrentOfExpr { + pub xpr: Expr, + pub cvarno: Index, + pub cursor_name: *mut ::core::ffi::c_char, + pub cursor_param: ::core::ffi::c_int, +} +impl Default for CurrentOfExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NextValueExpr { + pub xpr: Expr, + pub seqid: Oid, + pub typeId: Oid, +} +impl Default for NextValueExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InferenceElem { + pub xpr: Expr, + pub expr: *mut Node, + pub infercollid: Oid, + pub inferopclass: Oid, +} +impl Default for InferenceElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TargetEntry { + pub xpr: Expr, + pub expr: *mut Expr, + pub resno: AttrNumber, + pub resname: *mut ::core::ffi::c_char, + pub ressortgroupref: Index, + pub resorigtbl: Oid, + pub resorigcol: AttrNumber, + pub resjunk: bool, +} +impl Default for TargetEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTblRef { + pub type_: NodeTag, + pub rtindex: ::core::ffi::c_int, +} +impl Default for RangeTblRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinExpr { + pub type_: NodeTag, + pub jointype: JoinType::Type, + pub isNatural: bool, + pub larg: *mut Node, + pub rarg: *mut Node, + pub usingClause: *mut List, + pub join_using_alias: *mut Alias, + pub quals: *mut Node, + pub alias: *mut Alias, + pub rtindex: ::core::ffi::c_int, +} +impl Default for JoinExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FromExpr { + pub type_: NodeTag, + pub fromlist: *mut List, + pub quals: *mut Node, +} +impl Default for FromExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OnConflictExpr { + pub type_: NodeTag, + pub action: OnConflictAction::Type, + pub arbiterElems: *mut List, + pub arbiterWhere: *mut Node, + pub constraint: Oid, + pub onConflictSet: *mut List, + pub onConflictWhere: *mut Node, + pub exclRelIndex: ::core::ffi::c_int, + pub exclRelTlist: *mut List, +} +impl Default for OnConflictExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannedStmt { + pub type_: NodeTag, + pub commandType: CmdType::Type, + pub queryId: uint64, + pub hasReturning: bool, + pub hasModifyingCTE: bool, + pub canSetTag: bool, + pub transientPlan: bool, + pub dependsOnRole: bool, + pub parallelModeNeeded: bool, + pub jitFlags: ::core::ffi::c_int, + pub planTree: *mut Plan, + pub rtable: *mut List, + pub permInfos: *mut List, + pub resultRelations: *mut List, + pub appendRelations: *mut List, + pub subplans: *mut List, + pub rewindPlanIDs: *mut Bitmapset, + pub rowMarks: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub paramExecTypes: *mut List, + pub utilityStmt: *mut Node, + pub stmt_location: ParseLoc, + pub stmt_len: ParseLoc, +} +impl Default for PlannedStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Plan { + pub type_: NodeTag, + pub startup_cost: Cost, + pub total_cost: Cost, + pub plan_rows: Cardinality, + pub plan_width: ::core::ffi::c_int, + pub parallel_aware: bool, + pub parallel_safe: bool, + pub async_capable: bool, + pub plan_node_id: ::core::ffi::c_int, + pub targetlist: *mut List, + pub qual: *mut List, + pub lefttree: *mut Plan, + pub righttree: *mut Plan, + pub initPlan: *mut List, + pub extParam: *mut Bitmapset, + pub allParam: *mut Bitmapset, +} +impl Default for Plan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Result { + pub plan: Plan, + pub resconstantqual: *mut Node, +} +impl Default for Result { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectSet { + pub plan: Plan, +} +impl Default for ProjectSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ModifyTable { + pub plan: Plan, + pub operation: CmdType::Type, + pub canSetTag: bool, + pub nominalRelation: Index, + pub rootRelation: Index, + pub partColsUpdated: bool, + pub resultRelations: *mut List, + pub updateColnosLists: *mut List, + pub withCheckOptionLists: *mut List, + pub returningLists: *mut List, + pub fdwPrivLists: *mut List, + pub fdwDirectModifyPlans: *mut Bitmapset, + pub rowMarks: *mut List, + pub epqParam: ::core::ffi::c_int, + pub onConflictAction: OnConflictAction::Type, + pub arbiterIndexes: *mut List, + pub onConflictSet: *mut List, + pub onConflictCols: *mut List, + pub onConflictWhere: *mut Node, + pub exclRelRTI: Index, + pub exclRelTlist: *mut List, + pub mergeActionLists: *mut List, + pub mergeJoinConditions: *mut List, +} +impl Default for ModifyTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Append { + pub plan: Plan, + pub apprelids: *mut Bitmapset, + pub appendplans: *mut List, + pub nasyncplans: ::core::ffi::c_int, + pub first_partial_plan: ::core::ffi::c_int, + pub part_prune_info: *mut PartitionPruneInfo, +} +impl Default for Append { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAppend { + pub plan: Plan, + pub apprelids: *mut Bitmapset, + pub mergeplans: *mut List, + pub numCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub collations: *mut Oid, + pub nullsFirst: *mut bool, + pub part_prune_info: *mut PartitionPruneInfo, +} +impl Default for MergeAppend { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RecursiveUnion { + pub plan: Plan, + pub wtParam: ::core::ffi::c_int, + pub numCols: ::core::ffi::c_int, + pub dupColIdx: *mut AttrNumber, + pub dupOperators: *mut Oid, + pub dupCollations: *mut Oid, + pub numGroups: ::core::ffi::c_long, +} +impl Default for RecursiveUnion { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapAnd { + pub plan: Plan, + pub bitmapplans: *mut List, +} +impl Default for BitmapAnd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapOr { + pub plan: Plan, + pub isshared: bool, + pub bitmapplans: *mut List, +} +impl Default for BitmapOr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Scan { + pub plan: Plan, + pub scanrelid: Index, +} +impl Default for Scan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SeqScan { + pub scan: Scan, +} +impl Default for SeqScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SampleScan { + pub scan: Scan, + pub tablesample: *mut TableSampleClause, +} +impl Default for SampleScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexScan { + pub scan: Scan, + pub indexid: Oid, + pub indexqual: *mut List, + pub indexqualorig: *mut List, + pub indexorderby: *mut List, + pub indexorderbyorig: *mut List, + pub indexorderbyops: *mut List, + pub indexorderdir: ScanDirection::Type, +} +impl Default for IndexScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexOnlyScan { + pub scan: Scan, + pub indexid: Oid, + pub indexqual: *mut List, + pub recheckqual: *mut List, + pub indexorderby: *mut List, + pub indextlist: *mut List, + pub indexorderdir: ScanDirection::Type, +} +impl Default for IndexOnlyScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapIndexScan { + pub scan: Scan, + pub indexid: Oid, + pub isshared: bool, + pub indexqual: *mut List, + pub indexqualorig: *mut List, +} +impl Default for BitmapIndexScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapHeapScan { + pub scan: Scan, + pub bitmapqualorig: *mut List, +} +impl Default for BitmapHeapScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidScan { + pub scan: Scan, + pub tidquals: *mut List, +} +impl Default for TidScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidRangeScan { + pub scan: Scan, + pub tidrangequals: *mut List, +} +impl Default for TidRangeScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SubqueryScanStatus { + pub type Type = ::core::ffi::c_uint; + pub const SUBQUERY_SCAN_UNKNOWN: Type = 0; + pub const SUBQUERY_SCAN_TRIVIAL: Type = 1; + pub const SUBQUERY_SCAN_NONTRIVIAL: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubqueryScan { + pub scan: Scan, + pub subplan: *mut Plan, + pub scanstatus: SubqueryScanStatus::Type, +} +impl Default for SubqueryScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionScan { + pub scan: Scan, + pub functions: *mut List, + pub funcordinality: bool, +} +impl Default for FunctionScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ValuesScan { + pub scan: Scan, + pub values_lists: *mut List, +} +impl Default for ValuesScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableFuncScan { + pub scan: Scan, + pub tablefunc: *mut TableFunc, +} +impl Default for TableFuncScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CteScan { + pub scan: Scan, + pub ctePlanId: ::core::ffi::c_int, + pub cteParam: ::core::ffi::c_int, +} +impl Default for CteScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedTuplestoreScan { + pub scan: Scan, + pub enrname: *mut ::core::ffi::c_char, +} +impl Default for NamedTuplestoreScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WorkTableScan { + pub scan: Scan, + pub wtParam: ::core::ffi::c_int, +} +impl Default for WorkTableScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignScan { + pub scan: Scan, + pub operation: CmdType::Type, + pub resultRelation: Index, + pub checkAsUser: Oid, + pub fs_server: Oid, + pub fdw_exprs: *mut List, + pub fdw_private: *mut List, + pub fdw_scan_tlist: *mut List, + pub fdw_recheck_quals: *mut List, + pub fs_relids: *mut Bitmapset, + pub fs_base_relids: *mut Bitmapset, + pub fsSystemCol: bool, +} +impl Default for ForeignScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomScan { + pub scan: Scan, + pub flags: uint32, + pub custom_plans: *mut List, + pub custom_exprs: *mut List, + pub custom_private: *mut List, + pub custom_scan_tlist: *mut List, + pub custom_relids: *mut Bitmapset, + pub methods: *const CustomScanMethods, +} +impl Default for CustomScan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Join { + pub plan: Plan, + pub jointype: JoinType::Type, + pub inner_unique: bool, + pub joinqual: *mut List, +} +impl Default for Join { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestLoop { + pub join: Join, + pub nestParams: *mut List, +} +impl Default for NestLoop { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestLoopParam { + pub type_: NodeTag, + pub paramno: ::core::ffi::c_int, + pub paramval: *mut Var, +} +impl Default for NestLoopParam { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeJoin { + pub join: Join, + pub skip_mark_restore: bool, + pub mergeclauses: *mut List, + pub mergeFamilies: *mut Oid, + pub mergeCollations: *mut Oid, + pub mergeStrategies: *mut ::core::ffi::c_int, + pub mergeNullsFirst: *mut bool, +} +impl Default for MergeJoin { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoin { + pub join: Join, + pub hashclauses: *mut List, + pub hashoperators: *mut List, + pub hashcollations: *mut List, + pub hashkeys: *mut List, +} +impl Default for HashJoin { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Material { + pub plan: Plan, +} +impl Default for Material { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Memoize { + pub plan: Plan, + pub numKeys: ::core::ffi::c_int, + pub hashOperators: *mut Oid, + pub collations: *mut Oid, + pub param_exprs: *mut List, + pub singlerow: bool, + pub binary_mode: bool, + pub est_entries: uint32, + pub keyparamids: *mut Bitmapset, +} +impl Default for Memoize { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Sort { + pub plan: Plan, + pub numCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub collations: *mut Oid, + pub nullsFirst: *mut bool, +} +impl Default for Sort { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IncrementalSort { + pub sort: Sort, + pub nPresortedCols: ::core::ffi::c_int, +} +impl Default for IncrementalSort { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Group { + pub plan: Plan, + pub numCols: ::core::ffi::c_int, + pub grpColIdx: *mut AttrNumber, + pub grpOperators: *mut Oid, + pub grpCollations: *mut Oid, +} +impl Default for Group { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Agg { + pub plan: Plan, + pub aggstrategy: AggStrategy::Type, + pub aggsplit: AggSplit::Type, + pub numCols: ::core::ffi::c_int, + pub grpColIdx: *mut AttrNumber, + pub grpOperators: *mut Oid, + pub grpCollations: *mut Oid, + pub numGroups: ::core::ffi::c_long, + pub transitionSpace: uint64, + pub aggParams: *mut Bitmapset, + pub groupingSets: *mut List, + pub chain: *mut List, +} +impl Default for Agg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowAgg { + pub plan: Plan, + pub winref: Index, + pub partNumCols: ::core::ffi::c_int, + pub partColIdx: *mut AttrNumber, + pub partOperators: *mut Oid, + pub partCollations: *mut Oid, + pub ordNumCols: ::core::ffi::c_int, + pub ordColIdx: *mut AttrNumber, + pub ordOperators: *mut Oid, + pub ordCollations: *mut Oid, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut Node, + pub endOffset: *mut Node, + pub runCondition: *mut List, + pub runConditionOrig: *mut List, + pub startInRangeFunc: Oid, + pub endInRangeFunc: Oid, + pub inRangeColl: Oid, + pub inRangeAsc: bool, + pub inRangeNullsFirst: bool, + pub topWindow: bool, +} +impl Default for WindowAgg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Unique { + pub plan: Plan, + pub numCols: ::core::ffi::c_int, + pub uniqColIdx: *mut AttrNumber, + pub uniqOperators: *mut Oid, + pub uniqCollations: *mut Oid, +} +impl Default for Unique { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Gather { + pub plan: Plan, + pub num_workers: ::core::ffi::c_int, + pub rescan_param: ::core::ffi::c_int, + pub single_copy: bool, + pub invisible: bool, + pub initParam: *mut Bitmapset, +} +impl Default for Gather { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherMerge { + pub plan: Plan, + pub num_workers: ::core::ffi::c_int, + pub rescan_param: ::core::ffi::c_int, + pub numCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub collations: *mut Oid, + pub nullsFirst: *mut bool, + pub initParam: *mut Bitmapset, +} +impl Default for GatherMerge { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Hash { + pub plan: Plan, + pub hashkeys: *mut List, + pub skewTable: Oid, + pub skewColumn: AttrNumber, + pub skewInherit: bool, + pub rows_total: Cardinality, +} +impl Default for Hash { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOp { + pub plan: Plan, + pub cmd: SetOpCmd::Type, + pub strategy: SetOpStrategy::Type, + pub numCols: ::core::ffi::c_int, + pub dupColIdx: *mut AttrNumber, + pub dupOperators: *mut Oid, + pub dupCollations: *mut Oid, + pub flagColIdx: AttrNumber, + pub firstFlag: ::core::ffi::c_int, + pub numGroups: ::core::ffi::c_long, +} +impl Default for SetOp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRows { + pub plan: Plan, + pub rowMarks: *mut List, + pub epqParam: ::core::ffi::c_int, +} +impl Default for LockRows { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Limit { + pub plan: Plan, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, + pub uniqNumCols: ::core::ffi::c_int, + pub uniqColIdx: *mut AttrNumber, + pub uniqOperators: *mut Oid, + pub uniqCollations: *mut Oid, +} +impl Default for Limit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RowMarkType { + pub type Type = ::core::ffi::c_uint; + pub const ROW_MARK_EXCLUSIVE: Type = 0; + pub const ROW_MARK_NOKEYEXCLUSIVE: Type = 1; + pub const ROW_MARK_SHARE: Type = 2; + pub const ROW_MARK_KEYSHARE: Type = 3; + pub const ROW_MARK_REFERENCE: Type = 4; + pub const ROW_MARK_COPY: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlanRowMark { + pub type_: NodeTag, + pub rti: Index, + pub prti: Index, + pub rowmarkId: Index, + pub markType: RowMarkType::Type, + pub allMarkTypes: ::core::ffi::c_int, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, + pub isParent: bool, +} +impl Default for PlanRowMark { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneInfo { + pub type_: NodeTag, + pub prune_infos: *mut List, + pub other_subplans: *mut Bitmapset, +} +impl Default for PartitionPruneInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionedRelPruneInfo { + pub type_: NodeTag, + pub rtindex: Index, + pub present_parts: *mut Bitmapset, + pub nparts: ::core::ffi::c_int, + pub subplan_map: *mut ::core::ffi::c_int, + pub subpart_map: *mut ::core::ffi::c_int, + pub relid_map: *mut Oid, + pub initial_pruning_steps: *mut List, + pub exec_pruning_steps: *mut List, + pub execparamids: *mut Bitmapset, +} +impl Default for PartitionedRelPruneInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneStep { + pub type_: NodeTag, + pub step_id: ::core::ffi::c_int, +} +impl Default for PartitionPruneStep { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneStepOp { + pub step: PartitionPruneStep, + pub opstrategy: StrategyNumber, + pub exprs: *mut List, + pub cmpfns: *mut List, + pub nullkeys: *mut Bitmapset, +} +impl Default for PartitionPruneStepOp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionPruneCombineOp { + pub type Type = ::core::ffi::c_uint; + pub const PARTPRUNE_COMBINE_UNION: Type = 0; + pub const PARTPRUNE_COMBINE_INTERSECT: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneStepCombine { + pub step: PartitionPruneStep, + pub combineOp: PartitionPruneCombineOp::Type, + pub source_stepids: *mut List, +} +impl Default for PartitionPruneStepCombine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlanInvalItem { + pub type_: NodeTag, + pub cacheId: ::core::ffi::c_int, + pub hashValue: uint32, +} +impl Default for PlanInvalItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MonotonicFunction { + pub type Type = ::core::ffi::c_uint; + pub const MONOTONICFUNC_NONE: Type = 0; + pub const MONOTONICFUNC_INCREASING: Type = 1; + pub const MONOTONICFUNC_DECREASING: Type = 2; + pub const MONOTONICFUNC_BOTH: Type = 3; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_atomic_flag { + pub value: ::core::ffi::c_char, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_atomic_uint32 { + pub value: uint32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_atomic_uint64 { + pub value: uint64, +} +pub type dsm_handle = uint32; +pub mod dsm_op { + pub type Type = ::core::ffi::c_uint; + pub const DSM_OP_CREATE: Type = 0; + pub const DSM_OP_ATTACH: Type = 1; + pub const DSM_OP_DETACH: Type = 2; + pub const DSM_OP_DESTROY: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dsm_segment { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PGShmemHeader { + _unused: [u8; 0], +} +pub type on_dsm_detach_callback = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dsa_area { + _unused: [u8; 0], +} +pub type dsa_pointer = uint64; +pub type dsa_pointer_atomic = pg_atomic_uint64; +pub type dsa_handle = dsm_handle; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TIDBitmap { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TBMIterator { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TBMSharedIterator { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TBMIterateResult { + pub blockno: BlockNumber, + pub ntuples: ::core::ffi::c_int, + pub recheck: bool, + pub offsets: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionBoundInfoData { + _unused: [u8; 0], +} +pub type PartitionBoundInfo = *mut PartitionBoundInfoData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionKeyData { + _unused: [u8; 0], +} +pub type PartitionKey = *mut PartitionKeyData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionDescData { + _unused: [u8; 0], +} +pub type PartitionDesc = *mut PartitionDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionDirectoryData { + _unused: [u8; 0], +} +pub type PartitionDirectory = *mut PartitionDirectoryData; +pub type ProcNumber = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct proclist_node { + pub next: ProcNumber, + pub prev: ProcNumber, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct proclist_head { + pub head: ProcNumber, + pub tail: ProcNumber, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct proclist_mutable_iter { + pub cur: ProcNumber, + pub next: ProcNumber, +} +pub type slock_t = ::core::ffi::c_uchar; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SpinDelayStatus { + pub spins: ::core::ffi::c_int, + pub delays: ::core::ffi::c_int, + pub cur_delay: ::core::ffi::c_int, + pub file: *const ::core::ffi::c_char, + pub line: ::core::ffi::c_int, + pub func: *const ::core::ffi::c_char, +} +impl Default for SpinDelayStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ConditionVariable { + pub mutex: slock_t, + pub wakeup: proclist_head, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ConditionVariableMinimallyPadded { + pub cv: ConditionVariable, + pub pad: [::core::ffi::c_char; 16usize], +} +impl Default for ConditionVariableMinimallyPadded { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type HashValueFunc = ::core::option::Option< + unsafe extern "C" fn(key: *const ::core::ffi::c_void, keysize: Size) -> uint32, +>; +pub type HashCompareFunc = ::core::option::Option< + unsafe extern "C" fn( + key1: *const ::core::ffi::c_void, + key2: *const ::core::ffi::c_void, + keysize: Size, + ) -> ::core::ffi::c_int, +>; +pub type HashCopyFunc = ::core::option::Option< + unsafe extern "C" fn( + dest: *mut ::core::ffi::c_void, + src: *const ::core::ffi::c_void, + keysize: Size, + ) -> *mut ::core::ffi::c_void, +>; +pub type HashAllocFunc = + ::core::option::Option *mut ::core::ffi::c_void>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASHELEMENT { + pub link: *mut HASHELEMENT, + pub hashvalue: uint32, +} +impl Default for HASHELEMENT { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASHHDR { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HTAB { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASHCTL { + pub num_partitions: ::core::ffi::c_long, + pub ssize: ::core::ffi::c_long, + pub dsize: ::core::ffi::c_long, + pub max_dsize: ::core::ffi::c_long, + pub keysize: Size, + pub entrysize: Size, + pub hash: HashValueFunc, + pub match_: HashCompareFunc, + pub keycopy: HashCopyFunc, + pub alloc: HashAllocFunc, + pub hcxt: MemoryContext, + pub hctl: *mut HASHHDR, +} +impl Default for HASHCTL { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod HASHACTION { + pub type Type = ::core::ffi::c_uint; + pub const HASH_FIND: Type = 0; + pub const HASH_ENTER: Type = 1; + pub const HASH_REMOVE: Type = 2; + pub const HASH_ENTER_NULL: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HASH_SEQ_STATUS { + pub hashp: *mut HTAB, + pub curBucket: uint32, + pub curEntry: *mut HASHELEMENT, +} +impl Default for HASH_SEQ_STATUS { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod EphemeralNameRelationType { + pub type Type = ::core::ffi::c_uint; + pub const ENR_NAMED_TUPLESTORE: Type = 0; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EphemeralNamedRelationMetadataData { + pub name: *mut ::core::ffi::c_char, + pub reliddesc: Oid, + pub tupdesc: TupleDesc, + pub enrtype: EphemeralNameRelationType::Type, + pub enrtuples: f64, +} +impl Default for EphemeralNamedRelationMetadataData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type EphemeralNamedRelationMetadata = *mut EphemeralNamedRelationMetadataData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EphemeralNamedRelationData { + pub md: EphemeralNamedRelationMetadataData, + pub reldata: *mut ::core::ffi::c_void, +} +impl Default for EphemeralNamedRelationData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type EphemeralNamedRelation = *mut EphemeralNamedRelationData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QueryEnvironment { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Trigger { + pub tgoid: Oid, + pub tgname: *mut ::core::ffi::c_char, + pub tgfoid: Oid, + pub tgtype: int16, + pub tgenabled: ::core::ffi::c_char, + pub tgisinternal: bool, + pub tgisclone: bool, + pub tgconstrrelid: Oid, + pub tgconstrindid: Oid, + pub tgconstraint: Oid, + pub tgdeferrable: bool, + pub tginitdeferred: bool, + pub tgnargs: int16, + pub tgnattr: int16, + pub tgattr: *mut int16, + pub tgargs: *mut *mut ::core::ffi::c_char, + pub tgqual: *mut ::core::ffi::c_char, + pub tgoldtable: *mut ::core::ffi::c_char, + pub tgnewtable: *mut ::core::ffi::c_char, +} +impl Default for Trigger { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TriggerDesc { + pub triggers: *mut Trigger, + pub numtriggers: ::core::ffi::c_int, + pub trig_insert_before_row: bool, + pub trig_insert_after_row: bool, + pub trig_insert_instead_row: bool, + pub trig_insert_before_statement: bool, + pub trig_insert_after_statement: bool, + pub trig_update_before_row: bool, + pub trig_update_after_row: bool, + pub trig_update_instead_row: bool, + pub trig_update_before_statement: bool, + pub trig_update_after_statement: bool, + pub trig_delete_before_row: bool, + pub trig_delete_after_row: bool, + pub trig_delete_instead_row: bool, + pub trig_delete_before_statement: bool, + pub trig_delete_after_statement: bool, + pub trig_truncate_before_statement: bool, + pub trig_truncate_after_statement: bool, + pub trig_insert_new_table: bool, + pub trig_update_old_table: bool, + pub trig_update_new_table: bool, + pub trig_delete_old_table: bool, +} +impl Default for TriggerDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iovec { + pub iov_base: *mut ::core::ffi::c_void, + pub iov_len: usize, +} +impl Default for iovec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type useconds_t = __useconds_t; +pub type socklen_t = __socklen_t; +pub mod _bindgen_ty_3 { + pub type Type = ::core::ffi::c_uint; + pub const _PC_LINK_MAX: Type = 0; + pub const _PC_MAX_CANON: Type = 1; + pub const _PC_MAX_INPUT: Type = 2; + pub const _PC_NAME_MAX: Type = 3; + pub const _PC_PATH_MAX: Type = 4; + pub const _PC_PIPE_BUF: Type = 5; + pub const _PC_CHOWN_RESTRICTED: Type = 6; + pub const _PC_NO_TRUNC: Type = 7; + pub const _PC_VDISABLE: Type = 8; + pub const _PC_SYNC_IO: Type = 9; + pub const _PC_ASYNC_IO: Type = 10; + pub const _PC_PRIO_IO: Type = 11; + pub const _PC_SOCK_MAXBUF: Type = 12; + pub const _PC_FILESIZEBITS: Type = 13; + pub const _PC_REC_INCR_XFER_SIZE: Type = 14; + pub const _PC_REC_MAX_XFER_SIZE: Type = 15; + pub const _PC_REC_MIN_XFER_SIZE: Type = 16; + pub const _PC_REC_XFER_ALIGN: Type = 17; + pub const _PC_ALLOC_SIZE_MIN: Type = 18; + pub const _PC_SYMLINK_MAX: Type = 19; + pub const _PC_2_SYMLINKS: Type = 20; +} +pub mod _bindgen_ty_4 { + pub type Type = ::core::ffi::c_uint; + pub const _SC_ARG_MAX: Type = 0; + pub const _SC_CHILD_MAX: Type = 1; + pub const _SC_CLK_TCK: Type = 2; + pub const _SC_NGROUPS_MAX: Type = 3; + pub const _SC_OPEN_MAX: Type = 4; + pub const _SC_STREAM_MAX: Type = 5; + pub const _SC_TZNAME_MAX: Type = 6; + pub const _SC_JOB_CONTROL: Type = 7; + pub const _SC_SAVED_IDS: Type = 8; + pub const _SC_REALTIME_SIGNALS: Type = 9; + pub const _SC_PRIORITY_SCHEDULING: Type = 10; + pub const _SC_TIMERS: Type = 11; + pub const _SC_ASYNCHRONOUS_IO: Type = 12; + pub const _SC_PRIORITIZED_IO: Type = 13; + pub const _SC_SYNCHRONIZED_IO: Type = 14; + pub const _SC_FSYNC: Type = 15; + pub const _SC_MAPPED_FILES: Type = 16; + pub const _SC_MEMLOCK: Type = 17; + pub const _SC_MEMLOCK_RANGE: Type = 18; + pub const _SC_MEMORY_PROTECTION: Type = 19; + pub const _SC_MESSAGE_PASSING: Type = 20; + pub const _SC_SEMAPHORES: Type = 21; + pub const _SC_SHARED_MEMORY_OBJECTS: Type = 22; + pub const _SC_AIO_LISTIO_MAX: Type = 23; + pub const _SC_AIO_MAX: Type = 24; + pub const _SC_AIO_PRIO_DELTA_MAX: Type = 25; + pub const _SC_DELAYTIMER_MAX: Type = 26; + pub const _SC_MQ_OPEN_MAX: Type = 27; + pub const _SC_MQ_PRIO_MAX: Type = 28; + pub const _SC_VERSION: Type = 29; + pub const _SC_PAGESIZE: Type = 30; + pub const _SC_RTSIG_MAX: Type = 31; + pub const _SC_SEM_NSEMS_MAX: Type = 32; + pub const _SC_SEM_VALUE_MAX: Type = 33; + pub const _SC_SIGQUEUE_MAX: Type = 34; + pub const _SC_TIMER_MAX: Type = 35; + pub const _SC_BC_BASE_MAX: Type = 36; + pub const _SC_BC_DIM_MAX: Type = 37; + pub const _SC_BC_SCALE_MAX: Type = 38; + pub const _SC_BC_STRING_MAX: Type = 39; + pub const _SC_COLL_WEIGHTS_MAX: Type = 40; + pub const _SC_EQUIV_CLASS_MAX: Type = 41; + pub const _SC_EXPR_NEST_MAX: Type = 42; + pub const _SC_LINE_MAX: Type = 43; + pub const _SC_RE_DUP_MAX: Type = 44; + pub const _SC_CHARCLASS_NAME_MAX: Type = 45; + pub const _SC_2_VERSION: Type = 46; + pub const _SC_2_C_BIND: Type = 47; + pub const _SC_2_C_DEV: Type = 48; + pub const _SC_2_FORT_DEV: Type = 49; + pub const _SC_2_FORT_RUN: Type = 50; + pub const _SC_2_SW_DEV: Type = 51; + pub const _SC_2_LOCALEDEF: Type = 52; + pub const _SC_PII: Type = 53; + pub const _SC_PII_XTI: Type = 54; + pub const _SC_PII_SOCKET: Type = 55; + pub const _SC_PII_INTERNET: Type = 56; + pub const _SC_PII_OSI: Type = 57; + pub const _SC_POLL: Type = 58; + pub const _SC_SELECT: Type = 59; + pub const _SC_UIO_MAXIOV: Type = 60; + pub const _SC_IOV_MAX: Type = 60; + pub const _SC_PII_INTERNET_STREAM: Type = 61; + pub const _SC_PII_INTERNET_DGRAM: Type = 62; + pub const _SC_PII_OSI_COTS: Type = 63; + pub const _SC_PII_OSI_CLTS: Type = 64; + pub const _SC_PII_OSI_M: Type = 65; + pub const _SC_T_IOV_MAX: Type = 66; + pub const _SC_THREADS: Type = 67; + pub const _SC_THREAD_SAFE_FUNCTIONS: Type = 68; + pub const _SC_GETGR_R_SIZE_MAX: Type = 69; + pub const _SC_GETPW_R_SIZE_MAX: Type = 70; + pub const _SC_LOGIN_NAME_MAX: Type = 71; + pub const _SC_TTY_NAME_MAX: Type = 72; + pub const _SC_THREAD_DESTRUCTOR_ITERATIONS: Type = 73; + pub const _SC_THREAD_KEYS_MAX: Type = 74; + pub const _SC_THREAD_STACK_MIN: Type = 75; + pub const _SC_THREAD_THREADS_MAX: Type = 76; + pub const _SC_THREAD_ATTR_STACKADDR: Type = 77; + pub const _SC_THREAD_ATTR_STACKSIZE: Type = 78; + pub const _SC_THREAD_PRIORITY_SCHEDULING: Type = 79; + pub const _SC_THREAD_PRIO_INHERIT: Type = 80; + pub const _SC_THREAD_PRIO_PROTECT: Type = 81; + pub const _SC_THREAD_PROCESS_SHARED: Type = 82; + pub const _SC_NPROCESSORS_CONF: Type = 83; + pub const _SC_NPROCESSORS_ONLN: Type = 84; + pub const _SC_PHYS_PAGES: Type = 85; + pub const _SC_AVPHYS_PAGES: Type = 86; + pub const _SC_ATEXIT_MAX: Type = 87; + pub const _SC_PASS_MAX: Type = 88; + pub const _SC_XOPEN_VERSION: Type = 89; + pub const _SC_XOPEN_XCU_VERSION: Type = 90; + pub const _SC_XOPEN_UNIX: Type = 91; + pub const _SC_XOPEN_CRYPT: Type = 92; + pub const _SC_XOPEN_ENH_I18N: Type = 93; + pub const _SC_XOPEN_SHM: Type = 94; + pub const _SC_2_CHAR_TERM: Type = 95; + pub const _SC_2_C_VERSION: Type = 96; + pub const _SC_2_UPE: Type = 97; + pub const _SC_XOPEN_XPG2: Type = 98; + pub const _SC_XOPEN_XPG3: Type = 99; + pub const _SC_XOPEN_XPG4: Type = 100; + pub const _SC_CHAR_BIT: Type = 101; + pub const _SC_CHAR_MAX: Type = 102; + pub const _SC_CHAR_MIN: Type = 103; + pub const _SC_INT_MAX: Type = 104; + pub const _SC_INT_MIN: Type = 105; + pub const _SC_LONG_BIT: Type = 106; + pub const _SC_WORD_BIT: Type = 107; + pub const _SC_MB_LEN_MAX: Type = 108; + pub const _SC_NZERO: Type = 109; + pub const _SC_SSIZE_MAX: Type = 110; + pub const _SC_SCHAR_MAX: Type = 111; + pub const _SC_SCHAR_MIN: Type = 112; + pub const _SC_SHRT_MAX: Type = 113; + pub const _SC_SHRT_MIN: Type = 114; + pub const _SC_UCHAR_MAX: Type = 115; + pub const _SC_UINT_MAX: Type = 116; + pub const _SC_ULONG_MAX: Type = 117; + pub const _SC_USHRT_MAX: Type = 118; + pub const _SC_NL_ARGMAX: Type = 119; + pub const _SC_NL_LANGMAX: Type = 120; + pub const _SC_NL_MSGMAX: Type = 121; + pub const _SC_NL_NMAX: Type = 122; + pub const _SC_NL_SETMAX: Type = 123; + pub const _SC_NL_TEXTMAX: Type = 124; + pub const _SC_XBS5_ILP32_OFF32: Type = 125; + pub const _SC_XBS5_ILP32_OFFBIG: Type = 126; + pub const _SC_XBS5_LP64_OFF64: Type = 127; + pub const _SC_XBS5_LPBIG_OFFBIG: Type = 128; + pub const _SC_XOPEN_LEGACY: Type = 129; + pub const _SC_XOPEN_REALTIME: Type = 130; + pub const _SC_XOPEN_REALTIME_THREADS: Type = 131; + pub const _SC_ADVISORY_INFO: Type = 132; + pub const _SC_BARRIERS: Type = 133; + pub const _SC_BASE: Type = 134; + pub const _SC_C_LANG_SUPPORT: Type = 135; + pub const _SC_C_LANG_SUPPORT_R: Type = 136; + pub const _SC_CLOCK_SELECTION: Type = 137; + pub const _SC_CPUTIME: Type = 138; + pub const _SC_THREAD_CPUTIME: Type = 139; + pub const _SC_DEVICE_IO: Type = 140; + pub const _SC_DEVICE_SPECIFIC: Type = 141; + pub const _SC_DEVICE_SPECIFIC_R: Type = 142; + pub const _SC_FD_MGMT: Type = 143; + pub const _SC_FIFO: Type = 144; + pub const _SC_PIPE: Type = 145; + pub const _SC_FILE_ATTRIBUTES: Type = 146; + pub const _SC_FILE_LOCKING: Type = 147; + pub const _SC_FILE_SYSTEM: Type = 148; + pub const _SC_MONOTONIC_CLOCK: Type = 149; + pub const _SC_MULTI_PROCESS: Type = 150; + pub const _SC_SINGLE_PROCESS: Type = 151; + pub const _SC_NETWORKING: Type = 152; + pub const _SC_READER_WRITER_LOCKS: Type = 153; + pub const _SC_SPIN_LOCKS: Type = 154; + pub const _SC_REGEXP: Type = 155; + pub const _SC_REGEX_VERSION: Type = 156; + pub const _SC_SHELL: Type = 157; + pub const _SC_SIGNALS: Type = 158; + pub const _SC_SPAWN: Type = 159; + pub const _SC_SPORADIC_SERVER: Type = 160; + pub const _SC_THREAD_SPORADIC_SERVER: Type = 161; + pub const _SC_SYSTEM_DATABASE: Type = 162; + pub const _SC_SYSTEM_DATABASE_R: Type = 163; + pub const _SC_TIMEOUTS: Type = 164; + pub const _SC_TYPED_MEMORY_OBJECTS: Type = 165; + pub const _SC_USER_GROUPS: Type = 166; + pub const _SC_USER_GROUPS_R: Type = 167; + pub const _SC_2_PBS: Type = 168; + pub const _SC_2_PBS_ACCOUNTING: Type = 169; + pub const _SC_2_PBS_LOCATE: Type = 170; + pub const _SC_2_PBS_MESSAGE: Type = 171; + pub const _SC_2_PBS_TRACK: Type = 172; + pub const _SC_SYMLOOP_MAX: Type = 173; + pub const _SC_STREAMS: Type = 174; + pub const _SC_2_PBS_CHECKPOINT: Type = 175; + pub const _SC_V6_ILP32_OFF32: Type = 176; + pub const _SC_V6_ILP32_OFFBIG: Type = 177; + pub const _SC_V6_LP64_OFF64: Type = 178; + pub const _SC_V6_LPBIG_OFFBIG: Type = 179; + pub const _SC_HOST_NAME_MAX: Type = 180; + pub const _SC_TRACE: Type = 181; + pub const _SC_TRACE_EVENT_FILTER: Type = 182; + pub const _SC_TRACE_INHERIT: Type = 183; + pub const _SC_TRACE_LOG: Type = 184; + pub const _SC_LEVEL1_ICACHE_SIZE: Type = 185; + pub const _SC_LEVEL1_ICACHE_ASSOC: Type = 186; + pub const _SC_LEVEL1_ICACHE_LINESIZE: Type = 187; + pub const _SC_LEVEL1_DCACHE_SIZE: Type = 188; + pub const _SC_LEVEL1_DCACHE_ASSOC: Type = 189; + pub const _SC_LEVEL1_DCACHE_LINESIZE: Type = 190; + pub const _SC_LEVEL2_CACHE_SIZE: Type = 191; + pub const _SC_LEVEL2_CACHE_ASSOC: Type = 192; + pub const _SC_LEVEL2_CACHE_LINESIZE: Type = 193; + pub const _SC_LEVEL3_CACHE_SIZE: Type = 194; + pub const _SC_LEVEL3_CACHE_ASSOC: Type = 195; + pub const _SC_LEVEL3_CACHE_LINESIZE: Type = 196; + pub const _SC_LEVEL4_CACHE_SIZE: Type = 197; + pub const _SC_LEVEL4_CACHE_ASSOC: Type = 198; + pub const _SC_LEVEL4_CACHE_LINESIZE: Type = 199; + pub const _SC_IPV6: Type = 235; + pub const _SC_RAW_SOCKETS: Type = 236; + pub const _SC_V7_ILP32_OFF32: Type = 237; + pub const _SC_V7_ILP32_OFFBIG: Type = 238; + pub const _SC_V7_LP64_OFF64: Type = 239; + pub const _SC_V7_LPBIG_OFFBIG: Type = 240; + pub const _SC_SS_REPL_MAX: Type = 241; + pub const _SC_TRACE_EVENT_NAME_MAX: Type = 242; + pub const _SC_TRACE_NAME_MAX: Type = 243; + pub const _SC_TRACE_SYS_MAX: Type = 244; + pub const _SC_TRACE_USER_EVENT_MAX: Type = 245; + pub const _SC_XOPEN_STREAMS: Type = 246; + pub const _SC_THREAD_ROBUST_PRIO_INHERIT: Type = 247; + pub const _SC_THREAD_ROBUST_PRIO_PROTECT: Type = 248; + pub const _SC_MINSIGSTKSZ: Type = 249; + pub const _SC_SIGSTKSZ: Type = 250; +} +pub mod _bindgen_ty_5 { + pub type Type = ::core::ffi::c_uint; + pub const _CS_PATH: Type = 0; + pub const _CS_V6_WIDTH_RESTRICTED_ENVS: Type = 1; + pub const _CS_GNU_LIBC_VERSION: Type = 2; + pub const _CS_GNU_LIBPTHREAD_VERSION: Type = 3; + pub const _CS_V5_WIDTH_RESTRICTED_ENVS: Type = 4; + pub const _CS_V7_WIDTH_RESTRICTED_ENVS: Type = 5; + pub const _CS_LFS_CFLAGS: Type = 1000; + pub const _CS_LFS_LDFLAGS: Type = 1001; + pub const _CS_LFS_LIBS: Type = 1002; + pub const _CS_LFS_LINTFLAGS: Type = 1003; + pub const _CS_LFS64_CFLAGS: Type = 1004; + pub const _CS_LFS64_LDFLAGS: Type = 1005; + pub const _CS_LFS64_LIBS: Type = 1006; + pub const _CS_LFS64_LINTFLAGS: Type = 1007; + pub const _CS_XBS5_ILP32_OFF32_CFLAGS: Type = 1100; + pub const _CS_XBS5_ILP32_OFF32_LDFLAGS: Type = 1101; + pub const _CS_XBS5_ILP32_OFF32_LIBS: Type = 1102; + pub const _CS_XBS5_ILP32_OFF32_LINTFLAGS: Type = 1103; + pub const _CS_XBS5_ILP32_OFFBIG_CFLAGS: Type = 1104; + pub const _CS_XBS5_ILP32_OFFBIG_LDFLAGS: Type = 1105; + pub const _CS_XBS5_ILP32_OFFBIG_LIBS: Type = 1106; + pub const _CS_XBS5_ILP32_OFFBIG_LINTFLAGS: Type = 1107; + pub const _CS_XBS5_LP64_OFF64_CFLAGS: Type = 1108; + pub const _CS_XBS5_LP64_OFF64_LDFLAGS: Type = 1109; + pub const _CS_XBS5_LP64_OFF64_LIBS: Type = 1110; + pub const _CS_XBS5_LP64_OFF64_LINTFLAGS: Type = 1111; + pub const _CS_XBS5_LPBIG_OFFBIG_CFLAGS: Type = 1112; + pub const _CS_XBS5_LPBIG_OFFBIG_LDFLAGS: Type = 1113; + pub const _CS_XBS5_LPBIG_OFFBIG_LIBS: Type = 1114; + pub const _CS_XBS5_LPBIG_OFFBIG_LINTFLAGS: Type = 1115; + pub const _CS_POSIX_V6_ILP32_OFF32_CFLAGS: Type = 1116; + pub const _CS_POSIX_V6_ILP32_OFF32_LDFLAGS: Type = 1117; + pub const _CS_POSIX_V6_ILP32_OFF32_LIBS: Type = 1118; + pub const _CS_POSIX_V6_ILP32_OFF32_LINTFLAGS: Type = 1119; + pub const _CS_POSIX_V6_ILP32_OFFBIG_CFLAGS: Type = 1120; + pub const _CS_POSIX_V6_ILP32_OFFBIG_LDFLAGS: Type = 1121; + pub const _CS_POSIX_V6_ILP32_OFFBIG_LIBS: Type = 1122; + pub const _CS_POSIX_V6_ILP32_OFFBIG_LINTFLAGS: Type = 1123; + pub const _CS_POSIX_V6_LP64_OFF64_CFLAGS: Type = 1124; + pub const _CS_POSIX_V6_LP64_OFF64_LDFLAGS: Type = 1125; + pub const _CS_POSIX_V6_LP64_OFF64_LIBS: Type = 1126; + pub const _CS_POSIX_V6_LP64_OFF64_LINTFLAGS: Type = 1127; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_CFLAGS: Type = 1128; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_LDFLAGS: Type = 1129; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_LIBS: Type = 1130; + pub const _CS_POSIX_V6_LPBIG_OFFBIG_LINTFLAGS: Type = 1131; + pub const _CS_POSIX_V7_ILP32_OFF32_CFLAGS: Type = 1132; + pub const _CS_POSIX_V7_ILP32_OFF32_LDFLAGS: Type = 1133; + pub const _CS_POSIX_V7_ILP32_OFF32_LIBS: Type = 1134; + pub const _CS_POSIX_V7_ILP32_OFF32_LINTFLAGS: Type = 1135; + pub const _CS_POSIX_V7_ILP32_OFFBIG_CFLAGS: Type = 1136; + pub const _CS_POSIX_V7_ILP32_OFFBIG_LDFLAGS: Type = 1137; + pub const _CS_POSIX_V7_ILP32_OFFBIG_LIBS: Type = 1138; + pub const _CS_POSIX_V7_ILP32_OFFBIG_LINTFLAGS: Type = 1139; + pub const _CS_POSIX_V7_LP64_OFF64_CFLAGS: Type = 1140; + pub const _CS_POSIX_V7_LP64_OFF64_LDFLAGS: Type = 1141; + pub const _CS_POSIX_V7_LP64_OFF64_LIBS: Type = 1142; + pub const _CS_POSIX_V7_LP64_OFF64_LINTFLAGS: Type = 1143; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_CFLAGS: Type = 1144; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_LDFLAGS: Type = 1145; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_LIBS: Type = 1146; + pub const _CS_POSIX_V7_LPBIG_OFFBIG_LINTFLAGS: Type = 1147; + pub const _CS_V6_ENV: Type = 1148; + pub const _CS_V7_ENV: Type = 1149; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dirent { + pub d_ino: __ino_t, + pub d_off: __off_t, + pub d_reclen: ::core::ffi::c_ushort, + pub d_type: ::core::ffi::c_uchar, + pub d_name: [::core::ffi::c_char; 256usize], +} +impl Default for dirent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_6 { + pub type Type = ::core::ffi::c_uint; + pub const DT_UNKNOWN: Type = 0; + pub const DT_FIFO: Type = 1; + pub const DT_CHR: Type = 2; + pub const DT_DIR: Type = 4; + pub const DT_BLK: Type = 6; + pub const DT_REG: Type = 8; + pub const DT_LNK: Type = 10; + pub const DT_SOCK: Type = 12; + pub const DT_WHT: Type = 14; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __dirstream { + _unused: [u8; 0], +} +pub type DIR = __dirstream; +pub type File = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FileSet { + pub creator_pid: pid_t, + pub number: uint32, + pub ntablespaces: ::core::ffi::c_int, + pub tablespaces: [Oid; 8usize], +} +impl Default for FileSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedFileSet { + pub fs: FileSet, + pub mutex: slock_t, + pub refcnt: ::core::ffi::c_int, +} +impl Default for SharedFileSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedTuplestore { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedTuplestoreAccessor { + _unused: [u8; 0], +} +pub type Timestamp = int64; +pub type TimestampTz = int64; +pub type TimeOffset = int64; +pub type fsec_t = int32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Interval { + pub time: TimeOffset, + pub day: int32, + pub month: int32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_itm { + pub tm_usec: ::core::ffi::c_int, + pub tm_sec: ::core::ffi::c_int, + pub tm_min: ::core::ffi::c_int, + pub tm_hour: int64, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_itm_in { + pub tm_usec: int64, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, +} +pub mod SnapshotType { + pub type Type = ::core::ffi::c_uint; + pub const SNAPSHOT_MVCC: Type = 0; + pub const SNAPSHOT_SELF: Type = 1; + pub const SNAPSHOT_ANY: Type = 2; + pub const SNAPSHOT_TOAST: Type = 3; + pub const SNAPSHOT_DIRTY: Type = 4; + pub const SNAPSHOT_HISTORIC_MVCC: Type = 5; + pub const SNAPSHOT_NON_VACUUMABLE: Type = 6; +} +pub type Snapshot = *mut SnapshotData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SnapshotData { + pub snapshot_type: SnapshotType::Type, + pub xmin: TransactionId, + pub xmax: TransactionId, + pub xip: *mut TransactionId, + pub xcnt: uint32, + pub subxip: *mut TransactionId, + pub subxcnt: int32, + pub suboverflowed: bool, + pub takenDuringRecovery: bool, + pub copied: bool, + pub curcid: CommandId, + pub speculativeToken: uint32, + pub vistest: *mut GlobalVisState, + pub active_count: uint32, + pub regd_count: uint32, + pub ph_node: pairingheap_node, + pub whenTaken: TimestampTz, + pub lsn: XLogRecPtr, + pub snapXactCompletionCount: uint64, +} +impl Default for SnapshotData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Relation = *mut RelationData; +pub type RelationPtr = *mut Relation; +pub mod IndexAttrBitmapKind { + pub type Type = ::core::ffi::c_uint; + pub const INDEX_ATTR_BITMAP_KEY: Type = 0; + pub const INDEX_ATTR_BITMAP_PRIMARY_KEY: Type = 1; + pub const INDEX_ATTR_BITMAP_IDENTITY_KEY: Type = 2; + pub const INDEX_ATTR_BITMAP_HOT_BLOCKING: Type = 3; + pub const INDEX_ATTR_BITMAP_SUMMARIZED: Type = 4; +} +pub type SortSupport = *mut SortSupportData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortSupportData { + pub ssup_cxt: MemoryContext, + pub ssup_collation: Oid, + pub ssup_reverse: bool, + pub ssup_nulls_first: bool, + pub ssup_attno: AttrNumber, + pub ssup_extra: *mut ::core::ffi::c_void, + pub comparator: ::core::option::Option< + unsafe extern "C" fn(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int, + >, + pub abbreviate: bool, + pub abbrev_converter: + ::core::option::Option Datum>, + pub abbrev_abort: ::core::option::Option< + unsafe extern "C" fn(memtupcount: ::core::ffi::c_int, ssup: SortSupport) -> bool, + >, + pub abbrev_full_comparator: ::core::option::Option< + unsafe extern "C" fn(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int, + >, +} +impl Default for SortSupportData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScanKeyData { + pub sk_flags: ::core::ffi::c_int, + pub sk_attno: AttrNumber, + pub sk_strategy: StrategyNumber, + pub sk_subtype: Oid, + pub sk_collation: Oid, + pub sk_func: FmgrInfo, + pub sk_argument: Datum, +} +impl Default for ScanKeyData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ScanKey = *mut ScanKeyData; +pub type LOCKMASK = ::core::ffi::c_int; +pub type LOCKMODE = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_standby_lock { + pub xid: TransactionId, + pub dbOid: Oid, + pub relOid: Oid, +} +impl Default for xl_standby_lock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexBuildResult { + pub heap_tuples: f64, + pub index_tuples: f64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexVacuumInfo { + pub index: Relation, + pub heaprel: Relation, + pub analyze_only: bool, + pub report_progress: bool, + pub estimated_count: bool, + pub message_level: ::core::ffi::c_int, + pub num_heap_tuples: f64, + pub strategy: BufferAccessStrategy, +} +impl Default for IndexVacuumInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexBulkDeleteResult { + pub num_pages: BlockNumber, + pub estimated_count: bool, + pub num_index_tuples: f64, + pub tuples_removed: f64, + pub pages_newly_deleted: BlockNumber, + pub pages_deleted: BlockNumber, + pub pages_free: BlockNumber, +} +pub type IndexBulkDeleteCallback = ::core::option::Option< + unsafe extern "C" fn(itemptr: ItemPointer, state: *mut ::core::ffi::c_void) -> bool, +>; +pub type IndexScanDesc = *mut IndexScanDescData; +pub type SysScanDesc = *mut SysScanDescData; +pub type ParallelIndexScanDesc = *mut ParallelIndexScanDescData; +pub mod IndexUniqueCheck { + pub type Type = ::core::ffi::c_uint; + pub const UNIQUE_CHECK_NO: Type = 0; + pub const UNIQUE_CHECK_YES: Type = 1; + pub const UNIQUE_CHECK_PARTIAL: Type = 2; + pub const UNIQUE_CHECK_EXISTING: Type = 3; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexOrderByDistance { + pub value: f64, + pub isnull: bool, +} +pub mod IndexAMProperty { + pub type Type = ::core::ffi::c_uint; + pub const AMPROP_UNKNOWN: Type = 0; + pub const AMPROP_ASC: Type = 1; + pub const AMPROP_DESC: Type = 2; + pub const AMPROP_NULLS_FIRST: Type = 3; + pub const AMPROP_NULLS_LAST: Type = 4; + pub const AMPROP_ORDERABLE: Type = 5; + pub const AMPROP_DISTANCE_ORDERABLE: Type = 6; + pub const AMPROP_RETURNABLE: Type = 7; + pub const AMPROP_SEARCH_ARRAY: Type = 8; + pub const AMPROP_SEARCH_NULLS: Type = 9; + pub const AMPROP_CLUSTERABLE: Type = 10; + pub const AMPROP_INDEX_SCAN: Type = 11; + pub const AMPROP_BITMAP_SCAN: Type = 12; + pub const AMPROP_BACKWARD_SCAN: Type = 13; + pub const AMPROP_CAN_ORDER: Type = 14; + pub const AMPROP_CAN_UNIQUE: Type = 15; + pub const AMPROP_CAN_MULTI_COL: Type = 16; + pub const AMPROP_CAN_EXCLUDE: Type = 17; + pub const AMPROP_CAN_INCLUDE: Type = 18; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OpFamilyMember { + pub is_func: bool, + pub object: Oid, + pub number: ::core::ffi::c_int, + pub lefttype: Oid, + pub righttype: Oid, + pub sortfamily: Oid, + pub ref_is_hard: bool, + pub ref_is_family: bool, + pub refobjid: Oid, +} +impl Default for OpFamilyMember { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ambuild_function = ::core::option::Option< + unsafe extern "C" fn( + heapRelation: Relation, + indexRelation: Relation, + indexInfo: *mut IndexInfo, + ) -> *mut IndexBuildResult, +>; +pub type ambuildempty_function = + ::core::option::Option; +pub type aminsert_function = ::core::option::Option< + unsafe extern "C" fn( + indexRelation: Relation, + values: *mut Datum, + isnull: *mut bool, + heap_tid: ItemPointer, + heapRelation: Relation, + checkUnique: IndexUniqueCheck::Type, + indexUnchanged: bool, + indexInfo: *mut IndexInfo, + ) -> bool, +>; +pub type aminsertcleanup_function = ::core::option::Option< + unsafe extern "C" fn(indexRelation: Relation, indexInfo: *mut IndexInfo), +>; +pub type ambulkdelete_function = ::core::option::Option< + unsafe extern "C" fn( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + callback: IndexBulkDeleteCallback, + callback_state: *mut ::core::ffi::c_void, + ) -> *mut IndexBulkDeleteResult, +>; +pub type amvacuumcleanup_function = ::core::option::Option< + unsafe extern "C" fn( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult, +>; +pub type amcanreturn_function = ::core::option::Option< + unsafe extern "C" fn(indexRelation: Relation, attno: ::core::ffi::c_int) -> bool, +>; +pub type amcostestimate_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + path: *mut IndexPath, + loop_count: f64, + indexStartupCost: *mut Cost, + indexTotalCost: *mut Cost, + indexSelectivity: *mut Selectivity, + indexCorrelation: *mut f64, + indexPages: *mut f64, + ), +>; +pub type amoptions_function = + ::core::option::Option *mut bytea>; +pub type amproperty_function = ::core::option::Option< + unsafe extern "C" fn( + index_oid: Oid, + attno: ::core::ffi::c_int, + prop: IndexAMProperty::Type, + propname: *const ::core::ffi::c_char, + res: *mut bool, + isnull: *mut bool, + ) -> bool, +>; +pub type ambuildphasename_function = + ::core::option::Option *mut ::core::ffi::c_char>; +pub type amvalidate_function = + ::core::option::Option bool>; +pub type amadjustmembers_function = ::core::option::Option< + unsafe extern "C" fn( + opfamilyoid: Oid, + opclassoid: Oid, + operators: *mut List, + functions: *mut List, + ), +>; +pub type ambeginscan_function = ::core::option::Option< + unsafe extern "C" fn( + indexRelation: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc, +>; +pub type amrescan_function = ::core::option::Option< + unsafe extern "C" fn( + scan: IndexScanDesc, + keys: ScanKey, + nkeys: ::core::ffi::c_int, + orderbys: ScanKey, + norderbys: ::core::ffi::c_int, + ), +>; +pub type amgettuple_function = ::core::option::Option< + unsafe extern "C" fn(scan: IndexScanDesc, direction: ScanDirection::Type) -> bool, +>; +pub type amgetbitmap_function = + ::core::option::Option int64>; +pub type amendscan_function = ::core::option::Option; +pub type ammarkpos_function = ::core::option::Option; +pub type amrestrpos_function = ::core::option::Option; +pub type amestimateparallelscan_function = ::core::option::Option< + unsafe extern "C" fn(nkeys: ::core::ffi::c_int, norderbys: ::core::ffi::c_int) -> Size, +>; +pub type aminitparallelscan_function = + ::core::option::Option; +pub type amparallelrescan_function = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexAmRoutine { + pub type_: NodeTag, + pub amstrategies: uint16, + pub amsupport: uint16, + pub amoptsprocnum: uint16, + pub amcanorder: bool, + pub amcanorderbyop: bool, + pub amcanbackward: bool, + pub amcanunique: bool, + pub amcanmulticol: bool, + pub amoptionalkey: bool, + pub amsearcharray: bool, + pub amsearchnulls: bool, + pub amstorage: bool, + pub amclusterable: bool, + pub ampredlocks: bool, + pub amcanparallel: bool, + pub amcanbuildparallel: bool, + pub amcaninclude: bool, + pub amusemaintenanceworkmem: bool, + pub amsummarizing: bool, + pub amparallelvacuumoptions: uint8, + pub amkeytype: Oid, + pub ambuild: ambuild_function, + pub ambuildempty: ambuildempty_function, + pub aminsert: aminsert_function, + pub aminsertcleanup: aminsertcleanup_function, + pub ambulkdelete: ambulkdelete_function, + pub amvacuumcleanup: amvacuumcleanup_function, + pub amcanreturn: amcanreturn_function, + pub amcostestimate: amcostestimate_function, + pub amoptions: amoptions_function, + pub amproperty: amproperty_function, + pub ambuildphasename: ambuildphasename_function, + pub amvalidate: amvalidate_function, + pub amadjustmembers: amadjustmembers_function, + pub ambeginscan: ambeginscan_function, + pub amrescan: amrescan_function, + pub amgettuple: amgettuple_function, + pub amgetbitmap: amgetbitmap_function, + pub amendscan: amendscan_function, + pub ammarkpos: ammarkpos_function, + pub amrestrpos: amrestrpos_function, + pub amestimateparallelscan: amestimateparallelscan_function, + pub aminitparallelscan: aminitparallelscan_function, + pub amparallelrescan: amparallelrescan_function, +} +impl Default for IndexAmRoutine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DomainConstraintCache { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeCacheEnumData { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeCacheEntry { + pub type_id: Oid, + pub type_id_hash: uint32, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub typstorage: ::core::ffi::c_char, + pub typtype: ::core::ffi::c_char, + pub typrelid: Oid, + pub typsubscript: Oid, + pub typelem: Oid, + pub typcollation: Oid, + pub btree_opf: Oid, + pub btree_opintype: Oid, + pub hash_opf: Oid, + pub hash_opintype: Oid, + pub eq_opr: Oid, + pub lt_opr: Oid, + pub gt_opr: Oid, + pub cmp_proc: Oid, + pub hash_proc: Oid, + pub hash_extended_proc: Oid, + pub eq_opr_finfo: FmgrInfo, + pub cmp_proc_finfo: FmgrInfo, + pub hash_proc_finfo: FmgrInfo, + pub hash_extended_proc_finfo: FmgrInfo, + pub tupDesc: TupleDesc, + pub tupDesc_identifier: uint64, + pub rngelemtype: *mut TypeCacheEntry, + pub rng_opfamily: Oid, + pub rng_collation: Oid, + pub rng_cmp_proc_finfo: FmgrInfo, + pub rng_canonical_finfo: FmgrInfo, + pub rng_subdiff_finfo: FmgrInfo, + pub rngtype: *mut TypeCacheEntry, + pub domainBaseType: Oid, + pub domainBaseTypmod: int32, + pub domainData: *mut DomainConstraintCache, + pub flags: ::core::ffi::c_int, + pub enumData: *mut TypeCacheEnumData, + pub nextDomain: *mut TypeCacheEntry, +} +impl Default for TypeCacheEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DomainConstraintRef { + pub constraints: *mut List, + pub refctx: MemoryContext, + pub tcache: *mut TypeCacheEntry, + pub need_exprstate: bool, + pub dcc: *mut DomainConstraintCache, + pub callback: MemoryContextCallback, +} +impl Default for DomainConstraintRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedRecordTypmodRegistry { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug)] +pub struct BrinOpcInfo { + pub oi_nstored: uint16, + pub oi_regular_nulls: bool, + pub oi_opaque: *mut ::core::ffi::c_void, + pub oi_typcache: __IncompleteArrayField<*mut TypeCacheEntry>, +} +impl Default for BrinOpcInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct BrinDesc { + pub bd_context: MemoryContext, + pub bd_index: Relation, + pub bd_tupdesc: TupleDesc, + pub bd_disktdesc: TupleDesc, + pub bd_totalstored: ::core::ffi::c_int, + pub bd_info: __IncompleteArrayField<*mut BrinOpcInfo>, +} +impl Default for BrinDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type brin_serialize_callback_type = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BrinValues { + pub bv_attno: AttrNumber, + pub bv_hasnulls: bool, + pub bv_allnulls: bool, + pub bv_values: *mut Datum, + pub bv_mem_value: Datum, + pub bv_context: MemoryContext, + pub bv_serialize: brin_serialize_callback_type, +} +impl Default for BrinValues { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct BrinMemTuple { + pub bt_placeholder: bool, + pub bt_empty_range: bool, + pub bt_blkno: BlockNumber, + pub bt_context: MemoryContext, + pub bt_values: *mut Datum, + pub bt_allnulls: *mut bool, + pub bt_hasnulls: *mut bool, + pub bt_columns: __IncompleteArrayField, +} +impl Default for BrinMemTuple { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BrinTuple { + pub bt_blkno: BlockNumber, + pub bt_info: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexTupleData { + pub t_tid: ItemPointerData, + pub t_info: ::core::ffi::c_ushort, +} +pub type IndexTuple = *mut IndexTupleData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IndexAttributeBitMapData { + pub bits: [bits8; 4usize], +} +pub type IndexAttributeBitMap = *mut IndexAttributeBitMapData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalTapeSet { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalTape { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TapeShare { + pub firstblocknumber: int64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Tuplesortstate { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Sharedsort { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortCoordinateData { + pub isWorker: bool, + pub nParticipants: ::core::ffi::c_int, + pub sharedsort: *mut Sharedsort, +} +impl Default for SortCoordinateData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SortCoordinate = *mut SortCoordinateData; +pub mod TuplesortMethod { + pub type Type = ::core::ffi::c_uint; + pub const SORT_TYPE_STILL_IN_PROGRESS: Type = 0; + pub const SORT_TYPE_TOP_N_HEAPSORT: Type = 1; + pub const SORT_TYPE_QUICKSORT: Type = 2; + pub const SORT_TYPE_EXTERNAL_SORT: Type = 4; + pub const SORT_TYPE_EXTERNAL_MERGE: Type = 8; +} +pub mod TuplesortSpaceType { + pub type Type = ::core::ffi::c_uint; + pub const SORT_SPACE_TYPE_DISK: Type = 0; + pub const SORT_SPACE_TYPE_MEMORY: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TuplesortInstrumentation { + pub sortMethod: TuplesortMethod::Type, + pub spaceType: TuplesortSpaceType::Type, + pub spaceUsed: int64, +} +impl Default for TuplesortInstrumentation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortTuple { + pub tuple: *mut ::core::ffi::c_void, + pub datum1: Datum, + pub isnull1: bool, + pub srctape: ::core::ffi::c_int, +} +impl Default for SortTuple { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SortTupleComparator = ::core::option::Option< + unsafe extern "C" fn( + a: *const SortTuple, + b: *const SortTuple, + state: *mut Tuplesortstate, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TuplesortPublic { + pub comparetup: SortTupleComparator, + pub comparetup_tiebreak: SortTupleComparator, + pub removeabbrev: ::core::option::Option< + unsafe extern "C" fn( + state: *mut Tuplesortstate, + stups: *mut SortTuple, + count: ::core::ffi::c_int, + ), + >, + pub writetup: ::core::option::Option< + unsafe extern "C" fn( + state: *mut Tuplesortstate, + tape: *mut LogicalTape, + stup: *mut SortTuple, + ), + >, + pub readtup: ::core::option::Option< + unsafe extern "C" fn( + state: *mut Tuplesortstate, + stup: *mut SortTuple, + tape: *mut LogicalTape, + len: ::core::ffi::c_uint, + ), + >, + pub freestate: ::core::option::Option, + pub maincontext: MemoryContext, + pub sortcontext: MemoryContext, + pub tuplecontext: MemoryContext, + pub haveDatum1: bool, + pub nKeys: ::core::ffi::c_int, + pub sortKeys: SortSupport, + pub onlyKey: SortSupport, + pub sortopt: ::core::ffi::c_int, + pub tuples: bool, + pub arg: *mut ::core::ffi::c_void, +} +impl Default for TuplesortPublic { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Tuplestorestate { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelHashJoinState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyMultiInsertBuffer { + _unused: [u8; 0], +} +pub type ExprStateEvalFunc = ::core::option::Option< + unsafe extern "C" fn( + expression: *mut ExprState, + econtext: *mut ExprContext, + isNull: *mut bool, + ) -> Datum, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprState { + pub type_: NodeTag, + pub flags: uint8, + pub resnull: bool, + pub resvalue: Datum, + pub resultslot: *mut TupleTableSlot, + pub steps: *mut ExprEvalStep, + pub evalfunc: ExprStateEvalFunc, + pub expr: *mut Expr, + pub evalfunc_private: *mut ::core::ffi::c_void, + pub steps_len: ::core::ffi::c_int, + pub steps_alloc: ::core::ffi::c_int, + pub parent: *mut PlanState, + pub ext_params: ParamListInfo, + pub innermost_caseval: *mut Datum, + pub innermost_casenull: *mut bool, + pub innermost_domainval: *mut Datum, + pub innermost_domainnull: *mut bool, + pub escontext: *mut ErrorSaveContext, +} +impl Default for ExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexInfo { + pub type_: NodeTag, + pub ii_NumIndexAttrs: ::core::ffi::c_int, + pub ii_NumIndexKeyAttrs: ::core::ffi::c_int, + pub ii_IndexAttrNumbers: [AttrNumber; 32usize], + pub ii_Expressions: *mut List, + pub ii_ExpressionsState: *mut List, + pub ii_Predicate: *mut List, + pub ii_PredicateState: *mut ExprState, + pub ii_ExclusionOps: *mut Oid, + pub ii_ExclusionProcs: *mut Oid, + pub ii_ExclusionStrats: *mut uint16, + pub ii_UniqueOps: *mut Oid, + pub ii_UniqueProcs: *mut Oid, + pub ii_UniqueStrats: *mut uint16, + pub ii_Unique: bool, + pub ii_NullsNotDistinct: bool, + pub ii_ReadyForInserts: bool, + pub ii_CheckedUnchanged: bool, + pub ii_IndexUnchanged: bool, + pub ii_Concurrent: bool, + pub ii_BrokenHotChain: bool, + pub ii_Summarizing: bool, + pub ii_ParallelWorkers: ::core::ffi::c_int, + pub ii_Am: Oid, + pub ii_AmCache: *mut ::core::ffi::c_void, + pub ii_Context: MemoryContext, +} +impl Default for IndexInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExprContextCallbackFunction = ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprContext_CB { + pub next: *mut ExprContext_CB, + pub function: ExprContextCallbackFunction, + pub arg: Datum, +} +impl Default for ExprContext_CB { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprContext { + pub type_: NodeTag, + pub ecxt_scantuple: *mut TupleTableSlot, + pub ecxt_innertuple: *mut TupleTableSlot, + pub ecxt_outertuple: *mut TupleTableSlot, + pub ecxt_per_query_memory: MemoryContext, + pub ecxt_per_tuple_memory: MemoryContext, + pub ecxt_param_exec_vals: *mut ParamExecData, + pub ecxt_param_list_info: ParamListInfo, + pub ecxt_aggvalues: *mut Datum, + pub ecxt_aggnulls: *mut bool, + pub caseValue_datum: Datum, + pub caseValue_isNull: bool, + pub domainValue_datum: Datum, + pub domainValue_isNull: bool, + pub ecxt_estate: *mut EState, + pub ecxt_callbacks: *mut ExprContext_CB, +} +impl Default for ExprContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ExprDoneCond { + pub type Type = ::core::ffi::c_uint; + pub const ExprSingleResult: Type = 0; + pub const ExprMultipleResult: Type = 1; + pub const ExprEndResult: Type = 2; +} +pub mod SetFunctionReturnMode { + pub type Type = ::core::ffi::c_uint; + pub const SFRM_ValuePerCall: Type = 1; + pub const SFRM_Materialize: Type = 2; + pub const SFRM_Materialize_Random: Type = 4; + pub const SFRM_Materialize_Preferred: Type = 8; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReturnSetInfo { + pub type_: NodeTag, + pub econtext: *mut ExprContext, + pub expectedDesc: TupleDesc, + pub allowedModes: ::core::ffi::c_int, + pub returnMode: SetFunctionReturnMode::Type, + pub isDone: ExprDoneCond::Type, + pub setResult: *mut Tuplestorestate, + pub setDesc: TupleDesc, +} +impl Default for ReturnSetInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectionInfo { + pub type_: NodeTag, + pub pi_state: ExprState, + pub pi_exprContext: *mut ExprContext, +} +impl Default for ProjectionInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JunkFilter { + pub type_: NodeTag, + pub jf_targetList: *mut List, + pub jf_cleanTupType: TupleDesc, + pub jf_cleanMap: *mut AttrNumber, + pub jf_resultSlot: *mut TupleTableSlot, +} +impl Default for JunkFilter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OnConflictSetState { + pub type_: NodeTag, + pub oc_Existing: *mut TupleTableSlot, + pub oc_ProjSlot: *mut TupleTableSlot, + pub oc_ProjInfo: *mut ProjectionInfo, + pub oc_WhereClause: *mut ExprState, +} +impl Default for OnConflictSetState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeActionState { + pub type_: NodeTag, + pub mas_action: *mut MergeAction, + pub mas_proj: *mut ProjectionInfo, + pub mas_whenqual: *mut ExprState, +} +impl Default for MergeActionState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResultRelInfo { + pub type_: NodeTag, + pub ri_RangeTableIndex: Index, + pub ri_RelationDesc: Relation, + pub ri_NumIndices: ::core::ffi::c_int, + pub ri_IndexRelationDescs: RelationPtr, + pub ri_IndexRelationInfo: *mut *mut IndexInfo, + pub ri_RowIdAttNo: AttrNumber, + pub ri_extraUpdatedCols: *mut Bitmapset, + pub ri_projectNew: *mut ProjectionInfo, + pub ri_newTupleSlot: *mut TupleTableSlot, + pub ri_oldTupleSlot: *mut TupleTableSlot, + pub ri_projectNewInfoValid: bool, + pub ri_TrigDesc: *mut TriggerDesc, + pub ri_TrigFunctions: *mut FmgrInfo, + pub ri_TrigWhenExprs: *mut *mut ExprState, + pub ri_TrigInstrument: *mut Instrumentation, + pub ri_ReturningSlot: *mut TupleTableSlot, + pub ri_TrigOldSlot: *mut TupleTableSlot, + pub ri_TrigNewSlot: *mut TupleTableSlot, + pub ri_FdwRoutine: *mut FdwRoutine, + pub ri_FdwState: *mut ::core::ffi::c_void, + pub ri_usesFdwDirectModify: bool, + pub ri_NumSlots: ::core::ffi::c_int, + pub ri_NumSlotsInitialized: ::core::ffi::c_int, + pub ri_BatchSize: ::core::ffi::c_int, + pub ri_Slots: *mut *mut TupleTableSlot, + pub ri_PlanSlots: *mut *mut TupleTableSlot, + pub ri_WithCheckOptions: *mut List, + pub ri_WithCheckOptionExprs: *mut List, + pub ri_ConstraintExprs: *mut *mut ExprState, + pub ri_GeneratedExprsI: *mut *mut ExprState, + pub ri_GeneratedExprsU: *mut *mut ExprState, + pub ri_NumGeneratedNeededI: ::core::ffi::c_int, + pub ri_NumGeneratedNeededU: ::core::ffi::c_int, + pub ri_returningList: *mut List, + pub ri_projectReturning: *mut ProjectionInfo, + pub ri_onConflictArbiterIndexes: *mut List, + pub ri_onConflict: *mut OnConflictSetState, + pub ri_MergeActions: [*mut List; 3usize], + pub ri_MergeJoinCondition: *mut ExprState, + pub ri_PartitionCheckExpr: *mut ExprState, + pub ri_ChildToRootMap: *mut TupleConversionMap, + pub ri_ChildToRootMapValid: bool, + pub ri_RootToChildMap: *mut TupleConversionMap, + pub ri_RootToChildMapValid: bool, + pub ri_RootResultRelInfo: *mut ResultRelInfo, + pub ri_PartitionTupleSlot: *mut TupleTableSlot, + pub ri_CopyMultiInsertBuffer: *mut CopyMultiInsertBuffer, + pub ri_ancestorResultRels: *mut List, +} +impl Default for ResultRelInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AsyncRequest { + pub requestor: *mut PlanState, + pub requestee: *mut PlanState, + pub request_index: ::core::ffi::c_int, + pub callback_pending: bool, + pub request_complete: bool, + pub result: *mut TupleTableSlot, +} +impl Default for AsyncRequest { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EState { + pub type_: NodeTag, + pub es_direction: ScanDirection::Type, + pub es_snapshot: Snapshot, + pub es_crosscheck_snapshot: Snapshot, + pub es_range_table: *mut List, + pub es_range_table_size: Index, + pub es_relations: *mut Relation, + pub es_rowmarks: *mut *mut ExecRowMark, + pub es_rteperminfos: *mut List, + pub es_plannedstmt: *mut PlannedStmt, + pub es_sourceText: *const ::core::ffi::c_char, + pub es_junkFilter: *mut JunkFilter, + pub es_output_cid: CommandId, + pub es_result_relations: *mut *mut ResultRelInfo, + pub es_opened_result_relations: *mut List, + pub es_partition_directory: PartitionDirectory, + pub es_tuple_routing_result_relations: *mut List, + pub es_trig_target_relations: *mut List, + pub es_param_list_info: ParamListInfo, + pub es_param_exec_vals: *mut ParamExecData, + pub es_queryEnv: *mut QueryEnvironment, + pub es_query_cxt: MemoryContext, + pub es_tupleTable: *mut List, + pub es_processed: uint64, + pub es_total_processed: uint64, + pub es_top_eflags: ::core::ffi::c_int, + pub es_instrument: ::core::ffi::c_int, + pub es_finished: bool, + pub es_exprcontexts: *mut List, + pub es_subplanstates: *mut List, + pub es_auxmodifytables: *mut List, + pub es_per_tuple_exprcontext: *mut ExprContext, + pub es_epq_active: *mut EPQState, + pub es_use_parallel_mode: bool, + pub es_query_dsa: *mut dsa_area, + pub es_jit_flags: ::core::ffi::c_int, + pub es_jit: *mut JitContext, + pub es_jit_worker_instr: *mut JitInstrumentation, + pub es_insert_pending_result_relations: *mut List, + pub es_insert_pending_modifytables: *mut List, +} +impl Default for EState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecRowMark { + pub relation: Relation, + pub relid: Oid, + pub rti: Index, + pub prti: Index, + pub rowmarkId: Index, + pub markType: RowMarkType::Type, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, + pub ermActive: bool, + pub curCtid: ItemPointerData, + pub ermExtra: *mut ::core::ffi::c_void, +} +impl Default for ExecRowMark { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecAuxRowMark { + pub rowmark: *mut ExecRowMark, + pub ctidAttNo: AttrNumber, + pub toidAttNo: AttrNumber, + pub wholeAttNo: AttrNumber, +} +impl Default for ExecAuxRowMark { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TupleHashEntry = *mut TupleHashEntryData; +pub type TupleHashTable = *mut TupleHashTableData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleHashEntryData { + pub firstTuple: MinimalTuple, + pub additional: *mut ::core::ffi::c_void, + pub status: uint32, + pub hash: uint32, +} +impl Default for TupleHashEntryData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tuplehash_hash { + pub size: uint64, + pub members: uint32, + pub sizemask: uint32, + pub grow_threshold: uint32, + pub data: *mut TupleHashEntryData, + pub ctx: MemoryContext, + pub private_data: *mut ::core::ffi::c_void, +} +impl Default for tuplehash_hash { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod tuplehash_status { + pub type Type = ::core::ffi::c_uint; + pub const tuplehash_SH_EMPTY: Type = 0; + pub const tuplehash_SH_IN_USE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct tuplehash_iterator { + pub cur: uint32, + pub end: uint32, + pub done: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupleHashTableData { + pub hashtab: *mut tuplehash_hash, + pub numCols: ::core::ffi::c_int, + pub keyColIdx: *mut AttrNumber, + pub tab_hash_funcs: *mut FmgrInfo, + pub tab_eq_func: *mut ExprState, + pub tab_collations: *mut Oid, + pub tablecxt: MemoryContext, + pub tempcxt: MemoryContext, + pub entrysize: Size, + pub tableslot: *mut TupleTableSlot, + pub inputslot: *mut TupleTableSlot, + pub in_hash_funcs: *mut FmgrInfo, + pub cur_eq_func: *mut ExprState, + pub hash_iv: uint32, + pub exprcontext: *mut ExprContext, +} +impl Default for TupleHashTableData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TupleHashIterator = tuplehash_iterator; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFuncExprState { + pub type_: NodeTag, + pub wfunc: *mut WindowFunc, + pub args: *mut List, + pub aggfilter: *mut ExprState, + pub wfuncno: ::core::ffi::c_int, +} +impl Default for WindowFuncExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetExprState { + pub type_: NodeTag, + pub expr: *mut Expr, + pub args: *mut List, + pub elidedFuncState: *mut ExprState, + pub func: FmgrInfo, + pub funcResultStore: *mut Tuplestorestate, + pub funcResultSlot: *mut TupleTableSlot, + pub funcResultDesc: TupleDesc, + pub funcReturnsTuple: bool, + pub funcReturnsSet: bool, + pub setArgsValid: bool, + pub shutdown_reg: bool, + pub fcinfo: FunctionCallInfo, +} +impl Default for SetExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubPlanState { + pub type_: NodeTag, + pub subplan: *mut SubPlan, + pub planstate: *mut PlanState, + pub parent: *mut PlanState, + pub testexpr: *mut ExprState, + pub args: *mut List, + pub curTuple: HeapTuple, + pub curArray: Datum, + pub descRight: TupleDesc, + pub projLeft: *mut ProjectionInfo, + pub projRight: *mut ProjectionInfo, + pub hashtable: TupleHashTable, + pub hashnulls: TupleHashTable, + pub havehashrows: bool, + pub havenullrows: bool, + pub hashtablecxt: MemoryContext, + pub hashtempcxt: MemoryContext, + pub innerecontext: *mut ExprContext, + pub numCols: ::core::ffi::c_int, + pub keyColIdx: *mut AttrNumber, + pub tab_eq_funcoids: *mut Oid, + pub tab_collations: *mut Oid, + pub tab_hash_funcs: *mut FmgrInfo, + pub tab_eq_funcs: *mut FmgrInfo, + pub lhs_hash_funcs: *mut FmgrInfo, + pub cur_eq_funcs: *mut FmgrInfo, + pub cur_eq_comp: *mut ExprState, +} +impl Default for SubPlanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DomainConstraintType { + pub type Type = ::core::ffi::c_uint; + pub const DOM_CONSTRAINT_NOTNULL: Type = 0; + pub const DOM_CONSTRAINT_CHECK: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DomainConstraintState { + pub type_: NodeTag, + pub constrainttype: DomainConstraintType::Type, + pub name: *mut ::core::ffi::c_char, + pub check_expr: *mut Expr, + pub check_exprstate: *mut ExprState, +} +impl Default for DomainConstraintState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonExprState { + pub jsexpr: *mut JsonExpr, + pub formatted_expr: NullableDatum, + pub pathspec: NullableDatum, + pub args: *mut List, + pub error: NullableDatum, + pub empty: NullableDatum, + pub jump_empty: ::core::ffi::c_int, + pub jump_error: ::core::ffi::c_int, + pub jump_eval_coercion: ::core::ffi::c_int, + pub jump_end: ::core::ffi::c_int, + pub input_fcinfo: FunctionCallInfo, + pub escontext: ErrorSaveContext, +} +impl Default for JsonExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExecProcNodeMtd = + ::core::option::Option *mut TupleTableSlot>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlanState { + pub type_: NodeTag, + pub plan: *mut Plan, + pub state: *mut EState, + pub ExecProcNode: ExecProcNodeMtd, + pub ExecProcNodeReal: ExecProcNodeMtd, + pub instrument: *mut Instrumentation, + pub worker_instrument: *mut WorkerInstrumentation, + pub worker_jit_instrument: *mut SharedJitInstrumentation, + pub qual: *mut ExprState, + pub lefttree: *mut PlanState, + pub righttree: *mut PlanState, + pub initPlan: *mut List, + pub subPlan: *mut List, + pub chgParam: *mut Bitmapset, + pub ps_ResultTupleDesc: TupleDesc, + pub ps_ResultTupleSlot: *mut TupleTableSlot, + pub ps_ExprContext: *mut ExprContext, + pub ps_ProjInfo: *mut ProjectionInfo, + pub async_capable: bool, + pub scandesc: TupleDesc, + pub scanops: *const TupleTableSlotOps, + pub outerops: *const TupleTableSlotOps, + pub innerops: *const TupleTableSlotOps, + pub resultops: *const TupleTableSlotOps, + pub scanopsfixed: bool, + pub outeropsfixed: bool, + pub inneropsfixed: bool, + pub resultopsfixed: bool, + pub scanopsset: bool, + pub outeropsset: bool, + pub inneropsset: bool, + pub resultopsset: bool, +} +impl Default for PlanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EPQState { + pub parentestate: *mut EState, + pub epqParam: ::core::ffi::c_int, + pub resultRelations: *mut List, + pub tuple_table: *mut List, + pub relsubs_slot: *mut *mut TupleTableSlot, + pub plan: *mut Plan, + pub arowMarks: *mut List, + pub origslot: *mut TupleTableSlot, + pub recheckestate: *mut EState, + pub relsubs_rowmark: *mut *mut ExecAuxRowMark, + pub relsubs_done: *mut bool, + pub relsubs_blocked: *mut bool, + pub recheckplanstate: *mut PlanState, +} +impl Default for EPQState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResultState { + pub ps: PlanState, + pub resconstantqual: *mut ExprState, + pub rs_done: bool, + pub rs_checkqual: bool, +} +impl Default for ResultState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectSetState { + pub ps: PlanState, + pub elems: *mut *mut Node, + pub elemdone: *mut ExprDoneCond::Type, + pub nelems: ::core::ffi::c_int, + pub pending_srf_tuples: bool, + pub argcontext: MemoryContext, +} +impl Default for ProjectSetState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ModifyTableState { + pub ps: PlanState, + pub operation: CmdType::Type, + pub canSetTag: bool, + pub mt_done: bool, + pub mt_nrels: ::core::ffi::c_int, + pub resultRelInfo: *mut ResultRelInfo, + pub rootResultRelInfo: *mut ResultRelInfo, + pub mt_epqstate: EPQState, + pub fireBSTriggers: bool, + pub mt_resultOidAttno: ::core::ffi::c_int, + pub mt_lastResultOid: Oid, + pub mt_lastResultIndex: ::core::ffi::c_int, + pub mt_resultOidHash: *mut HTAB, + pub mt_root_tuple_slot: *mut TupleTableSlot, + pub mt_partition_tuple_routing: *mut PartitionTupleRouting, + pub mt_transition_capture: *mut TransitionCaptureState, + pub mt_oc_transition_capture: *mut TransitionCaptureState, + pub mt_merge_subcommands: ::core::ffi::c_int, + pub mt_merge_action: *mut MergeActionState, + pub mt_merge_pending_not_matched: *mut TupleTableSlot, + pub mt_merge_inserted: f64, + pub mt_merge_updated: f64, + pub mt_merge_deleted: f64, +} +impl Default for ModifyTableState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelAppendState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionPruneState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AppendState { + pub ps: PlanState, + pub appendplans: *mut *mut PlanState, + pub as_nplans: ::core::ffi::c_int, + pub as_whichplan: ::core::ffi::c_int, + pub as_begun: bool, + pub as_asyncplans: *mut Bitmapset, + pub as_nasyncplans: ::core::ffi::c_int, + pub as_asyncrequests: *mut *mut AsyncRequest, + pub as_asyncresults: *mut *mut TupleTableSlot, + pub as_nasyncresults: ::core::ffi::c_int, + pub as_syncdone: bool, + pub as_nasyncremain: ::core::ffi::c_int, + pub as_needrequest: *mut Bitmapset, + pub as_eventset: *mut WaitEventSet, + pub as_first_partial_plan: ::core::ffi::c_int, + pub as_pstate: *mut ParallelAppendState, + pub pstate_len: Size, + pub as_prune_state: *mut PartitionPruneState, + pub as_valid_subplans_identified: bool, + pub as_valid_subplans: *mut Bitmapset, + pub as_valid_asyncplans: *mut Bitmapset, + pub choose_next_subplan: + ::core::option::Option bool>, +} +impl Default for AppendState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAppendState { + pub ps: PlanState, + pub mergeplans: *mut *mut PlanState, + pub ms_nplans: ::core::ffi::c_int, + pub ms_nkeys: ::core::ffi::c_int, + pub ms_sortkeys: SortSupport, + pub ms_slots: *mut *mut TupleTableSlot, + pub ms_heap: *mut binaryheap, + pub ms_initialized: bool, + pub ms_prune_state: *mut PartitionPruneState, + pub ms_valid_subplans: *mut Bitmapset, +} +impl Default for MergeAppendState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RecursiveUnionState { + pub ps: PlanState, + pub recursing: bool, + pub intermediate_empty: bool, + pub working_table: *mut Tuplestorestate, + pub intermediate_table: *mut Tuplestorestate, + pub eqfuncoids: *mut Oid, + pub hashfunctions: *mut FmgrInfo, + pub tempContext: MemoryContext, + pub hashtable: TupleHashTable, + pub tableContext: MemoryContext, +} +impl Default for RecursiveUnionState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapAndState { + pub ps: PlanState, + pub bitmapplans: *mut *mut PlanState, + pub nplans: ::core::ffi::c_int, +} +impl Default for BitmapAndState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapOrState { + pub ps: PlanState, + pub bitmapplans: *mut *mut PlanState, + pub nplans: ::core::ffi::c_int, +} +impl Default for BitmapOrState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScanState { + pub ps: PlanState, + pub ss_currentRelation: Relation, + pub ss_currentScanDesc: *mut TableScanDescData, + pub ss_ScanTupleSlot: *mut TupleTableSlot, +} +impl Default for ScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SeqScanState { + pub ss: ScanState, + pub pscan_len: Size, +} +impl Default for SeqScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SampleScanState { + pub ss: ScanState, + pub args: *mut List, + pub repeatable: *mut ExprState, + pub tsmroutine: *mut TsmRoutine, + pub tsm_state: *mut ::core::ffi::c_void, + pub use_bulkread: bool, + pub use_pagemode: bool, + pub begun: bool, + pub seed: uint32, + pub donetuples: int64, + pub haveblock: bool, + pub done: bool, +} +impl Default for SampleScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexRuntimeKeyInfo { + pub scan_key: *mut ScanKeyData, + pub key_expr: *mut ExprState, + pub key_toastable: bool, +} +impl Default for IndexRuntimeKeyInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexArrayKeyInfo { + pub scan_key: *mut ScanKeyData, + pub array_expr: *mut ExprState, + pub next_elem: ::core::ffi::c_int, + pub num_elems: ::core::ffi::c_int, + pub elem_values: *mut Datum, + pub elem_nulls: *mut bool, +} +impl Default for IndexArrayKeyInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexScanState { + pub ss: ScanState, + pub indexqualorig: *mut ExprState, + pub indexorderbyorig: *mut List, + pub iss_ScanKeys: *mut ScanKeyData, + pub iss_NumScanKeys: ::core::ffi::c_int, + pub iss_OrderByKeys: *mut ScanKeyData, + pub iss_NumOrderByKeys: ::core::ffi::c_int, + pub iss_RuntimeKeys: *mut IndexRuntimeKeyInfo, + pub iss_NumRuntimeKeys: ::core::ffi::c_int, + pub iss_RuntimeKeysReady: bool, + pub iss_RuntimeContext: *mut ExprContext, + pub iss_RelationDesc: Relation, + pub iss_ScanDesc: *mut IndexScanDescData, + pub iss_ReorderQueue: *mut pairingheap, + pub iss_ReachedEnd: bool, + pub iss_OrderByValues: *mut Datum, + pub iss_OrderByNulls: *mut bool, + pub iss_SortSupport: SortSupport, + pub iss_OrderByTypByVals: *mut bool, + pub iss_OrderByTypLens: *mut int16, + pub iss_PscanLen: Size, +} +impl Default for IndexScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexOnlyScanState { + pub ss: ScanState, + pub recheckqual: *mut ExprState, + pub ioss_ScanKeys: *mut ScanKeyData, + pub ioss_NumScanKeys: ::core::ffi::c_int, + pub ioss_OrderByKeys: *mut ScanKeyData, + pub ioss_NumOrderByKeys: ::core::ffi::c_int, + pub ioss_RuntimeKeys: *mut IndexRuntimeKeyInfo, + pub ioss_NumRuntimeKeys: ::core::ffi::c_int, + pub ioss_RuntimeKeysReady: bool, + pub ioss_RuntimeContext: *mut ExprContext, + pub ioss_RelationDesc: Relation, + pub ioss_ScanDesc: *mut IndexScanDescData, + pub ioss_TableSlot: *mut TupleTableSlot, + pub ioss_VMBuffer: Buffer, + pub ioss_PscanLen: Size, + pub ioss_NameCStringAttNums: *mut AttrNumber, + pub ioss_NameCStringCount: ::core::ffi::c_int, +} +impl Default for IndexOnlyScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapIndexScanState { + pub ss: ScanState, + pub biss_result: *mut TIDBitmap, + pub biss_ScanKeys: *mut ScanKeyData, + pub biss_NumScanKeys: ::core::ffi::c_int, + pub biss_RuntimeKeys: *mut IndexRuntimeKeyInfo, + pub biss_NumRuntimeKeys: ::core::ffi::c_int, + pub biss_ArrayKeys: *mut IndexArrayKeyInfo, + pub biss_NumArrayKeys: ::core::ffi::c_int, + pub biss_RuntimeKeysReady: bool, + pub biss_RuntimeContext: *mut ExprContext, + pub biss_RelationDesc: Relation, + pub biss_ScanDesc: *mut IndexScanDescData, +} +impl Default for BitmapIndexScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SharedBitmapState { + pub type Type = ::core::ffi::c_uint; + pub const BM_INITIAL: Type = 0; + pub const BM_INPROGRESS: Type = 1; + pub const BM_FINISHED: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelBitmapHeapState { + pub tbmiterator: dsa_pointer, + pub prefetch_iterator: dsa_pointer, + pub mutex: slock_t, + pub prefetch_pages: ::core::ffi::c_int, + pub prefetch_target: ::core::ffi::c_int, + pub state: SharedBitmapState::Type, + pub cv: ConditionVariable, +} +impl Default for ParallelBitmapHeapState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapHeapScanState { + pub ss: ScanState, + pub bitmapqualorig: *mut ExprState, + pub tbm: *mut TIDBitmap, + pub tbmiterator: *mut TBMIterator, + pub tbmres: *mut TBMIterateResult, + pub pvmbuffer: Buffer, + pub exact_pages: ::core::ffi::c_long, + pub lossy_pages: ::core::ffi::c_long, + pub prefetch_iterator: *mut TBMIterator, + pub prefetch_pages: ::core::ffi::c_int, + pub prefetch_target: ::core::ffi::c_int, + pub prefetch_maximum: ::core::ffi::c_int, + pub initialized: bool, + pub shared_tbmiterator: *mut TBMSharedIterator, + pub shared_prefetch_iterator: *mut TBMSharedIterator, + pub pstate: *mut ParallelBitmapHeapState, +} +impl Default for BitmapHeapScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidScanState { + pub ss: ScanState, + pub tss_tidexprs: *mut List, + pub tss_isCurrentOf: bool, + pub tss_NumTids: ::core::ffi::c_int, + pub tss_TidPtr: ::core::ffi::c_int, + pub tss_TidList: *mut ItemPointerData, +} +impl Default for TidScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidRangeScanState { + pub ss: ScanState, + pub trss_tidexprs: *mut List, + pub trss_mintid: ItemPointerData, + pub trss_maxtid: ItemPointerData, + pub trss_inScan: bool, +} +impl Default for TidRangeScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubqueryScanState { + pub ss: ScanState, + pub subplan: *mut PlanState, +} +impl Default for SubqueryScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionScanPerFuncState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionScanState { + pub ss: ScanState, + pub eflags: ::core::ffi::c_int, + pub ordinality: bool, + pub simple: bool, + pub ordinal: int64, + pub nfuncs: ::core::ffi::c_int, + pub funcstates: *mut FunctionScanPerFuncState, + pub argcontext: MemoryContext, +} +impl Default for FunctionScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ValuesScanState { + pub ss: ScanState, + pub rowcontext: *mut ExprContext, + pub exprlists: *mut *mut List, + pub exprstatelists: *mut *mut List, + pub array_len: ::core::ffi::c_int, + pub curr_idx: ::core::ffi::c_int, +} +impl Default for ValuesScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableFuncScanState { + pub ss: ScanState, + pub docexpr: *mut ExprState, + pub rowexpr: *mut ExprState, + pub colexprs: *mut List, + pub coldefexprs: *mut List, + pub colvalexprs: *mut List, + pub passingvalexprs: *mut List, + pub ns_names: *mut List, + pub ns_uris: *mut List, + pub notnulls: *mut Bitmapset, + pub opaque: *mut ::core::ffi::c_void, + pub routine: *mut TableFuncRoutine, + pub in_functions: *mut FmgrInfo, + pub typioparams: *mut Oid, + pub ordinal: int64, + pub perTableCxt: MemoryContext, + pub tupstore: *mut Tuplestorestate, +} +impl Default for TableFuncScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CteScanState { + pub ss: ScanState, + pub eflags: ::core::ffi::c_int, + pub readptr: ::core::ffi::c_int, + pub cteplanstate: *mut PlanState, + pub leader: *mut CteScanState, + pub cte_table: *mut Tuplestorestate, + pub eof_cte: bool, +} +impl Default for CteScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedTuplestoreScanState { + pub ss: ScanState, + pub readptr: ::core::ffi::c_int, + pub tupdesc: TupleDesc, + pub relation: *mut Tuplestorestate, +} +impl Default for NamedTuplestoreScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WorkTableScanState { + pub ss: ScanState, + pub rustate: *mut RecursiveUnionState, +} +impl Default for WorkTableScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignScanState { + pub ss: ScanState, + pub fdw_recheck_quals: *mut ExprState, + pub pscan_len: Size, + pub resultRelInfo: *mut ResultRelInfo, + pub fdwroutine: *mut FdwRoutine, + pub fdw_state: *mut ::core::ffi::c_void, +} +impl Default for ForeignScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomScanState { + pub ss: ScanState, + pub flags: uint32, + pub custom_ps: *mut List, + pub pscan_len: Size, + pub methods: *const CustomExecMethods, + pub slotOps: *const TupleTableSlotOps, +} +impl Default for CustomScanState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinState { + pub ps: PlanState, + pub jointype: JoinType::Type, + pub single_match: bool, + pub joinqual: *mut ExprState, +} +impl Default for JoinState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestLoopState { + pub js: JoinState, + pub nl_NeedNewOuter: bool, + pub nl_MatchedOuter: bool, + pub nl_NullInnerTupleSlot: *mut TupleTableSlot, +} +impl Default for NestLoopState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeJoinClauseData { + _unused: [u8; 0], +} +pub type MergeJoinClause = *mut MergeJoinClauseData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeJoinState { + pub js: JoinState, + pub mj_NumClauses: ::core::ffi::c_int, + pub mj_Clauses: MergeJoinClause, + pub mj_JoinState: ::core::ffi::c_int, + pub mj_SkipMarkRestore: bool, + pub mj_ExtraMarks: bool, + pub mj_ConstFalseJoin: bool, + pub mj_FillOuter: bool, + pub mj_FillInner: bool, + pub mj_MatchedOuter: bool, + pub mj_MatchedInner: bool, + pub mj_OuterTupleSlot: *mut TupleTableSlot, + pub mj_InnerTupleSlot: *mut TupleTableSlot, + pub mj_MarkedTupleSlot: *mut TupleTableSlot, + pub mj_NullOuterTupleSlot: *mut TupleTableSlot, + pub mj_NullInnerTupleSlot: *mut TupleTableSlot, + pub mj_OuterEContext: *mut ExprContext, + pub mj_InnerEContext: *mut ExprContext, +} +impl Default for MergeJoinState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoinTupleData { + _unused: [u8; 0], +} +pub type HashJoinTuple = *mut HashJoinTupleData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoinTableData { + _unused: [u8; 0], +} +pub type HashJoinTable = *mut HashJoinTableData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashJoinState { + pub js: JoinState, + pub hashclauses: *mut ExprState, + pub hj_OuterHashKeys: *mut List, + pub hj_HashOperators: *mut List, + pub hj_Collations: *mut List, + pub hj_HashTable: HashJoinTable, + pub hj_CurHashValue: uint32, + pub hj_CurBucketNo: ::core::ffi::c_int, + pub hj_CurSkewBucketNo: ::core::ffi::c_int, + pub hj_CurTuple: HashJoinTuple, + pub hj_OuterTupleSlot: *mut TupleTableSlot, + pub hj_HashTupleSlot: *mut TupleTableSlot, + pub hj_NullOuterTupleSlot: *mut TupleTableSlot, + pub hj_NullInnerTupleSlot: *mut TupleTableSlot, + pub hj_FirstOuterTupleSlot: *mut TupleTableSlot, + pub hj_JoinState: ::core::ffi::c_int, + pub hj_MatchedOuter: bool, + pub hj_OuterNotEmpty: bool, +} +impl Default for HashJoinState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MaterialState { + pub ss: ScanState, + pub eflags: ::core::ffi::c_int, + pub eof_underlying: bool, + pub tuplestorestate: *mut Tuplestorestate, +} +impl Default for MaterialState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeEntry { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeTuple { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeKey { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct MemoizeInstrumentation { + pub cache_hits: uint64, + pub cache_misses: uint64, + pub cache_evictions: uint64, + pub cache_overflows: uint64, + pub mem_peak: uint64, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedMemoizeInfo { + pub num_workers: ::core::ffi::c_int, + pub sinstrument: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizeState { + pub ss: ScanState, + pub mstatus: ::core::ffi::c_int, + pub nkeys: ::core::ffi::c_int, + pub hashtable: *mut memoize_hash, + pub hashkeydesc: TupleDesc, + pub tableslot: *mut TupleTableSlot, + pub probeslot: *mut TupleTableSlot, + pub cache_eq_expr: *mut ExprState, + pub param_exprs: *mut *mut ExprState, + pub hashfunctions: *mut FmgrInfo, + pub collations: *mut Oid, + pub mem_used: uint64, + pub mem_limit: uint64, + pub tableContext: MemoryContext, + pub lru_list: dlist_head, + pub last_tuple: *mut MemoizeTuple, + pub entry: *mut MemoizeEntry, + pub singlerow: bool, + pub binary_mode: bool, + pub stats: MemoizeInstrumentation, + pub shared_info: *mut SharedMemoizeInfo, + pub keyparamids: *mut Bitmapset, +} +impl Default for MemoizeState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PresortedKeyData { + pub flinfo: FmgrInfo, + pub fcinfo: FunctionCallInfo, + pub attno: OffsetNumber, +} +impl Default for PresortedKeyData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct SharedSortInfo { + pub num_workers: ::core::ffi::c_int, + pub sinstrument: __IncompleteArrayField, +} +impl Default for SharedSortInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortState { + pub ss: ScanState, + pub randomAccess: bool, + pub bounded: bool, + pub bound: int64, + pub sort_Done: bool, + pub bounded_Done: bool, + pub bound_Done: int64, + pub tuplesortstate: *mut ::core::ffi::c_void, + pub am_worker: bool, + pub datumSort: bool, + pub shared_info: *mut SharedSortInfo, +} +impl Default for SortState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IncrementalSortGroupInfo { + pub groupCount: int64, + pub maxDiskSpaceUsed: int64, + pub totalDiskSpaceUsed: int64, + pub maxMemorySpaceUsed: int64, + pub totalMemorySpaceUsed: int64, + pub sortMethods: bits32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct IncrementalSortInfo { + pub fullsortGroupInfo: IncrementalSortGroupInfo, + pub prefixsortGroupInfo: IncrementalSortGroupInfo, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedIncrementalSortInfo { + pub num_workers: ::core::ffi::c_int, + pub sinfo: __IncompleteArrayField, +} +pub mod IncrementalSortExecutionStatus { + pub type Type = ::core::ffi::c_uint; + pub const INCSORT_LOADFULLSORT: Type = 0; + pub const INCSORT_LOADPREFIXSORT: Type = 1; + pub const INCSORT_READFULLSORT: Type = 2; + pub const INCSORT_READPREFIXSORT: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IncrementalSortState { + pub ss: ScanState, + pub bounded: bool, + pub bound: int64, + pub outerNodeDone: bool, + pub bound_Done: int64, + pub execution_status: IncrementalSortExecutionStatus::Type, + pub n_fullsort_remaining: int64, + pub fullsort_state: *mut Tuplesortstate, + pub prefixsort_state: *mut Tuplesortstate, + pub presorted_keys: *mut PresortedKeyData, + pub incsort_info: IncrementalSortInfo, + pub group_pivot: *mut TupleTableSlot, + pub transfer_tuple: *mut TupleTableSlot, + pub am_worker: bool, + pub shared_info: *mut SharedIncrementalSortInfo, +} +impl Default for IncrementalSortState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupState { + pub ss: ScanState, + pub eqfunction: *mut ExprState, + pub grp_done: bool, +} +impl Default for GroupState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AggregateInstrumentation { + pub hash_mem_peak: Size, + pub hash_disk_used: uint64, + pub hash_batches_used: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedAggInfo { + pub num_workers: ::core::ffi::c_int, + pub sinstrument: __IncompleteArrayField, +} +pub type AggStatePerAgg = *mut AggStatePerAggData; +pub type AggStatePerTrans = *mut AggStatePerTransData; +pub type AggStatePerGroup = *mut AggStatePerGroupData; +pub type AggStatePerPhase = *mut AggStatePerPhaseData; +pub type AggStatePerHash = *mut AggStatePerHashData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggState { + pub ss: ScanState, + pub aggs: *mut List, + pub numaggs: ::core::ffi::c_int, + pub numtrans: ::core::ffi::c_int, + pub aggstrategy: AggStrategy::Type, + pub aggsplit: AggSplit::Type, + pub phase: AggStatePerPhase, + pub numphases: ::core::ffi::c_int, + pub current_phase: ::core::ffi::c_int, + pub peragg: AggStatePerAgg, + pub pertrans: AggStatePerTrans, + pub hashcontext: *mut ExprContext, + pub aggcontexts: *mut *mut ExprContext, + pub tmpcontext: *mut ExprContext, + pub curaggcontext: *mut ExprContext, + pub curperagg: AggStatePerAgg, + pub curpertrans: AggStatePerTrans, + pub input_done: bool, + pub agg_done: bool, + pub projected_set: ::core::ffi::c_int, + pub current_set: ::core::ffi::c_int, + pub grouped_cols: *mut Bitmapset, + pub all_grouped_cols: *mut List, + pub colnos_needed: *mut Bitmapset, + pub max_colno_needed: ::core::ffi::c_int, + pub all_cols_needed: bool, + pub maxsets: ::core::ffi::c_int, + pub phases: AggStatePerPhase, + pub sort_in: *mut Tuplesortstate, + pub sort_out: *mut Tuplesortstate, + pub sort_slot: *mut TupleTableSlot, + pub pergroups: *mut AggStatePerGroup, + pub grp_firstTuple: HeapTuple, + pub table_filled: bool, + pub num_hashes: ::core::ffi::c_int, + pub hash_metacxt: MemoryContext, + pub hash_tapeset: *mut LogicalTapeSet, + pub hash_spills: *mut HashAggSpill, + pub hash_spill_rslot: *mut TupleTableSlot, + pub hash_spill_wslot: *mut TupleTableSlot, + pub hash_batches: *mut List, + pub hash_ever_spilled: bool, + pub hash_spill_mode: bool, + pub hash_mem_limit: Size, + pub hash_ngroups_limit: uint64, + pub hash_planned_partitions: ::core::ffi::c_int, + pub hashentrysize: f64, + pub hash_mem_peak: Size, + pub hash_ngroups_current: uint64, + pub hash_disk_used: uint64, + pub hash_batches_used: ::core::ffi::c_int, + pub perhash: AggStatePerHash, + pub hash_pergroup: *mut AggStatePerGroup, + pub all_pergroups: *mut AggStatePerGroup, + pub shared_info: *mut SharedAggInfo, +} +impl Default for AggState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowStatePerFuncData { + _unused: [u8; 0], +} +pub type WindowStatePerFunc = *mut WindowStatePerFuncData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowStatePerAggData { + _unused: [u8; 0], +} +pub type WindowStatePerAgg = *mut WindowStatePerAggData; +pub mod WindowAggStatus { + pub type Type = ::core::ffi::c_uint; + pub const WINDOWAGG_DONE: Type = 0; + pub const WINDOWAGG_RUN: Type = 1; + pub const WINDOWAGG_PASSTHROUGH: Type = 2; + pub const WINDOWAGG_PASSTHROUGH_STRICT: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowAggState { + pub ss: ScanState, + pub funcs: *mut List, + pub numfuncs: ::core::ffi::c_int, + pub numaggs: ::core::ffi::c_int, + pub perfunc: WindowStatePerFunc, + pub peragg: WindowStatePerAgg, + pub partEqfunction: *mut ExprState, + pub ordEqfunction: *mut ExprState, + pub buffer: *mut Tuplestorestate, + pub current_ptr: ::core::ffi::c_int, + pub framehead_ptr: ::core::ffi::c_int, + pub frametail_ptr: ::core::ffi::c_int, + pub grouptail_ptr: ::core::ffi::c_int, + pub spooled_rows: int64, + pub currentpos: int64, + pub frameheadpos: int64, + pub frametailpos: int64, + pub agg_winobj: *mut WindowObjectData, + pub aggregatedbase: int64, + pub aggregatedupto: int64, + pub status: WindowAggStatus::Type, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut ExprState, + pub endOffset: *mut ExprState, + pub startOffsetValue: Datum, + pub endOffsetValue: Datum, + pub startInRangeFunc: FmgrInfo, + pub endInRangeFunc: FmgrInfo, + pub inRangeColl: Oid, + pub inRangeAsc: bool, + pub inRangeNullsFirst: bool, + pub currentgroup: int64, + pub frameheadgroup: int64, + pub frametailgroup: int64, + pub groupheadpos: int64, + pub grouptailpos: int64, + pub partcontext: MemoryContext, + pub aggcontext: MemoryContext, + pub curaggcontext: MemoryContext, + pub tmpcontext: *mut ExprContext, + pub runcondition: *mut ExprState, + pub use_pass_through: bool, + pub top_window: bool, + pub all_first: bool, + pub partition_spooled: bool, + pub more_partitions: bool, + pub framehead_valid: bool, + pub frametail_valid: bool, + pub grouptail_valid: bool, + pub first_part_slot: *mut TupleTableSlot, + pub framehead_slot: *mut TupleTableSlot, + pub frametail_slot: *mut TupleTableSlot, + pub agg_row_slot: *mut TupleTableSlot, + pub temp_slot_1: *mut TupleTableSlot, + pub temp_slot_2: *mut TupleTableSlot, +} +impl Default for WindowAggState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UniqueState { + pub ps: PlanState, + pub eqfunction: *mut ExprState, +} +impl Default for UniqueState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherState { + pub ps: PlanState, + pub initialized: bool, + pub need_to_scan_locally: bool, + pub tuples_needed: int64, + pub funnel_slot: *mut TupleTableSlot, + pub pei: *mut ParallelExecutorInfo, + pub nworkers_launched: ::core::ffi::c_int, + pub nreaders: ::core::ffi::c_int, + pub nextreader: ::core::ffi::c_int, + pub reader: *mut *mut TupleQueueReader, +} +impl Default for GatherState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GMReaderTupleBuffer { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherMergeState { + pub ps: PlanState, + pub initialized: bool, + pub gm_initialized: bool, + pub need_to_scan_locally: bool, + pub tuples_needed: int64, + pub tupDesc: TupleDesc, + pub gm_nkeys: ::core::ffi::c_int, + pub gm_sortkeys: SortSupport, + pub pei: *mut ParallelExecutorInfo, + pub nworkers_launched: ::core::ffi::c_int, + pub nreaders: ::core::ffi::c_int, + pub gm_slots: *mut *mut TupleTableSlot, + pub reader: *mut *mut TupleQueueReader, + pub gm_tuple_buffers: *mut GMReaderTupleBuffer, + pub gm_heap: *mut binaryheap, +} +impl Default for GatherMergeState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HashInstrumentation { + pub nbuckets: ::core::ffi::c_int, + pub nbuckets_original: ::core::ffi::c_int, + pub nbatch: ::core::ffi::c_int, + pub nbatch_original: ::core::ffi::c_int, + pub space_peak: Size, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedHashInfo { + pub num_workers: ::core::ffi::c_int, + pub hinstrument: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashState { + pub ps: PlanState, + pub hashtable: HashJoinTable, + pub hashkeys: *mut List, + pub shared_info: *mut SharedHashInfo, + pub hinstrument: *mut HashInstrumentation, + pub parallel_state: *mut ParallelHashJoinState, +} +impl Default for HashState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOpStatePerGroupData { + _unused: [u8; 0], +} +pub type SetOpStatePerGroup = *mut SetOpStatePerGroupData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOpState { + pub ps: PlanState, + pub eqfunction: *mut ExprState, + pub eqfuncoids: *mut Oid, + pub hashfunctions: *mut FmgrInfo, + pub setop_done: bool, + pub numOutput: ::core::ffi::c_long, + pub pergroup: SetOpStatePerGroup, + pub grp_firstTuple: HeapTuple, + pub hashtable: TupleHashTable, + pub tableContext: MemoryContext, + pub table_filled: bool, + pub hashiter: TupleHashIterator, +} +impl Default for SetOpState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRowsState { + pub ps: PlanState, + pub lr_arowMarks: *mut List, + pub lr_epqstate: EPQState, +} +impl Default for LockRowsState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LimitStateCond { + pub type Type = ::core::ffi::c_uint; + pub const LIMIT_INITIAL: Type = 0; + pub const LIMIT_RESCAN: Type = 1; + pub const LIMIT_EMPTY: Type = 2; + pub const LIMIT_INWINDOW: Type = 3; + pub const LIMIT_WINDOWEND_TIES: Type = 4; + pub const LIMIT_SUBPLANEOF: Type = 5; + pub const LIMIT_WINDOWEND: Type = 6; + pub const LIMIT_WINDOWSTART: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LimitState { + pub ps: PlanState, + pub limitOffset: *mut ExprState, + pub limitCount: *mut ExprState, + pub limitOption: LimitOption::Type, + pub offset: int64, + pub count: int64, + pub noCount: bool, + pub lstate: LimitStateCond::Type, + pub position: int64, + pub subSlot: *mut TupleTableSlot, + pub eqfunction: *mut ExprState, + pub last_slot: *mut TupleTableSlot, +} +impl Default for LimitState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CommandTag { + pub type Type = ::core::ffi::c_uint; + pub const CMDTAG_UNKNOWN: Type = 0; + pub const CMDTAG_ALTER_ACCESS_METHOD: Type = 1; + pub const CMDTAG_ALTER_AGGREGATE: Type = 2; + pub const CMDTAG_ALTER_CAST: Type = 3; + pub const CMDTAG_ALTER_COLLATION: Type = 4; + pub const CMDTAG_ALTER_CONSTRAINT: Type = 5; + pub const CMDTAG_ALTER_CONVERSION: Type = 6; + pub const CMDTAG_ALTER_DATABASE: Type = 7; + pub const CMDTAG_ALTER_DEFAULT_PRIVILEGES: Type = 8; + pub const CMDTAG_ALTER_DOMAIN: Type = 9; + pub const CMDTAG_ALTER_EVENT_TRIGGER: Type = 10; + pub const CMDTAG_ALTER_EXTENSION: Type = 11; + pub const CMDTAG_ALTER_FOREIGN_DATA_WRAPPER: Type = 12; + pub const CMDTAG_ALTER_FOREIGN_TABLE: Type = 13; + pub const CMDTAG_ALTER_FUNCTION: Type = 14; + pub const CMDTAG_ALTER_INDEX: Type = 15; + pub const CMDTAG_ALTER_LANGUAGE: Type = 16; + pub const CMDTAG_ALTER_LARGE_OBJECT: Type = 17; + pub const CMDTAG_ALTER_MATERIALIZED_VIEW: Type = 18; + pub const CMDTAG_ALTER_OPERATOR: Type = 19; + pub const CMDTAG_ALTER_OPERATOR_CLASS: Type = 20; + pub const CMDTAG_ALTER_OPERATOR_FAMILY: Type = 21; + pub const CMDTAG_ALTER_POLICY: Type = 22; + pub const CMDTAG_ALTER_PROCEDURE: Type = 23; + pub const CMDTAG_ALTER_PUBLICATION: Type = 24; + pub const CMDTAG_ALTER_ROLE: Type = 25; + pub const CMDTAG_ALTER_ROUTINE: Type = 26; + pub const CMDTAG_ALTER_RULE: Type = 27; + pub const CMDTAG_ALTER_SCHEMA: Type = 28; + pub const CMDTAG_ALTER_SEQUENCE: Type = 29; + pub const CMDTAG_ALTER_SERVER: Type = 30; + pub const CMDTAG_ALTER_STATISTICS: Type = 31; + pub const CMDTAG_ALTER_SUBSCRIPTION: Type = 32; + pub const CMDTAG_ALTER_SYSTEM: Type = 33; + pub const CMDTAG_ALTER_TABLE: Type = 34; + pub const CMDTAG_ALTER_TABLESPACE: Type = 35; + pub const CMDTAG_ALTER_TEXT_SEARCH_CONFIGURATION: Type = 36; + pub const CMDTAG_ALTER_TEXT_SEARCH_DICTIONARY: Type = 37; + pub const CMDTAG_ALTER_TEXT_SEARCH_PARSER: Type = 38; + pub const CMDTAG_ALTER_TEXT_SEARCH_TEMPLATE: Type = 39; + pub const CMDTAG_ALTER_TRANSFORM: Type = 40; + pub const CMDTAG_ALTER_TRIGGER: Type = 41; + pub const CMDTAG_ALTER_TYPE: Type = 42; + pub const CMDTAG_ALTER_USER_MAPPING: Type = 43; + pub const CMDTAG_ALTER_VIEW: Type = 44; + pub const CMDTAG_ANALYZE: Type = 45; + pub const CMDTAG_BEGIN: Type = 46; + pub const CMDTAG_CALL: Type = 47; + pub const CMDTAG_CHECKPOINT: Type = 48; + pub const CMDTAG_CLOSE: Type = 49; + pub const CMDTAG_CLOSE_CURSOR: Type = 50; + pub const CMDTAG_CLOSE_CURSOR_ALL: Type = 51; + pub const CMDTAG_CLUSTER: Type = 52; + pub const CMDTAG_COMMENT: Type = 53; + pub const CMDTAG_COMMIT: Type = 54; + pub const CMDTAG_COMMIT_PREPARED: Type = 55; + pub const CMDTAG_COPY: Type = 56; + pub const CMDTAG_COPY_FROM: Type = 57; + pub const CMDTAG_CREATE_ACCESS_METHOD: Type = 58; + pub const CMDTAG_CREATE_AGGREGATE: Type = 59; + pub const CMDTAG_CREATE_CAST: Type = 60; + pub const CMDTAG_CREATE_COLLATION: Type = 61; + pub const CMDTAG_CREATE_CONSTRAINT: Type = 62; + pub const CMDTAG_CREATE_CONVERSION: Type = 63; + pub const CMDTAG_CREATE_DATABASE: Type = 64; + pub const CMDTAG_CREATE_DOMAIN: Type = 65; + pub const CMDTAG_CREATE_EVENT_TRIGGER: Type = 66; + pub const CMDTAG_CREATE_EXTENSION: Type = 67; + pub const CMDTAG_CREATE_FOREIGN_DATA_WRAPPER: Type = 68; + pub const CMDTAG_CREATE_FOREIGN_TABLE: Type = 69; + pub const CMDTAG_CREATE_FUNCTION: Type = 70; + pub const CMDTAG_CREATE_INDEX: Type = 71; + pub const CMDTAG_CREATE_LANGUAGE: Type = 72; + pub const CMDTAG_CREATE_MATERIALIZED_VIEW: Type = 73; + pub const CMDTAG_CREATE_OPERATOR: Type = 74; + pub const CMDTAG_CREATE_OPERATOR_CLASS: Type = 75; + pub const CMDTAG_CREATE_OPERATOR_FAMILY: Type = 76; + pub const CMDTAG_CREATE_POLICY: Type = 77; + pub const CMDTAG_CREATE_PROCEDURE: Type = 78; + pub const CMDTAG_CREATE_PUBLICATION: Type = 79; + pub const CMDTAG_CREATE_ROLE: Type = 80; + pub const CMDTAG_CREATE_ROUTINE: Type = 81; + pub const CMDTAG_CREATE_RULE: Type = 82; + pub const CMDTAG_CREATE_SCHEMA: Type = 83; + pub const CMDTAG_CREATE_SEQUENCE: Type = 84; + pub const CMDTAG_CREATE_SERVER: Type = 85; + pub const CMDTAG_CREATE_STATISTICS: Type = 86; + pub const CMDTAG_CREATE_SUBSCRIPTION: Type = 87; + pub const CMDTAG_CREATE_TABLE: Type = 88; + pub const CMDTAG_CREATE_TABLE_AS: Type = 89; + pub const CMDTAG_CREATE_TABLESPACE: Type = 90; + pub const CMDTAG_CREATE_TEXT_SEARCH_CONFIGURATION: Type = 91; + pub const CMDTAG_CREATE_TEXT_SEARCH_DICTIONARY: Type = 92; + pub const CMDTAG_CREATE_TEXT_SEARCH_PARSER: Type = 93; + pub const CMDTAG_CREATE_TEXT_SEARCH_TEMPLATE: Type = 94; + pub const CMDTAG_CREATE_TRANSFORM: Type = 95; + pub const CMDTAG_CREATE_TRIGGER: Type = 96; + pub const CMDTAG_CREATE_TYPE: Type = 97; + pub const CMDTAG_CREATE_USER_MAPPING: Type = 98; + pub const CMDTAG_CREATE_VIEW: Type = 99; + pub const CMDTAG_DEALLOCATE: Type = 100; + pub const CMDTAG_DEALLOCATE_ALL: Type = 101; + pub const CMDTAG_DECLARE_CURSOR: Type = 102; + pub const CMDTAG_DELETE: Type = 103; + pub const CMDTAG_DISCARD: Type = 104; + pub const CMDTAG_DISCARD_ALL: Type = 105; + pub const CMDTAG_DISCARD_PLANS: Type = 106; + pub const CMDTAG_DISCARD_SEQUENCES: Type = 107; + pub const CMDTAG_DISCARD_TEMP: Type = 108; + pub const CMDTAG_DO: Type = 109; + pub const CMDTAG_DROP_ACCESS_METHOD: Type = 110; + pub const CMDTAG_DROP_AGGREGATE: Type = 111; + pub const CMDTAG_DROP_CAST: Type = 112; + pub const CMDTAG_DROP_COLLATION: Type = 113; + pub const CMDTAG_DROP_CONSTRAINT: Type = 114; + pub const CMDTAG_DROP_CONVERSION: Type = 115; + pub const CMDTAG_DROP_DATABASE: Type = 116; + pub const CMDTAG_DROP_DOMAIN: Type = 117; + pub const CMDTAG_DROP_EVENT_TRIGGER: Type = 118; + pub const CMDTAG_DROP_EXTENSION: Type = 119; + pub const CMDTAG_DROP_FOREIGN_DATA_WRAPPER: Type = 120; + pub const CMDTAG_DROP_FOREIGN_TABLE: Type = 121; + pub const CMDTAG_DROP_FUNCTION: Type = 122; + pub const CMDTAG_DROP_INDEX: Type = 123; + pub const CMDTAG_DROP_LANGUAGE: Type = 124; + pub const CMDTAG_DROP_MATERIALIZED_VIEW: Type = 125; + pub const CMDTAG_DROP_OPERATOR: Type = 126; + pub const CMDTAG_DROP_OPERATOR_CLASS: Type = 127; + pub const CMDTAG_DROP_OPERATOR_FAMILY: Type = 128; + pub const CMDTAG_DROP_OWNED: Type = 129; + pub const CMDTAG_DROP_POLICY: Type = 130; + pub const CMDTAG_DROP_PROCEDURE: Type = 131; + pub const CMDTAG_DROP_PUBLICATION: Type = 132; + pub const CMDTAG_DROP_ROLE: Type = 133; + pub const CMDTAG_DROP_ROUTINE: Type = 134; + pub const CMDTAG_DROP_RULE: Type = 135; + pub const CMDTAG_DROP_SCHEMA: Type = 136; + pub const CMDTAG_DROP_SEQUENCE: Type = 137; + pub const CMDTAG_DROP_SERVER: Type = 138; + pub const CMDTAG_DROP_STATISTICS: Type = 139; + pub const CMDTAG_DROP_SUBSCRIPTION: Type = 140; + pub const CMDTAG_DROP_TABLE: Type = 141; + pub const CMDTAG_DROP_TABLESPACE: Type = 142; + pub const CMDTAG_DROP_TEXT_SEARCH_CONFIGURATION: Type = 143; + pub const CMDTAG_DROP_TEXT_SEARCH_DICTIONARY: Type = 144; + pub const CMDTAG_DROP_TEXT_SEARCH_PARSER: Type = 145; + pub const CMDTAG_DROP_TEXT_SEARCH_TEMPLATE: Type = 146; + pub const CMDTAG_DROP_TRANSFORM: Type = 147; + pub const CMDTAG_DROP_TRIGGER: Type = 148; + pub const CMDTAG_DROP_TYPE: Type = 149; + pub const CMDTAG_DROP_USER_MAPPING: Type = 150; + pub const CMDTAG_DROP_VIEW: Type = 151; + pub const CMDTAG_EXECUTE: Type = 152; + pub const CMDTAG_EXPLAIN: Type = 153; + pub const CMDTAG_FETCH: Type = 154; + pub const CMDTAG_GRANT: Type = 155; + pub const CMDTAG_GRANT_ROLE: Type = 156; + pub const CMDTAG_IMPORT_FOREIGN_SCHEMA: Type = 157; + pub const CMDTAG_INSERT: Type = 158; + pub const CMDTAG_LISTEN: Type = 159; + pub const CMDTAG_LOAD: Type = 160; + pub const CMDTAG_LOCK_TABLE: Type = 161; + pub const CMDTAG_LOGIN: Type = 162; + pub const CMDTAG_MERGE: Type = 163; + pub const CMDTAG_MOVE: Type = 164; + pub const CMDTAG_NOTIFY: Type = 165; + pub const CMDTAG_PREPARE: Type = 166; + pub const CMDTAG_PREPARE_TRANSACTION: Type = 167; + pub const CMDTAG_REASSIGN_OWNED: Type = 168; + pub const CMDTAG_REFRESH_MATERIALIZED_VIEW: Type = 169; + pub const CMDTAG_REINDEX: Type = 170; + pub const CMDTAG_RELEASE: Type = 171; + pub const CMDTAG_RESET: Type = 172; + pub const CMDTAG_REVOKE: Type = 173; + pub const CMDTAG_REVOKE_ROLE: Type = 174; + pub const CMDTAG_ROLLBACK: Type = 175; + pub const CMDTAG_ROLLBACK_PREPARED: Type = 176; + pub const CMDTAG_SAVEPOINT: Type = 177; + pub const CMDTAG_SECURITY_LABEL: Type = 178; + pub const CMDTAG_SELECT: Type = 179; + pub const CMDTAG_SELECT_FOR_KEY_SHARE: Type = 180; + pub const CMDTAG_SELECT_FOR_NO_KEY_UPDATE: Type = 181; + pub const CMDTAG_SELECT_FOR_SHARE: Type = 182; + pub const CMDTAG_SELECT_FOR_UPDATE: Type = 183; + pub const CMDTAG_SELECT_INTO: Type = 184; + pub const CMDTAG_SET: Type = 185; + pub const CMDTAG_SET_CONSTRAINTS: Type = 186; + pub const CMDTAG_SHOW: Type = 187; + pub const CMDTAG_START_TRANSACTION: Type = 188; + pub const CMDTAG_TRUNCATE_TABLE: Type = 189; + pub const CMDTAG_UNLISTEN: Type = 190; + pub const CMDTAG_UPDATE: Type = 191; + pub const CMDTAG_VACUUM: Type = 192; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QueryCompletion { + pub commandTag: CommandTag::Type, + pub nprocessed: uint64, +} +impl Default for QueryCompletion { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CommandDest { + pub type Type = ::core::ffi::c_uint; + pub const DestNone: Type = 0; + pub const DestDebug: Type = 1; + pub const DestRemote: Type = 2; + pub const DestRemoteExecute: Type = 3; + pub const DestRemoteSimple: Type = 4; + pub const DestSPI: Type = 5; + pub const DestTuplestore: Type = 6; + pub const DestIntoRel: Type = 7; + pub const DestCopyOut: Type = 8; + pub const DestSQLFunction: Type = 9; + pub const DestTransientRel: Type = 10; + pub const DestTupleQueue: Type = 11; + pub const DestExplainSerialize: Type = 12; +} +pub type DestReceiver = _DestReceiver; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _DestReceiver { + pub receiveSlot: ::core::option::Option< + unsafe extern "C" fn(slot: *mut TupleTableSlot, self_: *mut DestReceiver) -> bool, + >, + pub rStartup: ::core::option::Option< + unsafe extern "C" fn( + self_: *mut DestReceiver, + operation: ::core::ffi::c_int, + typeinfo: TupleDesc, + ), + >, + pub rShutdown: ::core::option::Option, + pub rDestroy: ::core::option::Option, + pub mydest: CommandDest::Type, +} +impl Default for _DestReceiver { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QueryDesc { + pub operation: CmdType::Type, + pub plannedstmt: *mut PlannedStmt, + pub sourceText: *const ::core::ffi::c_char, + pub snapshot: Snapshot, + pub crosscheck_snapshot: Snapshot, + pub dest: *mut DestReceiver, + pub params: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, + pub instrument_options: ::core::ffi::c_int, + pub tupDesc: TupleDesc, + pub estate: *mut EState, + pub planstate: *mut PlanState, + pub already_executed: bool, + pub totaltime: *mut Instrumentation, +} +impl Default for QueryDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Integer { + pub type_: NodeTag, + pub ival: ::core::ffi::c_int, +} +impl Default for Integer { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Float { + pub type_: NodeTag, + pub fval: *mut ::core::ffi::c_char, +} +impl Default for Float { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Boolean { + pub type_: NodeTag, + pub boolval: bool, +} +impl Default for Boolean { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct String { + pub type_: NodeTag, + pub sval: *mut ::core::ffi::c_char, +} +impl Default for String { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitString { + pub type_: NodeTag, + pub bsval: *mut ::core::ffi::c_char, +} +impl Default for BitString { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod QuerySource { + pub type Type = ::core::ffi::c_uint; + pub const QSRC_ORIGINAL: Type = 0; + pub const QSRC_PARSER: Type = 1; + pub const QSRC_INSTEAD_RULE: Type = 2; + pub const QSRC_QUAL_INSTEAD_RULE: Type = 3; + pub const QSRC_NON_INSTEAD_RULE: Type = 4; +} +pub mod SortByDir { + pub type Type = ::core::ffi::c_uint; + pub const SORTBY_DEFAULT: Type = 0; + pub const SORTBY_ASC: Type = 1; + pub const SORTBY_DESC: Type = 2; + pub const SORTBY_USING: Type = 3; +} +pub mod SortByNulls { + pub type Type = ::core::ffi::c_uint; + pub const SORTBY_NULLS_DEFAULT: Type = 0; + pub const SORTBY_NULLS_FIRST: Type = 1; + pub const SORTBY_NULLS_LAST: Type = 2; +} +pub mod SetQuantifier { + pub type Type = ::core::ffi::c_uint; + pub const SET_QUANTIFIER_DEFAULT: Type = 0; + pub const SET_QUANTIFIER_ALL: Type = 1; + pub const SET_QUANTIFIER_DISTINCT: Type = 2; +} +pub type AclMode = uint64; +#[doc = "\tQuery Tree"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Query { + pub type_: NodeTag, + pub commandType: CmdType::Type, + pub querySource: QuerySource::Type, + pub queryId: uint64, + pub canSetTag: bool, + pub utilityStmt: *mut Node, + pub resultRelation: ::core::ffi::c_int, + pub hasAggs: bool, + pub hasWindowFuncs: bool, + pub hasTargetSRFs: bool, + pub hasSubLinks: bool, + pub hasDistinctOn: bool, + pub hasRecursive: bool, + pub hasModifyingCTE: bool, + pub hasForUpdate: bool, + pub hasRowSecurity: bool, + pub isReturn: bool, + pub cteList: *mut List, + pub rtable: *mut List, + pub rteperminfos: *mut List, + pub jointree: *mut FromExpr, + pub mergeActionList: *mut List, + pub mergeTargetRelation: ::core::ffi::c_int, + pub mergeJoinCondition: *mut Node, + pub targetList: *mut List, + pub override_: OverridingKind::Type, + pub onConflict: *mut OnConflictExpr, + pub returningList: *mut List, + pub groupClause: *mut List, + pub groupDistinct: bool, + pub groupingSets: *mut List, + pub havingQual: *mut Node, + pub windowClause: *mut List, + pub distinctClause: *mut List, + pub sortClause: *mut List, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, + pub rowMarks: *mut List, + pub setOperations: *mut Node, + pub constraintDeps: *mut List, + pub withCheckOptions: *mut List, + pub stmt_location: ParseLoc, + pub stmt_len: ParseLoc, +} +impl Default for Query { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[doc = "\tSupporting data structures for Parse Trees\n\n\tMost of these node types appear in raw parsetrees output by the grammar,\n\tand get transformed to something else by the analyzer. A few of them\n\tare used as-is in transformed querytrees."] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeName { + pub type_: NodeTag, + pub names: *mut List, + pub typeOid: Oid, + pub setof: bool, + pub pct_type: bool, + pub typmods: *mut List, + pub typemod: int32, + pub arrayBounds: *mut List, + pub location: ParseLoc, +} +impl Default for TypeName { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ColumnRef { + pub type_: NodeTag, + pub fields: *mut List, + pub location: ParseLoc, +} +impl Default for ColumnRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamRef { + pub type_: NodeTag, + pub number: ::core::ffi::c_int, + pub location: ParseLoc, +} +impl Default for ParamRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod A_Expr_Kind { + pub type Type = ::core::ffi::c_uint; + pub const AEXPR_OP: Type = 0; + pub const AEXPR_OP_ANY: Type = 1; + pub const AEXPR_OP_ALL: Type = 2; + pub const AEXPR_DISTINCT: Type = 3; + pub const AEXPR_NOT_DISTINCT: Type = 4; + pub const AEXPR_NULLIF: Type = 5; + pub const AEXPR_IN: Type = 6; + pub const AEXPR_LIKE: Type = 7; + pub const AEXPR_ILIKE: Type = 8; + pub const AEXPR_SIMILAR: Type = 9; + pub const AEXPR_BETWEEN: Type = 10; + pub const AEXPR_NOT_BETWEEN: Type = 11; + pub const AEXPR_BETWEEN_SYM: Type = 12; + pub const AEXPR_NOT_BETWEEN_SYM: Type = 13; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Expr { + pub type_: NodeTag, + pub kind: A_Expr_Kind::Type, + pub name: *mut List, + pub lexpr: *mut Node, + pub rexpr: *mut Node, + pub location: ParseLoc, +} +impl Default for A_Expr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ValUnion { + pub node: Node, + pub ival: Integer, + pub fval: Float, + pub boolval: Boolean, + pub sval: String, + pub bsval: BitString, +} +impl Default for ValUnion { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct A_Const { + pub type_: NodeTag, + pub val: ValUnion, + pub isnull: bool, + pub location: ParseLoc, +} +impl Default for A_Const { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TypeCast { + pub type_: NodeTag, + pub arg: *mut Node, + pub typeName: *mut TypeName, + pub location: ParseLoc, +} +impl Default for TypeCast { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollateClause { + pub type_: NodeTag, + pub arg: *mut Node, + pub collname: *mut List, + pub location: ParseLoc, +} +impl Default for CollateClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RoleSpecType { + pub type Type = ::core::ffi::c_uint; + pub const ROLESPEC_CSTRING: Type = 0; + pub const ROLESPEC_CURRENT_ROLE: Type = 1; + pub const ROLESPEC_CURRENT_USER: Type = 2; + pub const ROLESPEC_SESSION_USER: Type = 3; + pub const ROLESPEC_PUBLIC: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RoleSpec { + pub type_: NodeTag, + pub roletype: RoleSpecType::Type, + pub rolename: *mut ::core::ffi::c_char, + pub location: ParseLoc, +} +impl Default for RoleSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FuncCall { + pub type_: NodeTag, + pub funcname: *mut List, + pub args: *mut List, + pub agg_order: *mut List, + pub agg_filter: *mut Node, + pub over: *mut WindowDef, + pub agg_within_group: bool, + pub agg_star: bool, + pub agg_distinct: bool, + pub func_variadic: bool, + pub funcformat: CoercionForm::Type, + pub location: ParseLoc, +} +impl Default for FuncCall { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Star { + pub type_: NodeTag, +} +impl Default for A_Star { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Indices { + pub type_: NodeTag, + pub is_slice: bool, + pub lidx: *mut Node, + pub uidx: *mut Node, +} +impl Default for A_Indices { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_Indirection { + pub type_: NodeTag, + pub arg: *mut Node, + pub indirection: *mut List, +} +impl Default for A_Indirection { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct A_ArrayExpr { + pub type_: NodeTag, + pub elements: *mut List, + pub location: ParseLoc, +} +impl Default for A_ArrayExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResTarget { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub indirection: *mut List, + pub val: *mut Node, + pub location: ParseLoc, +} +impl Default for ResTarget { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MultiAssignRef { + pub type_: NodeTag, + pub source: *mut Node, + pub colno: ::core::ffi::c_int, + pub ncolumns: ::core::ffi::c_int, +} +impl Default for MultiAssignRef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortBy { + pub type_: NodeTag, + pub node: *mut Node, + pub sortby_dir: SortByDir::Type, + pub sortby_nulls: SortByNulls::Type, + pub useOp: *mut List, + pub location: ParseLoc, +} +impl Default for SortBy { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowDef { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub refname: *mut ::core::ffi::c_char, + pub partitionClause: *mut List, + pub orderClause: *mut List, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut Node, + pub endOffset: *mut Node, + pub location: ParseLoc, +} +impl Default for WindowDef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeSubselect { + pub type_: NodeTag, + pub lateral: bool, + pub subquery: *mut Node, + pub alias: *mut Alias, +} +impl Default for RangeSubselect { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeFunction { + pub type_: NodeTag, + pub lateral: bool, + pub ordinality: bool, + pub is_rowsfrom: bool, + pub functions: *mut List, + pub alias: *mut Alias, + pub coldeflist: *mut List, +} +impl Default for RangeFunction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTableFunc { + pub type_: NodeTag, + pub lateral: bool, + pub docexpr: *mut Node, + pub rowexpr: *mut Node, + pub namespaces: *mut List, + pub columns: *mut List, + pub alias: *mut Alias, + pub location: ParseLoc, +} +impl Default for RangeTableFunc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTableFuncCol { + pub type_: NodeTag, + pub colname: *mut ::core::ffi::c_char, + pub typeName: *mut TypeName, + pub for_ordinality: bool, + pub is_not_null: bool, + pub colexpr: *mut Node, + pub coldefexpr: *mut Node, + pub location: ParseLoc, +} +impl Default for RangeTableFuncCol { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTableSample { + pub type_: NodeTag, + pub relation: *mut Node, + pub method: *mut List, + pub args: *mut List, + pub repeatable: *mut Node, + pub location: ParseLoc, +} +impl Default for RangeTableSample { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ColumnDef { + pub type_: NodeTag, + pub colname: *mut ::core::ffi::c_char, + pub typeName: *mut TypeName, + pub compression: *mut ::core::ffi::c_char, + pub inhcount: ::core::ffi::c_int, + pub is_local: bool, + pub is_not_null: bool, + pub is_from_type: bool, + pub storage: ::core::ffi::c_char, + pub storage_name: *mut ::core::ffi::c_char, + pub raw_default: *mut Node, + pub cooked_default: *mut Node, + pub identity: ::core::ffi::c_char, + pub identitySequence: *mut RangeVar, + pub generated: ::core::ffi::c_char, + pub collClause: *mut CollateClause, + pub collOid: Oid, + pub constraints: *mut List, + pub fdwoptions: *mut List, + pub location: ParseLoc, +} +impl Default for ColumnDef { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableLikeClause { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub options: bits32, + pub relationOid: Oid, +} +impl Default for TableLikeClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TableLikeOption { + pub type Type = ::core::ffi::c_uint; + pub const CREATE_TABLE_LIKE_COMMENTS: Type = 1; + pub const CREATE_TABLE_LIKE_COMPRESSION: Type = 2; + pub const CREATE_TABLE_LIKE_CONSTRAINTS: Type = 4; + pub const CREATE_TABLE_LIKE_DEFAULTS: Type = 8; + pub const CREATE_TABLE_LIKE_GENERATED: Type = 16; + pub const CREATE_TABLE_LIKE_IDENTITY: Type = 32; + pub const CREATE_TABLE_LIKE_INDEXES: Type = 64; + pub const CREATE_TABLE_LIKE_STATISTICS: Type = 128; + pub const CREATE_TABLE_LIKE_STORAGE: Type = 256; + pub const CREATE_TABLE_LIKE_ALL: Type = 2147483647; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexElem { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub expr: *mut Node, + pub indexcolname: *mut ::core::ffi::c_char, + pub collation: *mut List, + pub opclass: *mut List, + pub opclassopts: *mut List, + pub ordering: SortByDir::Type, + pub nulls_ordering: SortByNulls::Type, +} +impl Default for IndexElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DefElemAction { + pub type Type = ::core::ffi::c_uint; + pub const DEFELEM_UNSPEC: Type = 0; + pub const DEFELEM_SET: Type = 1; + pub const DEFELEM_ADD: Type = 2; + pub const DEFELEM_DROP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DefElem { + pub type_: NodeTag, + pub defnamespace: *mut ::core::ffi::c_char, + pub defname: *mut ::core::ffi::c_char, + pub arg: *mut Node, + pub defaction: DefElemAction::Type, + pub location: ParseLoc, +} +impl Default for DefElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockingClause { + pub type_: NodeTag, + pub lockedRels: *mut List, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, +} +impl Default for LockingClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XmlSerialize { + pub type_: NodeTag, + pub xmloption: XmlOptionType::Type, + pub expr: *mut Node, + pub typeName: *mut TypeName, + pub indent: bool, + pub location: ParseLoc, +} +impl Default for XmlSerialize { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionElem { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub expr: *mut Node, + pub collation: *mut List, + pub opclass: *mut List, + pub location: ParseLoc, +} +impl Default for PartitionElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionStrategy { + pub type Type = ::core::ffi::c_uint; + pub const PARTITION_STRATEGY_LIST: Type = 108; + pub const PARTITION_STRATEGY_RANGE: Type = 114; + pub const PARTITION_STRATEGY_HASH: Type = 104; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionSpec { + pub type_: NodeTag, + pub strategy: PartitionStrategy::Type, + pub partParams: *mut List, + pub location: ParseLoc, +} +impl Default for PartitionSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionBoundSpec { + pub type_: NodeTag, + pub strategy: ::core::ffi::c_char, + pub is_default: bool, + pub modulus: ::core::ffi::c_int, + pub remainder: ::core::ffi::c_int, + pub listdatums: *mut List, + pub lowerdatums: *mut List, + pub upperdatums: *mut List, + pub location: ParseLoc, +} +impl Default for PartitionBoundSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionRangeDatumKind { + pub type Type = ::core::ffi::c_int; + pub const PARTITION_RANGE_DATUM_MINVALUE: Type = -1; + pub const PARTITION_RANGE_DATUM_VALUE: Type = 0; + pub const PARTITION_RANGE_DATUM_MAXVALUE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionRangeDatum { + pub type_: NodeTag, + pub kind: PartitionRangeDatumKind::Type, + pub value: *mut Node, + pub location: ParseLoc, +} +impl Default for PartitionRangeDatum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SinglePartitionSpec { + pub type_: NodeTag, +} +impl Default for SinglePartitionSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionCmd { + pub type_: NodeTag, + pub name: *mut RangeVar, + pub bound: *mut PartitionBoundSpec, + pub concurrent: bool, +} +impl Default for PartitionCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RTEKind { + pub type Type = ::core::ffi::c_uint; + pub const RTE_RELATION: Type = 0; + pub const RTE_SUBQUERY: Type = 1; + pub const RTE_JOIN: Type = 2; + pub const RTE_FUNCTION: Type = 3; + pub const RTE_TABLEFUNC: Type = 4; + pub const RTE_VALUES: Type = 5; + pub const RTE_CTE: Type = 6; + pub const RTE_NAMEDTUPLESTORE: Type = 7; + pub const RTE_RESULT: Type = 8; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTblEntry { + pub type_: NodeTag, + pub alias: *mut Alias, + pub eref: *mut Alias, + pub rtekind: RTEKind::Type, + pub relid: Oid, + pub inh: bool, + pub relkind: ::core::ffi::c_char, + pub rellockmode: ::core::ffi::c_int, + pub perminfoindex: Index, + pub tablesample: *mut TableSampleClause, + pub subquery: *mut Query, + pub security_barrier: bool, + pub jointype: JoinType::Type, + pub joinmergedcols: ::core::ffi::c_int, + pub joinaliasvars: *mut List, + pub joinleftcols: *mut List, + pub joinrightcols: *mut List, + pub join_using_alias: *mut Alias, + pub functions: *mut List, + pub funcordinality: bool, + pub tablefunc: *mut TableFunc, + pub values_lists: *mut List, + pub ctename: *mut ::core::ffi::c_char, + pub ctelevelsup: Index, + pub self_reference: bool, + pub coltypes: *mut List, + pub coltypmods: *mut List, + pub colcollations: *mut List, + pub enrname: *mut ::core::ffi::c_char, + pub enrtuples: Cardinality, + pub lateral: bool, + pub inFromCl: bool, + pub securityQuals: *mut List, +} +impl Default for RangeTblEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RTEPermissionInfo { + pub type_: NodeTag, + pub relid: Oid, + pub inh: bool, + pub requiredPerms: AclMode, + pub checkAsUser: Oid, + pub selectedCols: *mut Bitmapset, + pub insertedCols: *mut Bitmapset, + pub updatedCols: *mut Bitmapset, +} +impl Default for RTEPermissionInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeTblFunction { + pub type_: NodeTag, + pub funcexpr: *mut Node, + pub funccolcount: ::core::ffi::c_int, + pub funccolnames: *mut List, + pub funccoltypes: *mut List, + pub funccoltypmods: *mut List, + pub funccolcollations: *mut List, + pub funcparams: *mut Bitmapset, +} +impl Default for RangeTblFunction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableSampleClause { + pub type_: NodeTag, + pub tsmhandler: Oid, + pub args: *mut List, + pub repeatable: *mut Expr, +} +impl Default for TableSampleClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod WCOKind { + pub type Type = ::core::ffi::c_uint; + pub const WCO_VIEW_CHECK: Type = 0; + pub const WCO_RLS_INSERT_CHECK: Type = 1; + pub const WCO_RLS_UPDATE_CHECK: Type = 2; + pub const WCO_RLS_CONFLICT_CHECK: Type = 3; + pub const WCO_RLS_MERGE_UPDATE_CHECK: Type = 4; + pub const WCO_RLS_MERGE_DELETE_CHECK: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WithCheckOption { + pub type_: NodeTag, + pub kind: WCOKind::Type, + pub relname: *mut ::core::ffi::c_char, + pub polname: *mut ::core::ffi::c_char, + pub qual: *mut Node, + pub cascaded: bool, +} +impl Default for WithCheckOption { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortGroupClause { + pub type_: NodeTag, + pub tleSortGroupRef: Index, + pub eqop: Oid, + pub sortop: Oid, + pub nulls_first: bool, + pub hashable: bool, +} +impl Default for SortGroupClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod GroupingSetKind { + pub type Type = ::core::ffi::c_uint; + pub const GROUPING_SET_EMPTY: Type = 0; + pub const GROUPING_SET_SIMPLE: Type = 1; + pub const GROUPING_SET_ROLLUP: Type = 2; + pub const GROUPING_SET_CUBE: Type = 3; + pub const GROUPING_SET_SETS: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingSet { + pub type_: NodeTag, + pub kind: GroupingSetKind::Type, + pub content: *mut List, + pub location: ParseLoc, +} +impl Default for GroupingSet { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowClause { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub refname: *mut ::core::ffi::c_char, + pub partitionClause: *mut List, + pub orderClause: *mut List, + pub frameOptions: ::core::ffi::c_int, + pub startOffset: *mut Node, + pub endOffset: *mut Node, + pub startInRangeFunc: Oid, + pub endInRangeFunc: Oid, + pub inRangeColl: Oid, + pub inRangeAsc: bool, + pub inRangeNullsFirst: bool, + pub winref: Index, + pub copiedOrder: bool, +} +impl Default for WindowClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowMarkClause { + pub type_: NodeTag, + pub rti: Index, + pub strength: LockClauseStrength::Type, + pub waitPolicy: LockWaitPolicy::Type, + pub pushedDown: bool, +} +impl Default for RowMarkClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WithClause { + pub type_: NodeTag, + pub ctes: *mut List, + pub recursive: bool, + pub location: ParseLoc, +} +impl Default for WithClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InferClause { + pub type_: NodeTag, + pub indexElems: *mut List, + pub whereClause: *mut Node, + pub conname: *mut ::core::ffi::c_char, + pub location: ParseLoc, +} +impl Default for InferClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OnConflictClause { + pub type_: NodeTag, + pub action: OnConflictAction::Type, + pub infer: *mut InferClause, + pub targetList: *mut List, + pub whereClause: *mut Node, + pub location: ParseLoc, +} +impl Default for OnConflictClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CTEMaterialize { + pub type Type = ::core::ffi::c_uint; + pub const CTEMaterializeDefault: Type = 0; + pub const CTEMaterializeAlways: Type = 1; + pub const CTEMaterializeNever: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CTESearchClause { + pub type_: NodeTag, + pub search_col_list: *mut List, + pub search_breadth_first: bool, + pub search_seq_column: *mut ::core::ffi::c_char, + pub location: ParseLoc, +} +impl Default for CTESearchClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CTECycleClause { + pub type_: NodeTag, + pub cycle_col_list: *mut List, + pub cycle_mark_column: *mut ::core::ffi::c_char, + pub cycle_mark_value: *mut Node, + pub cycle_mark_default: *mut Node, + pub cycle_path_column: *mut ::core::ffi::c_char, + pub location: ParseLoc, + pub cycle_mark_type: Oid, + pub cycle_mark_typmod: ::core::ffi::c_int, + pub cycle_mark_collation: Oid, + pub cycle_mark_neop: Oid, +} +impl Default for CTECycleClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CommonTableExpr { + pub type_: NodeTag, + pub ctename: *mut ::core::ffi::c_char, + pub aliascolnames: *mut List, + pub ctematerialized: CTEMaterialize::Type, + pub ctequery: *mut Node, + pub search_clause: *mut CTESearchClause, + pub cycle_clause: *mut CTECycleClause, + pub location: ParseLoc, + pub cterecursive: bool, + pub cterefcount: ::core::ffi::c_int, + pub ctecolnames: *mut List, + pub ctecoltypes: *mut List, + pub ctecoltypmods: *mut List, + pub ctecolcollations: *mut List, +} +impl Default for CommonTableExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeWhenClause { + pub type_: NodeTag, + pub matchKind: MergeMatchKind::Type, + pub commandType: CmdType::Type, + pub override_: OverridingKind::Type, + pub condition: *mut Node, + pub targetList: *mut List, + pub values: *mut List, +} +impl Default for MergeWhenClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TriggerTransition { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub isNew: bool, + pub isTable: bool, +} +impl Default for TriggerTransition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonOutput { + pub type_: NodeTag, + pub typeName: *mut TypeName, + pub returning: *mut JsonReturning, +} +impl Default for JsonOutput { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArgument { + pub type_: NodeTag, + pub val: *mut JsonValueExpr, + pub name: *mut ::core::ffi::c_char, +} +impl Default for JsonArgument { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonQuotes { + pub type Type = ::core::ffi::c_uint; + pub const JS_QUOTES_UNSPEC: Type = 0; + pub const JS_QUOTES_KEEP: Type = 1; + pub const JS_QUOTES_OMIT: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonFuncExpr { + pub type_: NodeTag, + pub op: JsonExprOp::Type, + pub column_name: *mut ::core::ffi::c_char, + pub context_item: *mut JsonValueExpr, + pub pathspec: *mut Node, + pub passing: *mut List, + pub output: *mut JsonOutput, + pub on_empty: *mut JsonBehavior, + pub on_error: *mut JsonBehavior, + pub wrapper: JsonWrapper::Type, + pub quotes: JsonQuotes::Type, + pub location: ParseLoc, +} +impl Default for JsonFuncExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTablePathSpec { + pub type_: NodeTag, + pub string: *mut Node, + pub name: *mut ::core::ffi::c_char, + pub name_location: ParseLoc, + pub location: ParseLoc, +} +impl Default for JsonTablePathSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTable { + pub type_: NodeTag, + pub context_item: *mut JsonValueExpr, + pub pathspec: *mut JsonTablePathSpec, + pub passing: *mut List, + pub columns: *mut List, + pub on_error: *mut JsonBehavior, + pub alias: *mut Alias, + pub lateral: bool, + pub location: ParseLoc, +} +impl Default for JsonTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonTableColumnType { + pub type Type = ::core::ffi::c_uint; + pub const JTC_FOR_ORDINALITY: Type = 0; + pub const JTC_REGULAR: Type = 1; + pub const JTC_EXISTS: Type = 2; + pub const JTC_FORMATTED: Type = 3; + pub const JTC_NESTED: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonTableColumn { + pub type_: NodeTag, + pub coltype: JsonTableColumnType::Type, + pub name: *mut ::core::ffi::c_char, + pub typeName: *mut TypeName, + pub pathspec: *mut JsonTablePathSpec, + pub format: *mut JsonFormat, + pub wrapper: JsonWrapper::Type, + pub quotes: JsonQuotes::Type, + pub columns: *mut List, + pub on_empty: *mut JsonBehavior, + pub on_error: *mut JsonBehavior, + pub location: ParseLoc, +} +impl Default for JsonTableColumn { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonKeyValue { + pub type_: NodeTag, + pub key: *mut Expr, + pub value: *mut JsonValueExpr, +} +impl Default for JsonKeyValue { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonParseExpr { + pub type_: NodeTag, + pub expr: *mut JsonValueExpr, + pub output: *mut JsonOutput, + pub unique_keys: bool, + pub location: ParseLoc, +} +impl Default for JsonParseExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonScalarExpr { + pub type_: NodeTag, + pub expr: *mut Expr, + pub output: *mut JsonOutput, + pub location: ParseLoc, +} +impl Default for JsonScalarExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonSerializeExpr { + pub type_: NodeTag, + pub expr: *mut JsonValueExpr, + pub output: *mut JsonOutput, + pub location: ParseLoc, +} +impl Default for JsonSerializeExpr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonObjectConstructor { + pub type_: NodeTag, + pub exprs: *mut List, + pub output: *mut JsonOutput, + pub absent_on_null: bool, + pub unique: bool, + pub location: ParseLoc, +} +impl Default for JsonObjectConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArrayConstructor { + pub type_: NodeTag, + pub exprs: *mut List, + pub output: *mut JsonOutput, + pub absent_on_null: bool, + pub location: ParseLoc, +} +impl Default for JsonArrayConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArrayQueryConstructor { + pub type_: NodeTag, + pub query: *mut Node, + pub output: *mut JsonOutput, + pub format: *mut JsonFormat, + pub absent_on_null: bool, + pub location: ParseLoc, +} +impl Default for JsonArrayQueryConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonAggConstructor { + pub type_: NodeTag, + pub output: *mut JsonOutput, + pub agg_filter: *mut Node, + pub agg_order: *mut List, + pub over: *mut WindowDef, + pub location: ParseLoc, +} +impl Default for JsonAggConstructor { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonObjectAgg { + pub type_: NodeTag, + pub constructor: *mut JsonAggConstructor, + pub arg: *mut JsonKeyValue, + pub absent_on_null: bool, + pub unique: bool, +} +impl Default for JsonObjectAgg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonArrayAgg { + pub type_: NodeTag, + pub constructor: *mut JsonAggConstructor, + pub arg: *mut JsonValueExpr, + pub absent_on_null: bool, +} +impl Default for JsonArrayAgg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[doc = "\t\tRaw Grammar Output Statements"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RawStmt { + pub type_: NodeTag, + pub stmt: *mut Node, + pub stmt_location: ParseLoc, + pub stmt_len: ParseLoc, +} +impl Default for RawStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[doc = "\t\tOptimizable Statements"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InsertStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub cols: *mut List, + pub selectStmt: *mut Node, + pub onConflictClause: *mut OnConflictClause, + pub returningList: *mut List, + pub withClause: *mut WithClause, + pub override_: OverridingKind::Type, +} +impl Default for InsertStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DeleteStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub usingClause: *mut List, + pub whereClause: *mut Node, + pub returningList: *mut List, + pub withClause: *mut WithClause, +} +impl Default for DeleteStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UpdateStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub targetList: *mut List, + pub whereClause: *mut Node, + pub fromClause: *mut List, + pub returningList: *mut List, + pub withClause: *mut WithClause, +} +impl Default for UpdateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub sourceRelation: *mut Node, + pub joinCondition: *mut Node, + pub mergeWhenClauses: *mut List, + pub returningList: *mut List, + pub withClause: *mut WithClause, +} +impl Default for MergeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SetOperation { + pub type Type = ::core::ffi::c_uint; + pub const SETOP_NONE: Type = 0; + pub const SETOP_UNION: Type = 1; + pub const SETOP_INTERSECT: Type = 2; + pub const SETOP_EXCEPT: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SelectStmt { + pub type_: NodeTag, + pub distinctClause: *mut List, + pub intoClause: *mut IntoClause, + pub targetList: *mut List, + pub fromClause: *mut List, + pub whereClause: *mut Node, + pub groupClause: *mut List, + pub groupDistinct: bool, + pub havingClause: *mut Node, + pub windowClause: *mut List, + pub valuesLists: *mut List, + pub sortClause: *mut List, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, + pub lockingClause: *mut List, + pub withClause: *mut WithClause, + pub op: SetOperation::Type, + pub all: bool, + pub larg: *mut SelectStmt, + pub rarg: *mut SelectStmt, +} +impl Default for SelectStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOperationStmt { + pub type_: NodeTag, + pub op: SetOperation::Type, + pub all: bool, + pub larg: *mut Node, + pub rarg: *mut Node, + pub colTypes: *mut List, + pub colTypmods: *mut List, + pub colCollations: *mut List, + pub groupClauses: *mut List, +} +impl Default for SetOperationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReturnStmt { + pub type_: NodeTag, + pub returnval: *mut Node, +} +impl Default for ReturnStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLAssignStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub indirection: *mut List, + pub nnames: ::core::ffi::c_int, + pub val: *mut SelectStmt, + pub location: ParseLoc, +} +impl Default for PLAssignStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ObjectType { + #[doc = "\t\tOther Statements (no optimizations required)\n\n\t\tThese are not touched by parser/analyze.c except to put them into\n\t\tthe utilityStmt field of a Query. This is eventually passed to\n\t\tProcessUtility (by-passing rewriting and planning). Some of the\n\t\tstatements do need attention from parse analysis, and this is\n\t\tdone by routines in parser/parse_utilcmd.c after ProcessUtility\n\t\treceives the command for execution.\n\t\tDECLARE CURSOR, EXPLAIN, and CREATE TABLE AS are special cases:\n\t\tthey contain optimizable statements, which get processed normally\n\t\tby parser/analyze.c."] + pub type Type = ::core::ffi::c_uint; + pub const OBJECT_ACCESS_METHOD: Type = 0; + pub const OBJECT_AGGREGATE: Type = 1; + pub const OBJECT_AMOP: Type = 2; + pub const OBJECT_AMPROC: Type = 3; + pub const OBJECT_ATTRIBUTE: Type = 4; + pub const OBJECT_CAST: Type = 5; + pub const OBJECT_COLUMN: Type = 6; + pub const OBJECT_COLLATION: Type = 7; + pub const OBJECT_CONVERSION: Type = 8; + pub const OBJECT_DATABASE: Type = 9; + pub const OBJECT_DEFAULT: Type = 10; + pub const OBJECT_DEFACL: Type = 11; + pub const OBJECT_DOMAIN: Type = 12; + pub const OBJECT_DOMCONSTRAINT: Type = 13; + pub const OBJECT_EVENT_TRIGGER: Type = 14; + pub const OBJECT_EXTENSION: Type = 15; + pub const OBJECT_FDW: Type = 16; + pub const OBJECT_FOREIGN_SERVER: Type = 17; + pub const OBJECT_FOREIGN_TABLE: Type = 18; + pub const OBJECT_FUNCTION: Type = 19; + pub const OBJECT_INDEX: Type = 20; + pub const OBJECT_LANGUAGE: Type = 21; + pub const OBJECT_LARGEOBJECT: Type = 22; + pub const OBJECT_MATVIEW: Type = 23; + pub const OBJECT_OPCLASS: Type = 24; + pub const OBJECT_OPERATOR: Type = 25; + pub const OBJECT_OPFAMILY: Type = 26; + pub const OBJECT_PARAMETER_ACL: Type = 27; + pub const OBJECT_POLICY: Type = 28; + pub const OBJECT_PROCEDURE: Type = 29; + pub const OBJECT_PUBLICATION: Type = 30; + pub const OBJECT_PUBLICATION_NAMESPACE: Type = 31; + pub const OBJECT_PUBLICATION_REL: Type = 32; + pub const OBJECT_ROLE: Type = 33; + pub const OBJECT_ROUTINE: Type = 34; + pub const OBJECT_RULE: Type = 35; + pub const OBJECT_SCHEMA: Type = 36; + pub const OBJECT_SEQUENCE: Type = 37; + pub const OBJECT_SUBSCRIPTION: Type = 38; + pub const OBJECT_STATISTIC_EXT: Type = 39; + pub const OBJECT_TABCONSTRAINT: Type = 40; + pub const OBJECT_TABLE: Type = 41; + pub const OBJECT_TABLESPACE: Type = 42; + pub const OBJECT_TRANSFORM: Type = 43; + pub const OBJECT_TRIGGER: Type = 44; + pub const OBJECT_TSCONFIGURATION: Type = 45; + pub const OBJECT_TSDICTIONARY: Type = 46; + pub const OBJECT_TSPARSER: Type = 47; + pub const OBJECT_TSTEMPLATE: Type = 48; + pub const OBJECT_TYPE: Type = 49; + pub const OBJECT_USER_MAPPING: Type = 50; + pub const OBJECT_VIEW: Type = 51; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateSchemaStmt { + pub type_: NodeTag, + pub schemaname: *mut ::core::ffi::c_char, + pub authrole: *mut RoleSpec, + pub schemaElts: *mut List, + pub if_not_exists: bool, +} +impl Default for CreateSchemaStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DropBehavior { + pub type Type = ::core::ffi::c_uint; + pub const DROP_RESTRICT: Type = 0; + pub const DROP_CASCADE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub cmds: *mut List, + pub objtype: ObjectType::Type, + pub missing_ok: bool, +} +impl Default for AlterTableStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterTableType { + pub type Type = ::core::ffi::c_uint; + pub const AT_AddColumn: Type = 0; + pub const AT_AddColumnToView: Type = 1; + pub const AT_ColumnDefault: Type = 2; + pub const AT_CookedColumnDefault: Type = 3; + pub const AT_DropNotNull: Type = 4; + pub const AT_SetNotNull: Type = 5; + pub const AT_SetExpression: Type = 6; + pub const AT_DropExpression: Type = 7; + pub const AT_CheckNotNull: Type = 8; + pub const AT_SetStatistics: Type = 9; + pub const AT_SetOptions: Type = 10; + pub const AT_ResetOptions: Type = 11; + pub const AT_SetStorage: Type = 12; + pub const AT_SetCompression: Type = 13; + pub const AT_DropColumn: Type = 14; + pub const AT_AddIndex: Type = 15; + pub const AT_ReAddIndex: Type = 16; + pub const AT_AddConstraint: Type = 17; + pub const AT_ReAddConstraint: Type = 18; + pub const AT_ReAddDomainConstraint: Type = 19; + pub const AT_AlterConstraint: Type = 20; + pub const AT_ValidateConstraint: Type = 21; + pub const AT_AddIndexConstraint: Type = 22; + pub const AT_DropConstraint: Type = 23; + pub const AT_ReAddComment: Type = 24; + pub const AT_AlterColumnType: Type = 25; + pub const AT_AlterColumnGenericOptions: Type = 26; + pub const AT_ChangeOwner: Type = 27; + pub const AT_ClusterOn: Type = 28; + pub const AT_DropCluster: Type = 29; + pub const AT_SetLogged: Type = 30; + pub const AT_SetUnLogged: Type = 31; + pub const AT_DropOids: Type = 32; + pub const AT_SetAccessMethod: Type = 33; + pub const AT_SetTableSpace: Type = 34; + pub const AT_SetRelOptions: Type = 35; + pub const AT_ResetRelOptions: Type = 36; + pub const AT_ReplaceRelOptions: Type = 37; + pub const AT_EnableTrig: Type = 38; + pub const AT_EnableAlwaysTrig: Type = 39; + pub const AT_EnableReplicaTrig: Type = 40; + pub const AT_DisableTrig: Type = 41; + pub const AT_EnableTrigAll: Type = 42; + pub const AT_DisableTrigAll: Type = 43; + pub const AT_EnableTrigUser: Type = 44; + pub const AT_DisableTrigUser: Type = 45; + pub const AT_EnableRule: Type = 46; + pub const AT_EnableAlwaysRule: Type = 47; + pub const AT_EnableReplicaRule: Type = 48; + pub const AT_DisableRule: Type = 49; + pub const AT_AddInherit: Type = 50; + pub const AT_DropInherit: Type = 51; + pub const AT_AddOf: Type = 52; + pub const AT_DropOf: Type = 53; + pub const AT_ReplicaIdentity: Type = 54; + pub const AT_EnableRowSecurity: Type = 55; + pub const AT_DisableRowSecurity: Type = 56; + pub const AT_ForceRowSecurity: Type = 57; + pub const AT_NoForceRowSecurity: Type = 58; + pub const AT_GenericOptions: Type = 59; + pub const AT_AttachPartition: Type = 60; + pub const AT_DetachPartition: Type = 61; + pub const AT_DetachPartitionFinalize: Type = 62; + pub const AT_AddIdentity: Type = 63; + pub const AT_SetIdentity: Type = 64; + pub const AT_DropIdentity: Type = 65; + pub const AT_ReAddStatistics: Type = 66; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicaIdentityStmt { + pub type_: NodeTag, + pub identity_type: ::core::ffi::c_char, + pub name: *mut ::core::ffi::c_char, +} +impl Default for ReplicaIdentityStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableCmd { + pub type_: NodeTag, + pub subtype: AlterTableType::Type, + pub name: *mut ::core::ffi::c_char, + pub num: int16, + pub newowner: *mut RoleSpec, + pub def: *mut Node, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, + pub recurse: bool, +} +impl Default for AlterTableCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterCollationStmt { + pub type_: NodeTag, + pub collname: *mut List, +} +impl Default for AlterCollationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDomainStmt { + pub type_: NodeTag, + pub subtype: ::core::ffi::c_char, + pub typeName: *mut List, + pub name: *mut ::core::ffi::c_char, + pub def: *mut Node, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, +} +impl Default for AlterDomainStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod GrantTargetType { + pub type Type = ::core::ffi::c_uint; + pub const ACL_TARGET_OBJECT: Type = 0; + pub const ACL_TARGET_ALL_IN_SCHEMA: Type = 1; + pub const ACL_TARGET_DEFAULTS: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GrantStmt { + pub type_: NodeTag, + pub is_grant: bool, + pub targtype: GrantTargetType::Type, + pub objtype: ObjectType::Type, + pub objects: *mut List, + pub privileges: *mut List, + pub grantees: *mut List, + pub grant_option: bool, + pub grantor: *mut RoleSpec, + pub behavior: DropBehavior::Type, +} +impl Default for GrantStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectWithArgs { + pub type_: NodeTag, + pub objname: *mut List, + pub objargs: *mut List, + pub objfuncargs: *mut List, + pub args_unspecified: bool, +} +impl Default for ObjectWithArgs { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AccessPriv { + pub type_: NodeTag, + pub priv_name: *mut ::core::ffi::c_char, + pub cols: *mut List, +} +impl Default for AccessPriv { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GrantRoleStmt { + pub type_: NodeTag, + pub granted_roles: *mut List, + pub grantee_roles: *mut List, + pub is_grant: bool, + pub opt: *mut List, + pub grantor: *mut RoleSpec, + pub behavior: DropBehavior::Type, +} +impl Default for GrantRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDefaultPrivilegesStmt { + pub type_: NodeTag, + pub options: *mut List, + pub action: *mut GrantStmt, +} +impl Default for AlterDefaultPrivilegesStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub query: *mut Node, + pub attlist: *mut List, + pub is_from: bool, + pub is_program: bool, + pub filename: *mut ::core::ffi::c_char, + pub options: *mut List, + pub whereClause: *mut Node, +} +impl Default for CopyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod VariableSetKind { + pub type Type = ::core::ffi::c_uint; + pub const VAR_SET_VALUE: Type = 0; + pub const VAR_SET_DEFAULT: Type = 1; + pub const VAR_SET_CURRENT: Type = 2; + pub const VAR_SET_MULTI: Type = 3; + pub const VAR_RESET: Type = 4; + pub const VAR_RESET_ALL: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VariableSetStmt { + pub type_: NodeTag, + pub kind: VariableSetKind::Type, + pub name: *mut ::core::ffi::c_char, + pub args: *mut List, + pub is_local: bool, +} +impl Default for VariableSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VariableShowStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, +} +impl Default for VariableShowStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub tableElts: *mut List, + pub inhRelations: *mut List, + pub partbound: *mut PartitionBoundSpec, + pub partspec: *mut PartitionSpec, + pub ofTypename: *mut TypeName, + pub constraints: *mut List, + pub options: *mut List, + pub oncommit: OnCommitAction::Type, + pub tablespacename: *mut ::core::ffi::c_char, + pub accessMethod: *mut ::core::ffi::c_char, + pub if_not_exists: bool, +} +impl Default for CreateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ConstrType { + pub type Type = ::core::ffi::c_uint; + pub const CONSTR_NULL: Type = 0; + pub const CONSTR_NOTNULL: Type = 1; + pub const CONSTR_DEFAULT: Type = 2; + pub const CONSTR_IDENTITY: Type = 3; + pub const CONSTR_GENERATED: Type = 4; + pub const CONSTR_CHECK: Type = 5; + pub const CONSTR_PRIMARY: Type = 6; + pub const CONSTR_UNIQUE: Type = 7; + pub const CONSTR_EXCLUSION: Type = 8; + pub const CONSTR_FOREIGN: Type = 9; + pub const CONSTR_ATTR_DEFERRABLE: Type = 10; + pub const CONSTR_ATTR_NOT_DEFERRABLE: Type = 11; + pub const CONSTR_ATTR_DEFERRED: Type = 12; + pub const CONSTR_ATTR_IMMEDIATE: Type = 13; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Constraint { + pub type_: NodeTag, + pub contype: ConstrType::Type, + pub conname: *mut ::core::ffi::c_char, + pub deferrable: bool, + pub initdeferred: bool, + pub skip_validation: bool, + pub initially_valid: bool, + pub is_no_inherit: bool, + pub raw_expr: *mut Node, + pub cooked_expr: *mut ::core::ffi::c_char, + pub generated_when: ::core::ffi::c_char, + pub inhcount: ::core::ffi::c_int, + pub nulls_not_distinct: bool, + pub keys: *mut List, + pub including: *mut List, + pub exclusions: *mut List, + pub options: *mut List, + pub indexname: *mut ::core::ffi::c_char, + pub indexspace: *mut ::core::ffi::c_char, + pub reset_default_tblspc: bool, + pub access_method: *mut ::core::ffi::c_char, + pub where_clause: *mut Node, + pub pktable: *mut RangeVar, + pub fk_attrs: *mut List, + pub pk_attrs: *mut List, + pub fk_matchtype: ::core::ffi::c_char, + pub fk_upd_action: ::core::ffi::c_char, + pub fk_del_action: ::core::ffi::c_char, + pub fk_del_set_cols: *mut List, + pub old_conpfeqop: *mut List, + pub old_pktable_oid: Oid, + pub location: ParseLoc, +} +impl Default for Constraint { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTableSpaceStmt { + pub type_: NodeTag, + pub tablespacename: *mut ::core::ffi::c_char, + pub owner: *mut RoleSpec, + pub location: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreateTableSpaceStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropTableSpaceStmt { + pub type_: NodeTag, + pub tablespacename: *mut ::core::ffi::c_char, + pub missing_ok: bool, +} +impl Default for DropTableSpaceStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableSpaceOptionsStmt { + pub type_: NodeTag, + pub tablespacename: *mut ::core::ffi::c_char, + pub options: *mut List, + pub isReset: bool, +} +impl Default for AlterTableSpaceOptionsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableMoveAllStmt { + pub type_: NodeTag, + pub orig_tablespacename: *mut ::core::ffi::c_char, + pub objtype: ObjectType::Type, + pub roles: *mut List, + pub new_tablespacename: *mut ::core::ffi::c_char, + pub nowait: bool, +} +impl Default for AlterTableMoveAllStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateExtensionStmt { + pub type_: NodeTag, + pub extname: *mut ::core::ffi::c_char, + pub if_not_exists: bool, + pub options: *mut List, +} +impl Default for CreateExtensionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterExtensionStmt { + pub type_: NodeTag, + pub extname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterExtensionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterExtensionContentsStmt { + pub type_: NodeTag, + pub extname: *mut ::core::ffi::c_char, + pub action: ::core::ffi::c_int, + pub objtype: ObjectType::Type, + pub object: *mut Node, +} +impl Default for AlterExtensionContentsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateFdwStmt { + pub type_: NodeTag, + pub fdwname: *mut ::core::ffi::c_char, + pub func_options: *mut List, + pub options: *mut List, +} +impl Default for CreateFdwStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterFdwStmt { + pub type_: NodeTag, + pub fdwname: *mut ::core::ffi::c_char, + pub func_options: *mut List, + pub options: *mut List, +} +impl Default for AlterFdwStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateForeignServerStmt { + pub type_: NodeTag, + pub servername: *mut ::core::ffi::c_char, + pub servertype: *mut ::core::ffi::c_char, + pub version: *mut ::core::ffi::c_char, + pub fdwname: *mut ::core::ffi::c_char, + pub if_not_exists: bool, + pub options: *mut List, +} +impl Default for CreateForeignServerStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterForeignServerStmt { + pub type_: NodeTag, + pub servername: *mut ::core::ffi::c_char, + pub version: *mut ::core::ffi::c_char, + pub options: *mut List, + pub has_version: bool, +} +impl Default for AlterForeignServerStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateForeignTableStmt { + pub base: CreateStmt, + pub servername: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreateForeignTableStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateUserMappingStmt { + pub type_: NodeTag, + pub user: *mut RoleSpec, + pub servername: *mut ::core::ffi::c_char, + pub if_not_exists: bool, + pub options: *mut List, +} +impl Default for CreateUserMappingStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterUserMappingStmt { + pub type_: NodeTag, + pub user: *mut RoleSpec, + pub servername: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterUserMappingStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropUserMappingStmt { + pub type_: NodeTag, + pub user: *mut RoleSpec, + pub servername: *mut ::core::ffi::c_char, + pub missing_ok: bool, +} +impl Default for DropUserMappingStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ImportForeignSchemaType { + pub type Type = ::core::ffi::c_uint; + pub const FDW_IMPORT_SCHEMA_ALL: Type = 0; + pub const FDW_IMPORT_SCHEMA_LIMIT_TO: Type = 1; + pub const FDW_IMPORT_SCHEMA_EXCEPT: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ImportForeignSchemaStmt { + pub type_: NodeTag, + pub server_name: *mut ::core::ffi::c_char, + pub remote_schema: *mut ::core::ffi::c_char, + pub local_schema: *mut ::core::ffi::c_char, + pub list_type: ImportForeignSchemaType::Type, + pub table_list: *mut List, + pub options: *mut List, +} +impl Default for ImportForeignSchemaStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatePolicyStmt { + pub type_: NodeTag, + pub policy_name: *mut ::core::ffi::c_char, + pub table: *mut RangeVar, + pub cmd_name: *mut ::core::ffi::c_char, + pub permissive: bool, + pub roles: *mut List, + pub qual: *mut Node, + pub with_check: *mut Node, +} +impl Default for CreatePolicyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterPolicyStmt { + pub type_: NodeTag, + pub policy_name: *mut ::core::ffi::c_char, + pub table: *mut RangeVar, + pub roles: *mut List, + pub qual: *mut Node, + pub with_check: *mut Node, +} +impl Default for AlterPolicyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateAmStmt { + pub type_: NodeTag, + pub amname: *mut ::core::ffi::c_char, + pub handler_name: *mut List, + pub amtype: ::core::ffi::c_char, +} +impl Default for CreateAmStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTrigStmt { + pub type_: NodeTag, + pub replace: bool, + pub isconstraint: bool, + pub trigname: *mut ::core::ffi::c_char, + pub relation: *mut RangeVar, + pub funcname: *mut List, + pub args: *mut List, + pub row: bool, + pub timing: int16, + pub events: int16, + pub columns: *mut List, + pub whenClause: *mut Node, + pub transitionRels: *mut List, + pub deferrable: bool, + pub initdeferred: bool, + pub constrrel: *mut RangeVar, +} +impl Default for CreateTrigStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateEventTrigStmt { + pub type_: NodeTag, + pub trigname: *mut ::core::ffi::c_char, + pub eventname: *mut ::core::ffi::c_char, + pub whenclause: *mut List, + pub funcname: *mut List, +} +impl Default for CreateEventTrigStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterEventTrigStmt { + pub type_: NodeTag, + pub trigname: *mut ::core::ffi::c_char, + pub tgenabled: ::core::ffi::c_char, +} +impl Default for AlterEventTrigStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatePLangStmt { + pub type_: NodeTag, + pub replace: bool, + pub plname: *mut ::core::ffi::c_char, + pub plhandler: *mut List, + pub plinline: *mut List, + pub plvalidator: *mut List, + pub pltrusted: bool, +} +impl Default for CreatePLangStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RoleStmtType { + pub type Type = ::core::ffi::c_uint; + pub const ROLESTMT_ROLE: Type = 0; + pub const ROLESTMT_USER: Type = 1; + pub const ROLESTMT_GROUP: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateRoleStmt { + pub type_: NodeTag, + pub stmt_type: RoleStmtType::Type, + pub role: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreateRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterRoleStmt { + pub type_: NodeTag, + pub role: *mut RoleSpec, + pub options: *mut List, + pub action: ::core::ffi::c_int, +} +impl Default for AlterRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterRoleSetStmt { + pub type_: NodeTag, + pub role: *mut RoleSpec, + pub database: *mut ::core::ffi::c_char, + pub setstmt: *mut VariableSetStmt, +} +impl Default for AlterRoleSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropRoleStmt { + pub type_: NodeTag, + pub roles: *mut List, + pub missing_ok: bool, +} +impl Default for DropRoleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateSeqStmt { + pub type_: NodeTag, + pub sequence: *mut RangeVar, + pub options: *mut List, + pub ownerId: Oid, + pub for_identity: bool, + pub if_not_exists: bool, +} +impl Default for CreateSeqStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterSeqStmt { + pub type_: NodeTag, + pub sequence: *mut RangeVar, + pub options: *mut List, + pub for_identity: bool, + pub missing_ok: bool, +} +impl Default for AlterSeqStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DefineStmt { + pub type_: NodeTag, + pub kind: ObjectType::Type, + pub oldstyle: bool, + pub defnames: *mut List, + pub args: *mut List, + pub definition: *mut List, + pub if_not_exists: bool, + pub replace: bool, +} +impl Default for DefineStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateDomainStmt { + pub type_: NodeTag, + pub domainname: *mut List, + pub typeName: *mut TypeName, + pub collClause: *mut CollateClause, + pub constraints: *mut List, +} +impl Default for CreateDomainStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateOpClassStmt { + pub type_: NodeTag, + pub opclassname: *mut List, + pub opfamilyname: *mut List, + pub amname: *mut ::core::ffi::c_char, + pub datatype: *mut TypeName, + pub items: *mut List, + pub isDefault: bool, +} +impl Default for CreateOpClassStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateOpClassItem { + pub type_: NodeTag, + pub itemtype: ::core::ffi::c_int, + pub name: *mut ObjectWithArgs, + pub number: ::core::ffi::c_int, + pub order_family: *mut List, + pub class_args: *mut List, + pub storedtype: *mut TypeName, +} +impl Default for CreateOpClassItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateOpFamilyStmt { + pub type_: NodeTag, + pub opfamilyname: *mut List, + pub amname: *mut ::core::ffi::c_char, +} +impl Default for CreateOpFamilyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterOpFamilyStmt { + pub type_: NodeTag, + pub opfamilyname: *mut List, + pub amname: *mut ::core::ffi::c_char, + pub isDrop: bool, + pub items: *mut List, +} +impl Default for AlterOpFamilyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropStmt { + pub type_: NodeTag, + pub objects: *mut List, + pub removeType: ObjectType::Type, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, + pub concurrent: bool, +} +impl Default for DropStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TruncateStmt { + pub type_: NodeTag, + pub relations: *mut List, + pub restart_seqs: bool, + pub behavior: DropBehavior::Type, +} +impl Default for TruncateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CommentStmt { + pub type_: NodeTag, + pub objtype: ObjectType::Type, + pub object: *mut Node, + pub comment: *mut ::core::ffi::c_char, +} +impl Default for CommentStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SecLabelStmt { + pub type_: NodeTag, + pub objtype: ObjectType::Type, + pub object: *mut Node, + pub provider: *mut ::core::ffi::c_char, + pub label: *mut ::core::ffi::c_char, +} +impl Default for SecLabelStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DeclareCursorStmt { + pub type_: NodeTag, + pub portalname: *mut ::core::ffi::c_char, + pub options: ::core::ffi::c_int, + pub query: *mut Node, +} +impl Default for DeclareCursorStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClosePortalStmt { + pub type_: NodeTag, + pub portalname: *mut ::core::ffi::c_char, +} +impl Default for ClosePortalStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod FetchDirection { + pub type Type = ::core::ffi::c_uint; + pub const FETCH_FORWARD: Type = 0; + pub const FETCH_BACKWARD: Type = 1; + pub const FETCH_ABSOLUTE: Type = 2; + pub const FETCH_RELATIVE: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FetchStmt { + pub type_: NodeTag, + pub direction: FetchDirection::Type, + pub howMany: ::core::ffi::c_long, + pub portalname: *mut ::core::ffi::c_char, + pub ismove: bool, +} +impl Default for FetchStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexStmt { + pub type_: NodeTag, + pub idxname: *mut ::core::ffi::c_char, + pub relation: *mut RangeVar, + pub accessMethod: *mut ::core::ffi::c_char, + pub tableSpace: *mut ::core::ffi::c_char, + pub indexParams: *mut List, + pub indexIncludingParams: *mut List, + pub options: *mut List, + pub whereClause: *mut Node, + pub excludeOpNames: *mut List, + pub idxcomment: *mut ::core::ffi::c_char, + pub indexOid: Oid, + pub oldNumber: RelFileNumber, + pub oldCreateSubid: SubTransactionId, + pub oldFirstRelfilelocatorSubid: SubTransactionId, + pub unique: bool, + pub nulls_not_distinct: bool, + pub primary: bool, + pub isconstraint: bool, + pub deferrable: bool, + pub initdeferred: bool, + pub transformed: bool, + pub concurrent: bool, + pub if_not_exists: bool, + pub reset_default_tblspc: bool, +} +impl Default for IndexStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateStatsStmt { + pub type_: NodeTag, + pub defnames: *mut List, + pub stat_types: *mut List, + pub exprs: *mut List, + pub relations: *mut List, + pub stxcomment: *mut ::core::ffi::c_char, + pub transformed: bool, + pub if_not_exists: bool, +} +impl Default for CreateStatsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StatsElem { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub expr: *mut Node, +} +impl Default for StatsElem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterStatsStmt { + pub type_: NodeTag, + pub defnames: *mut List, + pub stxstattarget: *mut Node, + pub missing_ok: bool, +} +impl Default for AlterStatsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateFunctionStmt { + pub type_: NodeTag, + pub is_procedure: bool, + pub replace: bool, + pub funcname: *mut List, + pub parameters: *mut List, + pub returnType: *mut TypeName, + pub options: *mut List, + pub sql_body: *mut Node, +} +impl Default for CreateFunctionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod FunctionParameterMode { + pub type Type = ::core::ffi::c_uint; + pub const FUNC_PARAM_IN: Type = 105; + pub const FUNC_PARAM_OUT: Type = 111; + pub const FUNC_PARAM_INOUT: Type = 98; + pub const FUNC_PARAM_VARIADIC: Type = 118; + pub const FUNC_PARAM_TABLE: Type = 116; + pub const FUNC_PARAM_DEFAULT: Type = 100; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FunctionParameter { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub argType: *mut TypeName, + pub mode: FunctionParameterMode::Type, + pub defexpr: *mut Node, +} +impl Default for FunctionParameter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterFunctionStmt { + pub type_: NodeTag, + pub objtype: ObjectType::Type, + pub func: *mut ObjectWithArgs, + pub actions: *mut List, +} +impl Default for AlterFunctionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DoStmt { + pub type_: NodeTag, + pub args: *mut List, +} +impl Default for DoStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InlineCodeBlock { + pub type_: NodeTag, + pub source_text: *mut ::core::ffi::c_char, + pub langOid: Oid, + pub langIsTrusted: bool, + pub atomic: bool, +} +impl Default for InlineCodeBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CallStmt { + pub type_: NodeTag, + pub funccall: *mut FuncCall, + pub funcexpr: *mut FuncExpr, + pub outargs: *mut List, +} +impl Default for CallStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CallContext { + pub type_: NodeTag, + pub atomic: bool, +} +impl Default for CallContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RenameStmt { + pub type_: NodeTag, + pub renameType: ObjectType::Type, + pub relationType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub subname: *mut ::core::ffi::c_char, + pub newname: *mut ::core::ffi::c_char, + pub behavior: DropBehavior::Type, + pub missing_ok: bool, +} +impl Default for RenameStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterObjectDependsStmt { + pub type_: NodeTag, + pub objectType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub extname: *mut String, + pub remove: bool, +} +impl Default for AlterObjectDependsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterObjectSchemaStmt { + pub type_: NodeTag, + pub objectType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub newschema: *mut ::core::ffi::c_char, + pub missing_ok: bool, +} +impl Default for AlterObjectSchemaStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterOwnerStmt { + pub type_: NodeTag, + pub objectType: ObjectType::Type, + pub relation: *mut RangeVar, + pub object: *mut Node, + pub newowner: *mut RoleSpec, +} +impl Default for AlterOwnerStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterOperatorStmt { + pub type_: NodeTag, + pub opername: *mut ObjectWithArgs, + pub options: *mut List, +} +impl Default for AlterOperatorStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTypeStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub options: *mut List, +} +impl Default for AlterTypeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RuleStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub rulename: *mut ::core::ffi::c_char, + pub whereClause: *mut Node, + pub event: CmdType::Type, + pub instead: bool, + pub actions: *mut List, + pub replace: bool, +} +impl Default for RuleStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NotifyStmt { + pub type_: NodeTag, + pub conditionname: *mut ::core::ffi::c_char, + pub payload: *mut ::core::ffi::c_char, +} +impl Default for NotifyStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ListenStmt { + pub type_: NodeTag, + pub conditionname: *mut ::core::ffi::c_char, +} +impl Default for ListenStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UnlistenStmt { + pub type_: NodeTag, + pub conditionname: *mut ::core::ffi::c_char, +} +impl Default for UnlistenStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TransactionStmtKind { + pub type Type = ::core::ffi::c_uint; + pub const TRANS_STMT_BEGIN: Type = 0; + pub const TRANS_STMT_START: Type = 1; + pub const TRANS_STMT_COMMIT: Type = 2; + pub const TRANS_STMT_ROLLBACK: Type = 3; + pub const TRANS_STMT_SAVEPOINT: Type = 4; + pub const TRANS_STMT_RELEASE: Type = 5; + pub const TRANS_STMT_ROLLBACK_TO: Type = 6; + pub const TRANS_STMT_PREPARE: Type = 7; + pub const TRANS_STMT_COMMIT_PREPARED: Type = 8; + pub const TRANS_STMT_ROLLBACK_PREPARED: Type = 9; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TransactionStmt { + pub type_: NodeTag, + pub kind: TransactionStmtKind::Type, + pub options: *mut List, + pub savepoint_name: *mut ::core::ffi::c_char, + pub gid: *mut ::core::ffi::c_char, + pub chain: bool, + pub location: ParseLoc, +} +impl Default for TransactionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CompositeTypeStmt { + pub type_: NodeTag, + pub typevar: *mut RangeVar, + pub coldeflist: *mut List, +} +impl Default for CompositeTypeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateEnumStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub vals: *mut List, +} +impl Default for CreateEnumStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateRangeStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub params: *mut List, +} +impl Default for CreateRangeStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterEnumStmt { + pub type_: NodeTag, + pub typeName: *mut List, + pub oldVal: *mut ::core::ffi::c_char, + pub newVal: *mut ::core::ffi::c_char, + pub newValNeighbor: *mut ::core::ffi::c_char, + pub newValIsAfter: bool, + pub skipIfNewValExists: bool, +} +impl Default for AlterEnumStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ViewCheckOption { + pub type Type = ::core::ffi::c_uint; + pub const NO_CHECK_OPTION: Type = 0; + pub const LOCAL_CHECK_OPTION: Type = 1; + pub const CASCADED_CHECK_OPTION: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ViewStmt { + pub type_: NodeTag, + pub view: *mut RangeVar, + pub aliases: *mut List, + pub query: *mut Node, + pub replace: bool, + pub options: *mut List, + pub withCheckOption: ViewCheckOption::Type, +} +impl Default for ViewStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LoadStmt { + pub type_: NodeTag, + pub filename: *mut ::core::ffi::c_char, +} +impl Default for LoadStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatedbStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for CreatedbStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDatabaseStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterDatabaseStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDatabaseRefreshCollStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, +} +impl Default for AlterDatabaseRefreshCollStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterDatabaseSetStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub setstmt: *mut VariableSetStmt, +} +impl Default for AlterDatabaseSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropdbStmt { + pub type_: NodeTag, + pub dbname: *mut ::core::ffi::c_char, + pub missing_ok: bool, + pub options: *mut List, +} +impl Default for DropdbStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterSystemStmt { + pub type_: NodeTag, + pub setstmt: *mut VariableSetStmt, +} +impl Default for AlterSystemStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClusterStmt { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub indexname: *mut ::core::ffi::c_char, + pub params: *mut List, +} +impl Default for ClusterStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacuumStmt { + pub type_: NodeTag, + pub options: *mut List, + pub rels: *mut List, + pub is_vacuumcmd: bool, +} +impl Default for VacuumStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacuumRelation { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub oid: Oid, + pub va_cols: *mut List, +} +impl Default for VacuumRelation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExplainStmt { + pub type_: NodeTag, + pub query: *mut Node, + pub options: *mut List, +} +impl Default for ExplainStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTableAsStmt { + pub type_: NodeTag, + pub query: *mut Node, + pub into: *mut IntoClause, + pub objtype: ObjectType::Type, + pub is_select_into: bool, + pub if_not_exists: bool, +} +impl Default for CreateTableAsStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RefreshMatViewStmt { + pub type_: NodeTag, + pub concurrent: bool, + pub skipData: bool, + pub relation: *mut RangeVar, +} +impl Default for RefreshMatViewStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CheckPointStmt { + pub type_: NodeTag, +} +impl Default for CheckPointStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DiscardMode { + pub type Type = ::core::ffi::c_uint; + pub const DISCARD_ALL: Type = 0; + pub const DISCARD_PLANS: Type = 1; + pub const DISCARD_SEQUENCES: Type = 2; + pub const DISCARD_TEMP: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DiscardStmt { + pub type_: NodeTag, + pub target: DiscardMode::Type, +} +impl Default for DiscardStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockStmt { + pub type_: NodeTag, + pub relations: *mut List, + pub mode: ::core::ffi::c_int, + pub nowait: bool, +} +impl Default for LockStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConstraintsSetStmt { + pub type_: NodeTag, + pub constraints: *mut List, + pub deferred: bool, +} +impl Default for ConstraintsSetStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ReindexObjectType { + pub type Type = ::core::ffi::c_uint; + pub const REINDEX_OBJECT_INDEX: Type = 0; + pub const REINDEX_OBJECT_TABLE: Type = 1; + pub const REINDEX_OBJECT_SCHEMA: Type = 2; + pub const REINDEX_OBJECT_SYSTEM: Type = 3; + pub const REINDEX_OBJECT_DATABASE: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReindexStmt { + pub type_: NodeTag, + pub kind: ReindexObjectType::Type, + pub relation: *mut RangeVar, + pub name: *const ::core::ffi::c_char, + pub params: *mut List, +} +impl Default for ReindexStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateConversionStmt { + pub type_: NodeTag, + pub conversion_name: *mut List, + pub for_encoding_name: *mut ::core::ffi::c_char, + pub to_encoding_name: *mut ::core::ffi::c_char, + pub func_name: *mut List, + pub def: bool, +} +impl Default for CreateConversionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateCastStmt { + pub type_: NodeTag, + pub sourcetype: *mut TypeName, + pub targettype: *mut TypeName, + pub func: *mut ObjectWithArgs, + pub context: CoercionContext::Type, + pub inout: bool, +} +impl Default for CreateCastStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateTransformStmt { + pub type_: NodeTag, + pub replace: bool, + pub type_name: *mut TypeName, + pub lang: *mut ::core::ffi::c_char, + pub fromsql: *mut ObjectWithArgs, + pub tosql: *mut ObjectWithArgs, +} +impl Default for CreateTransformStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PrepareStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub argtypes: *mut List, + pub query: *mut Node, +} +impl Default for PrepareStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecuteStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub params: *mut List, +} +impl Default for ExecuteStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DeallocateStmt { + pub type_: NodeTag, + pub name: *mut ::core::ffi::c_char, + pub isall: bool, + pub location: ParseLoc, +} +impl Default for DeallocateStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropOwnedStmt { + pub type_: NodeTag, + pub roles: *mut List, + pub behavior: DropBehavior::Type, +} +impl Default for DropOwnedStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReassignOwnedStmt { + pub type_: NodeTag, + pub roles: *mut List, + pub newrole: *mut RoleSpec, +} +impl Default for ReassignOwnedStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTSDictionaryStmt { + pub type_: NodeTag, + pub dictname: *mut List, + pub options: *mut List, +} +impl Default for AlterTSDictionaryStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterTSConfigType { + pub type Type = ::core::ffi::c_uint; + pub const ALTER_TSCONFIG_ADD_MAPPING: Type = 0; + pub const ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN: Type = 1; + pub const ALTER_TSCONFIG_REPLACE_DICT: Type = 2; + pub const ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN: Type = 3; + pub const ALTER_TSCONFIG_DROP_MAPPING: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTSConfigurationStmt { + pub type_: NodeTag, + pub kind: AlterTSConfigType::Type, + pub cfgname: *mut List, + pub tokentype: *mut List, + pub dicts: *mut List, + pub override_: bool, + pub replace: bool, + pub missing_ok: bool, +} +impl Default for AlterTSConfigurationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PublicationTable { + pub type_: NodeTag, + pub relation: *mut RangeVar, + pub whereClause: *mut Node, + pub columns: *mut List, +} +impl Default for PublicationTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PublicationObjSpecType { + pub type Type = ::core::ffi::c_uint; + pub const PUBLICATIONOBJ_TABLE: Type = 0; + pub const PUBLICATIONOBJ_TABLES_IN_SCHEMA: Type = 1; + pub const PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA: Type = 2; + pub const PUBLICATIONOBJ_CONTINUATION: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PublicationObjSpec { + pub type_: NodeTag, + pub pubobjtype: PublicationObjSpecType::Type, + pub name: *mut ::core::ffi::c_char, + pub pubtable: *mut PublicationTable, + pub location: ParseLoc, +} +impl Default for PublicationObjSpec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreatePublicationStmt { + pub type_: NodeTag, + pub pubname: *mut ::core::ffi::c_char, + pub options: *mut List, + pub pubobjects: *mut List, + pub for_all_tables: bool, +} +impl Default for CreatePublicationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterPublicationAction { + pub type Type = ::core::ffi::c_uint; + pub const AP_AddObjects: Type = 0; + pub const AP_DropObjects: Type = 1; + pub const AP_SetObjects: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterPublicationStmt { + pub type_: NodeTag, + pub pubname: *mut ::core::ffi::c_char, + pub options: *mut List, + pub pubobjects: *mut List, + pub for_all_tables: bool, + pub action: AlterPublicationAction::Type, +} +impl Default for AlterPublicationStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateSubscriptionStmt { + pub type_: NodeTag, + pub subname: *mut ::core::ffi::c_char, + pub conninfo: *mut ::core::ffi::c_char, + pub publication: *mut List, + pub options: *mut List, +} +impl Default for CreateSubscriptionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod AlterSubscriptionType { + pub type Type = ::core::ffi::c_uint; + pub const ALTER_SUBSCRIPTION_OPTIONS: Type = 0; + pub const ALTER_SUBSCRIPTION_CONNECTION: Type = 1; + pub const ALTER_SUBSCRIPTION_SET_PUBLICATION: Type = 2; + pub const ALTER_SUBSCRIPTION_ADD_PUBLICATION: Type = 3; + pub const ALTER_SUBSCRIPTION_DROP_PUBLICATION: Type = 4; + pub const ALTER_SUBSCRIPTION_REFRESH: Type = 5; + pub const ALTER_SUBSCRIPTION_ENABLED: Type = 6; + pub const ALTER_SUBSCRIPTION_SKIP: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterSubscriptionStmt { + pub type_: NodeTag, + pub kind: AlterSubscriptionType::Type, + pub subname: *mut ::core::ffi::c_char, + pub conninfo: *mut ::core::ffi::c_char, + pub publication: *mut List, + pub options: *mut List, +} +impl Default for AlterSubscriptionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropSubscriptionStmt { + pub type_: NodeTag, + pub subname: *mut ::core::ffi::c_char, + pub missing_ok: bool, + pub behavior: DropBehavior::Type, +} +impl Default for DropSubscriptionStmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct MemoryContextCounters { + pub nblocks: Size, + pub freechunks: Size, + pub totalspace: Size, + pub freespace: Size, +} +pub type MemoryStatsPrintFunc = ::core::option::Option< + unsafe extern "C" fn( + context: MemoryContext, + passthru: *mut ::core::ffi::c_void, + stats_string: *const ::core::ffi::c_char, + print_to_stderr: bool, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct MemoryContextMethods { + pub alloc: ::core::option::Option< + unsafe extern "C" fn( + context: MemoryContext, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void, + >, + pub free_p: ::core::option::Option, + pub realloc: ::core::option::Option< + unsafe extern "C" fn( + pointer: *mut ::core::ffi::c_void, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void, + >, + pub reset: ::core::option::Option, + pub delete_context: ::core::option::Option, + pub get_chunk_context: ::core::option::Option< + unsafe extern "C" fn(pointer: *mut ::core::ffi::c_void) -> MemoryContext, + >, + pub get_chunk_space: + ::core::option::Option Size>, + pub is_empty: ::core::option::Option bool>, + pub stats: ::core::option::Option< + unsafe extern "C" fn( + context: MemoryContext, + printfunc: MemoryStatsPrintFunc, + passthru: *mut ::core::ffi::c_void, + totals: *mut MemoryContextCounters, + print_to_stderr: bool, + ), + >, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoryContextData { + pub type_: NodeTag, + pub isReset: bool, + pub allowInCritSection: bool, + pub mem_allocated: Size, + pub methods: *const MemoryContextMethods, + pub parent: MemoryContext, + pub firstchild: MemoryContext, + pub prevchild: MemoryContext, + pub nextchild: MemoryContext, + pub name: *const ::core::ffi::c_char, + pub ident: *const ::core::ffi::c_char, + pub reset_cbs: *mut MemoryContextCallback, +} +impl Default for MemoryContextData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExecutorStart_hook_type = ::core::option::Option< + unsafe extern "C" fn(queryDesc: *mut QueryDesc, eflags: ::core::ffi::c_int), +>; +pub type ExecutorRun_hook_type = ::core::option::Option< + unsafe extern "C" fn( + queryDesc: *mut QueryDesc, + direction: ScanDirection::Type, + count: uint64, + execute_once: bool, + ), +>; +pub type ExecutorFinish_hook_type = + ::core::option::Option; +pub type ExecutorEnd_hook_type = + ::core::option::Option; +pub type ExecutorCheckPerms_hook_type = ::core::option::Option< + unsafe extern "C" fn( + rangeTable: *mut List, + rtePermInfos: *mut List, + ereport_on_violation: bool, + ) -> bool, +>; +pub type ExecScanAccessMtd = + ::core::option::Option *mut TupleTableSlot>; +pub type ExecScanRecheckMtd = ::core::option::Option< + unsafe extern "C" fn(node: *mut ScanState, slot: *mut TupleTableSlot) -> bool, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TupOutputState { + pub slot: *mut TupleTableSlot, + pub dest: *mut DestReceiver, +} +impl Default for TupOutputState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttInMetadata { + pub tupdesc: TupleDesc, + pub attinfuncs: *mut FmgrInfo, + pub attioparams: *mut Oid, + pub atttypmods: *mut int32, +} +impl Default for AttInMetadata { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FuncCallContext { + pub call_cntr: uint64, + pub max_calls: uint64, + pub user_fctx: *mut ::core::ffi::c_void, + pub attinmeta: *mut AttInMetadata, + pub multi_call_memory_ctx: MemoryContext, + pub tuple_desc: TupleDesc, +} +impl Default for FuncCallContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TypeFuncClass { + pub type Type = ::core::ffi::c_uint; + pub const TYPEFUNC_SCALAR: Type = 0; + pub const TYPEFUNC_COMPOSITE: Type = 1; + pub const TYPEFUNC_COMPOSITE_DOMAIN: Type = 2; + pub const TYPEFUNC_RECORD: Type = 3; + pub const TYPEFUNC_OTHER: Type = 4; +} +pub type sig_atomic_t = __sig_atomic_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigval { + pub sival_int: ::core::ffi::c_int, + pub sival_ptr: *mut ::core::ffi::c_void, +} +impl Default for sigval { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __sigval_t = sigval; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t { + pub si_signo: ::core::ffi::c_int, + pub si_errno: ::core::ffi::c_int, + pub si_code: ::core::ffi::c_int, + pub __pad0: ::core::ffi::c_int, + pub _sifields: siginfo_t__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union siginfo_t__bindgen_ty_1 { + pub _pad: [::core::ffi::c_int; 28usize], + pub _kill: siginfo_t__bindgen_ty_1__bindgen_ty_1, + pub _timer: siginfo_t__bindgen_ty_1__bindgen_ty_2, + pub _rt: siginfo_t__bindgen_ty_1__bindgen_ty_3, + pub _sigchld: siginfo_t__bindgen_ty_1__bindgen_ty_4, + pub _sigfault: siginfo_t__bindgen_ty_1__bindgen_ty_5, + pub _sigpoll: siginfo_t__bindgen_ty_1__bindgen_ty_6, + pub _sigsys: siginfo_t__bindgen_ty_1__bindgen_ty_7, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_1 { + pub si_pid: __pid_t, + pub si_uid: __uid_t, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_2 { + pub si_tid: ::core::ffi::c_int, + pub si_overrun: ::core::ffi::c_int, + pub si_sigval: __sigval_t, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_3 { + pub si_pid: __pid_t, + pub si_uid: __uid_t, + pub si_sigval: __sigval_t, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_4 { + pub si_pid: __pid_t, + pub si_uid: __uid_t, + pub si_status: ::core::ffi::c_int, + pub si_utime: __clock_t, + pub si_stime: __clock_t, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5 { + pub si_addr: *mut ::core::ffi::c_void, + pub si_addr_lsb: ::core::ffi::c_short, + pub _bounds: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 { + pub _addr_bnd: siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1, + pub _pkey: __uint32_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 { + pub _lower: *mut ::core::ffi::c_void, + pub _upper: *mut ::core::ffi::c_void, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_6 { + pub si_band: ::core::ffi::c_long, + pub si_fd: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct siginfo_t__bindgen_ty_1__bindgen_ty_7 { + pub _call_addr: *mut ::core::ffi::c_void, + pub _syscall: ::core::ffi::c_int, + pub _arch: ::core::ffi::c_uint, +} +impl Default for siginfo_t__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for siginfo_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_7 { + pub type Type = ::core::ffi::c_int; + pub const SI_ASYNCNL: Type = -60; + pub const SI_DETHREAD: Type = -7; + pub const SI_TKILL: Type = -6; + pub const SI_SIGIO: Type = -5; + pub const SI_ASYNCIO: Type = -4; + pub const SI_MESGQ: Type = -3; + pub const SI_TIMER: Type = -2; + pub const SI_QUEUE: Type = -1; + pub const SI_USER: Type = 0; + pub const SI_KERNEL: Type = 128; +} +pub mod _bindgen_ty_8 { + pub type Type = ::core::ffi::c_uint; + pub const ILL_ILLOPC: Type = 1; + pub const ILL_ILLOPN: Type = 2; + pub const ILL_ILLADR: Type = 3; + pub const ILL_ILLTRP: Type = 4; + pub const ILL_PRVOPC: Type = 5; + pub const ILL_PRVREG: Type = 6; + pub const ILL_COPROC: Type = 7; + pub const ILL_BADSTK: Type = 8; + pub const ILL_BADIADDR: Type = 9; +} +pub mod _bindgen_ty_9 { + pub type Type = ::core::ffi::c_uint; + pub const FPE_INTDIV: Type = 1; + pub const FPE_INTOVF: Type = 2; + pub const FPE_FLTDIV: Type = 3; + pub const FPE_FLTOVF: Type = 4; + pub const FPE_FLTUND: Type = 5; + pub const FPE_FLTRES: Type = 6; + pub const FPE_FLTINV: Type = 7; + pub const FPE_FLTSUB: Type = 8; + pub const FPE_FLTUNK: Type = 14; + pub const FPE_CONDTRAP: Type = 15; +} +pub mod _bindgen_ty_10 { + pub type Type = ::core::ffi::c_uint; + pub const SEGV_MAPERR: Type = 1; + pub const SEGV_ACCERR: Type = 2; + pub const SEGV_BNDERR: Type = 3; + pub const SEGV_PKUERR: Type = 4; + pub const SEGV_ACCADI: Type = 5; + pub const SEGV_ADIDERR: Type = 6; + pub const SEGV_ADIPERR: Type = 7; + pub const SEGV_MTEAERR: Type = 8; + pub const SEGV_MTESERR: Type = 9; +} +pub mod _bindgen_ty_11 { + pub type Type = ::core::ffi::c_uint; + pub const BUS_ADRALN: Type = 1; + pub const BUS_ADRERR: Type = 2; + pub const BUS_OBJERR: Type = 3; + pub const BUS_MCEERR_AR: Type = 4; + pub const BUS_MCEERR_AO: Type = 5; +} +pub mod _bindgen_ty_12 { + pub type Type = ::core::ffi::c_uint; + pub const CLD_EXITED: Type = 1; + pub const CLD_KILLED: Type = 2; + pub const CLD_DUMPED: Type = 3; + pub const CLD_TRAPPED: Type = 4; + pub const CLD_STOPPED: Type = 5; + pub const CLD_CONTINUED: Type = 6; +} +pub mod _bindgen_ty_13 { + pub type Type = ::core::ffi::c_uint; + pub const POLL_IN: Type = 1; + pub const POLL_OUT: Type = 2; + pub const POLL_MSG: Type = 3; + pub const POLL_ERR: Type = 4; + pub const POLL_PRI: Type = 5; + pub const POLL_HUP: Type = 6; +} +pub type sigval_t = __sigval_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sigevent { + pub sigev_value: __sigval_t, + pub sigev_signo: ::core::ffi::c_int, + pub sigev_notify: ::core::ffi::c_int, + pub _sigev_un: sigevent__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigevent__bindgen_ty_1 { + pub _pad: [::core::ffi::c_int; 12usize], + pub _tid: __pid_t, + pub _sigev_thread: sigevent__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigevent__bindgen_ty_1__bindgen_ty_1 { + pub _function: ::core::option::Option, + pub _attribute: *mut pthread_attr_t, +} +impl Default for sigevent__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigevent__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigevent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type sigevent_t = sigevent; +pub mod _bindgen_ty_14 { + pub type Type = ::core::ffi::c_uint; + pub const SIGEV_SIGNAL: Type = 0; + pub const SIGEV_NONE: Type = 1; + pub const SIGEV_THREAD: Type = 2; + pub const SIGEV_THREAD_ID: Type = 4; +} +pub type __sighandler_t = ::core::option::Option; +pub type sig_t = __sighandler_t; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sigaction { + pub __sigaction_handler: sigaction__bindgen_ty_1, + pub sa_mask: __sigset_t, + pub sa_flags: ::core::ffi::c_int, + pub sa_restorer: ::core::option::Option, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigaction__bindgen_ty_1 { + pub sa_handler: __sighandler_t, + pub sa_sigaction: ::core::option::Option< + unsafe extern "C" fn( + arg1: ::core::ffi::c_int, + arg2: *mut siginfo_t, + arg3: *mut ::core::ffi::c_void, + ), + >, +} +impl Default for sigaction__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigaction { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _fpx_sw_bytes { + pub magic1: __uint32_t, + pub extended_size: __uint32_t, + pub xstate_bv: __uint64_t, + pub xstate_size: __uint32_t, + pub __glibc_reserved1: [__uint32_t; 7usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _fpreg { + pub significand: [::core::ffi::c_ushort; 4usize], + pub exponent: ::core::ffi::c_ushort, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _fpxreg { + pub significand: [::core::ffi::c_ushort; 4usize], + pub exponent: ::core::ffi::c_ushort, + pub __glibc_reserved1: [::core::ffi::c_ushort; 3usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _xmmreg { + pub element: [__uint32_t; 4usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _fpstate { + pub cwd: __uint16_t, + pub swd: __uint16_t, + pub ftw: __uint16_t, + pub fop: __uint16_t, + pub rip: __uint64_t, + pub rdp: __uint64_t, + pub mxcsr: __uint32_t, + pub mxcr_mask: __uint32_t, + pub _st: [_fpxreg; 8usize], + pub _xmm: [_xmmreg; 16usize], + pub __glibc_reserved1: [__uint32_t; 24usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sigcontext { + pub r8: __uint64_t, + pub r9: __uint64_t, + pub r10: __uint64_t, + pub r11: __uint64_t, + pub r12: __uint64_t, + pub r13: __uint64_t, + pub r14: __uint64_t, + pub r15: __uint64_t, + pub rdi: __uint64_t, + pub rsi: __uint64_t, + pub rbp: __uint64_t, + pub rbx: __uint64_t, + pub rdx: __uint64_t, + pub rax: __uint64_t, + pub rcx: __uint64_t, + pub rsp: __uint64_t, + pub rip: __uint64_t, + pub eflags: __uint64_t, + pub cs: ::core::ffi::c_ushort, + pub gs: ::core::ffi::c_ushort, + pub fs: ::core::ffi::c_ushort, + pub __pad0: ::core::ffi::c_ushort, + pub err: __uint64_t, + pub trapno: __uint64_t, + pub oldmask: __uint64_t, + pub cr2: __uint64_t, + pub __bindgen_anon_1: sigcontext__bindgen_ty_1, + pub __reserved1: [__uint64_t; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigcontext__bindgen_ty_1 { + pub fpstate: *mut _fpstate, + pub __fpstate_word: __uint64_t, +} +impl Default for sigcontext__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for sigcontext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _xsave_hdr { + pub xstate_bv: __uint64_t, + pub __glibc_reserved1: [__uint64_t; 2usize], + pub __glibc_reserved2: [__uint64_t; 5usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _ymmh_state { + pub ymmh_space: [__uint32_t; 64usize], +} +impl Default for _ymmh_state { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _xstate { + pub fpstate: _fpstate, + pub xstate_hdr: _xsave_hdr, + pub ymmh: _ymmh_state, +} +impl Default for _xstate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct stack_t { + pub ss_sp: *mut ::core::ffi::c_void, + pub ss_flags: ::core::ffi::c_int, + pub ss_size: usize, +} +impl Default for stack_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type greg_t = ::core::ffi::c_longlong; +pub type gregset_t = [greg_t; 23usize]; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _libc_fpxreg { + pub significand: [::core::ffi::c_ushort; 4usize], + pub exponent: ::core::ffi::c_ushort, + pub __glibc_reserved1: [::core::ffi::c_ushort; 3usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _libc_xmmreg { + pub element: [__uint32_t; 4usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _libc_fpstate { + pub cwd: __uint16_t, + pub swd: __uint16_t, + pub ftw: __uint16_t, + pub fop: __uint16_t, + pub rip: __uint64_t, + pub rdp: __uint64_t, + pub mxcsr: __uint32_t, + pub mxcr_mask: __uint32_t, + pub _st: [_libc_fpxreg; 8usize], + pub _xmm: [_libc_xmmreg; 16usize], + pub __glibc_reserved1: [__uint32_t; 24usize], +} +pub type fpregset_t = *mut _libc_fpstate; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mcontext_t { + pub gregs: gregset_t, + pub fpregs: fpregset_t, + pub __reserved1: [::core::ffi::c_ulonglong; 8usize], +} +impl Default for mcontext_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ucontext_t { + pub uc_flags: ::core::ffi::c_ulong, + pub uc_link: *mut ucontext_t, + pub uc_stack: stack_t, + pub uc_mcontext: mcontext_t, + pub uc_sigmask: sigset_t, + pub __fpregs_mem: _libc_fpstate, + pub __ssp: [::core::ffi::c_ulonglong; 4usize], +} +impl Default for ucontext_t { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_15 { + pub type Type = ::core::ffi::c_uint; + pub const SS_ONSTACK: Type = 1; + pub const SS_DISABLE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigstack { + pub ss_sp: *mut ::core::ffi::c_void, + pub ss_onstack: ::core::ffi::c_int, +} +impl Default for sigstack { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type pg_time_t = int64; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_tm { + pub tm_sec: ::core::ffi::c_int, + pub tm_min: ::core::ffi::c_int, + pub tm_hour: ::core::ffi::c_int, + pub tm_mday: ::core::ffi::c_int, + pub tm_mon: ::core::ffi::c_int, + pub tm_year: ::core::ffi::c_int, + pub tm_wday: ::core::ffi::c_int, + pub tm_yday: ::core::ffi::c_int, + pub tm_isdst: ::core::ffi::c_int, + pub tm_gmtoff: ::core::ffi::c_long, + pub tm_zone: *const ::core::ffi::c_char, +} +impl Default for pg_tm { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_tz { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_tzenum { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Port { + _unused: [u8; 0], +} +pub type pg_stack_base_t = *mut ::core::ffi::c_char; +pub mod BackendType { + pub type Type = ::core::ffi::c_uint; + pub const B_INVALID: Type = 0; + pub const B_BACKEND: Type = 1; + pub const B_AUTOVAC_LAUNCHER: Type = 2; + pub const B_AUTOVAC_WORKER: Type = 3; + pub const B_BG_WORKER: Type = 4; + pub const B_WAL_SENDER: Type = 5; + pub const B_SLOTSYNC_WORKER: Type = 6; + pub const B_STANDALONE_BACKEND: Type = 7; + pub const B_ARCHIVER: Type = 8; + pub const B_BG_WRITER: Type = 9; + pub const B_CHECKPOINTER: Type = 10; + pub const B_STARTUP: Type = 11; + pub const B_WAL_RECEIVER: Type = 12; + pub const B_WAL_SUMMARIZER: Type = 13; + pub const B_WAL_WRITER: Type = 14; + pub const B_LOGGER: Type = 15; +} +pub mod ProcessingMode { + #[doc = "\t pmod.h --\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t *\n\t\t\tPOSTGRES processing mode definitions. *"] + pub type Type = ::core::ffi::c_uint; + pub const BootstrapProcessing: Type = 0; + pub const InitProcessing: Type = 1; + pub const NormalProcessing: Type = 2; +} +pub type shmem_request_hook_type = ::core::option::Option; +pub mod ProgressCommandType { + pub type Type = ::core::ffi::c_uint; + pub const PROGRESS_COMMAND_INVALID: Type = 0; + pub const PROGRESS_COMMAND_VACUUM: Type = 1; + pub const PROGRESS_COMMAND_ANALYZE: Type = 2; + pub const PROGRESS_COMMAND_CLUSTER: Type = 3; + pub const PROGRESS_COMMAND_CREATE_INDEX: Type = 4; + pub const PROGRESS_COMMAND_BASEBACKUP: Type = 5; + pub const PROGRESS_COMMAND_COPY: Type = 6; +} +pub mod __socket_type { + pub type Type = ::core::ffi::c_uint; + pub const SOCK_STREAM: Type = 1; + pub const SOCK_DGRAM: Type = 2; + pub const SOCK_RAW: Type = 3; + pub const SOCK_RDM: Type = 4; + pub const SOCK_SEQPACKET: Type = 5; + pub const SOCK_DCCP: Type = 6; + pub const SOCK_PACKET: Type = 10; + pub const SOCK_CLOEXEC: Type = 524288; + pub const SOCK_NONBLOCK: Type = 2048; +} +pub type sa_family_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct sockaddr { + pub sa_family: sa_family_t, + pub sa_data: [::core::ffi::c_char; 14usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_storage { + pub ss_family: sa_family_t, + pub __ss_padding: [::core::ffi::c_char; 118usize], + pub __ss_align: ::core::ffi::c_ulong, +} +impl Default for sockaddr_storage { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod _bindgen_ty_16 { + pub type Type = ::core::ffi::c_uint; + pub const MSG_OOB: Type = 1; + pub const MSG_PEEK: Type = 2; + pub const MSG_DONTROUTE: Type = 4; + pub const MSG_CTRUNC: Type = 8; + pub const MSG_PROXY: Type = 16; + pub const MSG_TRUNC: Type = 32; + pub const MSG_DONTWAIT: Type = 64; + pub const MSG_EOR: Type = 128; + pub const MSG_WAITALL: Type = 256; + pub const MSG_FIN: Type = 512; + pub const MSG_SYN: Type = 1024; + pub const MSG_CONFIRM: Type = 2048; + pub const MSG_RST: Type = 4096; + pub const MSG_ERRQUEUE: Type = 8192; + pub const MSG_NOSIGNAL: Type = 16384; + pub const MSG_MORE: Type = 32768; + pub const MSG_WAITFORONE: Type = 65536; + pub const MSG_BATCH: Type = 262144; + pub const MSG_ZEROCOPY: Type = 67108864; + pub const MSG_FASTOPEN: Type = 536870912; + pub const MSG_CMSG_CLOEXEC: Type = 1073741824; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct msghdr { + pub msg_name: *mut ::core::ffi::c_void, + pub msg_namelen: socklen_t, + pub msg_iov: *mut iovec, + pub msg_iovlen: usize, + pub msg_control: *mut ::core::ffi::c_void, + pub msg_controllen: usize, + pub msg_flags: ::core::ffi::c_int, +} +impl Default for msghdr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct cmsghdr { + pub cmsg_len: usize, + pub cmsg_level: ::core::ffi::c_int, + pub cmsg_type: ::core::ffi::c_int, + pub __cmsg_data: __IncompleteArrayField<::core::ffi::c_uchar>, +} +pub mod _bindgen_ty_17 { + pub type Type = ::core::ffi::c_uint; + pub const SCM_RIGHTS: Type = 1; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fd_set { + pub fds_bits: [::core::ffi::c_ulong; 16usize], +} +pub type __kernel_sighandler_t = + ::core::option::Option; +pub type __kernel_key_t = ::core::ffi::c_int; +pub type __kernel_mqd_t = ::core::ffi::c_int; +pub type __kernel_old_uid_t = ::core::ffi::c_ushort; +pub type __kernel_old_gid_t = ::core::ffi::c_ushort; +pub type __kernel_old_dev_t = ::core::ffi::c_ulong; +pub type __kernel_long_t = ::core::ffi::c_long; +pub type __kernel_ulong_t = ::core::ffi::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = ::core::ffi::c_uint; +pub type __kernel_pid_t = ::core::ffi::c_int; +pub type __kernel_ipc_pid_t = ::core::ffi::c_int; +pub type __kernel_uid_t = ::core::ffi::c_uint; +pub type __kernel_gid_t = ::core::ffi::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = ::core::ffi::c_int; +pub type __kernel_uid32_t = ::core::ffi::c_uint; +pub type __kernel_gid32_t = ::core::ffi::c_uint; +pub type __kernel_size_t = __kernel_ulong_t; +pub type __kernel_ssize_t = __kernel_long_t; +pub type __kernel_ptrdiff_t = __kernel_long_t; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __kernel_fsid_t { + pub val: [::core::ffi::c_int; 2usize], +} +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = ::core::ffi::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = ::core::ffi::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = ::core::ffi::c_int; +pub type __kernel_clockid_t = ::core::ffi::c_int; +pub type __kernel_caddr_t = *mut ::core::ffi::c_char; +pub type __kernel_uid16_t = ::core::ffi::c_ushort; +pub type __kernel_gid16_t = ::core::ffi::c_ushort; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct linger { + pub l_onoff: ::core::ffi::c_int, + pub l_linger: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct osockaddr { + pub sa_family: ::core::ffi::c_ushort, + pub sa_data: [::core::ffi::c_uchar; 14usize], +} +pub mod _bindgen_ty_18 { + pub type Type = ::core::ffi::c_uint; + pub const SHUT_RD: Type = 0; + pub const SHUT_WR: Type = 1; + pub const SHUT_RDWR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_un { + pub sun_family: sa_family_t, + pub sun_path: [::core::ffi::c_char; 108usize], +} +impl Default for sockaddr_un { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type in_addr_t = u32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct in_addr { + pub s_addr: in_addr_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_opts { + pub ip_dst: in_addr, + pub ip_opts: [::core::ffi::c_char; 40usize], +} +impl Default for ip_opts { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct in_pktinfo { + pub ipi_ifindex: ::core::ffi::c_int, + pub ipi_spec_dst: in_addr, + pub ipi_addr: in_addr, +} +pub mod _bindgen_ty_19 { + pub type Type = ::core::ffi::c_uint; + pub const IPPROTO_IP: Type = 0; + pub const IPPROTO_ICMP: Type = 1; + pub const IPPROTO_IGMP: Type = 2; + pub const IPPROTO_IPIP: Type = 4; + pub const IPPROTO_TCP: Type = 6; + pub const IPPROTO_EGP: Type = 8; + pub const IPPROTO_PUP: Type = 12; + pub const IPPROTO_UDP: Type = 17; + pub const IPPROTO_IDP: Type = 22; + pub const IPPROTO_TP: Type = 29; + pub const IPPROTO_DCCP: Type = 33; + pub const IPPROTO_IPV6: Type = 41; + pub const IPPROTO_RSVP: Type = 46; + pub const IPPROTO_GRE: Type = 47; + pub const IPPROTO_ESP: Type = 50; + pub const IPPROTO_AH: Type = 51; + pub const IPPROTO_MTP: Type = 92; + pub const IPPROTO_BEETPH: Type = 94; + pub const IPPROTO_ENCAP: Type = 98; + pub const IPPROTO_PIM: Type = 103; + pub const IPPROTO_COMP: Type = 108; + pub const IPPROTO_SCTP: Type = 132; + pub const IPPROTO_UDPLITE: Type = 136; + pub const IPPROTO_MPLS: Type = 137; + pub const IPPROTO_ETHERNET: Type = 143; + pub const IPPROTO_RAW: Type = 255; + pub const IPPROTO_MPTCP: Type = 262; + pub const IPPROTO_MAX: Type = 263; +} +pub mod _bindgen_ty_20 { + pub type Type = ::core::ffi::c_uint; + pub const IPPROTO_HOPOPTS: Type = 0; + pub const IPPROTO_ROUTING: Type = 43; + pub const IPPROTO_FRAGMENT: Type = 44; + pub const IPPROTO_ICMPV6: Type = 58; + pub const IPPROTO_NONE: Type = 59; + pub const IPPROTO_DSTOPTS: Type = 60; + pub const IPPROTO_MH: Type = 135; +} +pub type in_port_t = u16; +pub mod _bindgen_ty_21 { + pub type Type = ::core::ffi::c_uint; + pub const IPPORT_ECHO: Type = 7; + pub const IPPORT_DISCARD: Type = 9; + pub const IPPORT_SYSTAT: Type = 11; + pub const IPPORT_DAYTIME: Type = 13; + pub const IPPORT_NETSTAT: Type = 15; + pub const IPPORT_FTP: Type = 21; + pub const IPPORT_TELNET: Type = 23; + pub const IPPORT_SMTP: Type = 25; + pub const IPPORT_TIMESERVER: Type = 37; + pub const IPPORT_NAMESERVER: Type = 42; + pub const IPPORT_WHOIS: Type = 43; + pub const IPPORT_MTP: Type = 57; + pub const IPPORT_TFTP: Type = 69; + pub const IPPORT_RJE: Type = 77; + pub const IPPORT_FINGER: Type = 79; + pub const IPPORT_TTYLINK: Type = 87; + pub const IPPORT_SUPDUP: Type = 95; + pub const IPPORT_EXECSERVER: Type = 512; + pub const IPPORT_LOGINSERVER: Type = 513; + pub const IPPORT_CMDSERVER: Type = 514; + pub const IPPORT_EFSSERVER: Type = 520; + pub const IPPORT_BIFFUDP: Type = 512; + pub const IPPORT_WHOSERVER: Type = 513; + pub const IPPORT_ROUTESERVER: Type = 520; + pub const IPPORT_RESERVED: Type = 1024; + pub const IPPORT_USERRESERVED: Type = 5000; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct in6_addr { + pub __in6_u: in6_addr__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union in6_addr__bindgen_ty_1 { + pub __u6_addr8: [u8; 16usize], + pub __u6_addr16: [u16; 8usize], + pub __u6_addr32: [u32; 4usize], +} +impl Default for in6_addr__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for in6_addr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct sockaddr_in { + pub sin_family: sa_family_t, + pub sin_port: in_port_t, + pub sin_addr: in_addr, + pub sin_zero: [::core::ffi::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sockaddr_in6 { + pub sin6_family: sa_family_t, + pub sin6_port: in_port_t, + pub sin6_flowinfo: u32, + pub sin6_addr: in6_addr, + pub sin6_scope_id: u32, +} +impl Default for sockaddr_in6 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreq { + pub imr_multiaddr: in_addr, + pub imr_interface: in_addr, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreqn { + pub imr_multiaddr: in_addr, + pub imr_address: in_addr, + pub imr_ifindex: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_mreq_source { + pub imr_multiaddr: in_addr, + pub imr_interface: in_addr, + pub imr_sourceaddr: in_addr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ipv6_mreq { + pub ipv6mr_multiaddr: in6_addr, + pub ipv6mr_interface: ::core::ffi::c_uint, +} +impl Default for ipv6_mreq { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct group_req { + pub gr_interface: u32, + pub gr_group: sockaddr_storage, +} +impl Default for group_req { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct group_source_req { + pub gsr_interface: u32, + pub gsr_group: sockaddr_storage, + pub gsr_source: sockaddr_storage, +} +impl Default for group_source_req { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ip_msfilter { + pub imsf_multiaddr: in_addr, + pub imsf_interface: in_addr, + pub imsf_fmode: u32, + pub imsf_numsrc: u32, + pub imsf_slist: [in_addr; 1usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct group_filter { + pub gf_interface: u32, + pub gf_group: sockaddr_storage, + pub gf_fmode: u32, + pub gf_numsrc: u32, + pub gf_slist: [sockaddr_storage; 1usize], +} +impl Default for group_filter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rpcent { + pub r_name: *mut ::core::ffi::c_char, + pub r_aliases: *mut *mut ::core::ffi::c_char, + pub r_number: ::core::ffi::c_int, +} +impl Default for rpcent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct netent { + pub n_name: *mut ::core::ffi::c_char, + pub n_aliases: *mut *mut ::core::ffi::c_char, + pub n_addrtype: ::core::ffi::c_int, + pub n_net: u32, +} +impl Default for netent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct hostent { + pub h_name: *mut ::core::ffi::c_char, + pub h_aliases: *mut *mut ::core::ffi::c_char, + pub h_addrtype: ::core::ffi::c_int, + pub h_length: ::core::ffi::c_int, + pub h_addr_list: *mut *mut ::core::ffi::c_char, +} +impl Default for hostent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct servent { + pub s_name: *mut ::core::ffi::c_char, + pub s_aliases: *mut *mut ::core::ffi::c_char, + pub s_port: ::core::ffi::c_int, + pub s_proto: *mut ::core::ffi::c_char, +} +impl Default for servent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct protoent { + pub p_name: *mut ::core::ffi::c_char, + pub p_aliases: *mut *mut ::core::ffi::c_char, + pub p_proto: ::core::ffi::c_int, +} +impl Default for protoent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct addrinfo { + pub ai_flags: ::core::ffi::c_int, + pub ai_family: ::core::ffi::c_int, + pub ai_socktype: ::core::ffi::c_int, + pub ai_protocol: ::core::ffi::c_int, + pub ai_addrlen: socklen_t, + pub ai_addr: *mut sockaddr, + pub ai_canonname: *mut ::core::ffi::c_char, + pub ai_next: *mut addrinfo, +} +impl Default for addrinfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SockAddr { + pub addr: sockaddr_storage, + pub salen: socklen_t, +} +impl Default for SockAddr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AddrInfo { + pub family: ::core::ffi::c_int, + pub addr: SockAddr, +} +impl Default for AddrInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ProtocolVersion = uint32; +pub type MsgType = ProtocolVersion; +pub type PacketLen = uint32; +pub type AuthRequest = uint32; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct CancelRequestPacket { + pub cancelRequestCode: MsgType, + pub backendPID: uint32, + pub cancelAuthCode: uint32, +} +pub mod BackendState { + pub type Type = ::core::ffi::c_uint; + pub const STATE_UNDEFINED: Type = 0; + pub const STATE_IDLE: Type = 1; + pub const STATE_RUNNING: Type = 2; + pub const STATE_IDLEINTRANSACTION: Type = 3; + pub const STATE_FASTPATH: Type = 4; + pub const STATE_IDLEINTRANSACTION_ABORTED: Type = 5; + pub const STATE_DISABLED: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgBackendSSLStatus { + pub ssl_bits: ::core::ffi::c_int, + pub ssl_version: [::core::ffi::c_char; 64usize], + pub ssl_cipher: [::core::ffi::c_char; 64usize], + pub ssl_client_dn: [::core::ffi::c_char; 64usize], + pub ssl_client_serial: [::core::ffi::c_char; 64usize], + pub ssl_issuer_dn: [::core::ffi::c_char; 64usize], +} +impl Default for PgBackendSSLStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgBackendGSSStatus { + pub gss_princ: [::core::ffi::c_char; 64usize], + pub gss_auth: bool, + pub gss_enc: bool, + pub gss_delegation: bool, +} +impl Default for PgBackendGSSStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgBackendStatus { + pub st_changecount: ::core::ffi::c_int, + pub st_procpid: ::core::ffi::c_int, + pub st_backendType: BackendType::Type, + pub st_proc_start_timestamp: TimestampTz, + pub st_xact_start_timestamp: TimestampTz, + pub st_activity_start_timestamp: TimestampTz, + pub st_state_start_timestamp: TimestampTz, + pub st_databaseid: Oid, + pub st_userid: Oid, + pub st_clientaddr: SockAddr, + pub st_clienthostname: *mut ::core::ffi::c_char, + pub st_ssl: bool, + pub st_sslstatus: *mut PgBackendSSLStatus, + pub st_gss: bool, + pub st_gssstatus: *mut PgBackendGSSStatus, + pub st_state: BackendState::Type, + pub st_appname: *mut ::core::ffi::c_char, + pub st_activity_raw: *mut ::core::ffi::c_char, + pub st_progress_command: ProgressCommandType::Type, + pub st_progress_command_target: Oid, + pub st_progress_param: [int64; 20usize], + pub st_query_id: uint64, +} +impl Default for PgBackendStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LocalPgBackendStatus { + pub backendStatus: PgBackendStatus, + pub proc_number: ProcNumber, + pub backend_xid: TransactionId, + pub backend_xmin: TransactionId, + pub backend_subxact_count: ::core::ffi::c_int, + pub backend_subxact_overflowed: bool, +} +impl Default for LocalPgBackendStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod WaitEventActivity { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_ARCHIVER_MAIN: Type = 83886080; + pub const WAIT_EVENT_AUTOVACUUM_MAIN: Type = 83886081; + pub const WAIT_EVENT_BGWRITER_HIBERNATE: Type = 83886082; + pub const WAIT_EVENT_BGWRITER_MAIN: Type = 83886083; + pub const WAIT_EVENT_CHECKPOINTER_MAIN: Type = 83886084; + pub const WAIT_EVENT_LOGICAL_APPLY_MAIN: Type = 83886085; + pub const WAIT_EVENT_LOGICAL_LAUNCHER_MAIN: Type = 83886086; + pub const WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN: Type = 83886087; + pub const WAIT_EVENT_RECOVERY_WAL_STREAM: Type = 83886088; + pub const WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN: Type = 83886089; + pub const WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN: Type = 83886090; + pub const WAIT_EVENT_SYSLOGGER_MAIN: Type = 83886091; + pub const WAIT_EVENT_WAL_RECEIVER_MAIN: Type = 83886092; + pub const WAIT_EVENT_WAL_SENDER_MAIN: Type = 83886093; + pub const WAIT_EVENT_WAL_SUMMARIZER_WAL: Type = 83886094; + pub const WAIT_EVENT_WAL_WRITER_MAIN: Type = 83886095; +} +pub mod WaitEventBufferPin { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_BUFFER_PIN: Type = 67108864; +} +pub mod WaitEventClient { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_CLIENT_READ: Type = 100663296; + pub const WAIT_EVENT_CLIENT_WRITE: Type = 100663297; + pub const WAIT_EVENT_GSS_OPEN_SERVER: Type = 100663298; + pub const WAIT_EVENT_LIBPQWALRECEIVER_CONNECT: Type = 100663299; + pub const WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE: Type = 100663300; + pub const WAIT_EVENT_SSL_OPEN_SERVER: Type = 100663301; + pub const WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION: Type = 100663302; + pub const WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL: Type = 100663303; + pub const WAIT_EVENT_WAL_SENDER_WRITE_DATA: Type = 100663304; +} +pub mod WaitEventIO { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_BASEBACKUP_READ: Type = 167772160; + pub const WAIT_EVENT_BASEBACKUP_SYNC: Type = 167772161; + pub const WAIT_EVENT_BASEBACKUP_WRITE: Type = 167772162; + pub const WAIT_EVENT_BUFFILE_READ: Type = 167772163; + pub const WAIT_EVENT_BUFFILE_TRUNCATE: Type = 167772164; + pub const WAIT_EVENT_BUFFILE_WRITE: Type = 167772165; + pub const WAIT_EVENT_CONTROL_FILE_READ: Type = 167772166; + pub const WAIT_EVENT_CONTROL_FILE_SYNC: Type = 167772167; + pub const WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE: Type = 167772168; + pub const WAIT_EVENT_CONTROL_FILE_WRITE: Type = 167772169; + pub const WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE: Type = 167772170; + pub const WAIT_EVENT_COPY_FILE_READ: Type = 167772171; + pub const WAIT_EVENT_COPY_FILE_WRITE: Type = 167772172; + pub const WAIT_EVENT_DATA_FILE_EXTEND: Type = 167772173; + pub const WAIT_EVENT_DATA_FILE_FLUSH: Type = 167772174; + pub const WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC: Type = 167772175; + pub const WAIT_EVENT_DATA_FILE_PREFETCH: Type = 167772176; + pub const WAIT_EVENT_DATA_FILE_READ: Type = 167772177; + pub const WAIT_EVENT_DATA_FILE_SYNC: Type = 167772178; + pub const WAIT_EVENT_DATA_FILE_TRUNCATE: Type = 167772179; + pub const WAIT_EVENT_DATA_FILE_WRITE: Type = 167772180; + pub const WAIT_EVENT_DSM_ALLOCATE: Type = 167772181; + pub const WAIT_EVENT_DSM_FILL_ZERO_WRITE: Type = 167772182; + pub const WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ: Type = 167772183; + pub const WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC: Type = 167772184; + pub const WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE: Type = 167772185; + pub const WAIT_EVENT_LOCK_FILE_CREATE_READ: Type = 167772186; + pub const WAIT_EVENT_LOCK_FILE_CREATE_SYNC: Type = 167772187; + pub const WAIT_EVENT_LOCK_FILE_CREATE_WRITE: Type = 167772188; + pub const WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ: Type = 167772189; + pub const WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC: Type = 167772190; + pub const WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC: Type = 167772191; + pub const WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE: Type = 167772192; + pub const WAIT_EVENT_LOGICAL_REWRITE_SYNC: Type = 167772193; + pub const WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE: Type = 167772194; + pub const WAIT_EVENT_LOGICAL_REWRITE_WRITE: Type = 167772195; + pub const WAIT_EVENT_RELATION_MAP_READ: Type = 167772196; + pub const WAIT_EVENT_RELATION_MAP_REPLACE: Type = 167772197; + pub const WAIT_EVENT_RELATION_MAP_WRITE: Type = 167772198; + pub const WAIT_EVENT_REORDER_BUFFER_READ: Type = 167772199; + pub const WAIT_EVENT_REORDER_BUFFER_WRITE: Type = 167772200; + pub const WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ: Type = 167772201; + pub const WAIT_EVENT_REPLICATION_SLOT_READ: Type = 167772202; + pub const WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC: Type = 167772203; + pub const WAIT_EVENT_REPLICATION_SLOT_SYNC: Type = 167772204; + pub const WAIT_EVENT_REPLICATION_SLOT_WRITE: Type = 167772205; + pub const WAIT_EVENT_SLRU_FLUSH_SYNC: Type = 167772206; + pub const WAIT_EVENT_SLRU_READ: Type = 167772207; + pub const WAIT_EVENT_SLRU_SYNC: Type = 167772208; + pub const WAIT_EVENT_SLRU_WRITE: Type = 167772209; + pub const WAIT_EVENT_SNAPBUILD_READ: Type = 167772210; + pub const WAIT_EVENT_SNAPBUILD_SYNC: Type = 167772211; + pub const WAIT_EVENT_SNAPBUILD_WRITE: Type = 167772212; + pub const WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC: Type = 167772213; + pub const WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE: Type = 167772214; + pub const WAIT_EVENT_TIMELINE_HISTORY_READ: Type = 167772215; + pub const WAIT_EVENT_TIMELINE_HISTORY_SYNC: Type = 167772216; + pub const WAIT_EVENT_TIMELINE_HISTORY_WRITE: Type = 167772217; + pub const WAIT_EVENT_TWOPHASE_FILE_READ: Type = 167772218; + pub const WAIT_EVENT_TWOPHASE_FILE_SYNC: Type = 167772219; + pub const WAIT_EVENT_TWOPHASE_FILE_WRITE: Type = 167772220; + pub const WAIT_EVENT_VERSION_FILE_SYNC: Type = 167772221; + pub const WAIT_EVENT_VERSION_FILE_WRITE: Type = 167772222; + pub const WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ: Type = 167772223; + pub const WAIT_EVENT_WAL_BOOTSTRAP_SYNC: Type = 167772224; + pub const WAIT_EVENT_WAL_BOOTSTRAP_WRITE: Type = 167772225; + pub const WAIT_EVENT_WAL_COPY_READ: Type = 167772226; + pub const WAIT_EVENT_WAL_COPY_SYNC: Type = 167772227; + pub const WAIT_EVENT_WAL_COPY_WRITE: Type = 167772228; + pub const WAIT_EVENT_WAL_INIT_SYNC: Type = 167772229; + pub const WAIT_EVENT_WAL_INIT_WRITE: Type = 167772230; + pub const WAIT_EVENT_WAL_READ: Type = 167772231; + pub const WAIT_EVENT_WAL_SUMMARY_READ: Type = 167772232; + pub const WAIT_EVENT_WAL_SUMMARY_WRITE: Type = 167772233; + pub const WAIT_EVENT_WAL_SYNC: Type = 167772234; + pub const WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN: Type = 167772235; + pub const WAIT_EVENT_WAL_WRITE: Type = 167772236; +} +pub mod WaitEventIPC { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_APPEND_READY: Type = 134217728; + pub const WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND: Type = 134217729; + pub const WAIT_EVENT_ARCHIVE_COMMAND: Type = 134217730; + pub const WAIT_EVENT_BACKEND_TERMINATION: Type = 134217731; + pub const WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE: Type = 134217732; + pub const WAIT_EVENT_BGWORKER_SHUTDOWN: Type = 134217733; + pub const WAIT_EVENT_BGWORKER_STARTUP: Type = 134217734; + pub const WAIT_EVENT_BTREE_PAGE: Type = 134217735; + pub const WAIT_EVENT_BUFFER_IO: Type = 134217736; + pub const WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE: Type = 134217737; + pub const WAIT_EVENT_CHECKPOINT_DELAY_START: Type = 134217738; + pub const WAIT_EVENT_CHECKPOINT_DONE: Type = 134217739; + pub const WAIT_EVENT_CHECKPOINT_START: Type = 134217740; + pub const WAIT_EVENT_EXECUTE_GATHER: Type = 134217741; + pub const WAIT_EVENT_HASH_BATCH_ALLOCATE: Type = 134217742; + pub const WAIT_EVENT_HASH_BATCH_ELECT: Type = 134217743; + pub const WAIT_EVENT_HASH_BATCH_LOAD: Type = 134217744; + pub const WAIT_EVENT_HASH_BUILD_ALLOCATE: Type = 134217745; + pub const WAIT_EVENT_HASH_BUILD_ELECT: Type = 134217746; + pub const WAIT_EVENT_HASH_BUILD_HASH_INNER: Type = 134217747; + pub const WAIT_EVENT_HASH_BUILD_HASH_OUTER: Type = 134217748; + pub const WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: Type = 134217749; + pub const WAIT_EVENT_HASH_GROW_BATCHES_ELECT: Type = 134217750; + pub const WAIT_EVENT_HASH_GROW_BATCHES_FINISH: Type = 134217751; + pub const WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE: Type = 134217752; + pub const WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: Type = 134217753; + pub const WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: Type = 134217754; + pub const WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE: Type = 134217755; + pub const WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: Type = 134217756; + pub const WAIT_EVENT_LOGICAL_APPLY_SEND_DATA: Type = 134217757; + pub const WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE: Type = 134217758; + pub const WAIT_EVENT_LOGICAL_SYNC_DATA: Type = 134217759; + pub const WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE: Type = 134217760; + pub const WAIT_EVENT_MESSAGE_QUEUE_INTERNAL: Type = 134217761; + pub const WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE: Type = 134217762; + pub const WAIT_EVENT_MESSAGE_QUEUE_RECEIVE: Type = 134217763; + pub const WAIT_EVENT_MESSAGE_QUEUE_SEND: Type = 134217764; + pub const WAIT_EVENT_MULTIXACT_CREATION: Type = 134217765; + pub const WAIT_EVENT_PARALLEL_BITMAP_SCAN: Type = 134217766; + pub const WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN: Type = 134217767; + pub const WAIT_EVENT_PARALLEL_FINISH: Type = 134217768; + pub const WAIT_EVENT_PROCARRAY_GROUP_UPDATE: Type = 134217769; + pub const WAIT_EVENT_PROC_SIGNAL_BARRIER: Type = 134217770; + pub const WAIT_EVENT_PROMOTE: Type = 134217771; + pub const WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT: Type = 134217772; + pub const WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE: Type = 134217773; + pub const WAIT_EVENT_RECOVERY_END_COMMAND: Type = 134217774; + pub const WAIT_EVENT_RECOVERY_PAUSE: Type = 134217775; + pub const WAIT_EVENT_REPLICATION_ORIGIN_DROP: Type = 134217776; + pub const WAIT_EVENT_REPLICATION_SLOT_DROP: Type = 134217777; + pub const WAIT_EVENT_RESTORE_COMMAND: Type = 134217778; + pub const WAIT_EVENT_SAFE_SNAPSHOT: Type = 134217779; + pub const WAIT_EVENT_SYNC_REP: Type = 134217780; + pub const WAIT_EVENT_WAL_RECEIVER_EXIT: Type = 134217781; + pub const WAIT_EVENT_WAL_RECEIVER_WAIT_START: Type = 134217782; + pub const WAIT_EVENT_WAL_SUMMARY_READY: Type = 134217783; + pub const WAIT_EVENT_XACT_GROUP_UPDATE: Type = 134217784; +} +pub mod WaitEventTimeout { + pub type Type = ::core::ffi::c_uint; + pub const WAIT_EVENT_BASE_BACKUP_THROTTLE: Type = 150994944; + pub const WAIT_EVENT_CHECKPOINT_WRITE_DELAY: Type = 150994945; + pub const WAIT_EVENT_PG_SLEEP: Type = 150994946; + pub const WAIT_EVENT_RECOVERY_APPLY_DELAY: Type = 150994947; + pub const WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL: Type = 150994948; + pub const WAIT_EVENT_REGISTER_SYNC_REQUEST: Type = 150994949; + pub const WAIT_EVENT_SPIN_DELAY: Type = 150994950; + pub const WAIT_EVENT_VACUUM_DELAY: Type = 150994951; + pub const WAIT_EVENT_VACUUM_TRUNCATE: Type = 150994952; + pub const WAIT_EVENT_WAL_SUMMARIZER_ERROR: Type = 150994953; +} +pub mod PgStat_Kind { + pub type Type = ::core::ffi::c_uint; + pub const PGSTAT_KIND_INVALID: Type = 0; + pub const PGSTAT_KIND_DATABASE: Type = 1; + pub const PGSTAT_KIND_RELATION: Type = 2; + pub const PGSTAT_KIND_FUNCTION: Type = 3; + pub const PGSTAT_KIND_REPLSLOT: Type = 4; + pub const PGSTAT_KIND_SUBSCRIPTION: Type = 5; + pub const PGSTAT_KIND_ARCHIVER: Type = 6; + pub const PGSTAT_KIND_BGWRITER: Type = 7; + pub const PGSTAT_KIND_CHECKPOINTER: Type = 8; + pub const PGSTAT_KIND_IO: Type = 9; + pub const PGSTAT_KIND_SLRU: Type = 10; + pub const PGSTAT_KIND_WAL: Type = 11; +} +pub mod TrackFunctionsLevel { + pub type Type = ::core::ffi::c_uint; + pub const TRACK_FUNC_OFF: Type = 0; + pub const TRACK_FUNC_PL: Type = 1; + pub const TRACK_FUNC_ALL: Type = 2; +} +pub mod PgStat_FetchConsistency { + pub type Type = ::core::ffi::c_uint; + pub const PGSTAT_FETCH_CONSISTENCY_NONE: Type = 0; + pub const PGSTAT_FETCH_CONSISTENCY_CACHE: Type = 1; + pub const PGSTAT_FETCH_CONSISTENCY_SNAPSHOT: Type = 2; +} +pub mod SessionEndType { + pub type Type = ::core::ffi::c_uint; + pub const DISCONNECT_NOT_YET: Type = 0; + pub const DISCONNECT_NORMAL: Type = 1; + pub const DISCONNECT_CLIENT_EOF: Type = 2; + pub const DISCONNECT_FATAL: Type = 3; + pub const DISCONNECT_KILLED: Type = 4; +} +pub type PgStat_Counter = int64; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_FunctionCounts { + pub numcalls: PgStat_Counter, + pub total_time: instr_time, + pub self_time: instr_time, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_FunctionCallUsage { + pub fs: *mut PgStat_FunctionCounts, + pub save_f_total_time: instr_time, + pub save_total: instr_time, + pub start: instr_time, +} +impl Default for PgStat_FunctionCallUsage { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_BackendSubEntry { + pub apply_error_count: PgStat_Counter, + pub sync_error_count: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_TableCounts { + pub numscans: PgStat_Counter, + pub tuples_returned: PgStat_Counter, + pub tuples_fetched: PgStat_Counter, + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub tuples_hot_updated: PgStat_Counter, + pub tuples_newpage_updated: PgStat_Counter, + pub truncdropped: bool, + pub delta_live_tuples: PgStat_Counter, + pub delta_dead_tuples: PgStat_Counter, + pub changed_tuples: PgStat_Counter, + pub blocks_fetched: PgStat_Counter, + pub blocks_hit: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_TableStatus { + pub id: Oid, + pub shared: bool, + pub trans: *mut PgStat_TableXactStatus, + pub counts: PgStat_TableCounts, + pub relation: Relation, +} +impl Default for PgStat_TableStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_TableXactStatus { + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub truncdropped: bool, + pub inserted_pre_truncdrop: PgStat_Counter, + pub updated_pre_truncdrop: PgStat_Counter, + pub deleted_pre_truncdrop: PgStat_Counter, + pub nest_level: ::core::ffi::c_int, + pub upper: *mut PgStat_TableXactStatus, + pub parent: *mut PgStat_TableStatus, + pub next: *mut PgStat_TableXactStatus, +} +impl Default for PgStat_TableXactStatus { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PgStat_ArchiverStats { + pub archived_count: PgStat_Counter, + pub last_archived_wal: [::core::ffi::c_char; 41usize], + pub last_archived_timestamp: TimestampTz, + pub failed_count: PgStat_Counter, + pub last_failed_wal: [::core::ffi::c_char; 41usize], + pub last_failed_timestamp: TimestampTz, + pub stat_reset_timestamp: TimestampTz, +} +impl Default for PgStat_ArchiverStats { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_BgWriterStats { + pub buf_written_clean: PgStat_Counter, + pub maxwritten_clean: PgStat_Counter, + pub buf_alloc: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_CheckpointerStats { + pub num_timed: PgStat_Counter, + pub num_requested: PgStat_Counter, + pub restartpoints_timed: PgStat_Counter, + pub restartpoints_requested: PgStat_Counter, + pub restartpoints_performed: PgStat_Counter, + pub write_time: PgStat_Counter, + pub sync_time: PgStat_Counter, + pub buffers_written: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +pub mod IOObject { + pub type Type = ::core::ffi::c_uint; + pub const IOOBJECT_RELATION: Type = 0; + pub const IOOBJECT_TEMP_RELATION: Type = 1; +} +pub mod IOContext { + pub type Type = ::core::ffi::c_uint; + pub const IOCONTEXT_BULKREAD: Type = 0; + pub const IOCONTEXT_BULKWRITE: Type = 1; + pub const IOCONTEXT_NORMAL: Type = 2; + pub const IOCONTEXT_VACUUM: Type = 3; +} +pub mod IOOp { + pub type Type = ::core::ffi::c_uint; + pub const IOOP_EVICT: Type = 0; + pub const IOOP_EXTEND: Type = 1; + pub const IOOP_FSYNC: Type = 2; + pub const IOOP_HIT: Type = 3; + pub const IOOP_READ: Type = 4; + pub const IOOP_REUSE: Type = 5; + pub const IOOP_WRITE: Type = 6; + pub const IOOP_WRITEBACK: Type = 7; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_BktypeIO { + pub counts: [[[PgStat_Counter; 8usize]; 4usize]; 2usize], + pub times: [[[PgStat_Counter; 8usize]; 4usize]; 2usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_IO { + pub stat_reset_timestamp: TimestampTz, + pub stats: [PgStat_BktypeIO; 16usize], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatDBEntry { + pub xact_commit: PgStat_Counter, + pub xact_rollback: PgStat_Counter, + pub blocks_fetched: PgStat_Counter, + pub blocks_hit: PgStat_Counter, + pub tuples_returned: PgStat_Counter, + pub tuples_fetched: PgStat_Counter, + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub last_autovac_time: TimestampTz, + pub conflict_tablespace: PgStat_Counter, + pub conflict_lock: PgStat_Counter, + pub conflict_snapshot: PgStat_Counter, + pub conflict_logicalslot: PgStat_Counter, + pub conflict_bufferpin: PgStat_Counter, + pub conflict_startup_deadlock: PgStat_Counter, + pub temp_files: PgStat_Counter, + pub temp_bytes: PgStat_Counter, + pub deadlocks: PgStat_Counter, + pub checksum_failures: PgStat_Counter, + pub last_checksum_failure: TimestampTz, + pub blk_read_time: PgStat_Counter, + pub blk_write_time: PgStat_Counter, + pub sessions: PgStat_Counter, + pub session_time: PgStat_Counter, + pub active_time: PgStat_Counter, + pub idle_in_transaction_time: PgStat_Counter, + pub sessions_abandoned: PgStat_Counter, + pub sessions_fatal: PgStat_Counter, + pub sessions_killed: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatFuncEntry { + pub numcalls: PgStat_Counter, + pub total_time: PgStat_Counter, + pub self_time: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatReplSlotEntry { + pub spill_txns: PgStat_Counter, + pub spill_count: PgStat_Counter, + pub spill_bytes: PgStat_Counter, + pub stream_txns: PgStat_Counter, + pub stream_count: PgStat_Counter, + pub stream_bytes: PgStat_Counter, + pub total_txns: PgStat_Counter, + pub total_bytes: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_SLRUStats { + pub blocks_zeroed: PgStat_Counter, + pub blocks_hit: PgStat_Counter, + pub blocks_read: PgStat_Counter, + pub blocks_written: PgStat_Counter, + pub blocks_exists: PgStat_Counter, + pub flush: PgStat_Counter, + pub truncate: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatSubEntry { + pub apply_error_count: PgStat_Counter, + pub sync_error_count: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_StatTabEntry { + pub numscans: PgStat_Counter, + pub lastscan: TimestampTz, + pub tuples_returned: PgStat_Counter, + pub tuples_fetched: PgStat_Counter, + pub tuples_inserted: PgStat_Counter, + pub tuples_updated: PgStat_Counter, + pub tuples_deleted: PgStat_Counter, + pub tuples_hot_updated: PgStat_Counter, + pub tuples_newpage_updated: PgStat_Counter, + pub live_tuples: PgStat_Counter, + pub dead_tuples: PgStat_Counter, + pub mod_since_analyze: PgStat_Counter, + pub ins_since_vacuum: PgStat_Counter, + pub blocks_fetched: PgStat_Counter, + pub blocks_hit: PgStat_Counter, + pub last_vacuum_time: TimestampTz, + pub vacuum_count: PgStat_Counter, + pub last_autovacuum_time: TimestampTz, + pub autovacuum_count: PgStat_Counter, + pub last_analyze_time: TimestampTz, + pub analyze_count: PgStat_Counter, + pub last_autoanalyze_time: TimestampTz, + pub autoanalyze_count: PgStat_Counter, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_WalStats { + pub wal_records: PgStat_Counter, + pub wal_fpi: PgStat_Counter, + pub wal_bytes: uint64, + pub wal_buffers_full: PgStat_Counter, + pub wal_write: PgStat_Counter, + pub wal_sync: PgStat_Counter, + pub wal_write_time: PgStat_Counter, + pub wal_sync_time: PgStat_Counter, + pub stat_reset_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PgStat_PendingWalStats { + pub wal_buffers_full: PgStat_Counter, + pub wal_write: PgStat_Counter, + pub wal_sync: PgStat_Counter, + pub wal_write_time: instr_time, + pub wal_sync_time: instr_time, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BackupState { + pub name: [::core::ffi::c_char; 1025usize], + pub startpoint: XLogRecPtr, + pub starttli: TimeLineID, + pub checkpointloc: XLogRecPtr, + pub starttime: pg_time_t, + pub started_in_recovery: bool, + pub istartpoint: XLogRecPtr, + pub istarttli: TimeLineID, + pub stoppoint: XLogRecPtr, + pub stoptli: TimeLineID, + pub stoptime: pg_time_t, +} +impl Default for BackupState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod WalSyncMethod { + pub type Type = ::core::ffi::c_uint; + pub const WAL_SYNC_METHOD_FSYNC: Type = 0; + pub const WAL_SYNC_METHOD_FDATASYNC: Type = 1; + pub const WAL_SYNC_METHOD_OPEN: Type = 2; + pub const WAL_SYNC_METHOD_FSYNC_WRITETHROUGH: Type = 3; + pub const WAL_SYNC_METHOD_OPEN_DSYNC: Type = 4; +} +pub mod ArchiveMode { + pub type Type = ::core::ffi::c_uint; + pub const ARCHIVE_MODE_OFF: Type = 0; + pub const ARCHIVE_MODE_ON: Type = 1; + pub const ARCHIVE_MODE_ALWAYS: Type = 2; +} +pub mod WalLevel { + pub type Type = ::core::ffi::c_uint; + pub const WAL_LEVEL_MINIMAL: Type = 0; + pub const WAL_LEVEL_REPLICA: Type = 1; + pub const WAL_LEVEL_LOGICAL: Type = 2; +} +pub mod WalCompression { + pub type Type = ::core::ffi::c_uint; + pub const WAL_COMPRESSION_NONE: Type = 0; + pub const WAL_COMPRESSION_PGLZ: Type = 1; + pub const WAL_COMPRESSION_LZ4: Type = 2; + pub const WAL_COMPRESSION_ZSTD: Type = 3; +} +pub mod RecoveryState { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_STATE_CRASH: Type = 0; + pub const RECOVERY_STATE_ARCHIVE: Type = 1; + pub const RECOVERY_STATE_DONE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct CheckpointStatsData { + pub ckpt_start_t: TimestampTz, + pub ckpt_write_t: TimestampTz, + pub ckpt_sync_t: TimestampTz, + pub ckpt_sync_end_t: TimestampTz, + pub ckpt_end_t: TimestampTz, + pub ckpt_bufs_written: ::core::ffi::c_int, + pub ckpt_segs_added: ::core::ffi::c_int, + pub ckpt_segs_removed: ::core::ffi::c_int, + pub ckpt_segs_recycled: ::core::ffi::c_int, + pub ckpt_sync_rels: ::core::ffi::c_int, + pub ckpt_longest_sync: uint64, + pub ckpt_agg_sync_time: uint64, +} +pub mod WALAvailability { + pub type Type = ::core::ffi::c_uint; + pub const WALAVAIL_INVALID_LSN: Type = 0; + pub const WALAVAIL_RESERVED: Type = 1; + pub const WALAVAIL_EXTENDED: Type = 2; + pub const WALAVAIL_UNRESERVED: Type = 3; + pub const WALAVAIL_REMOVED: Type = 4; +} +pub mod SessionBackupState { + pub type Type = ::core::ffi::c_uint; + pub const SESSION_BACKUP_NONE: Type = 0; + pub const SESSION_BACKUP_RUNNING: Type = 1; +} +pub type RmgrId = uint8; +pub mod RmgrIds { + pub type Type = ::core::ffi::c_uint; + pub const RM_XLOG_ID: Type = 0; + pub const RM_XACT_ID: Type = 1; + pub const RM_SMGR_ID: Type = 2; + pub const RM_CLOG_ID: Type = 3; + pub const RM_DBASE_ID: Type = 4; + pub const RM_TBLSPC_ID: Type = 5; + pub const RM_MULTIXACT_ID: Type = 6; + pub const RM_RELMAP_ID: Type = 7; + pub const RM_STANDBY_ID: Type = 8; + pub const RM_HEAP2_ID: Type = 9; + pub const RM_HEAP_ID: Type = 10; + pub const RM_BTREE_ID: Type = 11; + pub const RM_HASH_ID: Type = 12; + pub const RM_GIN_ID: Type = 13; + pub const RM_GIST_ID: Type = 14; + pub const RM_SEQ_ID: Type = 15; + pub const RM_SPGIST_ID: Type = 16; + pub const RM_BRIN_ID: Type = 17; + pub const RM_COMMIT_TS_ID: Type = 18; + pub const RM_REPLORIGIN_ID: Type = 19; + pub const RM_GENERIC_ID: Type = 20; + pub const RM_LOGICALMSG_ID: Type = 21; + pub const RM_NEXT_ID: Type = 22; +} +pub type pg_crc32c = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelFileLocator { + pub spcOid: Oid, + pub dbOid: Oid, + pub relNumber: RelFileNumber, +} +impl Default for RelFileLocator { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelFileLocatorBackend { + pub locator: RelFileLocator, + pub backend: ProcNumber, +} +impl Default for RelFileLocatorBackend { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecord { + pub xl_tot_len: uint32, + pub xl_xid: TransactionId, + pub xl_prev: XLogRecPtr, + pub xl_info: uint8, + pub xl_rmid: RmgrId, + pub xl_crc: pg_crc32c, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordBlockHeader { + pub id: uint8, + pub fork_flags: uint8, + pub data_length: uint16, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordBlockImageHeader { + pub length: uint16, + pub hole_offset: uint16, + pub bimg_info: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordBlockCompressHeader { + pub hole_length: uint16, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordDataHeaderShort { + pub id: uint8, + pub data_length: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogRecordDataHeaderLong { + pub id: uint8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WALOpenSegment { + pub ws_file: ::core::ffi::c_int, + pub ws_segno: XLogSegNo, + pub ws_tli: TimeLineID, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WALSegmentContext { + pub ws_dir: [::core::ffi::c_char; 1024usize], + pub ws_segsize: ::core::ffi::c_int, +} +impl Default for WALSegmentContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type XLogPageReadCB = ::core::option::Option< + unsafe extern "C" fn( + xlogreader: *mut XLogReaderState, + targetPagePtr: XLogRecPtr, + reqLen: ::core::ffi::c_int, + targetRecPtr: XLogRecPtr, + readBuf: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int, +>; +pub type WALSegmentOpenCB = ::core::option::Option< + unsafe extern "C" fn( + xlogreader: *mut XLogReaderState, + nextSegNo: XLogSegNo, + tli_p: *mut TimeLineID, + ), +>; +pub type WALSegmentCloseCB = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogReaderRoutine { + pub page_read: XLogPageReadCB, + pub segment_open: WALSegmentOpenCB, + pub segment_close: WALSegmentCloseCB, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DecodedBkpBlock { + pub in_use: bool, + pub rlocator: RelFileLocator, + pub forknum: ForkNumber::Type, + pub blkno: BlockNumber, + pub prefetch_buffer: Buffer, + pub flags: uint8, + pub has_image: bool, + pub apply_image: bool, + pub bkp_image: *mut ::core::ffi::c_char, + pub hole_offset: uint16, + pub hole_length: uint16, + pub bimg_len: uint16, + pub bimg_info: uint8, + pub has_data: bool, + pub data: *mut ::core::ffi::c_char, + pub data_len: uint16, + pub data_bufsz: uint16, +} +impl Default for DecodedBkpBlock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct DecodedXLogRecord { + pub size: usize, + pub oversized: bool, + pub next: *mut DecodedXLogRecord, + pub lsn: XLogRecPtr, + pub next_lsn: XLogRecPtr, + pub header: XLogRecord, + pub record_origin: RepOriginId, + pub toplevel_xid: TransactionId, + pub main_data: *mut ::core::ffi::c_char, + pub main_data_len: uint32, + pub max_block_id: ::core::ffi::c_int, + pub blocks: __IncompleteArrayField, +} +impl Default for DecodedXLogRecord { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XLogReaderState { + pub routine: XLogReaderRoutine, + pub system_identifier: uint64, + pub private_data: *mut ::core::ffi::c_void, + pub ReadRecPtr: XLogRecPtr, + pub EndRecPtr: XLogRecPtr, + pub abortedRecPtr: XLogRecPtr, + pub missingContrecPtr: XLogRecPtr, + pub overwrittenRecPtr: XLogRecPtr, + pub DecodeRecPtr: XLogRecPtr, + pub NextRecPtr: XLogRecPtr, + pub PrevRecPtr: XLogRecPtr, + pub record: *mut DecodedXLogRecord, + pub decode_buffer: *mut ::core::ffi::c_char, + pub decode_buffer_size: usize, + pub free_decode_buffer: bool, + pub decode_buffer_head: *mut ::core::ffi::c_char, + pub decode_buffer_tail: *mut ::core::ffi::c_char, + pub decode_queue_head: *mut DecodedXLogRecord, + pub decode_queue_tail: *mut DecodedXLogRecord, + pub readBuf: *mut ::core::ffi::c_char, + pub readLen: uint32, + pub segcxt: WALSegmentContext, + pub seg: WALOpenSegment, + pub segoff: uint32, + pub latestPagePtr: XLogRecPtr, + pub latestPageTLI: TimeLineID, + pub currRecPtr: XLogRecPtr, + pub currTLI: TimeLineID, + pub currTLIValidUntil: XLogRecPtr, + pub nextTLI: TimeLineID, + pub readRecordBuf: *mut ::core::ffi::c_char, + pub readRecordBufSize: uint32, + pub errormsg_buf: *mut ::core::ffi::c_char, + pub errormsg_deferred: bool, + pub nonblocking: bool, +} +impl Default for XLogReaderState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod XLogPageReadResult { + pub type Type = ::core::ffi::c_int; + pub const XLREAD_SUCCESS: Type = 0; + pub const XLREAD_FAIL: Type = -1; + pub const XLREAD_WOULDBLOCK: Type = -2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WALReadError { + pub wre_errno: ::core::ffi::c_int, + pub wre_off: ::core::ffi::c_int, + pub wre_req: ::core::ffi::c_int, + pub wre_read: ::core::ffi::c_int, + pub wre_seg: WALOpenSegment, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_class { + pub oid: Oid, + pub relname: NameData, + pub relnamespace: Oid, + pub reltype: Oid, + pub reloftype: Oid, + pub relowner: Oid, + pub relam: Oid, + pub relfilenode: Oid, + pub reltablespace: Oid, + pub relpages: int32, + pub reltuples: float4, + pub relallvisible: int32, + pub reltoastrelid: Oid, + pub relhasindex: bool, + pub relisshared: bool, + pub relpersistence: ::core::ffi::c_char, + pub relkind: ::core::ffi::c_char, + pub relnatts: int16, + pub relchecks: int16, + pub relhasrules: bool, + pub relhastriggers: bool, + pub relhassubclass: bool, + pub relrowsecurity: bool, + pub relforcerowsecurity: bool, + pub relispopulated: bool, + pub relreplident: ::core::ffi::c_char, + pub relispartition: bool, + pub relrewrite: Oid, + pub relfrozenxid: TransactionId, + pub relminmxid: TransactionId, +} +impl Default for FormData_pg_class { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_class = *mut FormData_pg_class; +#[repr(C)] +#[derive(Debug)] +pub struct FormData_pg_index { + pub indexrelid: Oid, + pub indrelid: Oid, + pub indnatts: int16, + pub indnkeyatts: int16, + pub indisunique: bool, + pub indnullsnotdistinct: bool, + pub indisprimary: bool, + pub indisexclusion: bool, + pub indimmediate: bool, + pub indisclustered: bool, + pub indisvalid: bool, + pub indcheckxmin: bool, + pub indisready: bool, + pub indislive: bool, + pub indisreplident: bool, + pub indkey: int2vector, +} +impl Default for FormData_pg_index { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_index = *mut FormData_pg_index; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectAddress { + pub classId: Oid, + pub objectId: Oid, + pub objectSubId: int32, +} +impl Default for ObjectAddress { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_publication { + pub oid: Oid, + pub pubname: NameData, + pub pubowner: Oid, + pub puballtables: bool, + pub pubinsert: bool, + pub pubupdate: bool, + pub pubdelete: bool, + pub pubtruncate: bool, + pub pubviaroot: bool, +} +impl Default for FormData_pg_publication { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_publication = *mut FormData_pg_publication; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PublicationActions { + pub pubinsert: bool, + pub pubupdate: bool, + pub pubdelete: bool, + pub pubtruncate: bool, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PublicationDesc { + pub pubactions: PublicationActions, + pub rf_valid_for_update: bool, + pub rf_valid_for_delete: bool, + pub cols_valid_for_update: bool, + pub cols_valid_for_delete: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Publication { + pub oid: Oid, + pub name: *mut ::core::ffi::c_char, + pub alltables: bool, + pub pubviaroot: bool, + pub pubactions: PublicationActions, +} +impl Default for Publication { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PublicationRelInfo { + pub relation: Relation, + pub whereClause: *mut Node, + pub columns: *mut List, +} +impl Default for PublicationRelInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PublicationPartOpt { + pub type Type = ::core::ffi::c_uint; + pub const PUBLICATION_PART_ROOT: Type = 0; + pub const PUBLICATION_PART_LEAF: Type = 1; + pub const PUBLICATION_PART_ALL: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RewriteRule { + pub ruleId: Oid, + pub event: CmdType::Type, + pub qual: *mut Node, + pub actions: *mut List, + pub enabled: ::core::ffi::c_char, + pub isInstead: bool, +} +impl Default for RewriteRule { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RuleLock { + pub numLocks: ::core::ffi::c_int, + pub rules: *mut *mut RewriteRule, +} +impl Default for RuleLock { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SMgrRelationData { + pub smgr_rlocator: RelFileLocatorBackend, + pub smgr_targblock: BlockNumber, + pub smgr_cached_nblocks: [BlockNumber; 4usize], + pub smgr_which: ::core::ffi::c_int, + pub md_num_open_segs: [::core::ffi::c_int; 4usize], + pub md_seg_fds: [*mut _MdfdVec; 4usize], + pub pincount: ::core::ffi::c_int, + pub node: dlist_node, +} +impl Default for SMgrRelationData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SMgrRelation = *mut SMgrRelationData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRelId { + pub relId: Oid, + pub dbId: Oid, +} +impl Default for LockRelId { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockInfoData { + pub lockRelId: LockRelId, +} +impl Default for LockInfoData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LockInfo = *mut LockInfoData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelationData { + pub rd_locator: RelFileLocator, + pub rd_smgr: SMgrRelation, + pub rd_refcnt: ::core::ffi::c_int, + pub rd_backend: ProcNumber, + pub rd_islocaltemp: bool, + pub rd_isnailed: bool, + pub rd_isvalid: bool, + pub rd_indexvalid: bool, + pub rd_statvalid: bool, + pub rd_createSubid: SubTransactionId, + pub rd_newRelfilelocatorSubid: SubTransactionId, + pub rd_firstRelfilelocatorSubid: SubTransactionId, + pub rd_droppedSubid: SubTransactionId, + pub rd_rel: Form_pg_class, + pub rd_att: TupleDesc, + pub rd_id: Oid, + pub rd_lockInfo: LockInfoData, + pub rd_rules: *mut RuleLock, + pub rd_rulescxt: MemoryContext, + pub trigdesc: *mut TriggerDesc, + pub rd_rsdesc: *mut RowSecurityDesc, + pub rd_fkeylist: *mut List, + pub rd_fkeyvalid: bool, + pub rd_partkey: PartitionKey, + pub rd_partkeycxt: MemoryContext, + pub rd_partdesc: PartitionDesc, + pub rd_pdcxt: MemoryContext, + pub rd_partdesc_nodetached: PartitionDesc, + pub rd_pddcxt: MemoryContext, + pub rd_partdesc_nodetached_xmin: TransactionId, + pub rd_partcheck: *mut List, + pub rd_partcheckvalid: bool, + pub rd_partcheckcxt: MemoryContext, + pub rd_indexlist: *mut List, + pub rd_pkindex: Oid, + pub rd_ispkdeferrable: bool, + pub rd_replidindex: Oid, + pub rd_statlist: *mut List, + pub rd_attrsvalid: bool, + pub rd_keyattr: *mut Bitmapset, + pub rd_pkattr: *mut Bitmapset, + pub rd_idattr: *mut Bitmapset, + pub rd_hotblockingattr: *mut Bitmapset, + pub rd_summarizedattr: *mut Bitmapset, + pub rd_pubdesc: *mut PublicationDesc, + pub rd_options: *mut bytea, + pub rd_amhandler: Oid, + pub rd_tableam: *const TableAmRoutine, + pub rd_index: Form_pg_index, + pub rd_indextuple: *mut HeapTupleData, + pub rd_indexcxt: MemoryContext, + pub rd_indam: *mut IndexAmRoutine, + pub rd_opfamily: *mut Oid, + pub rd_opcintype: *mut Oid, + pub rd_support: *mut RegProcedure, + pub rd_supportinfo: *mut FmgrInfo, + pub rd_indoption: *mut int16, + pub rd_indexprs: *mut List, + pub rd_indpred: *mut List, + pub rd_exclops: *mut Oid, + pub rd_exclprocs: *mut Oid, + pub rd_exclstrats: *mut uint16, + pub rd_indcollation: *mut Oid, + pub rd_opcoptions: *mut *mut bytea, + pub rd_amcache: *mut ::core::ffi::c_void, + pub rd_fdwroutine: *mut FdwRoutine, + pub rd_toastoid: Oid, + pub pgstat_enabled: bool, + pub pgstat_info: *mut PgStat_TableStatus, +} +impl Default for RelationData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignKeyCacheInfo { + pub type_: NodeTag, + pub conoid: Oid, + pub conrelid: Oid, + pub confrelid: Oid, + pub nkeys: ::core::ffi::c_int, + pub conkey: [AttrNumber; 32usize], + pub confkey: [AttrNumber; 32usize], + pub conpfeqop: [Oid; 32usize], +} +impl Default for ForeignKeyCacheInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AutoVacOpts { + pub enabled: bool, + pub vacuum_threshold: ::core::ffi::c_int, + pub vacuum_ins_threshold: ::core::ffi::c_int, + pub analyze_threshold: ::core::ffi::c_int, + pub vacuum_cost_limit: ::core::ffi::c_int, + pub freeze_min_age: ::core::ffi::c_int, + pub freeze_max_age: ::core::ffi::c_int, + pub freeze_table_age: ::core::ffi::c_int, + pub multixact_freeze_min_age: ::core::ffi::c_int, + pub multixact_freeze_max_age: ::core::ffi::c_int, + pub multixact_freeze_table_age: ::core::ffi::c_int, + pub log_min_duration: ::core::ffi::c_int, + pub vacuum_cost_delay: float8, + pub vacuum_scale_factor: float8, + pub vacuum_ins_scale_factor: float8, + pub analyze_scale_factor: float8, +} +pub mod StdRdOptIndexCleanup { + pub type Type = ::core::ffi::c_uint; + pub const STDRD_OPTION_VACUUM_INDEX_CLEANUP_AUTO: Type = 0; + pub const STDRD_OPTION_VACUUM_INDEX_CLEANUP_OFF: Type = 1; + pub const STDRD_OPTION_VACUUM_INDEX_CLEANUP_ON: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StdRdOptions { + pub vl_len_: int32, + pub fillfactor: ::core::ffi::c_int, + pub toast_tuple_target: ::core::ffi::c_int, + pub autovacuum: AutoVacOpts, + pub user_catalog_table: bool, + pub parallel_workers: ::core::ffi::c_int, + pub vacuum_index_cleanup: StdRdOptIndexCleanup::Type, + pub vacuum_truncate: bool, +} +impl Default for StdRdOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ViewOptCheckOption { + pub type Type = ::core::ffi::c_uint; + pub const VIEW_OPTION_CHECK_OPTION_NOT_SET: Type = 0; + pub const VIEW_OPTION_CHECK_OPTION_LOCAL: Type = 1; + pub const VIEW_OPTION_CHECK_OPTION_CASCADED: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ViewOptions { + pub vl_len_: int32, + pub security_barrier: bool, + pub security_invoker: bool, + pub check_option: ViewOptCheckOption::Type, +} +impl Default for ViewOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GenericXLogState { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GinStatsData { + pub nPendingPages: BlockNumber, + pub nTotalPages: BlockNumber, + pub nEntryPages: BlockNumber, + pub nDataPages: BlockNumber, + pub nEntries: int64, + pub ginVersion: int32, +} +pub type GinTernaryValue = ::core::ffi::c_char; +pub type GistNSN = XLogRecPtr; +pub type PageGistNSN = PageXLogRecPtr; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GISTPageOpaqueData { + pub nsn: PageGistNSN, + pub rightlink: BlockNumber, + pub flags: uint16, + pub gist_page_id: uint16, +} +pub type GISTPageOpaque = *mut GISTPageOpaqueData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GIST_SPLITVEC { + pub spl_left: *mut OffsetNumber, + pub spl_nleft: ::core::ffi::c_int, + pub spl_ldatum: Datum, + pub spl_ldatum_exists: bool, + pub spl_right: *mut OffsetNumber, + pub spl_nright: ::core::ffi::c_int, + pub spl_rdatum: Datum, + pub spl_rdatum_exists: bool, +} +impl Default for GIST_SPLITVEC { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GISTENTRY { + pub key: Datum, + pub rel: Relation, + pub page: Page, + pub offset: OffsetNumber, + pub leafkey: bool, +} +impl Default for GISTENTRY { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GISTDeletedPageContents { + pub deleteXid: FullTransactionId, +} +#[repr(C)] +#[derive(Debug)] +pub struct GistEntryVector { + pub n: int32, + pub vector: __IncompleteArrayField, +} +impl Default for GistEntryVector { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableScanDescData { + pub rs_rd: Relation, + pub rs_snapshot: *mut SnapshotData, + pub rs_nkeys: ::core::ffi::c_int, + pub rs_key: *mut ScanKeyData, + pub rs_mintid: ItemPointerData, + pub rs_maxtid: ItemPointerData, + pub rs_flags: uint32, + pub rs_parallel: *mut ParallelTableScanDescData, +} +impl Default for TableScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TableScanDesc = *mut TableScanDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelTableScanDescData { + pub phs_relid: Oid, + pub phs_syncscan: bool, + pub phs_snapshot_any: bool, + pub phs_snapshot_off: Size, +} +impl Default for ParallelTableScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParallelTableScanDesc = *mut ParallelTableScanDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelBlockTableScanDescData { + pub base: ParallelTableScanDescData, + pub phs_nblocks: BlockNumber, + pub phs_mutex: slock_t, + pub phs_startblock: BlockNumber, + pub phs_nallocated: pg_atomic_uint64, +} +impl Default for ParallelBlockTableScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ParallelBlockTableScanDesc = *mut ParallelBlockTableScanDescData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ParallelBlockTableScanWorkerData { + pub phsw_nallocated: uint64, + pub phsw_chunk_remaining: uint32, + pub phsw_chunk_size: uint32, +} +pub type ParallelBlockTableScanWorker = *mut ParallelBlockTableScanWorkerData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexFetchTableData { + pub rel: Relation, +} +impl Default for IndexFetchTableData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexScanDescData { + pub heapRelation: Relation, + pub indexRelation: Relation, + pub xs_snapshot: *mut SnapshotData, + pub numberOfKeys: ::core::ffi::c_int, + pub numberOfOrderBys: ::core::ffi::c_int, + pub keyData: *mut ScanKeyData, + pub orderByData: *mut ScanKeyData, + pub xs_want_itup: bool, + pub xs_temp_snap: bool, + pub kill_prior_tuple: bool, + pub ignore_killed_tuples: bool, + pub xactStartedInRecovery: bool, + pub opaque: *mut ::core::ffi::c_void, + pub xs_itup: IndexTuple, + pub xs_itupdesc: *mut TupleDescData, + pub xs_hitup: HeapTuple, + pub xs_hitupdesc: *mut TupleDescData, + pub xs_heaptid: ItemPointerData, + pub xs_heap_continue: bool, + pub xs_heapfetch: *mut IndexFetchTableData, + pub xs_recheck: bool, + pub xs_orderbyvals: *mut Datum, + pub xs_orderbynulls: *mut bool, + pub xs_recheckorderby: bool, + pub parallel_scan: *mut ParallelIndexScanDescData, +} +impl Default for IndexScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct ParallelIndexScanDescData { + pub ps_relid: Oid, + pub ps_indexid: Oid, + pub ps_offset: Size, + pub ps_snapshot_data: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for ParallelIndexScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SysScanDescData { + pub heap_rel: Relation, + pub irel: Relation, + pub scan: *mut TableScanDescData, + pub iscan: *mut IndexScanDescData, + pub snapshot: *mut SnapshotData, + pub slot: *mut TupleTableSlot, +} +impl Default for SysScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalCatcacheMsg { + pub id: int8, + pub dbId: Oid, + pub hashValue: uint32, +} +impl Default for SharedInvalCatcacheMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalCatalogMsg { + pub id: int8, + pub dbId: Oid, + pub catId: Oid, +} +impl Default for SharedInvalCatalogMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalRelcacheMsg { + pub id: int8, + pub dbId: Oid, + pub relId: Oid, +} +impl Default for SharedInvalRelcacheMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalSmgrMsg { + pub id: int8, + pub backend_hi: int8, + pub backend_lo: uint16, + pub rlocator: RelFileLocator, +} +impl Default for SharedInvalSmgrMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalRelmapMsg { + pub id: int8, + pub dbId: Oid, +} +impl Default for SharedInvalRelmapMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SharedInvalSnapshotMsg { + pub id: int8, + pub dbId: Oid, + pub relId: Oid, +} +impl Default for SharedInvalSnapshotMsg { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union SharedInvalidationMessage { + pub id: int8, + pub cc: SharedInvalCatcacheMsg, + pub cat: SharedInvalCatalogMsg, + pub rc: SharedInvalRelcacheMsg, + pub sm: SharedInvalSmgrMsg, + pub rm: SharedInvalRelmapMsg, + pub sn: SharedInvalSnapshotMsg, +} +impl Default for SharedInvalidationMessage { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod SyncCommitLevel { + pub type Type = ::core::ffi::c_uint; + pub const SYNCHRONOUS_COMMIT_OFF: Type = 0; + pub const SYNCHRONOUS_COMMIT_LOCAL_FLUSH: Type = 1; + pub const SYNCHRONOUS_COMMIT_REMOTE_WRITE: Type = 2; + pub const SYNCHRONOUS_COMMIT_REMOTE_FLUSH: Type = 3; + pub const SYNCHRONOUS_COMMIT_REMOTE_APPLY: Type = 4; +} +pub mod XactEvent { + pub type Type = ::core::ffi::c_uint; + pub const XACT_EVENT_COMMIT: Type = 0; + pub const XACT_EVENT_PARALLEL_COMMIT: Type = 1; + pub const XACT_EVENT_ABORT: Type = 2; + pub const XACT_EVENT_PARALLEL_ABORT: Type = 3; + pub const XACT_EVENT_PREPARE: Type = 4; + pub const XACT_EVENT_PRE_COMMIT: Type = 5; + pub const XACT_EVENT_PARALLEL_PRE_COMMIT: Type = 6; + pub const XACT_EVENT_PRE_PREPARE: Type = 7; +} +pub type XactCallback = ::core::option::Option< + unsafe extern "C" fn(event: XactEvent::Type, arg: *mut ::core::ffi::c_void), +>; +pub mod SubXactEvent { + pub type Type = ::core::ffi::c_uint; + pub const SUBXACT_EVENT_START_SUB: Type = 0; + pub const SUBXACT_EVENT_COMMIT_SUB: Type = 1; + pub const SUBXACT_EVENT_ABORT_SUB: Type = 2; + pub const SUBXACT_EVENT_PRE_COMMIT_SUB: Type = 3; +} +pub type SubXactCallback = ::core::option::Option< + unsafe extern "C" fn( + event: SubXactEvent::Type, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + arg: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SavedTransactionCharacteristics { + pub save_XactIsoLevel: ::core::ffi::c_int, + pub save_XactReadOnly: bool, + pub save_XactDeferrable: bool, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct xl_xact_assignment { + pub xtop: TransactionId, + pub nsubxacts: ::core::ffi::c_int, + pub xsub: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_xinfo { + pub xinfo: uint32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_dbinfo { + pub dbId: Oid, + pub tsId: Oid, +} +impl Default for xl_xact_dbinfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct xl_xact_subxacts { + pub nsubxacts: ::core::ffi::c_int, + pub subxacts: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_xact_relfilelocators { + pub nrels: ::core::ffi::c_int, + pub xlocators: __IncompleteArrayField, +} +impl Default for xl_xact_relfilelocators { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_stats_item { + pub kind: ::core::ffi::c_int, + pub dboid: Oid, + pub objoid: Oid, +} +impl Default for xl_xact_stats_item { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_xact_stats_items { + pub nitems: ::core::ffi::c_int, + pub items: __IncompleteArrayField, +} +impl Default for xl_xact_stats_items { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +pub struct xl_xact_invals { + pub nmsgs: ::core::ffi::c_int, + pub msgs: __IncompleteArrayField, +} +impl Default for xl_xact_invals { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_twophase { + pub xid: TransactionId, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_origin { + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_commit { + pub xact_time: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_xact_abort { + pub xact_time: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_prepare { + pub magic: uint32, + pub total_len: uint32, + pub xid: TransactionId, + pub database: Oid, + pub prepared_at: TimestampTz, + pub owner: Oid, + pub nsubxacts: int32, + pub ncommitrels: int32, + pub nabortrels: int32, + pub ncommitstats: int32, + pub nabortstats: int32, + pub ninvalmsgs: int32, + pub initfileinval: bool, + pub gidlen: uint16, + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +impl Default for xl_xact_prepare { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_parsed_commit { + pub xact_time: TimestampTz, + pub xinfo: uint32, + pub dbId: Oid, + pub tsId: Oid, + pub nsubxacts: ::core::ffi::c_int, + pub subxacts: *mut TransactionId, + pub nrels: ::core::ffi::c_int, + pub xlocators: *mut RelFileLocator, + pub nstats: ::core::ffi::c_int, + pub stats: *mut xl_xact_stats_item, + pub nmsgs: ::core::ffi::c_int, + pub msgs: *mut SharedInvalidationMessage, + pub twophase_xid: TransactionId, + pub twophase_gid: [::core::ffi::c_char; 200usize], + pub nabortrels: ::core::ffi::c_int, + pub abortlocators: *mut RelFileLocator, + pub nabortstats: ::core::ffi::c_int, + pub abortstats: *mut xl_xact_stats_item, + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +impl Default for xl_xact_parsed_commit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type xl_xact_parsed_prepare = xl_xact_parsed_commit; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_xact_parsed_abort { + pub xact_time: TimestampTz, + pub xinfo: uint32, + pub dbId: Oid, + pub tsId: Oid, + pub nsubxacts: ::core::ffi::c_int, + pub subxacts: *mut TransactionId, + pub nrels: ::core::ffi::c_int, + pub xlocators: *mut RelFileLocator, + pub nstats: ::core::ffi::c_int, + pub stats: *mut xl_xact_stats_item, + pub twophase_xid: TransactionId, + pub twophase_gid: [::core::ffi::c_char; 200usize], + pub origin_lsn: XLogRecPtr, + pub origin_timestamp: TimestampTz, +} +impl Default for xl_xact_parsed_abort { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResourceOwnerData { + _unused: [u8; 0], +} +pub type ResourceOwner = *mut ResourceOwnerData; +pub mod ResourceReleasePhase { + pub type Type = ::core::ffi::c_uint; + pub const RESOURCE_RELEASE_BEFORE_LOCKS: Type = 1; + pub const RESOURCE_RELEASE_LOCKS: Type = 2; + pub const RESOURCE_RELEASE_AFTER_LOCKS: Type = 3; +} +pub type ResourceReleasePriority = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ResourceOwnerDesc { + pub name: *const ::core::ffi::c_char, + pub release_phase: ResourceReleasePhase::Type, + pub release_priority: ResourceReleasePriority, + pub ReleaseResource: ::core::option::Option, + pub DebugPrint: + ::core::option::Option *mut ::core::ffi::c_char>, +} +impl Default for ResourceOwnerDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ResourceReleaseCallback = ::core::option::Option< + unsafe extern "C" fn( + phase: ResourceReleasePhase::Type, + isCommit: bool, + isTopLevel: bool, + arg: *mut ::core::ffi::c_void, + ), +>; +pub type Block = *mut ::core::ffi::c_void; +pub mod BufferAccessStrategyType { + pub type Type = ::core::ffi::c_uint; + pub const BAS_NORMAL: Type = 0; + pub const BAS_BULKREAD: Type = 1; + pub const BAS_BULKWRITE: Type = 2; + pub const BAS_VACUUM: Type = 3; +} +pub mod ReadBufferMode { + pub type Type = ::core::ffi::c_uint; + pub const RBM_NORMAL: Type = 0; + pub const RBM_ZERO_AND_LOCK: Type = 1; + pub const RBM_ZERO_AND_CLEANUP_LOCK: Type = 2; + pub const RBM_ZERO_ON_ERROR: Type = 3; + pub const RBM_NORMAL_NO_LOG: Type = 4; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PrefetchBufferResult { + pub recent_buffer: Buffer, + pub initiated_io: bool, +} +pub mod ExtendBufferedFlags { + pub type Type = ::core::ffi::c_uint; + pub const EB_SKIP_EXTENSION_LOCK: Type = 1; + pub const EB_PERFORMING_RECOVERY: Type = 2; + pub const EB_CREATE_FORK_IF_NEEDED: Type = 4; + pub const EB_LOCK_FIRST: Type = 8; + pub const EB_CLEAR_SIZE_CACHE: Type = 16; + pub const EB_LOCK_TARGET: Type = 32; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufferManagerRelation { + pub rel: Relation, + pub smgr: *mut SMgrRelationData, + pub relpersistence: ::core::ffi::c_char, +} +impl Default for BufferManagerRelation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReadBuffersOperation { + pub rel: Relation, + pub smgr: *mut SMgrRelationData, + pub smgr_persistence: ::core::ffi::c_char, + pub forknum: ForkNumber::Type, + pub strategy: BufferAccessStrategy, + pub buffers: *mut Buffer, + pub blocknum: BlockNumber, + pub flags: ::core::ffi::c_int, + pub nblocks: int16, + pub io_buffers_len: int16, +} +impl Default for ReadBuffersOperation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WritebackContext { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReadStream { + _unused: [u8; 0], +} +pub type ReadStreamBlockNumberCB = ::core::option::Option< + unsafe extern "C" fn( + stream: *mut ReadStream, + callback_private_data: *mut ::core::ffi::c_void, + per_buffer_data: *mut ::core::ffi::c_void, + ) -> BlockNumber, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BulkInsertStateData { + _unused: [u8; 0], +} +pub mod ScanOptions { + pub type Type = ::core::ffi::c_uint; + pub const SO_TYPE_SEQSCAN: Type = 1; + pub const SO_TYPE_BITMAPSCAN: Type = 2; + pub const SO_TYPE_SAMPLESCAN: Type = 4; + pub const SO_TYPE_TIDSCAN: Type = 8; + pub const SO_TYPE_TIDRANGESCAN: Type = 16; + pub const SO_TYPE_ANALYZE: Type = 32; + pub const SO_ALLOW_STRAT: Type = 64; + pub const SO_ALLOW_SYNC: Type = 128; + pub const SO_ALLOW_PAGEMODE: Type = 256; + pub const SO_TEMP_SNAPSHOT: Type = 512; + pub const SO_NEED_TUPLES: Type = 1024; +} +pub mod TM_Result { + pub type Type = ::core::ffi::c_uint; + pub const TM_Ok: Type = 0; + pub const TM_Invisible: Type = 1; + pub const TM_SelfModified: Type = 2; + pub const TM_Updated: Type = 3; + pub const TM_Deleted: Type = 4; + pub const TM_BeingModified: Type = 5; + pub const TM_WouldBlock: Type = 6; +} +pub mod TU_UpdateIndexes { + pub type Type = ::core::ffi::c_uint; + pub const TU_None: Type = 0; + pub const TU_All: Type = 1; + pub const TU_Summarizing: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TM_FailureData { + pub ctid: ItemPointerData, + pub xmax: TransactionId, + pub cmax: CommandId, + pub traversed: bool, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TM_IndexDelete { + pub tid: ItemPointerData, + pub id: int16, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TM_IndexStatus { + pub idxoffnum: OffsetNumber, + pub knowndeletable: bool, + pub promising: bool, + pub freespace: int16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TM_IndexDeleteOp { + pub irel: Relation, + pub iblknum: BlockNumber, + pub bottomup: bool, + pub bottomupfreespace: ::core::ffi::c_int, + pub ndeltids: ::core::ffi::c_int, + pub deltids: *mut TM_IndexDelete, + pub status: *mut TM_IndexStatus, +} +impl Default for TM_IndexDeleteOp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type IndexBuildCallback = ::core::option::Option< + unsafe extern "C" fn( + index: Relation, + tid: ItemPointer, + values: *mut Datum, + isnull: *mut bool, + tupleIsAlive: bool, + state: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TableAmRoutine { + pub type_: NodeTag, + pub slot_callbacks: + ::core::option::Option *const TupleTableSlotOps>, + pub scan_begin: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: *mut ScanKeyData, + pscan: ParallelTableScanDesc, + flags: uint32, + ) -> TableScanDesc, + >, + pub scan_end: ::core::option::Option, + pub scan_rescan: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + key: *mut ScanKeyData, + set_params: bool, + allow_strat: bool, + allow_sync: bool, + allow_pagemode: bool, + ), + >, + pub scan_getnextslot: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub scan_set_tidrange: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, mintid: ItemPointer, maxtid: ItemPointer), + >, + pub scan_getnextslot_tidrange: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub parallelscan_estimate: ::core::option::Option Size>, + pub parallelscan_initialize: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, pscan: ParallelTableScanDesc) -> Size, + >, + pub parallelscan_reinitialize: + ::core::option::Option, + pub index_fetch_begin: + ::core::option::Option *mut IndexFetchTableData>, + pub index_fetch_reset: + ::core::option::Option, + pub index_fetch_end: + ::core::option::Option, + pub index_fetch_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: *mut IndexFetchTableData, + tid: ItemPointer, + snapshot: Snapshot, + slot: *mut TupleTableSlot, + call_again: *mut bool, + all_dead: *mut bool, + ) -> bool, + >, + pub tuple_fetch_row_version: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + tid: ItemPointer, + snapshot: Snapshot, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub tuple_tid_valid: + ::core::option::Option bool>, + pub tuple_get_latest_tid: + ::core::option::Option, + pub tuple_satisfies_snapshot: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, slot: *mut TupleTableSlot, snapshot: Snapshot) -> bool, + >, + pub index_delete_tuples: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, delstate: *mut TM_IndexDeleteOp) -> TransactionId, + >, + pub tuple_insert: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slot: *mut TupleTableSlot, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: *mut BulkInsertStateData, + ), + >, + pub tuple_insert_speculative: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slot: *mut TupleTableSlot, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: *mut BulkInsertStateData, + specToken: uint32, + ), + >, + pub tuple_complete_speculative: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slot: *mut TupleTableSlot, + specToken: uint32, + succeeded: bool, + ), + >, + pub multi_insert: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + slots: *mut *mut TupleTableSlot, + nslots: ::core::ffi::c_int, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: *mut BulkInsertStateData, + ), + >, + pub tuple_delete: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + tid: ItemPointer, + cid: CommandId, + snapshot: Snapshot, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + changingPart: bool, + ) -> TM_Result::Type, + >, + pub tuple_update: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + otid: ItemPointer, + slot: *mut TupleTableSlot, + cid: CommandId, + snapshot: Snapshot, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + lockmode: *mut LockTupleMode::Type, + update_indexes: *mut TU_UpdateIndexes::Type, + ) -> TM_Result::Type, + >, + pub tuple_lock: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + tid: ItemPointer, + snapshot: Snapshot, + slot: *mut TupleTableSlot, + cid: CommandId, + mode: LockTupleMode::Type, + wait_policy: LockWaitPolicy::Type, + flags: uint8, + tmfd: *mut TM_FailureData, + ) -> TM_Result::Type, + >, + pub finish_bulk_insert: + ::core::option::Option, + pub relation_set_new_filelocator: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + newrlocator: *const RelFileLocator, + persistence: ::core::ffi::c_char, + freezeXid: *mut TransactionId, + minmulti: *mut MultiXactId, + ), + >, + pub relation_nontransactional_truncate: + ::core::option::Option, + pub relation_copy_data: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, newrlocator: *const RelFileLocator), + >, + pub relation_copy_for_cluster: ::core::option::Option< + unsafe extern "C" fn( + OldTable: Relation, + NewTable: Relation, + OldIndex: Relation, + use_sort: bool, + OldestXmin: TransactionId, + xid_cutoff: *mut TransactionId, + multi_cutoff: *mut MultiXactId, + num_tuples: *mut f64, + tups_vacuumed: *mut f64, + tups_recently_dead: *mut f64, + ), + >, + pub relation_vacuum: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + params: *mut VacuumParams, + bstrategy: BufferAccessStrategy, + ), + >, + pub scan_analyze_next_block: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, stream: *mut ReadStream) -> bool, + >, + pub scan_analyze_next_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + OldestXmin: TransactionId, + liverows: *mut f64, + deadrows: *mut f64, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub index_build_range_scan: ::core::option::Option< + unsafe extern "C" fn( + table_rel: Relation, + index_rel: Relation, + index_info: *mut IndexInfo, + allow_sync: bool, + anyvisible: bool, + progress: bool, + start_blockno: BlockNumber, + numblocks: BlockNumber, + callback: IndexBuildCallback, + callback_state: *mut ::core::ffi::c_void, + scan: TableScanDesc, + ) -> f64, + >, + pub index_validate_scan: ::core::option::Option< + unsafe extern "C" fn( + table_rel: Relation, + index_rel: Relation, + index_info: *mut IndexInfo, + snapshot: Snapshot, + state: *mut ValidateIndexState, + ), + >, + pub relation_size: ::core::option::Option< + unsafe extern "C" fn(rel: Relation, forkNumber: ForkNumber::Type) -> uint64, + >, + pub relation_needs_toast_table: + ::core::option::Option bool>, + pub relation_toast_am: ::core::option::Option Oid>, + pub relation_fetch_toast_slice: ::core::option::Option< + unsafe extern "C" fn( + toastrel: Relation, + valueid: Oid, + attrsize: int32, + sliceoffset: int32, + slicelength: int32, + result: *mut varlena, + ), + >, + pub relation_estimate_size: ::core::option::Option< + unsafe extern "C" fn( + rel: Relation, + attr_widths: *mut int32, + pages: *mut BlockNumber, + tuples: *mut f64, + allvisfrac: *mut f64, + ), + >, + pub scan_bitmap_next_block: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, tbmres: *mut TBMIterateResult) -> bool, + >, + pub scan_bitmap_next_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + tbmres: *mut TBMIterateResult, + slot: *mut TupleTableSlot, + ) -> bool, + >, + pub scan_sample_next_block: ::core::option::Option< + unsafe extern "C" fn(scan: TableScanDesc, scanstate: *mut SampleScanState) -> bool, + >, + pub scan_sample_next_tuple: ::core::option::Option< + unsafe extern "C" fn( + scan: TableScanDesc, + scanstate: *mut SampleScanState, + slot: *mut TupleTableSlot, + ) -> bool, + >, +} +impl Default for TableAmRoutine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ShmemIndexEnt { + pub key: [::core::ffi::c_char; 48usize], + pub location: *mut ::core::ffi::c_void, + pub size: Size, + pub allocated_size: Size, +} +impl Default for ShmemIndexEnt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_toc { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct shm_toc_estimator { + pub space_for_chunks: Size, + pub number_of_keys: Size, +} +pub type BulkInsertState = *mut BulkInsertStateData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeapScanDescData { + pub rs_base: TableScanDescData, + pub rs_nblocks: BlockNumber, + pub rs_startblock: BlockNumber, + pub rs_numblocks: BlockNumber, + pub rs_inited: bool, + pub rs_coffset: OffsetNumber, + pub rs_cblock: BlockNumber, + pub rs_cbuf: Buffer, + pub rs_strategy: BufferAccessStrategy, + pub rs_ctup: HeapTupleData, + pub rs_read_stream: *mut ReadStream, + pub rs_dir: ScanDirection::Type, + pub rs_prefetch_block: BlockNumber, + pub rs_parallelworkerdata: *mut ParallelBlockTableScanWorkerData, + pub rs_vmbuffer: Buffer, + pub rs_empty_tuples_pending: ::core::ffi::c_int, + pub rs_cindex: ::core::ffi::c_int, + pub rs_ntuples: ::core::ffi::c_int, + pub rs_vistuples: [OffsetNumber; 291usize], +} +impl Default for HeapScanDescData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type HeapScanDesc = *mut HeapScanDescData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexFetchHeapData { + pub xs_base: IndexFetchTableData, + pub xs_cbuf: Buffer, +} +impl Default for IndexFetchHeapData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod HTSV_Result { + pub type Type = ::core::ffi::c_uint; + pub const HEAPTUPLE_DEAD: Type = 0; + pub const HEAPTUPLE_LIVE: Type = 1; + pub const HEAPTUPLE_RECENTLY_DEAD: Type = 2; + pub const HEAPTUPLE_INSERT_IN_PROGRESS: Type = 3; + pub const HEAPTUPLE_DELETE_IN_PROGRESS: Type = 4; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HeapTupleFreeze { + pub xmax: TransactionId, + pub t_infomask2: uint16, + pub t_infomask: uint16, + pub frzflags: uint8, + pub checkflags: uint8, + pub offset: OffsetNumber, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HeapPageFreeze { + pub freeze_required: bool, + pub FreezePageRelfrozenXid: TransactionId, + pub FreezePageRelminMxid: MultiXactId, + pub NoFreezePageRelfrozenXid: TransactionId, + pub NoFreezePageRelminMxid: MultiXactId, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PruneFreezeResult { + pub ndeleted: ::core::ffi::c_int, + pub nnewlpdead: ::core::ffi::c_int, + pub nfrozen: ::core::ffi::c_int, + pub live_tuples: ::core::ffi::c_int, + pub recently_dead_tuples: ::core::ffi::c_int, + pub all_visible: bool, + pub all_frozen: bool, + pub vm_conflict_horizon: TransactionId, + pub hastup: bool, + pub lpdead_items: ::core::ffi::c_int, + pub deadoffsets: [OffsetNumber; 291usize], +} +impl Default for PruneFreezeResult { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PruneReason { + pub type Type = ::core::ffi::c_uint; + pub const PRUNE_ON_ACCESS: Type = 0; + pub const PRUNE_VACUUM_SCAN: Type = 1; + pub const PRUNE_VACUUM_CLEANUP: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GlobalVisState { + _unused: [u8; 0], +} +pub mod SyncRequestType { + pub type Type = ::core::ffi::c_uint; + pub const SYNC_REQUEST: Type = 0; + pub const SYNC_UNLINK_REQUEST: Type = 1; + pub const SYNC_FORGET_REQUEST: Type = 2; + pub const SYNC_FILTER_REQUEST: Type = 3; +} +pub mod SyncRequestHandler { + pub type Type = ::core::ffi::c_uint; + pub const SYNC_HANDLER_MD: Type = 0; + pub const SYNC_HANDLER_CLOG: Type = 1; + pub const SYNC_HANDLER_COMMIT_TS: Type = 2; + pub const SYNC_HANDLER_MULTIXACT_OFFSET: Type = 3; + pub const SYNC_HANDLER_MULTIXACT_MEMBER: Type = 4; + pub const SYNC_HANDLER_NONE: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FileTag { + pub handler: int16, + pub forknum: int16, + pub rlocator: RelFileLocator, + pub segno: uint64, +} +impl Default for FileTag { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod MultiXactStatus { + pub type Type = ::core::ffi::c_uint; + pub const MultiXactStatusForKeyShare: Type = 0; + pub const MultiXactStatusForShare: Type = 1; + pub const MultiXactStatusForNoKeyUpdate: Type = 2; + pub const MultiXactStatusForUpdate: Type = 3; + pub const MultiXactStatusNoKeyUpdate: Type = 4; + pub const MultiXactStatusUpdate: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MultiXactMember { + pub xid: TransactionId, + pub status: MultiXactStatus::Type, +} +impl Default for MultiXactMember { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_multixact_create { + pub mid: MultiXactId, + pub moff: MultiXactOffset, + pub nmembers: int32, + pub members: __IncompleteArrayField, +} +impl Default for xl_multixact_create { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_multixact_truncate { + pub oldestMultiDB: Oid, + pub startTruncOff: MultiXactId, + pub endTruncOff: MultiXactId, + pub startTruncMemb: MultiXactOffset, + pub endTruncMemb: MultiXactOffset, +} +impl Default for xl_multixact_truncate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LWLockWaitState { + pub type Type = ::core::ffi::c_uint; + pub const LW_WS_NOT_WAITING: Type = 0; + pub const LW_WS_WAITING: Type = 1; + pub const LW_WS_PENDING_WAKEUP: Type = 2; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LWLock { + pub tranche: uint16, + pub state: pg_atomic_uint32, + pub waiters: proclist_head, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union LWLockPadded { + pub lock: LWLock, + pub pad: [::core::ffi::c_char; 128usize], +} +impl Default for LWLockPadded { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NamedLWLockTranche { + pub trancheId: ::core::ffi::c_int, + pub trancheName: *mut ::core::ffi::c_char, +} +impl Default for NamedLWLockTranche { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LWLockMode { + pub type Type = ::core::ffi::c_uint; + pub const LW_EXCLUSIVE: Type = 0; + pub const LW_SHARED: Type = 1; + pub const LW_WAIT_UNTIL_FREE: Type = 2; +} +pub mod BuiltinTrancheIds { + pub type Type = ::core::ffi::c_uint; + pub const LWTRANCHE_XACT_BUFFER: Type = 53; + pub const LWTRANCHE_COMMITTS_BUFFER: Type = 54; + pub const LWTRANCHE_SUBTRANS_BUFFER: Type = 55; + pub const LWTRANCHE_MULTIXACTOFFSET_BUFFER: Type = 56; + pub const LWTRANCHE_MULTIXACTMEMBER_BUFFER: Type = 57; + pub const LWTRANCHE_NOTIFY_BUFFER: Type = 58; + pub const LWTRANCHE_SERIAL_BUFFER: Type = 59; + pub const LWTRANCHE_WAL_INSERT: Type = 60; + pub const LWTRANCHE_BUFFER_CONTENT: Type = 61; + pub const LWTRANCHE_REPLICATION_ORIGIN_STATE: Type = 62; + pub const LWTRANCHE_REPLICATION_SLOT_IO: Type = 63; + pub const LWTRANCHE_LOCK_FASTPATH: Type = 64; + pub const LWTRANCHE_BUFFER_MAPPING: Type = 65; + pub const LWTRANCHE_LOCK_MANAGER: Type = 66; + pub const LWTRANCHE_PREDICATE_LOCK_MANAGER: Type = 67; + pub const LWTRANCHE_PARALLEL_HASH_JOIN: Type = 68; + pub const LWTRANCHE_PARALLEL_QUERY_DSA: Type = 69; + pub const LWTRANCHE_PER_SESSION_DSA: Type = 70; + pub const LWTRANCHE_PER_SESSION_RECORD_TYPE: Type = 71; + pub const LWTRANCHE_PER_SESSION_RECORD_TYPMOD: Type = 72; + pub const LWTRANCHE_SHARED_TUPLESTORE: Type = 73; + pub const LWTRANCHE_SHARED_TIDBITMAP: Type = 74; + pub const LWTRANCHE_PARALLEL_APPEND: Type = 75; + pub const LWTRANCHE_PER_XACT_PREDICATE_LIST: Type = 76; + pub const LWTRANCHE_PGSTATS_DSA: Type = 77; + pub const LWTRANCHE_PGSTATS_HASH: Type = 78; + pub const LWTRANCHE_PGSTATS_DATA: Type = 79; + pub const LWTRANCHE_LAUNCHER_DSA: Type = 80; + pub const LWTRANCHE_LAUNCHER_HASH: Type = 81; + pub const LWTRANCHE_DSM_REGISTRY_DSA: Type = 82; + pub const LWTRANCHE_DSM_REGISTRY_HASH: Type = 83; + pub const LWTRANCHE_COMMITTS_SLRU: Type = 84; + pub const LWTRANCHE_MULTIXACTMEMBER_SLRU: Type = 85; + pub const LWTRANCHE_MULTIXACTOFFSET_SLRU: Type = 86; + pub const LWTRANCHE_NOTIFY_SLRU: Type = 87; + pub const LWTRANCHE_SERIAL_SLRU: Type = 88; + pub const LWTRANCHE_SUBTRANS_SLRU: Type = 89; + pub const LWTRANCHE_XACT_SLRU: Type = 90; + pub const LWTRANCHE_PARALLEL_VACUUM_DSA: Type = 91; + pub const LWTRANCHE_FIRST_USER_DEFINED: Type = 92; +} +pub type LWLockId = *mut LWLock; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct VirtualTransactionId { + pub procNumber: ProcNumber, + pub localTransactionId: LocalTransactionId, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockMethodData { + pub numLockModes: ::core::ffi::c_int, + pub conflictTab: *const LOCKMASK, + pub lockModeNames: *const *const ::core::ffi::c_char, + pub trace_flag: *const bool, +} +impl Default for LockMethodData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LockMethod = *const LockMethodData; +pub type LOCKMETHODID = uint16; +pub mod LockTagType { + pub type Type = ::core::ffi::c_uint; + pub const LOCKTAG_RELATION: Type = 0; + pub const LOCKTAG_RELATION_EXTEND: Type = 1; + pub const LOCKTAG_DATABASE_FROZEN_IDS: Type = 2; + pub const LOCKTAG_PAGE: Type = 3; + pub const LOCKTAG_TUPLE: Type = 4; + pub const LOCKTAG_TRANSACTION: Type = 5; + pub const LOCKTAG_VIRTUALTRANSACTION: Type = 6; + pub const LOCKTAG_SPECULATIVE_TOKEN: Type = 7; + pub const LOCKTAG_OBJECT: Type = 8; + pub const LOCKTAG_USERLOCK: Type = 9; + pub const LOCKTAG_ADVISORY: Type = 10; + pub const LOCKTAG_APPLY_TRANSACTION: Type = 11; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LOCKTAG { + pub locktag_field1: uint32, + pub locktag_field2: uint32, + pub locktag_field3: uint32, + pub locktag_field4: uint16, + pub locktag_type: uint8, + pub locktag_lockmethodid: uint8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LOCK { + pub tag: LOCKTAG, + pub grantMask: LOCKMASK, + pub waitMask: LOCKMASK, + pub procLocks: dlist_head, + pub waitProcs: dclist_head, + pub requested: [::core::ffi::c_int; 10usize], + pub nRequested: ::core::ffi::c_int, + pub granted: [::core::ffi::c_int; 10usize], + pub nGranted: ::core::ffi::c_int, +} +impl Default for LOCK { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PROCLOCKTAG { + pub myLock: *mut LOCK, + pub myProc: *mut PGPROC, +} +impl Default for PROCLOCKTAG { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PROCLOCK { + pub tag: PROCLOCKTAG, + pub groupLeader: *mut PGPROC, + pub holdMask: LOCKMASK, + pub releaseMask: LOCKMASK, + pub lockLink: dlist_node, + pub procLink: dlist_node, +} +impl Default for PROCLOCK { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LOCALLOCKTAG { + pub lock: LOCKTAG, + pub mode: LOCKMODE, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LOCALLOCKOWNER { + pub owner: *mut ResourceOwnerData, + pub nLocks: int64, +} +impl Default for LOCALLOCKOWNER { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LOCALLOCK { + pub tag: LOCALLOCKTAG, + pub hashcode: uint32, + pub lock: *mut LOCK, + pub proclock: *mut PROCLOCK, + pub nLocks: int64, + pub numLockOwners: ::core::ffi::c_int, + pub maxLockOwners: ::core::ffi::c_int, + pub lockOwners: *mut LOCALLOCKOWNER, + pub holdsStrongLockCount: bool, + pub lockCleared: bool, +} +impl Default for LOCALLOCK { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LockInstanceData { + pub locktag: LOCKTAG, + pub holdMask: LOCKMASK, + pub waitLockMode: LOCKMODE, + pub vxid: VirtualTransactionId, + pub waitStart: TimestampTz, + pub pid: ::core::ffi::c_int, + pub leaderPid: ::core::ffi::c_int, + pub fastpath: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockData { + pub nelements: ::core::ffi::c_int, + pub locks: *mut LockInstanceData, +} +impl Default for LockData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BlockedProcData { + pub pid: ::core::ffi::c_int, + pub first_lock: ::core::ffi::c_int, + pub num_locks: ::core::ffi::c_int, + pub first_waiter: ::core::ffi::c_int, + pub num_waiters: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BlockedProcsData { + pub procs: *mut BlockedProcData, + pub locks: *mut LockInstanceData, + pub waiter_pids: *mut ::core::ffi::c_int, + pub nprocs: ::core::ffi::c_int, + pub maxprocs: ::core::ffi::c_int, + pub nlocks: ::core::ffi::c_int, + pub maxlocks: ::core::ffi::c_int, + pub npids: ::core::ffi::c_int, + pub maxpids: ::core::ffi::c_int, +} +impl Default for BlockedProcsData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod LockAcquireResult { + pub type Type = ::core::ffi::c_uint; + pub const LOCKACQUIRE_NOT_AVAIL: Type = 0; + pub const LOCKACQUIRE_OK: Type = 1; + pub const LOCKACQUIRE_ALREADY_HELD: Type = 2; + pub const LOCKACQUIRE_ALREADY_CLEAR: Type = 3; +} +pub mod DeadLockState { + pub type Type = ::core::ffi::c_uint; + pub const DS_NOT_YET_CHECKED: Type = 0; + pub const DS_NO_DEADLOCK: Type = 1; + pub const DS_SOFT_DEADLOCK: Type = 2; + pub const DS_HARD_DEADLOCK: Type = 3; + pub const DS_BLOCKED_BY_AUTOVACUUM: Type = 4; +} +pub mod relopt_type { + pub type Type = ::core::ffi::c_uint; + pub const RELOPT_TYPE_BOOL: Type = 0; + pub const RELOPT_TYPE_INT: Type = 1; + pub const RELOPT_TYPE_REAL: Type = 2; + pub const RELOPT_TYPE_ENUM: Type = 3; + pub const RELOPT_TYPE_STRING: Type = 4; +} +pub mod relopt_kind { + pub type Type = ::core::ffi::c_uint; + pub const RELOPT_KIND_LOCAL: Type = 0; + pub const RELOPT_KIND_HEAP: Type = 1; + pub const RELOPT_KIND_TOAST: Type = 2; + pub const RELOPT_KIND_BTREE: Type = 4; + pub const RELOPT_KIND_HASH: Type = 8; + pub const RELOPT_KIND_GIN: Type = 16; + pub const RELOPT_KIND_GIST: Type = 32; + pub const RELOPT_KIND_ATTRIBUTE: Type = 64; + pub const RELOPT_KIND_TABLESPACE: Type = 128; + pub const RELOPT_KIND_SPGIST: Type = 256; + pub const RELOPT_KIND_VIEW: Type = 512; + pub const RELOPT_KIND_BRIN: Type = 1024; + pub const RELOPT_KIND_PARTITIONED: Type = 2048; + pub const RELOPT_KIND_LAST_DEFAULT: Type = 2048; + pub const RELOPT_KIND_MAX: Type = 1073741824; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_gen { + pub name: *const ::core::ffi::c_char, + pub desc: *const ::core::ffi::c_char, + pub kinds: bits32, + pub lockmode: LOCKMODE, + pub namelen: ::core::ffi::c_int, + pub type_: relopt_type::Type, +} +impl Default for relopt_gen { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct relopt_value { + pub gen: *mut relopt_gen, + pub isset: bool, + pub values: relopt_value__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union relopt_value__bindgen_ty_1 { + pub bool_val: bool, + pub int_val: ::core::ffi::c_int, + pub real_val: f64, + pub enum_val: ::core::ffi::c_int, + pub string_val: *mut ::core::ffi::c_char, +} +impl Default for relopt_value__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for relopt_value { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_bool { + pub gen: relopt_gen, + pub default_val: bool, +} +impl Default for relopt_bool { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_int { + pub gen: relopt_gen, + pub default_val: ::core::ffi::c_int, + pub min: ::core::ffi::c_int, + pub max: ::core::ffi::c_int, +} +impl Default for relopt_int { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_real { + pub gen: relopt_gen, + pub default_val: f64, + pub min: f64, + pub max: f64, +} +impl Default for relopt_real { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_enum_elt_def { + pub string_val: *const ::core::ffi::c_char, + pub symbol_val: ::core::ffi::c_int, +} +impl Default for relopt_enum_elt_def { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_enum { + pub gen: relopt_gen, + pub members: *mut relopt_enum_elt_def, + pub default_val: ::core::ffi::c_int, + pub detailmsg: *const ::core::ffi::c_char, +} +impl Default for relopt_enum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type validate_string_relopt = + ::core::option::Option; +pub type fill_string_relopt = ::core::option::Option< + unsafe extern "C" fn(value: *const ::core::ffi::c_char, ptr: *mut ::core::ffi::c_void) -> Size, +>; +pub type relopts_validator = ::core::option::Option< + unsafe extern "C" fn( + parsed_options: *mut ::core::ffi::c_void, + vals: *mut relopt_value, + nvals: ::core::ffi::c_int, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_string { + pub gen: relopt_gen, + pub default_len: ::core::ffi::c_int, + pub default_isnull: bool, + pub validate_cb: validate_string_relopt, + pub fill_cb: fill_string_relopt, + pub default_val: *mut ::core::ffi::c_char, +} +impl Default for relopt_string { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct relopt_parse_elt { + pub optname: *const ::core::ffi::c_char, + pub opttype: relopt_type::Type, + pub offset: ::core::ffi::c_int, +} +impl Default for relopt_parse_elt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct local_relopt { + pub option: *mut relopt_gen, + pub offset: ::core::ffi::c_int, +} +impl Default for local_relopt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct local_relopts { + pub options: *mut List, + pub validators: *mut List, + pub relopt_struct_size: Size, +} +impl Default for local_relopts { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogPageHeaderData { + pub xlp_magic: uint16, + pub xlp_info: uint16, + pub xlp_tli: TimeLineID, + pub xlp_pageaddr: XLogRecPtr, + pub xlp_rem_len: uint32, +} +pub type XLogPageHeader = *mut XLogPageHeaderData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XLogLongPageHeaderData { + pub std: XLogPageHeaderData, + pub xlp_sysid: uint64, + pub xlp_seg_size: uint32, + pub xlp_xlog_blcksz: uint32, +} +pub type XLogLongPageHeader = *mut XLogLongPageHeaderData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_parameter_change { + pub MaxConnections: ::core::ffi::c_int, + pub max_worker_processes: ::core::ffi::c_int, + pub max_wal_senders: ::core::ffi::c_int, + pub max_prepared_xacts: ::core::ffi::c_int, + pub max_locks_per_xact: ::core::ffi::c_int, + pub wal_level: ::core::ffi::c_int, + pub wal_log_hints: bool, + pub track_commit_timestamp: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_restore_point { + pub rp_time: TimestampTz, + pub rp_name: [::core::ffi::c_char; 64usize], +} +impl Default for xl_restore_point { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_overwrite_contrecord { + pub overwritten_lsn: XLogRecPtr, + pub overwrite_time: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct xl_end_of_recovery { + pub end_time: TimestampTz, + pub ThisTimeLineID: TimeLineID, + pub PrevTimeLineID: TimeLineID, + pub wal_level: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XLogRecData { + pub next: *mut XLogRecData, + pub data: *mut ::core::ffi::c_char, + pub len: uint32, +} +impl Default for XLogRecData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RecoveryTargetAction { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_TARGET_ACTION_PAUSE: Type = 0; + pub const RECOVERY_TARGET_ACTION_PROMOTE: Type = 1; + pub const RECOVERY_TARGET_ACTION_SHUTDOWN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XLogRecordBuffer { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RmgrData { + pub rm_name: *const ::core::ffi::c_char, + pub rm_redo: ::core::option::Option, + pub rm_desc: + ::core::option::Option, + pub rm_identify: + ::core::option::Option *const ::core::ffi::c_char>, + pub rm_startup: ::core::option::Option, + pub rm_cleanup: ::core::option::Option, + pub rm_mask: ::core::option::Option< + unsafe extern "C" fn(pagedata: *mut ::core::ffi::c_char, blkno: BlockNumber), + >, + pub rm_decode: ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, buf: *mut XLogRecordBuffer), + >, +} +impl Default for RmgrData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CheckPoint { + pub redo: XLogRecPtr, + pub ThisTimeLineID: TimeLineID, + pub PrevTimeLineID: TimeLineID, + pub fullPageWrites: bool, + pub wal_level: ::core::ffi::c_int, + pub nextXid: FullTransactionId, + pub nextOid: Oid, + pub nextMulti: MultiXactId, + pub nextMultiOffset: MultiXactOffset, + pub oldestXid: TransactionId, + pub oldestXidDB: Oid, + pub oldestMulti: MultiXactId, + pub oldestMultiDB: Oid, + pub time: pg_time_t, + pub oldestCommitTsXid: TransactionId, + pub newestCommitTsXid: TransactionId, + pub oldestActiveXid: TransactionId, +} +impl Default for CheckPoint { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DBState { + pub type Type = ::core::ffi::c_uint; + pub const DB_STARTUP: Type = 0; + pub const DB_SHUTDOWNED: Type = 1; + pub const DB_SHUTDOWNED_IN_RECOVERY: Type = 2; + pub const DB_SHUTDOWNING: Type = 3; + pub const DB_IN_CRASH_RECOVERY: Type = 4; + pub const DB_IN_ARCHIVE_RECOVERY: Type = 5; + pub const DB_IN_PRODUCTION: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ControlFileData { + pub system_identifier: uint64, + pub pg_control_version: uint32, + pub catalog_version_no: uint32, + pub state: DBState::Type, + pub time: pg_time_t, + pub checkPoint: XLogRecPtr, + pub checkPointCopy: CheckPoint, + pub unloggedLSN: XLogRecPtr, + pub minRecoveryPoint: XLogRecPtr, + pub minRecoveryPointTLI: TimeLineID, + pub backupStartPoint: XLogRecPtr, + pub backupEndPoint: XLogRecPtr, + pub backupEndRequired: bool, + pub wal_level: ::core::ffi::c_int, + pub wal_log_hints: bool, + pub MaxConnections: ::core::ffi::c_int, + pub max_worker_processes: ::core::ffi::c_int, + pub max_wal_senders: ::core::ffi::c_int, + pub max_prepared_xacts: ::core::ffi::c_int, + pub max_locks_per_xact: ::core::ffi::c_int, + pub track_commit_timestamp: bool, + pub maxAlign: uint32, + pub floatFormat: f64, + pub blcksz: uint32, + pub relseg_size: uint32, + pub xlog_blcksz: uint32, + pub xlog_seg_size: uint32, + pub nameDataLen: uint32, + pub indexMaxKeys: uint32, + pub toast_max_chunk_size: uint32, + pub loblksize: uint32, + pub float8ByVal: bool, + pub data_checksum_version: uint32, + pub mock_authentication_nonce: [::core::ffi::c_char; 32usize], + pub crc: pg_crc32c, +} +impl Default for ControlFileData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RecoveryTargetType { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_TARGET_UNSET: Type = 0; + pub const RECOVERY_TARGET_XID: Type = 1; + pub const RECOVERY_TARGET_TIME: Type = 2; + pub const RECOVERY_TARGET_NAME: Type = 3; + pub const RECOVERY_TARGET_LSN: Type = 4; + pub const RECOVERY_TARGET_IMMEDIATE: Type = 5; +} +pub mod RecoveryTargetTimeLineGoal { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_TARGET_TIMELINE_CONTROLFILE: Type = 0; + pub const RECOVERY_TARGET_TIMELINE_LATEST: Type = 1; + pub const RECOVERY_TARGET_TIMELINE_NUMERIC: Type = 2; +} +pub mod RecoveryPauseState { + pub type Type = ::core::ffi::c_uint; + pub const RECOVERY_NOT_PAUSED: Type = 0; + pub const RECOVERY_PAUSE_REQUESTED: Type = 1; + pub const RECOVERY_PAUSED: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EndOfWalRecoveryInfo { + pub lastRec: XLogRecPtr, + pub lastRecTLI: TimeLineID, + pub endOfLog: XLogRecPtr, + pub endOfLogTLI: TimeLineID, + pub lastPageBeginPtr: XLogRecPtr, + pub lastPage: *mut ::core::ffi::c_char, + pub abortedRecPtr: XLogRecPtr, + pub missingContrecPtr: XLogRecPtr, + pub recoveryStopReason: *mut ::core::ffi::c_char, + pub standby_signal_file_found: bool, + pub recovery_signal_file_found: bool, +} +impl Default for EndOfWalRecoveryInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod HotStandbyState { + pub type Type = ::core::ffi::c_uint; + pub const STANDBY_DISABLED: Type = 0; + pub const STANDBY_INITIALIZED: Type = 1; + pub const STANDBY_SNAPSHOT_PENDING: Type = 2; + pub const STANDBY_SNAPSHOT_READY: Type = 3; +} +pub mod XLogRedoAction { + pub type Type = ::core::ffi::c_uint; + pub const BLK_NEEDS_REDO: Type = 0; + pub const BLK_DONE: Type = 1; + pub const BLK_RESTORED: Type = 2; + pub const BLK_NOTFOUND: Type = 3; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ReadLocalXLogPageNoWaitPrivate { + pub end_of_wal: bool, +} +pub mod DependencyType { + pub type Type = ::core::ffi::c_uint; + pub const DEPENDENCY_NORMAL: Type = 110; + pub const DEPENDENCY_AUTO: Type = 97; + pub const DEPENDENCY_INTERNAL: Type = 105; + pub const DEPENDENCY_PARTITION_PRI: Type = 80; + pub const DEPENDENCY_PARTITION_SEC: Type = 83; + pub const DEPENDENCY_EXTENSION: Type = 101; + pub const DEPENDENCY_AUTO_EXTENSION: Type = 120; +} +pub mod SharedDependencyType { + pub type Type = ::core::ffi::c_uint; + pub const SHARED_DEPENDENCY_OWNER: Type = 111; + pub const SHARED_DEPENDENCY_ACL: Type = 97; + pub const SHARED_DEPENDENCY_INITACL: Type = 105; + pub const SHARED_DEPENDENCY_POLICY: Type = 114; + pub const SHARED_DEPENDENCY_TABLESPACE: Type = 116; + pub const SHARED_DEPENDENCY_INVALID: Type = 0; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectAddresses { + _unused: [u8; 0], +} +pub mod IndexStateFlagsAction { + pub type Type = ::core::ffi::c_uint; + pub const INDEX_CREATE_SET_READY: Type = 0; + pub const INDEX_CREATE_SET_VALID: Type = 1; + pub const INDEX_DROP_CLEAR_VALID: Type = 2; + pub const INDEX_DROP_SET_DEAD: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReindexParams { + pub options: bits32, + pub tablespaceOid: Oid, +} +impl Default for ReindexParams { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ValidateIndexState { + pub tuplesort: *mut Tuplesortstate, + pub htups: f64, + pub itups: f64, + pub tups_inserted: f64, +} +impl Default for ValidateIndexState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatalogIndexState = *mut ResultRelInfo; +#[repr(C)] +#[derive(Debug)] +pub struct _FuncCandidateList { + pub next: *mut _FuncCandidateList, + pub pathpos: ::core::ffi::c_int, + pub oid: Oid, + pub nominalnargs: ::core::ffi::c_int, + pub nargs: ::core::ffi::c_int, + pub nvargs: ::core::ffi::c_int, + pub ndargs: ::core::ffi::c_int, + pub argnumbers: *mut ::core::ffi::c_int, + pub args: __IncompleteArrayField, +} +impl Default for _FuncCandidateList { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type FuncCandidateList = *mut _FuncCandidateList; +pub mod TempNamespaceStatus { + pub type Type = ::core::ffi::c_uint; + pub const TEMP_NAMESPACE_NOT_TEMP: Type = 0; + pub const TEMP_NAMESPACE_IDLE: Type = 1; + pub const TEMP_NAMESPACE_IN_USE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SearchPathMatcher { + pub schemas: *mut List, + pub addCatalog: bool, + pub addTemp: bool, + pub generation: uint64, +} +impl Default for SearchPathMatcher { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RVROption { + pub type Type = ::core::ffi::c_uint; + pub const RVR_MISSING_OK: Type = 1; + pub const RVR_NOWAIT: Type = 2; + pub const RVR_SKIP_LOCKED: Type = 4; +} +pub type RangeVarGetRelidCallback = ::core::option::Option< + unsafe extern "C" fn( + relation: *const RangeVar, + relId: Oid, + oldRelId: Oid, + callback_arg: *mut ::core::ffi::c_void, + ), +>; +pub mod ObjectAccessType { + pub type Type = ::core::ffi::c_uint; + pub const OAT_POST_CREATE: Type = 0; + pub const OAT_DROP: Type = 1; + pub const OAT_POST_ALTER: Type = 2; + pub const OAT_NAMESPACE_SEARCH: Type = 3; + pub const OAT_FUNCTION_EXECUTE: Type = 4; + pub const OAT_TRUNCATE: Type = 5; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ObjectAccessPostCreate { + pub is_internal: bool, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ObjectAccessDrop { + pub dropflags: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ObjectAccessPostAlter { + pub auxiliary_id: Oid, + pub is_internal: bool, +} +impl Default for ObjectAccessPostAlter { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ObjectAccessNamespaceSearch { + pub ereport_on_violation: bool, + pub result: bool, +} +pub type object_access_hook_type = ::core::option::Option< + unsafe extern "C" fn( + access: ObjectAccessType::Type, + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + arg: *mut ::core::ffi::c_void, + ), +>; +pub type object_access_hook_type_str = ::core::option::Option< + unsafe extern "C" fn( + access: ObjectAccessType::Type, + classId: Oid, + objectStr: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + arg: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_am { + pub oid: Oid, + pub amname: NameData, + pub amhandler: regproc, + pub amtype: ::core::ffi::c_char, +} +impl Default for FormData_pg_am { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_am = *mut FormData_pg_am; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_amop { + pub oid: Oid, + pub amopfamily: Oid, + pub amoplefttype: Oid, + pub amoprighttype: Oid, + pub amopstrategy: int16, + pub amoppurpose: ::core::ffi::c_char, + pub amopopr: Oid, + pub amopmethod: Oid, + pub amopsortfamily: Oid, +} +impl Default for FormData_pg_amop { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_amop = *mut FormData_pg_amop; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_amproc { + pub oid: Oid, + pub amprocfamily: Oid, + pub amproclefttype: Oid, + pub amprocrighttype: Oid, + pub amprocnum: int16, + pub amproc: regproc, +} +impl Default for FormData_pg_amproc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_amproc = *mut FormData_pg_amproc; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_authid { + pub oid: Oid, + pub rolname: NameData, + pub rolsuper: bool, + pub rolinherit: bool, + pub rolcreaterole: bool, + pub rolcreatedb: bool, + pub rolcanlogin: bool, + pub rolreplication: bool, + pub rolbypassrls: bool, + pub rolconnlimit: int32, +} +impl Default for FormData_pg_authid { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_authid = *mut FormData_pg_authid; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_collation { + pub oid: Oid, + pub collname: NameData, + pub collnamespace: Oid, + pub collowner: Oid, + pub collprovider: ::core::ffi::c_char, + pub collisdeterministic: bool, + pub collencoding: int32, +} +impl Default for FormData_pg_collation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_collation = *mut FormData_pg_collation; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_database { + pub oid: Oid, + pub datname: NameData, + pub datdba: Oid, + pub encoding: int32, + pub datlocprovider: ::core::ffi::c_char, + pub datistemplate: bool, + pub datallowconn: bool, + pub dathasloginevt: bool, + pub datconnlimit: int32, + pub datfrozenxid: TransactionId, + pub datminmxid: TransactionId, + pub dattablespace: Oid, +} +impl Default for FormData_pg_database { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_database = *mut FormData_pg_database; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_enum { + pub oid: Oid, + pub enumtypid: Oid, + pub enumsortorder: float4, + pub enumlabel: NameData, +} +impl Default for FormData_pg_enum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_enum = *mut FormData_pg_enum; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_extension { + pub oid: Oid, + pub extname: NameData, + pub extowner: Oid, + pub extnamespace: Oid, + pub extrelocatable: bool, +} +impl Default for FormData_pg_extension { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_extension = *mut FormData_pg_extension; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_foreign_data_wrapper { + pub oid: Oid, + pub fdwname: NameData, + pub fdwowner: Oid, + pub fdwhandler: Oid, + pub fdwvalidator: Oid, +} +impl Default for FormData_pg_foreign_data_wrapper { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_foreign_data_wrapper = *mut FormData_pg_foreign_data_wrapper; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_foreign_server { + pub oid: Oid, + pub srvname: NameData, + pub srvowner: Oid, + pub srvfdw: Oid, +} +impl Default for FormData_pg_foreign_server { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_foreign_server = *mut FormData_pg_foreign_server; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_foreign_table { + pub ftrelid: Oid, + pub ftserver: Oid, +} +impl Default for FormData_pg_foreign_table { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_foreign_table = *mut FormData_pg_foreign_table; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_operator { + pub oid: Oid, + pub oprname: NameData, + pub oprnamespace: Oid, + pub oprowner: Oid, + pub oprkind: ::core::ffi::c_char, + pub oprcanmerge: bool, + pub oprcanhash: bool, + pub oprleft: Oid, + pub oprright: Oid, + pub oprresult: Oid, + pub oprcom: Oid, + pub oprnegate: Oid, + pub oprcode: regproc, + pub oprrest: regproc, + pub oprjoin: regproc, +} +impl Default for FormData_pg_operator { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_operator = *mut FormData_pg_operator; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_opclass { + pub oid: Oid, + pub opcmethod: Oid, + pub opcname: NameData, + pub opcnamespace: Oid, + pub opcowner: Oid, + pub opcfamily: Oid, + pub opcintype: Oid, + pub opcdefault: bool, + pub opckeytype: Oid, +} +impl Default for FormData_pg_opclass { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_opclass = *mut FormData_pg_opclass; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_opfamily { + pub oid: Oid, + pub opfmethod: Oid, + pub opfname: NameData, + pub opfnamespace: Oid, + pub opfowner: Oid, +} +impl Default for FormData_pg_opfamily { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_opfamily = *mut FormData_pg_opfamily; +#[repr(C)] +#[derive(Debug)] +pub struct FormData_pg_proc { + pub oid: Oid, + pub proname: NameData, + pub pronamespace: Oid, + pub proowner: Oid, + pub prolang: Oid, + pub procost: float4, + pub prorows: float4, + pub provariadic: Oid, + pub prosupport: regproc, + pub prokind: ::core::ffi::c_char, + pub prosecdef: bool, + pub proleakproof: bool, + pub proisstrict: bool, + pub proretset: bool, + pub provolatile: ::core::ffi::c_char, + pub proparallel: ::core::ffi::c_char, + pub pronargs: int16, + pub pronargdefaults: int16, + pub prorettype: Oid, + pub proargtypes: oidvector, +} +impl Default for FormData_pg_proc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_proc = *mut FormData_pg_proc; +pub mod ParseExprKind { + pub type Type = ::core::ffi::c_uint; + pub const EXPR_KIND_NONE: Type = 0; + pub const EXPR_KIND_OTHER: Type = 1; + pub const EXPR_KIND_JOIN_ON: Type = 2; + pub const EXPR_KIND_JOIN_USING: Type = 3; + pub const EXPR_KIND_FROM_SUBSELECT: Type = 4; + pub const EXPR_KIND_FROM_FUNCTION: Type = 5; + pub const EXPR_KIND_WHERE: Type = 6; + pub const EXPR_KIND_HAVING: Type = 7; + pub const EXPR_KIND_FILTER: Type = 8; + pub const EXPR_KIND_WINDOW_PARTITION: Type = 9; + pub const EXPR_KIND_WINDOW_ORDER: Type = 10; + pub const EXPR_KIND_WINDOW_FRAME_RANGE: Type = 11; + pub const EXPR_KIND_WINDOW_FRAME_ROWS: Type = 12; + pub const EXPR_KIND_WINDOW_FRAME_GROUPS: Type = 13; + pub const EXPR_KIND_SELECT_TARGET: Type = 14; + pub const EXPR_KIND_INSERT_TARGET: Type = 15; + pub const EXPR_KIND_UPDATE_SOURCE: Type = 16; + pub const EXPR_KIND_UPDATE_TARGET: Type = 17; + pub const EXPR_KIND_MERGE_WHEN: Type = 18; + pub const EXPR_KIND_GROUP_BY: Type = 19; + pub const EXPR_KIND_ORDER_BY: Type = 20; + pub const EXPR_KIND_DISTINCT_ON: Type = 21; + pub const EXPR_KIND_LIMIT: Type = 22; + pub const EXPR_KIND_OFFSET: Type = 23; + pub const EXPR_KIND_RETURNING: Type = 24; + pub const EXPR_KIND_MERGE_RETURNING: Type = 25; + pub const EXPR_KIND_VALUES: Type = 26; + pub const EXPR_KIND_VALUES_SINGLE: Type = 27; + pub const EXPR_KIND_CHECK_CONSTRAINT: Type = 28; + pub const EXPR_KIND_DOMAIN_CHECK: Type = 29; + pub const EXPR_KIND_COLUMN_DEFAULT: Type = 30; + pub const EXPR_KIND_FUNCTION_DEFAULT: Type = 31; + pub const EXPR_KIND_INDEX_EXPRESSION: Type = 32; + pub const EXPR_KIND_INDEX_PREDICATE: Type = 33; + pub const EXPR_KIND_STATS_EXPRESSION: Type = 34; + pub const EXPR_KIND_ALTER_COL_TRANSFORM: Type = 35; + pub const EXPR_KIND_EXECUTE_PARAMETER: Type = 36; + pub const EXPR_KIND_TRIGGER_WHEN: Type = 37; + pub const EXPR_KIND_POLICY: Type = 38; + pub const EXPR_KIND_PARTITION_BOUND: Type = 39; + pub const EXPR_KIND_PARTITION_EXPRESSION: Type = 40; + pub const EXPR_KIND_CALL_ARGUMENT: Type = 41; + pub const EXPR_KIND_COPY_WHERE: Type = 42; + pub const EXPR_KIND_GENERATED_COLUMN: Type = 43; + pub const EXPR_KIND_CYCLE_MARK: Type = 44; +} +pub type PreParseColumnRefHook = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, cref: *mut ColumnRef) -> *mut Node, +>; +pub type PostParseColumnRefHook = ::core::option::Option< + unsafe extern "C" fn( + pstate: *mut ParseState, + cref: *mut ColumnRef, + var: *mut Node, + ) -> *mut Node, +>; +pub type ParseParamRefHook = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, pref: *mut ParamRef) -> *mut Node, +>; +pub type CoerceParamHook = ::core::option::Option< + unsafe extern "C" fn( + pstate: *mut ParseState, + param: *mut Param, + targetTypeId: Oid, + targetTypeMod: int32, + location: ::core::ffi::c_int, + ) -> *mut Node, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseState { + pub parentParseState: *mut ParseState, + pub p_sourcetext: *const ::core::ffi::c_char, + pub p_rtable: *mut List, + pub p_rteperminfos: *mut List, + pub p_joinexprs: *mut List, + pub p_nullingrels: *mut List, + pub p_joinlist: *mut List, + pub p_namespace: *mut List, + pub p_lateral_active: bool, + pub p_ctenamespace: *mut List, + pub p_future_ctes: *mut List, + pub p_parent_cte: *mut CommonTableExpr, + pub p_target_relation: Relation, + pub p_target_nsitem: *mut ParseNamespaceItem, + pub p_is_insert: bool, + pub p_windowdefs: *mut List, + pub p_expr_kind: ParseExprKind::Type, + pub p_next_resno: ::core::ffi::c_int, + pub p_multiassign_exprs: *mut List, + pub p_locking_clause: *mut List, + pub p_locked_from_parent: bool, + pub p_resolve_unknowns: bool, + pub p_queryEnv: *mut QueryEnvironment, + pub p_hasAggs: bool, + pub p_hasWindowFuncs: bool, + pub p_hasTargetSRFs: bool, + pub p_hasSubLinks: bool, + pub p_hasModifyingCTE: bool, + pub p_last_srf: *mut Node, + pub p_pre_columnref_hook: PreParseColumnRefHook, + pub p_post_columnref_hook: PostParseColumnRefHook, + pub p_paramref_hook: ParseParamRefHook, + pub p_coerce_param_hook: CoerceParamHook, + pub p_ref_hook_state: *mut ::core::ffi::c_void, +} +impl Default for ParseState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseNamespaceItem { + pub p_names: *mut Alias, + pub p_rte: *mut RangeTblEntry, + pub p_rtindex: ::core::ffi::c_int, + pub p_perminfo: *mut RTEPermissionInfo, + pub p_nscolumns: *mut ParseNamespaceColumn, + pub p_rel_visible: bool, + pub p_cols_visible: bool, + pub p_lateral_only: bool, + pub p_lateral_ok: bool, +} +impl Default for ParseNamespaceItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseNamespaceColumn { + pub p_varno: Index, + pub p_varattno: AttrNumber, + pub p_vartype: Oid, + pub p_vartypmod: int32, + pub p_varcollid: Oid, + pub p_varnosyn: Index, + pub p_varattnosyn: AttrNumber, + pub p_dontexpand: bool, +} +impl Default for ParseNamespaceColumn { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParseCallbackState { + pub pstate: *mut ParseState, + pub location: ::core::ffi::c_int, + pub errcallback: ErrorContextCallback, +} +impl Default for ParseCallbackState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AclItem { + pub ai_grantee: Oid, + pub ai_grantor: Oid, + pub ai_privs: AclMode, +} +impl Default for AclItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Acl = ArrayType; +pub mod AclMaskHow { + pub type Type = ::core::ffi::c_uint; + pub const ACLMASK_ALL: Type = 0; + pub const ACLMASK_ANY: Type = 1; +} +pub mod AclResult { + pub type Type = ::core::ffi::c_uint; + pub const ACLCHECK_OK: Type = 0; + pub const ACLCHECK_NO_PRIV: Type = 1; + pub const ACLCHECK_NOT_OWNER: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_namespace { + pub oid: Oid, + pub nspname: NameData, + pub nspowner: Oid, +} +impl Default for FormData_pg_namespace { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_namespace = *mut FormData_pg_namespace; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_seclabel { + pub objoid: Oid, + pub classoid: Oid, + pub objsubid: int32, +} +impl Default for FormData_pg_seclabel { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_tablespace { + pub oid: Oid, + pub spcname: NameData, + pub spcowner: Oid, +} +impl Default for FormData_pg_tablespace { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_tablespace = *mut FormData_pg_tablespace; +#[repr(C)] +#[derive(Debug)] +pub struct FormData_pg_trigger { + pub oid: Oid, + pub tgrelid: Oid, + pub tgparentid: Oid, + pub tgname: NameData, + pub tgfoid: Oid, + pub tgtype: int16, + pub tgenabled: ::core::ffi::c_char, + pub tgisinternal: bool, + pub tgconstrrelid: Oid, + pub tgconstrindid: Oid, + pub tgconstraint: Oid, + pub tgdeferrable: bool, + pub tginitdeferred: bool, + pub tgnargs: int16, + pub tgattr: int2vector, +} +impl Default for FormData_pg_trigger { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_trigger = *mut FormData_pg_trigger; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_type { + pub oid: Oid, + pub typname: NameData, + pub typnamespace: Oid, + pub typowner: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typtype: ::core::ffi::c_char, + pub typcategory: ::core::ffi::c_char, + pub typispreferred: bool, + pub typisdefined: bool, + pub typdelim: ::core::ffi::c_char, + pub typrelid: Oid, + pub typsubscript: regproc, + pub typelem: Oid, + pub typarray: Oid, + pub typinput: regproc, + pub typoutput: regproc, + pub typreceive: regproc, + pub typsend: regproc, + pub typmodin: regproc, + pub typmodout: regproc, + pub typanalyze: regproc, + pub typalign: ::core::ffi::c_char, + pub typstorage: ::core::ffi::c_char, + pub typnotnull: bool, + pub typbasetype: Oid, + pub typtypmod: int32, + pub typndims: int32, + pub typcollation: Oid, +} +impl Default for FormData_pg_type { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_type = *mut FormData_pg_type; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_user_mapping { + pub oid: Oid, + pub umuser: Oid, + pub umserver: Oid, +} +impl Default for FormData_pg_user_mapping { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_user_mapping = *mut FormData_pg_user_mapping; +pub mod CopyHeaderChoice { + pub type Type = ::core::ffi::c_uint; + pub const COPY_HEADER_FALSE: Type = 0; + pub const COPY_HEADER_TRUE: Type = 1; + pub const COPY_HEADER_MATCH: Type = 2; +} +pub mod CopyOnErrorChoice { + pub type Type = ::core::ffi::c_uint; + pub const COPY_ON_ERROR_STOP: Type = 0; + pub const COPY_ON_ERROR_IGNORE: Type = 1; +} +pub mod CopyLogVerbosityChoice { + pub type Type = ::core::ffi::c_uint; + pub const COPY_LOG_VERBOSITY_DEFAULT: Type = 0; + pub const COPY_LOG_VERBOSITY_VERBOSE: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyFormatOptions { + pub file_encoding: ::core::ffi::c_int, + pub binary: bool, + pub freeze: bool, + pub csv_mode: bool, + pub header_line: CopyHeaderChoice::Type, + pub null_print: *mut ::core::ffi::c_char, + pub null_print_len: ::core::ffi::c_int, + pub null_print_client: *mut ::core::ffi::c_char, + pub default_print: *mut ::core::ffi::c_char, + pub default_print_len: ::core::ffi::c_int, + pub delim: *mut ::core::ffi::c_char, + pub quote: *mut ::core::ffi::c_char, + pub escape: *mut ::core::ffi::c_char, + pub force_quote: *mut List, + pub force_quote_all: bool, + pub force_quote_flags: *mut bool, + pub force_notnull: *mut List, + pub force_notnull_all: bool, + pub force_notnull_flags: *mut bool, + pub force_null: *mut List, + pub force_null_all: bool, + pub force_null_flags: *mut bool, + pub convert_selectively: bool, + pub on_error: CopyOnErrorChoice::Type, + pub log_verbosity: CopyLogVerbosityChoice::Type, + pub convert_select: *mut List, +} +impl Default for CopyFormatOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyFromStateData { + _unused: [u8; 0], +} +pub type CopyFromState = *mut CopyFromStateData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CopyToStateData { + _unused: [u8; 0], +} +pub type CopyToState = *mut CopyToStateData; +pub type copy_data_source_cb = ::core::option::Option< + unsafe extern "C" fn( + outbuf: *mut ::core::ffi::c_void, + minread: ::core::ffi::c_int, + maxread: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type copy_data_dest_cb = ::core::option::Option< + unsafe extern "C" fn(data: *mut ::core::ffi::c_void, len: ::core::ffi::c_int), +>; +pub type EOM_get_flat_size_method = + ::core::option::Option Size>; +pub type EOM_flatten_into_method = ::core::option::Option< + unsafe extern "C" fn( + eohptr: *mut ExpandedObjectHeader, + result: *mut ::core::ffi::c_void, + allocated_size: Size, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExpandedObjectMethods { + pub get_flat_size: EOM_get_flat_size_method, + pub flatten_into: EOM_flatten_into_method, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedObjectHeader { + pub vl_len_: int32, + pub eoh_methods: *const ExpandedObjectMethods, + pub eoh_context: MemoryContext, + pub eoh_rw_ptr: [::core::ffi::c_char; 10usize], + pub eoh_ro_ptr: [::core::ffi::c_char; 10usize], +} +impl Default for ExpandedObjectHeader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayType { + pub vl_len_: int32, + pub ndim: ::core::ffi::c_int, + pub dataoffset: int32, + pub elemtype: Oid, +} +impl Default for ArrayType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedArrayHeader { + pub hdr: ExpandedObjectHeader, + pub ea_magic: ::core::ffi::c_int, + pub ndims: ::core::ffi::c_int, + pub dims: *mut ::core::ffi::c_int, + pub lbound: *mut ::core::ffi::c_int, + pub element_type: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub dvalues: *mut Datum, + pub dnulls: *mut bool, + pub dvalueslen: ::core::ffi::c_int, + pub nelems: ::core::ffi::c_int, + pub flat_size: Size, + pub fvalue: *mut ArrayType, + pub fstartptr: *mut ::core::ffi::c_char, + pub fendptr: *mut ::core::ffi::c_char, +} +impl Default for ExpandedArrayHeader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union AnyArrayType { + pub flt: ArrayType, + pub xpn: ExpandedArrayHeader, +} +impl Default for AnyArrayType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayBuildState { + pub mcontext: MemoryContext, + pub dvalues: *mut Datum, + pub dnulls: *mut bool, + pub alen: ::core::ffi::c_int, + pub nelems: ::core::ffi::c_int, + pub element_type: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub private_cxt: bool, +} +impl Default for ArrayBuildState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayBuildStateArr { + pub mcontext: MemoryContext, + pub data: *mut ::core::ffi::c_char, + pub nullbitmap: *mut bits8, + pub abytes: ::core::ffi::c_int, + pub nbytes: ::core::ffi::c_int, + pub aitems: ::core::ffi::c_int, + pub nitems: ::core::ffi::c_int, + pub ndims: ::core::ffi::c_int, + pub dims: [::core::ffi::c_int; 6usize], + pub lbs: [::core::ffi::c_int; 6usize], + pub array_type: Oid, + pub element_type: Oid, + pub private_cxt: bool, +} +impl Default for ArrayBuildStateArr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayBuildStateAny { + pub scalarstate: *mut ArrayBuildState, + pub arraystate: *mut ArrayBuildStateArr, +} +impl Default for ArrayBuildStateAny { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayMetaState { + pub element_type: Oid, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub typdelim: ::core::ffi::c_char, + pub typioparam: Oid, + pub typiofunc: Oid, + pub proc_: FmgrInfo, +} +impl Default for ArrayMetaState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayMapState { + pub inp_extra: ArrayMetaState, + pub ret_extra: ArrayMetaState, +} +impl Default for ArrayMapState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ArrayIteratorData { + _unused: [u8; 0], +} +pub type ArrayIterator = *mut ArrayIteratorData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_event_trigger { + pub oid: Oid, + pub evtname: NameData, + pub evtevent: NameData, + pub evtowner: Oid, + pub evtfoid: Oid, + pub evtenabled: ::core::ffi::c_char, +} +impl Default for FormData_pg_event_trigger { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_event_trigger = *mut FormData_pg_event_trigger; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct InternalGrant { + pub is_grant: bool, + pub objtype: ObjectType::Type, + pub objects: *mut List, + pub all_privs: bool, + pub privileges: AclMode, + pub col_privs: *mut List, + pub grantees: *mut List, + pub grant_option: bool, + pub behavior: DropBehavior::Type, +} +impl Default for InternalGrant { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod CollectedCommandType { + pub type Type = ::core::ffi::c_uint; + pub const SCT_Simple: Type = 0; + pub const SCT_AlterTable: Type = 1; + pub const SCT_Grant: Type = 2; + pub const SCT_AlterOpFamily: Type = 3; + pub const SCT_AlterDefaultPrivileges: Type = 4; + pub const SCT_CreateOpClass: Type = 5; + pub const SCT_AlterTSConfig: Type = 6; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedATSubcmd { + pub address: ObjectAddress, + pub parsetree: *mut Node, +} +impl Default for CollectedATSubcmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct CollectedCommand { + pub type_: CollectedCommandType::Type, + pub in_extension: bool, + pub parsetree: *mut Node, + pub d: CollectedCommand__bindgen_ty_1, + pub parent: *mut CollectedCommand, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union CollectedCommand__bindgen_ty_1 { + pub simple: CollectedCommand__bindgen_ty_1__bindgen_ty_1, + pub alterTable: CollectedCommand__bindgen_ty_1__bindgen_ty_2, + pub grant: CollectedCommand__bindgen_ty_1__bindgen_ty_3, + pub opfam: CollectedCommand__bindgen_ty_1__bindgen_ty_4, + pub createopc: CollectedCommand__bindgen_ty_1__bindgen_ty_5, + pub atscfg: CollectedCommand__bindgen_ty_1__bindgen_ty_6, + pub defprivs: CollectedCommand__bindgen_ty_1__bindgen_ty_7, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_1 { + pub address: ObjectAddress, + pub secondaryObject: ObjectAddress, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_2 { + pub objectId: Oid, + pub classId: Oid, + pub subcmds: *mut List, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_3 { + pub istmt: *mut InternalGrant, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_4 { + pub address: ObjectAddress, + pub operators: *mut List, + pub procedures: *mut List, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_4 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_5 { + pub address: ObjectAddress, + pub operators: *mut List, + pub procedures: *mut List, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_6 { + pub address: ObjectAddress, + pub dictIds: *mut Oid, + pub ndicts: ::core::ffi::c_int, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_6 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CollectedCommand__bindgen_ty_1__bindgen_ty_7 { + pub objtype: ObjectType::Type, +} +impl Default for CollectedCommand__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for CollectedCommand__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for CollectedCommand { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EventTriggerData { + pub type_: NodeTag, + pub event: *const ::core::ffi::c_char, + pub parsetree: *mut Node, + pub tag: CommandTag::Type, +} +impl Default for EventTriggerData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ExplainSerializeOption { + pub type Type = ::core::ffi::c_uint; + pub const EXPLAIN_SERIALIZE_NONE: Type = 0; + pub const EXPLAIN_SERIALIZE_TEXT: Type = 1; + pub const EXPLAIN_SERIALIZE_BINARY: Type = 2; +} +pub mod ExplainFormat { + pub type Type = ::core::ffi::c_uint; + pub const EXPLAIN_FORMAT_TEXT: Type = 0; + pub const EXPLAIN_FORMAT_XML: Type = 1; + pub const EXPLAIN_FORMAT_JSON: Type = 2; + pub const EXPLAIN_FORMAT_YAML: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExplainWorkersState { + pub num_workers: ::core::ffi::c_int, + pub worker_inited: *mut bool, + pub worker_str: *mut StringInfoData, + pub worker_state_save: *mut ::core::ffi::c_int, + pub prev_str: StringInfo, +} +impl Default for ExplainWorkersState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExplainState { + pub str_: StringInfo, + pub verbose: bool, + pub analyze: bool, + pub costs: bool, + pub buffers: bool, + pub wal: bool, + pub timing: bool, + pub summary: bool, + pub memory: bool, + pub settings: bool, + pub generic: bool, + pub serialize: ExplainSerializeOption::Type, + pub format: ExplainFormat::Type, + pub indent: ::core::ffi::c_int, + pub grouping_stack: *mut List, + pub pstmt: *mut PlannedStmt, + pub rtable: *mut List, + pub rtable_names: *mut List, + pub deparse_cxt: *mut List, + pub printed_subplans: *mut Bitmapset, + pub hide_workers: bool, + pub workers_state: *mut ExplainWorkersState, +} +impl Default for ExplainState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExplainOneQuery_hook_type = ::core::option::Option< + unsafe extern "C" fn( + query: *mut Query, + cursorOptions: ::core::ffi::c_int, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ), +>; +pub type explain_get_index_name_hook_type = + ::core::option::Option *const ::core::ffi::c_char>; +pub mod PlanCacheMode { + pub type Type = ::core::ffi::c_uint; + pub const PLAN_CACHE_MODE_AUTO: Type = 0; + pub const PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: Type = 1; + pub const PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::core::ffi::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub param_types: *mut Oid, + pub num_params: ::core::ffi::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub cursor_options: ::core::ffi::c_int, + pub fixed_result: bool, + pub resultDesc: TupleDesc, + pub context: MemoryContext, + pub query_list: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub search_path: *mut SearchPathMatcher, + pub query_context: MemoryContext, + pub rewriteRoleId: Oid, + pub rewriteRowSecurity: bool, + pub dependsOnRLS: bool, + pub gplan: *mut CachedPlan, + pub is_oneshot: bool, + pub is_complete: bool, + pub is_saved: bool, + pub is_valid: bool, + pub generation: ::core::ffi::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: int64, + pub num_generic_plans: int64, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::core::ffi::c_int, + pub stmt_list: *mut List, + pub is_oneshot: bool, + pub is_saved: bool, + pub is_valid: bool, + pub planRoleId: Oid, + pub dependsOnRole: bool, + pub saved_xmin: TransactionId, + pub generation: ::core::ffi::c_int, + pub refcount: ::core::ffi::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::core::ffi::c_int, + pub expr: *mut Node, + pub is_valid: bool, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub context: MemoryContext, + pub node: dlist_node, +} +impl Default for CachedExpression { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PreparedStatement { + pub stmt_name: [::core::ffi::c_char; 64usize], + pub plansource: *mut CachedPlanSource, + pub from_sql: bool, + pub prepare_time: TimestampTz, +} +impl Default for PreparedStatement { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type check_object_relabel_type = ::core::option::Option< + unsafe extern "C" fn(object: *const ObjectAddress, seclabel: *const ::core::ffi::c_char), +>; +#[repr(C)] +#[derive(Debug)] +pub struct xl_tblspc_create_rec { + pub ts_id: Oid, + pub ts_path: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for xl_tblspc_create_rec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_tblspc_drop_rec { + pub ts_id: Oid, +} +impl Default for xl_tblspc_drop_rec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TableSpaceOpts { + pub vl_len_: int32, + pub random_page_cost: float8, + pub seq_page_cost: float8, + pub effective_io_concurrency: ::core::ffi::c_int, + pub maintenance_io_concurrency: ::core::ffi::c_int, +} +pub type TriggerEvent = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TriggerData { + pub type_: NodeTag, + pub tg_event: TriggerEvent, + pub tg_relation: Relation, + pub tg_trigtuple: HeapTuple, + pub tg_newtuple: HeapTuple, + pub tg_trigger: *mut Trigger, + pub tg_trigslot: *mut TupleTableSlot, + pub tg_newslot: *mut TupleTableSlot, + pub tg_oldtable: *mut Tuplestorestate, + pub tg_newtable: *mut Tuplestorestate, + pub tg_updatedcols: *const Bitmapset, +} +impl Default for TriggerData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AfterTriggersTableData { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TransitionCaptureState { + pub tcs_delete_old_table: bool, + pub tcs_update_old_table: bool, + pub tcs_update_new_table: bool, + pub tcs_insert_new_table: bool, + pub tcs_original_insert_tuple: *mut TupleTableSlot, + pub tcs_private: *mut AfterTriggersTableData, +} +impl Default for TransitionCaptureState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PasswordType { + pub type Type = ::core::ffi::c_uint; + pub const PASSWORD_TYPE_PLAINTEXT: Type = 0; + pub const PASSWORD_TYPE_MD5: Type = 1; + pub const PASSWORD_TYPE_SCRAM_SHA_256: Type = 2; +} +pub mod GucContext { + pub type Type = ::core::ffi::c_uint; + pub const PGC_INTERNAL: Type = 0; + pub const PGC_POSTMASTER: Type = 1; + pub const PGC_SIGHUP: Type = 2; + pub const PGC_SU_BACKEND: Type = 3; + pub const PGC_BACKEND: Type = 4; + pub const PGC_SUSET: Type = 5; + pub const PGC_USERSET: Type = 6; +} +pub mod GucSource { + pub type Type = ::core::ffi::c_uint; + pub const PGC_S_DEFAULT: Type = 0; + pub const PGC_S_DYNAMIC_DEFAULT: Type = 1; + pub const PGC_S_ENV_VAR: Type = 2; + pub const PGC_S_FILE: Type = 3; + pub const PGC_S_ARGV: Type = 4; + pub const PGC_S_GLOBAL: Type = 5; + pub const PGC_S_DATABASE: Type = 6; + pub const PGC_S_USER: Type = 7; + pub const PGC_S_DATABASE_USER: Type = 8; + pub const PGC_S_CLIENT: Type = 9; + pub const PGC_S_OVERRIDE: Type = 10; + pub const PGC_S_INTERACTIVE: Type = 11; + pub const PGC_S_TEST: Type = 12; + pub const PGC_S_SESSION: Type = 13; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConfigVariable { + pub name: *mut ::core::ffi::c_char, + pub value: *mut ::core::ffi::c_char, + pub errmsg: *mut ::core::ffi::c_char, + pub filename: *mut ::core::ffi::c_char, + pub sourceline: ::core::ffi::c_int, + pub ignore: bool, + pub applied: bool, + pub next: *mut ConfigVariable, +} +impl Default for ConfigVariable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct config_generic { + _unused: [u8; 0], +} +pub type config_handle = config_generic; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct config_enum_entry { + pub name: *const ::core::ffi::c_char, + pub val: ::core::ffi::c_int, + pub hidden: bool, +} +impl Default for config_enum_entry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type GucBoolCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut bool, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucIntCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut ::core::ffi::c_int, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucRealCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut f64, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucStringCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut *mut ::core::ffi::c_char, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucEnumCheckHook = ::core::option::Option< + unsafe extern "C" fn( + newval: *mut ::core::ffi::c_int, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool, +>; +pub type GucBoolAssignHook = + ::core::option::Option; +pub type GucIntAssignHook = ::core::option::Option< + unsafe extern "C" fn(newval: ::core::ffi::c_int, extra: *mut ::core::ffi::c_void), +>; +pub type GucRealAssignHook = + ::core::option::Option; +pub type GucStringAssignHook = ::core::option::Option< + unsafe extern "C" fn(newval: *const ::core::ffi::c_char, extra: *mut ::core::ffi::c_void), +>; +pub type GucEnumAssignHook = ::core::option::Option< + unsafe extern "C" fn(newval: ::core::ffi::c_int, extra: *mut ::core::ffi::c_void), +>; +pub type GucShowHook = ::core::option::Option *const ::core::ffi::c_char>; +pub mod GucAction { + pub type Type = ::core::ffi::c_uint; + pub const GUC_ACTION_SET: Type = 0; + pub const GUC_ACTION_LOCAL: Type = 1; + pub const GUC_ACTION_SAVE: Type = 2; +} +pub type check_password_hook_type = ::core::option::Option< + unsafe extern "C" fn( + username: *const ::core::ffi::c_char, + shadow_pass: *const ::core::ffi::c_char, + password_type: PasswordType::Type, + validuntil_time: Datum, + validuntil_null: bool, + ), +>; +pub type bgworker_main_type = ::core::option::Option; +pub mod BgWorkerStartTime { + pub type Type = ::core::ffi::c_uint; + pub const BgWorkerStart_PostmasterStart: Type = 0; + pub const BgWorkerStart_ConsistentState: Type = 1; + pub const BgWorkerStart_RecoveryFinished: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BackgroundWorker { + pub bgw_name: [::core::ffi::c_char; 96usize], + pub bgw_type: [::core::ffi::c_char; 96usize], + pub bgw_flags: ::core::ffi::c_int, + pub bgw_start_time: BgWorkerStartTime::Type, + pub bgw_restart_time: ::core::ffi::c_int, + pub bgw_library_name: [::core::ffi::c_char; 1024usize], + pub bgw_function_name: [::core::ffi::c_char; 96usize], + pub bgw_main_arg: Datum, + pub bgw_extra: [::core::ffi::c_char; 128usize], + pub bgw_notify_pid: pid_t, +} +impl Default for BackgroundWorker { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod BgwHandleStatus { + pub type Type = ::core::ffi::c_uint; + pub const BGWH_STARTED: Type = 0; + pub const BGWH_NOT_YET_STARTED: Type = 1; + pub const BGWH_STOPPED: Type = 2; + pub const BGWH_POSTMASTER_DIED: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BackgroundWorkerHandle { + _unused: [u8; 0], +} +pub type XidStatus = ::core::ffi::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xl_clog_truncate { + pub pageno: int64, + pub oldestXact: TransactionId, + pub oldestXactDb: Oid, +} +impl Default for xl_clog_truncate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Latch { + pub is_set: sig_atomic_t, + pub maybe_sleeping: sig_atomic_t, + pub is_shared: bool, + pub owner_pid: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WaitEvent { + pub pos: ::core::ffi::c_int, + pub events: uint32, + pub fd: pgsocket, + pub user_data: *mut ::core::ffi::c_void, +} +impl Default for WaitEvent { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PGSemaphoreData { + _unused: [u8; 0], +} +pub type PGSemaphore = *mut PGSemaphoreData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct XidCacheStatus { + pub count: uint8, + pub overflowed: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct XidCache { + pub xids: [TransactionId; 64usize], +} +impl Default for XidCache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ProcWaitStatus { + pub type Type = ::core::ffi::c_uint; + pub const PROC_WAIT_STATUS_OK: Type = 0; + pub const PROC_WAIT_STATUS_WAITING: Type = 1; + pub const PROC_WAIT_STATUS_ERROR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PGPROC { + pub links: dlist_node, + pub procgloballist: *mut dlist_head, + pub sem: PGSemaphore, + pub waitStatus: ProcWaitStatus::Type, + pub procLatch: Latch, + pub xid: TransactionId, + pub xmin: TransactionId, + pub pid: ::core::ffi::c_int, + pub pgxactoff: ::core::ffi::c_int, + pub vxid: PGPROC__bindgen_ty_1, + pub databaseId: Oid, + pub roleId: Oid, + pub tempNamespaceId: Oid, + pub isBackgroundWorker: bool, + pub recoveryConflictPending: bool, + pub lwWaiting: uint8, + pub lwWaitMode: uint8, + pub lwWaitLink: proclist_node, + pub cvWaitLink: proclist_node, + pub waitLock: *mut LOCK, + pub waitProcLock: *mut PROCLOCK, + pub waitLockMode: LOCKMODE, + pub heldLocks: LOCKMASK, + pub waitStart: pg_atomic_uint64, + pub delayChkptFlags: ::core::ffi::c_int, + pub statusFlags: uint8, + pub waitLSN: XLogRecPtr, + pub syncRepState: ::core::ffi::c_int, + pub syncRepLinks: dlist_node, + pub myProcLocks: [dlist_head; 16usize], + pub subxidStatus: XidCacheStatus, + pub subxids: XidCache, + pub procArrayGroupMember: bool, + pub procArrayGroupNext: pg_atomic_uint32, + pub procArrayGroupMemberXid: TransactionId, + pub wait_event_info: uint32, + pub clogGroupMember: bool, + pub clogGroupNext: pg_atomic_uint32, + pub clogGroupMemberXid: TransactionId, + pub clogGroupMemberXidStatus: XidStatus, + pub clogGroupMemberPage: int64, + pub clogGroupMemberLsn: XLogRecPtr, + pub fpInfoLock: LWLock, + pub fpLockBits: uint64, + pub fpRelId: [Oid; 16usize], + pub fpVXIDLock: bool, + pub fpLocalTransactionId: LocalTransactionId, + pub lockGroupLeader: *mut PGPROC, + pub lockGroupMembers: dlist_head, + pub lockGroupLink: dlist_node, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PGPROC__bindgen_ty_1 { + pub procNumber: ProcNumber, + pub lxid: LocalTransactionId, +} +impl Default for PGPROC { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PROC_HDR { + pub allProcs: *mut PGPROC, + pub xids: *mut TransactionId, + pub subxidStates: *mut XidCacheStatus, + pub statusFlags: *mut uint8, + pub allProcCount: uint32, + pub freeProcs: dlist_head, + pub autovacFreeProcs: dlist_head, + pub bgworkerFreeProcs: dlist_head, + pub walsenderFreeProcs: dlist_head, + pub procArrayGroupFirst: pg_atomic_uint32, + pub clogGroupFirst: pg_atomic_uint32, + pub walwriterLatch: *mut Latch, + pub checkpointerLatch: *mut Latch, + pub spins_per_delay: ::core::ffi::c_int, + pub startupBufferPinWaitBufId: ::core::ffi::c_int, +} +impl Default for PROC_HDR { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_mq { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_mq_handle { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct shm_mq_iovec { + pub data: *const ::core::ffi::c_char, + pub len: Size, +} +impl Default for shm_mq_iovec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod shm_mq_result { + pub type Type = ::core::ffi::c_uint; + pub const SHM_MQ_SUCCESS: Type = 0; + pub const SHM_MQ_WOULD_BLOCK: Type = 1; + pub const SHM_MQ_DETACHED: Type = 2; +} +pub type parallel_worker_main_type = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelWorkerInfo { + pub bgwhandle: *mut BackgroundWorkerHandle, + pub error_mqh: *mut shm_mq_handle, +} +impl Default for ParallelWorkerInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelContext { + pub node: dlist_node, + pub subid: SubTransactionId, + pub nworkers: ::core::ffi::c_int, + pub nworkers_to_launch: ::core::ffi::c_int, + pub nworkers_launched: ::core::ffi::c_int, + pub library_name: *mut ::core::ffi::c_char, + pub function_name: *mut ::core::ffi::c_char, + pub error_context_stack: *mut ErrorContextCallback, + pub estimator: shm_toc_estimator, + pub seg: *mut dsm_segment, + pub private_memory: *mut ::core::ffi::c_void, + pub toc: *mut shm_toc, + pub worker: *mut ParallelWorkerInfo, + pub nknown_attached_workers: ::core::ffi::c_int, + pub known_attached_workers: *mut bool, +} +impl Default for ParallelContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelWorkerContext { + pub seg: *mut dsm_segment, + pub toc: *mut shm_toc, +} +impl Default for ParallelWorkerContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidStore { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidStoreIter { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidStoreIterResult { + pub blkno: BlockNumber, + pub max_offset: ::core::ffi::c_int, + pub num_offsets: ::core::ffi::c_int, + pub offsets: *mut OffsetNumber, +} +impl Default for TidStoreIterResult { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FormData_pg_statistic { + pub starelid: Oid, + pub staattnum: int16, + pub stainherit: bool, + pub stanullfrac: float4, + pub stawidth: int32, + pub stadistinct: float4, + pub stakind1: int16, + pub stakind2: int16, + pub stakind3: int16, + pub stakind4: int16, + pub stakind5: int16, + pub staop1: Oid, + pub staop2: Oid, + pub staop3: Oid, + pub staop4: Oid, + pub staop5: Oid, + pub stacoll1: Oid, + pub stacoll2: Oid, + pub stacoll3: Oid, + pub stacoll4: Oid, + pub stacoll5: Oid, +} +impl Default for FormData_pg_statistic { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type Form_pg_statistic = *mut FormData_pg_statistic; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParallelVacuumState { + _unused: [u8; 0], +} +pub type VacAttrStatsP = *mut VacAttrStats; +pub type AnalyzeAttrFetchFunc = ::core::option::Option< + unsafe extern "C" fn( + stats: VacAttrStatsP, + rownum: ::core::ffi::c_int, + isNull: *mut bool, + ) -> Datum, +>; +pub type AnalyzeAttrComputeStatsFunc = ::core::option::Option< + unsafe extern "C" fn( + stats: VacAttrStatsP, + fetchfunc: AnalyzeAttrFetchFunc, + samplerows: ::core::ffi::c_int, + totalrows: f64, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacAttrStats { + pub attstattarget: ::core::ffi::c_int, + pub attrtypid: Oid, + pub attrtypmod: int32, + pub attrtype: Form_pg_type, + pub attrcollid: Oid, + pub anl_context: MemoryContext, + pub compute_stats: AnalyzeAttrComputeStatsFunc, + pub minrows: ::core::ffi::c_int, + pub extra_data: *mut ::core::ffi::c_void, + pub stats_valid: bool, + pub stanullfrac: float4, + pub stawidth: int32, + pub stadistinct: float4, + pub stakind: [int16; 5usize], + pub staop: [Oid; 5usize], + pub stacoll: [Oid; 5usize], + pub numnumbers: [::core::ffi::c_int; 5usize], + pub stanumbers: [*mut float4; 5usize], + pub numvalues: [::core::ffi::c_int; 5usize], + pub stavalues: [*mut Datum; 5usize], + pub statypid: [Oid; 5usize], + pub statyplen: [int16; 5usize], + pub statypbyval: [bool; 5usize], + pub statypalign: [::core::ffi::c_char; 5usize], + pub tupattnum: ::core::ffi::c_int, + pub rows: *mut HeapTuple, + pub tupDesc: TupleDesc, + pub exprvals: *mut Datum, + pub exprnulls: *mut bool, + pub rowstride: ::core::ffi::c_int, +} +impl Default for VacAttrStats { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod VacOptValue { + pub type Type = ::core::ffi::c_uint; + pub const VACOPTVALUE_UNSPECIFIED: Type = 0; + pub const VACOPTVALUE_AUTO: Type = 1; + pub const VACOPTVALUE_DISABLED: Type = 2; + pub const VACOPTVALUE_ENABLED: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VacuumParams { + pub options: bits32, + pub freeze_min_age: ::core::ffi::c_int, + pub freeze_table_age: ::core::ffi::c_int, + pub multixact_freeze_min_age: ::core::ffi::c_int, + pub multixact_freeze_table_age: ::core::ffi::c_int, + pub is_wraparound: bool, + pub log_min_duration: ::core::ffi::c_int, + pub index_cleanup: VacOptValue::Type, + pub truncate: VacOptValue::Type, + pub toast_parent: Oid, + pub nworkers: ::core::ffi::c_int, +} +impl Default for VacuumParams { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct VacuumCutoffs { + pub relfrozenxid: TransactionId, + pub relminmxid: MultiXactId, + pub OldestXmin: TransactionId, + pub OldestMxact: MultiXactId, + pub FreezeLimit: TransactionId, + pub MultiXactCutoff: MultiXactId, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct VacDeadItemsInfo { + pub max_bytes: usize, + pub num_items: int64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ConfigData { + pub name: *mut ::core::ffi::c_char, + pub setting: *mut ::core::ffi::c_char, +} +impl Default for ConfigData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub aggsortrequired: bool, + pub numInputs: ::core::ffi::c_int, + pub numTransInputs: ::core::ffi::c_int, + pub transfn_oid: Oid, + pub serialfn_oid: Oid, + pub deserialfn_oid: Oid, + pub aggtranstype: Oid, + pub transfn: FmgrInfo, + pub serialfn: FmgrInfo, + pub deserialfn: FmgrInfo, + pub aggCollation: Oid, + pub numSortCols: ::core::ffi::c_int, + pub numDistinctCols: ::core::ffi::c_int, + pub sortColIdx: *mut AttrNumber, + pub sortOperators: *mut Oid, + pub sortCollations: *mut Oid, + pub sortNullsFirst: *mut bool, + pub equalfnOne: FmgrInfo, + pub equalfnMulti: *mut ExprState, + pub initValue: Datum, + pub initValueIsNull: bool, + pub inputtypeLen: int16, + pub transtypeLen: int16, + pub inputtypeByVal: bool, + pub transtypeByVal: bool, + pub sortslot: *mut TupleTableSlot, + pub uniqslot: *mut TupleTableSlot, + pub sortdesc: TupleDesc, + pub lastdatum: Datum, + pub lastisnull: bool, + pub haslast: bool, + pub sortstates: *mut *mut Tuplesortstate, + pub transfn_fcinfo: FunctionCallInfo, + pub serialfn_fcinfo: FunctionCallInfo, + pub deserialfn_fcinfo: FunctionCallInfo, +} +impl Default for AggStatePerTransData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerAggData { + pub aggref: *mut Aggref, + pub transno: ::core::ffi::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::core::ffi::c_int, + pub aggdirectargs: *mut List, + pub resulttypeLen: int16, + pub resulttypeByVal: bool, + pub shareable: bool, +} +impl Default for AggStatePerAggData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerGroupData { + pub transValue: Datum, + pub transValueIsNull: bool, + pub noTransValue: bool, +} +impl Default for AggStatePerGroupData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy::Type, + pub numsets: ::core::ffi::c_int, + pub gset_lengths: *mut ::core::ffi::c_int, + pub grouped_cols: *mut *mut Bitmapset, + pub eqfunctions: *mut *mut ExprState, + pub aggnode: *mut Agg, + pub sortnode: *mut Sort, + pub evaltrans: *mut ExprState, + pub evaltrans_cache: [[*mut ExprState; 2usize]; 2usize], +} +impl Default for AggStatePerPhaseData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerHashData { + pub hashtable: TupleHashTable, + pub hashiter: TupleHashIterator, + pub hashslot: *mut TupleTableSlot, + pub hashfunctions: *mut FmgrInfo, + pub eqfuncoids: *mut Oid, + pub numCols: ::core::ffi::c_int, + pub numhashGrpCols: ::core::ffi::c_int, + pub largestGrpColIdx: ::core::ffi::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ScalarArrayOpExprHashTable { + _unused: [u8; 0], +} +pub type ExecEvalSubroutine = ::core::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +pub type ExecEvalBoolSubroutine = ::core::option::Option< + unsafe extern "C" fn( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ) -> bool, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalRowtypeCache { + pub cacheptr: *mut ::core::ffi::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ExprEvalOp { + pub type Type = ::core::ffi::c_uint; + pub const EEOP_DONE: Type = 0; + pub const EEOP_INNER_FETCHSOME: Type = 1; + pub const EEOP_OUTER_FETCHSOME: Type = 2; + pub const EEOP_SCAN_FETCHSOME: Type = 3; + pub const EEOP_INNER_VAR: Type = 4; + pub const EEOP_OUTER_VAR: Type = 5; + pub const EEOP_SCAN_VAR: Type = 6; + pub const EEOP_INNER_SYSVAR: Type = 7; + pub const EEOP_OUTER_SYSVAR: Type = 8; + pub const EEOP_SCAN_SYSVAR: Type = 9; + pub const EEOP_WHOLEROW: Type = 10; + pub const EEOP_ASSIGN_INNER_VAR: Type = 11; + pub const EEOP_ASSIGN_OUTER_VAR: Type = 12; + pub const EEOP_ASSIGN_SCAN_VAR: Type = 13; + pub const EEOP_ASSIGN_TMP: Type = 14; + pub const EEOP_ASSIGN_TMP_MAKE_RO: Type = 15; + pub const EEOP_CONST: Type = 16; + pub const EEOP_FUNCEXPR: Type = 17; + pub const EEOP_FUNCEXPR_STRICT: Type = 18; + pub const EEOP_FUNCEXPR_FUSAGE: Type = 19; + pub const EEOP_FUNCEXPR_STRICT_FUSAGE: Type = 20; + pub const EEOP_BOOL_AND_STEP_FIRST: Type = 21; + pub const EEOP_BOOL_AND_STEP: Type = 22; + pub const EEOP_BOOL_AND_STEP_LAST: Type = 23; + pub const EEOP_BOOL_OR_STEP_FIRST: Type = 24; + pub const EEOP_BOOL_OR_STEP: Type = 25; + pub const EEOP_BOOL_OR_STEP_LAST: Type = 26; + pub const EEOP_BOOL_NOT_STEP: Type = 27; + pub const EEOP_QUAL: Type = 28; + pub const EEOP_JUMP: Type = 29; + pub const EEOP_JUMP_IF_NULL: Type = 30; + pub const EEOP_JUMP_IF_NOT_NULL: Type = 31; + pub const EEOP_JUMP_IF_NOT_TRUE: Type = 32; + pub const EEOP_NULLTEST_ISNULL: Type = 33; + pub const EEOP_NULLTEST_ISNOTNULL: Type = 34; + pub const EEOP_NULLTEST_ROWISNULL: Type = 35; + pub const EEOP_NULLTEST_ROWISNOTNULL: Type = 36; + pub const EEOP_BOOLTEST_IS_TRUE: Type = 37; + pub const EEOP_BOOLTEST_IS_NOT_TRUE: Type = 38; + pub const EEOP_BOOLTEST_IS_FALSE: Type = 39; + pub const EEOP_BOOLTEST_IS_NOT_FALSE: Type = 40; + pub const EEOP_PARAM_EXEC: Type = 41; + pub const EEOP_PARAM_EXTERN: Type = 42; + pub const EEOP_PARAM_CALLBACK: Type = 43; + pub const EEOP_CASE_TESTVAL: Type = 44; + pub const EEOP_MAKE_READONLY: Type = 45; + pub const EEOP_IOCOERCE: Type = 46; + pub const EEOP_IOCOERCE_SAFE: Type = 47; + pub const EEOP_DISTINCT: Type = 48; + pub const EEOP_NOT_DISTINCT: Type = 49; + pub const EEOP_NULLIF: Type = 50; + pub const EEOP_SQLVALUEFUNCTION: Type = 51; + pub const EEOP_CURRENTOFEXPR: Type = 52; + pub const EEOP_NEXTVALUEEXPR: Type = 53; + pub const EEOP_ARRAYEXPR: Type = 54; + pub const EEOP_ARRAYCOERCE: Type = 55; + pub const EEOP_ROW: Type = 56; + pub const EEOP_ROWCOMPARE_STEP: Type = 57; + pub const EEOP_ROWCOMPARE_FINAL: Type = 58; + pub const EEOP_MINMAX: Type = 59; + pub const EEOP_FIELDSELECT: Type = 60; + pub const EEOP_FIELDSTORE_DEFORM: Type = 61; + pub const EEOP_FIELDSTORE_FORM: Type = 62; + pub const EEOP_SBSREF_SUBSCRIPTS: Type = 63; + pub const EEOP_SBSREF_OLD: Type = 64; + pub const EEOP_SBSREF_ASSIGN: Type = 65; + pub const EEOP_SBSREF_FETCH: Type = 66; + pub const EEOP_DOMAIN_TESTVAL: Type = 67; + pub const EEOP_DOMAIN_NOTNULL: Type = 68; + pub const EEOP_DOMAIN_CHECK: Type = 69; + pub const EEOP_CONVERT_ROWTYPE: Type = 70; + pub const EEOP_SCALARARRAYOP: Type = 71; + pub const EEOP_HASHED_SCALARARRAYOP: Type = 72; + pub const EEOP_XMLEXPR: Type = 73; + pub const EEOP_JSON_CONSTRUCTOR: Type = 74; + pub const EEOP_IS_JSON: Type = 75; + pub const EEOP_JSONEXPR_PATH: Type = 76; + pub const EEOP_JSONEXPR_COERCION: Type = 77; + pub const EEOP_JSONEXPR_COERCION_FINISH: Type = 78; + pub const EEOP_AGGREF: Type = 79; + pub const EEOP_GROUPING_FUNC: Type = 80; + pub const EEOP_WINDOW_FUNC: Type = 81; + pub const EEOP_MERGE_SUPPORT_FUNC: Type = 82; + pub const EEOP_SUBPLAN: Type = 83; + pub const EEOP_AGG_STRICT_DESERIALIZE: Type = 84; + pub const EEOP_AGG_DESERIALIZE: Type = 85; + pub const EEOP_AGG_STRICT_INPUT_CHECK_ARGS: Type = 86; + pub const EEOP_AGG_STRICT_INPUT_CHECK_NULLS: Type = 87; + pub const EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: Type = 88; + pub const EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: Type = 89; + pub const EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: Type = 90; + pub const EEOP_AGG_PLAIN_TRANS_BYVAL: Type = 91; + pub const EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: Type = 92; + pub const EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: Type = 93; + pub const EEOP_AGG_PLAIN_TRANS_BYREF: Type = 94; + pub const EEOP_AGG_PRESORTED_DISTINCT_SINGLE: Type = 95; + pub const EEOP_AGG_PRESORTED_DISTINCT_MULTI: Type = 96; + pub const EEOP_AGG_ORDERED_TRANS_DATUM: Type = 97; + pub const EEOP_AGG_ORDERED_TRANS_TUPLE: Type = 98; + pub const EEOP_LAST: Type = 99; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ExprEvalStep { + pub opcode: isize, + pub resvalue: *mut Datum, + pub resnull: *mut bool, + pub d: ExprEvalStep__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ExprEvalStep__bindgen_ty_1 { + pub fetch: ExprEvalStep__bindgen_ty_1__bindgen_ty_1, + pub var: ExprEvalStep__bindgen_ty_1__bindgen_ty_2, + pub wholerow: ExprEvalStep__bindgen_ty_1__bindgen_ty_3, + pub assign_var: ExprEvalStep__bindgen_ty_1__bindgen_ty_4, + pub assign_tmp: ExprEvalStep__bindgen_ty_1__bindgen_ty_5, + pub constval: ExprEvalStep__bindgen_ty_1__bindgen_ty_6, + pub func: ExprEvalStep__bindgen_ty_1__bindgen_ty_7, + pub boolexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_8, + pub qualexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_9, + pub jump: ExprEvalStep__bindgen_ty_1__bindgen_ty_10, + pub nulltest_row: ExprEvalStep__bindgen_ty_1__bindgen_ty_11, + pub param: ExprEvalStep__bindgen_ty_1__bindgen_ty_12, + pub cparam: ExprEvalStep__bindgen_ty_1__bindgen_ty_13, + pub casetest: ExprEvalStep__bindgen_ty_1__bindgen_ty_14, + pub make_readonly: ExprEvalStep__bindgen_ty_1__bindgen_ty_15, + pub iocoerce: ExprEvalStep__bindgen_ty_1__bindgen_ty_16, + pub sqlvaluefunction: ExprEvalStep__bindgen_ty_1__bindgen_ty_17, + pub nextvalueexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_18, + pub arrayexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_19, + pub arraycoerce: ExprEvalStep__bindgen_ty_1__bindgen_ty_20, + pub row: ExprEvalStep__bindgen_ty_1__bindgen_ty_21, + pub rowcompare_step: ExprEvalStep__bindgen_ty_1__bindgen_ty_22, + pub rowcompare_final: ExprEvalStep__bindgen_ty_1__bindgen_ty_23, + pub minmax: ExprEvalStep__bindgen_ty_1__bindgen_ty_24, + pub fieldselect: ExprEvalStep__bindgen_ty_1__bindgen_ty_25, + pub fieldstore: ExprEvalStep__bindgen_ty_1__bindgen_ty_26, + pub sbsref_subscript: ExprEvalStep__bindgen_ty_1__bindgen_ty_27, + pub sbsref: ExprEvalStep__bindgen_ty_1__bindgen_ty_28, + pub domaincheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_29, + pub convert_rowtype: ExprEvalStep__bindgen_ty_1__bindgen_ty_30, + pub scalararrayop: ExprEvalStep__bindgen_ty_1__bindgen_ty_31, + pub hashedscalararrayop: ExprEvalStep__bindgen_ty_1__bindgen_ty_32, + pub xmlexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_33, + pub json_constructor: ExprEvalStep__bindgen_ty_1__bindgen_ty_34, + pub aggref: ExprEvalStep__bindgen_ty_1__bindgen_ty_35, + pub grouping_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_36, + pub window_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_37, + pub subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_38, + pub agg_deserialize: ExprEvalStep__bindgen_ty_1__bindgen_ty_39, + pub agg_strict_input_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_40, + pub agg_plain_pergroup_nullcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_41, + pub agg_presorted_distinctcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_42, + pub agg_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_43, + pub is_json: ExprEvalStep__bindgen_ty_1__bindgen_ty_44, + pub jsonexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_45, + pub jsonexpr_coercion: ExprEvalStep__bindgen_ty_1__bindgen_ty_46, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::core::ffi::c_int, + pub fixed: bool, + pub known_desc: TupleDesc, + pub kind: *const TupleTableSlotOps, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + pub attnum: ::core::ffi::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_3 { + pub var: *mut Var, + pub first: bool, + pub slow: bool, + pub tupdesc: TupleDesc, + pub junkFilter: *mut JunkFilter, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_4 { + pub resultnum: ::core::ffi::c_int, + pub attnum: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_6 { + pub value: Datum, + pub isnull: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_6 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, + pub nargs: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + pub anynull: *mut bool, + pub jumpdone: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_9 { + pub jumpdone: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_11 { + pub rowcache: ExprEvalRowtypeCache, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_11 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + pub paramid: ::core::ffi::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + pub paramfunc: ExecEvalSubroutine, + pub paramarg: *mut ::core::ffi::c_void, + pub paramid: ::core::ffi::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_14 { + pub value: *mut Datum, + pub isnull: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_14 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_15 { + pub value: *mut Datum, + pub isnull: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_15 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_16 { + pub finfo_out: *mut FmgrInfo, + pub fcinfo_data_out: FunctionCallInfo, + pub finfo_in: *mut FmgrInfo, + pub fcinfo_data_in: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_16 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_17 { + pub svf: *mut SQLValueFunction, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_17 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_18 { + pub seqid: Oid, + pub seqtypid: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_18 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + pub elemvalues: *mut Datum, + pub elemnulls: *mut bool, + pub nelems: ::core::ffi::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::core::ffi::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_20 { + pub elemexprstate: *mut ExprState, + pub resultelemtype: Oid, + pub amstate: *mut ArrayMapState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_20 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_21 { + pub tupdesc: TupleDesc, + pub elemvalues: *mut Datum, + pub elemnulls: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_21 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, + pub jumpnull: ::core::ffi::c_int, + pub jumpdone: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + pub rctype: RowCompareType::Type, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + pub values: *mut Datum, + pub nulls: *mut bool, + pub nelems: ::core::ffi::c_int, + pub op: MinMaxOp::Type, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_25 { + pub fieldnum: AttrNumber, + pub resulttype: Oid, + pub rowcache: ExprEvalRowtypeCache, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_25 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + pub fstore: *mut FieldStore, + pub rowcache: *mut ExprEvalRowtypeCache, + pub values: *mut Datum, + pub nulls: *mut bool, + pub ncolumns: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + pub subscriptfunc: ExecEvalBoolSubroutine, + pub state: *mut SubscriptingRefState, + pub jumpdone: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_28 { + pub subscriptfunc: ExecEvalSubroutine, + pub state: *mut SubscriptingRefState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_28 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + pub constraintname: *mut ::core::ffi::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, + pub escontext: *mut ErrorSaveContext, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_30 { + pub inputtype: Oid, + pub outputtype: Oid, + pub incache: *mut ExprEvalRowtypeCache, + pub outcache: *mut ExprEvalRowtypeCache, + pub map: *mut TupleConversionMap, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_30 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_31 { + pub element_type: Oid, + pub useOr: bool, + pub typlen: int16, + pub typbyval: bool, + pub typalign: ::core::ffi::c_char, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_31 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_32 { + pub has_nulls: bool, + pub inclause: bool, + pub elements_tab: *mut ScalarArrayOpExprHashTable, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub saop: *mut ScalarArrayOpExpr, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_32 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_33 { + pub xexpr: *mut XmlExpr, + pub named_argvalue: *mut Datum, + pub named_argnull: *mut bool, + pub argvalue: *mut Datum, + pub argnull: *mut bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_33 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_34 { + pub jcstate: *mut JsonConstructorExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_34 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + pub aggno: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + pub clauses: *mut List, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + pub wfstate: *mut WindowFuncExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + pub sstate: *mut SubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + pub fcinfo_data: FunctionCallInfo, + pub jumpnull: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_40 { + pub args: *mut NullableDatum, + pub nulls: *mut bool, + pub nargs: ::core::ffi::c_int, + pub jumpnull: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_40 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + pub setoff: ::core::ffi::c_int, + pub jumpnull: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_42 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub jumpdistinct: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_42 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_43 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::core::ffi::c_int, + pub transno: ::core::ffi::c_int, + pub setoff: ::core::ffi::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_43 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_44 { + pub pred: *mut JsonIsPredicate, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_44 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_45 { + pub jsestate: *mut JsonExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_45 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_46 { + pub targettype: Oid, + pub targettypmod: int32, + pub omit_quotes: bool, + pub exists_coerce: bool, + pub exists_cast_to_int: bool, + pub exists_check_domain: bool, + pub json_coercion_cache: *mut ::core::ffi::c_void, + pub escontext: *mut ErrorSaveContext, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_46 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubscriptingRefState { + pub isassignment: bool, + pub workspace: *mut ::core::ffi::c_void, + pub numupper: ::core::ffi::c_int, + pub upperprovided: *mut bool, + pub upperindex: *mut Datum, + pub upperindexnull: *mut bool, + pub numlower: ::core::ffi::c_int, + pub lowerprovided: *mut bool, + pub lowerindex: *mut Datum, + pub lowerindexnull: *mut bool, + pub replacevalue: Datum, + pub replacenull: bool, + pub prevvalue: Datum, + pub prevnull: bool, +} +impl Default for SubscriptingRefState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SubscriptExecSteps { + pub sbs_check_subscripts: ExecEvalBoolSubroutine, + pub sbs_fetch: ExecEvalSubroutine, + pub sbs_assign: ExecEvalSubroutine, + pub sbs_fetch_old: ExecEvalSubroutine, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExprState { + pub constructor: *mut JsonConstructorExpr, + pub arg_values: *mut Datum, + pub arg_nulls: *mut bool, + pub arg_types: *mut Oid, + pub arg_type_cache: *mut JsonConstructorExprState__bindgen_ty_1, + pub nargs: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExprState__bindgen_ty_1 { + pub category: ::core::ffi::c_int, + pub outfuncid: Oid, +} +impl Default for JsonConstructorExprState__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonConstructorExprState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod RawParseMode { + pub type Type = ::core::ffi::c_uint; + pub const RAW_PARSE_DEFAULT: Type = 0; + pub const RAW_PARSE_TYPE_NAME: Type = 1; + pub const RAW_PARSE_PLPGSQL_EXPR: Type = 2; + pub const RAW_PARSE_PLPGSQL_ASSIGN1: Type = 3; + pub const RAW_PARSE_PLPGSQL_ASSIGN2: Type = 4; + pub const RAW_PARSE_PLPGSQL_ASSIGN3: Type = 5; +} +pub mod BackslashQuoteType { + pub type Type = ::core::ffi::c_uint; + pub const BACKSLASH_QUOTE_OFF: Type = 0; + pub const BACKSLASH_QUOTE_ON: Type = 1; + pub const BACKSLASH_QUOTE_SAFE_ENCODING: Type = 2; +} +pub mod PortalStrategy { + pub type Type = ::core::ffi::c_uint; + pub const PORTAL_ONE_SELECT: Type = 0; + pub const PORTAL_ONE_RETURNING: Type = 1; + pub const PORTAL_ONE_MOD_WITH: Type = 2; + pub const PORTAL_UTIL_SELECT: Type = 3; + pub const PORTAL_MULTI_QUERY: Type = 4; +} +pub mod PortalStatus { + pub type Type = ::core::ffi::c_uint; + pub const PORTAL_NEW: Type = 0; + pub const PORTAL_DEFINED: Type = 1; + pub const PORTAL_READY: Type = 2; + pub const PORTAL_ACTIVE: Type = 3; + pub const PORTAL_DONE: Type = 4; + pub const PORTAL_FAILED: Type = 5; +} +pub type Portal = *mut PortalData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PortalData { + pub name: *const ::core::ffi::c_char, + pub prepStmtName: *const ::core::ffi::c_char, + pub portalContext: MemoryContext, + pub resowner: ResourceOwner, + pub cleanup: ::core::option::Option, + pub createSubid: SubTransactionId, + pub activeSubid: SubTransactionId, + pub createLevel: ::core::ffi::c_int, + pub sourceText: *const ::core::ffi::c_char, + pub commandTag: CommandTag::Type, + pub qc: QueryCompletion, + pub stmts: *mut List, + pub cplan: *mut CachedPlan, + pub portalParams: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, + pub strategy: PortalStrategy::Type, + pub cursorOptions: ::core::ffi::c_int, + pub run_once: bool, + pub status: PortalStatus::Type, + pub portalPinned: bool, + pub autoHeld: bool, + pub queryDesc: *mut QueryDesc, + pub tupDesc: TupleDesc, + pub formats: *mut int16, + pub portalSnapshot: Snapshot, + pub holdStore: *mut Tuplestorestate, + pub holdContext: MemoryContext, + pub holdSnapshot: Snapshot, + pub atStart: bool, + pub atEnd: bool, + pub portalPos: uint64, + pub creation_time: TimestampTz, + pub visible: bool, +} +impl Default for PortalData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPITupleTable { + pub tupdesc: TupleDesc, + pub vals: *mut HeapTuple, + pub numvals: uint64, + pub alloced: uint64, + pub tuptabcxt: MemoryContext, + pub next: slist_node, + pub subid: SubTransactionId, +} +impl Default for SPITupleTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPIPrepareOptions { + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::core::ffi::c_void, + pub parseMode: RawParseMode::Type, + pub cursorOptions: ::core::ffi::c_int, +} +impl Default for SPIPrepareOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPIExecuteOptions { + pub params: ParamListInfo, + pub read_only: bool, + pub allow_nonatomic: bool, + pub must_return_tuples: bool, + pub tcount: uint64, + pub dest: *mut DestReceiver, + pub owner: ResourceOwner, +} +impl Default for SPIExecuteOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SPIParseOpenOptions { + pub params: ParamListInfo, + pub cursorOptions: ::core::ffi::c_int, + pub read_only: bool, +} +impl Default for SPIParseOpenOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _SPI_plan { + _unused: [u8; 0], +} +pub type SPIPlanPtr = *mut _SPI_plan; +pub type Relids = *mut Bitmapset; +pub mod CostSelector { + pub type Type = ::core::ffi::c_uint; + pub const STARTUP_COST: Type = 0; + pub const TOTAL_COST: Type = 1; +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct QualCost { + pub startup: Cost, + pub per_tuple: Cost, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AggClauseCosts { + pub transCost: QualCost, + pub finalCost: QualCost, + pub transitionSpace: Size, +} +pub mod UpperRelationKind { + pub type Type = ::core::ffi::c_uint; + pub const UPPERREL_SETOP: Type = 0; + pub const UPPERREL_PARTIAL_GROUP_AGG: Type = 1; + pub const UPPERREL_GROUP_AGG: Type = 2; + pub const UPPERREL_WINDOW: Type = 3; + pub const UPPERREL_PARTIAL_DISTINCT: Type = 4; + pub const UPPERREL_DISTINCT: Type = 5; + pub const UPPERREL_ORDERED: Type = 6; + pub const UPPERREL_FINAL: Type = 7; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannerGlobal { + pub type_: NodeTag, + pub boundParams: ParamListInfo, + pub subplans: *mut List, + pub subpaths: *mut List, + pub subroots: *mut List, + pub rewindPlanIDs: *mut Bitmapset, + pub finalrtable: *mut List, + pub finalrteperminfos: *mut List, + pub finalrowmarks: *mut List, + pub resultRelations: *mut List, + pub appendRelations: *mut List, + pub relationOids: *mut List, + pub invalItems: *mut List, + pub paramExecTypes: *mut List, + pub lastPHId: Index, + pub lastRowMarkId: Index, + pub lastPlanNodeId: ::core::ffi::c_int, + pub transientPlan: bool, + pub dependsOnRole: bool, + pub parallelModeOK: bool, + pub parallelModeNeeded: bool, + pub maxParallelHazard: ::core::ffi::c_char, + pub partition_directory: PartitionDirectory, +} +impl Default for PlannerGlobal { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannerInfo { + pub type_: NodeTag, + pub parse: *mut Query, + pub glob: *mut PlannerGlobal, + pub query_level: Index, + pub parent_root: *mut PlannerInfo, + pub plan_params: *mut List, + pub outer_params: *mut Bitmapset, + pub simple_rel_array: *mut *mut RelOptInfo, + pub simple_rel_array_size: ::core::ffi::c_int, + pub simple_rte_array: *mut *mut RangeTblEntry, + pub append_rel_array: *mut *mut AppendRelInfo, + pub all_baserels: Relids, + pub outer_join_rels: Relids, + pub all_query_rels: Relids, + pub join_rel_list: *mut List, + pub join_rel_hash: *mut HTAB, + pub join_rel_level: *mut *mut List, + pub join_cur_level: ::core::ffi::c_int, + pub init_plans: *mut List, + pub cte_plan_ids: *mut List, + pub multiexpr_params: *mut List, + pub join_domains: *mut List, + pub eq_classes: *mut List, + pub ec_merging_done: bool, + pub canon_pathkeys: *mut List, + pub left_join_clauses: *mut List, + pub right_join_clauses: *mut List, + pub full_join_clauses: *mut List, + pub join_info_list: *mut List, + pub last_rinfo_serial: ::core::ffi::c_int, + pub all_result_relids: Relids, + pub leaf_result_relids: Relids, + pub append_rel_list: *mut List, + pub row_identity_vars: *mut List, + pub rowMarks: *mut List, + pub placeholder_list: *mut List, + pub placeholder_array: *mut *mut PlaceHolderInfo, + pub placeholder_array_size: ::core::ffi::c_int, + pub fkey_list: *mut List, + pub query_pathkeys: *mut List, + pub group_pathkeys: *mut List, + pub num_groupby_pathkeys: ::core::ffi::c_int, + pub window_pathkeys: *mut List, + pub distinct_pathkeys: *mut List, + pub sort_pathkeys: *mut List, + pub setop_pathkeys: *mut List, + pub part_schemes: *mut List, + pub initial_rels: *mut List, + pub upper_rels: [*mut List; 8usize], + pub upper_targets: [*mut PathTarget; 8usize], + pub processed_groupClause: *mut List, + pub processed_distinctClause: *mut List, + pub processed_tlist: *mut List, + pub update_colnos: *mut List, + pub grouping_map: *mut AttrNumber, + pub minmax_aggs: *mut List, + pub planner_cxt: MemoryContext, + pub total_table_pages: Cardinality, + pub tuple_fraction: Selectivity, + pub limit_tuples: Cardinality, + pub qual_security_level: Index, + pub hasJoinRTEs: bool, + pub hasLateralRTEs: bool, + pub hasHavingQual: bool, + pub hasPseudoConstantQuals: bool, + pub hasAlternativeSubPlans: bool, + pub placeholdersFrozen: bool, + pub hasRecursion: bool, + pub agginfos: *mut List, + pub aggtransinfos: *mut List, + pub numOrderedAggs: ::core::ffi::c_int, + pub hasNonPartialAggs: bool, + pub hasNonSerialAggs: bool, + pub wt_param_id: ::core::ffi::c_int, + pub non_recursive_path: *mut Path, + pub curOuterRels: Relids, + pub curOuterParams: *mut List, + pub isAltSubplan: *mut bool, + pub isUsedSubplan: *mut bool, + pub join_search_private: *mut ::core::ffi::c_void, + pub partColsUpdated: bool, +} +impl Default for PlannerInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PartitionSchemeData { + pub strategy: ::core::ffi::c_char, + pub partnatts: int16, + pub partopfamily: *mut Oid, + pub partopcintype: *mut Oid, + pub partcollation: *mut Oid, + pub parttyplen: *mut int16, + pub parttypbyval: *mut bool, + pub partsupfunc: *mut FmgrInfo, +} +impl Default for PartitionSchemeData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type PartitionScheme = *mut PartitionSchemeData; +pub mod RelOptKind { + pub type Type = ::core::ffi::c_uint; + pub const RELOPT_BASEREL: Type = 0; + pub const RELOPT_JOINREL: Type = 1; + pub const RELOPT_OTHER_MEMBER_REL: Type = 2; + pub const RELOPT_OTHER_JOINREL: Type = 3; + pub const RELOPT_UPPER_REL: Type = 4; + pub const RELOPT_OTHER_UPPER_REL: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RelOptInfo { + pub type_: NodeTag, + pub reloptkind: RelOptKind::Type, + pub relids: Relids, + pub rows: Cardinality, + pub consider_startup: bool, + pub consider_param_startup: bool, + pub consider_parallel: bool, + pub reltarget: *mut PathTarget, + pub pathlist: *mut List, + pub ppilist: *mut List, + pub partial_pathlist: *mut List, + pub cheapest_startup_path: *mut Path, + pub cheapest_total_path: *mut Path, + pub cheapest_unique_path: *mut Path, + pub cheapest_parameterized_paths: *mut List, + pub direct_lateral_relids: Relids, + pub lateral_relids: Relids, + pub relid: Index, + pub reltablespace: Oid, + pub rtekind: RTEKind::Type, + pub min_attr: AttrNumber, + pub max_attr: AttrNumber, + pub attr_needed: *mut Relids, + pub attr_widths: *mut int32, + pub notnullattnums: *mut Bitmapset, + pub nulling_relids: Relids, + pub lateral_vars: *mut List, + pub lateral_referencers: Relids, + pub indexlist: *mut List, + pub statlist: *mut List, + pub pages: BlockNumber, + pub tuples: Cardinality, + pub allvisfrac: f64, + pub eclass_indexes: *mut Bitmapset, + pub subroot: *mut PlannerInfo, + pub subplan_params: *mut List, + pub rel_parallel_workers: ::core::ffi::c_int, + pub amflags: uint32, + pub serverid: Oid, + pub userid: Oid, + pub useridiscurrent: bool, + pub fdwroutine: *mut FdwRoutine, + pub fdw_private: *mut ::core::ffi::c_void, + pub unique_for_rels: *mut List, + pub non_unique_for_rels: *mut List, + pub baserestrictinfo: *mut List, + pub baserestrictcost: QualCost, + pub baserestrict_min_security: Index, + pub joininfo: *mut List, + pub has_eclass_joins: bool, + pub consider_partitionwise_join: bool, + pub parent: *mut RelOptInfo, + pub top_parent: *mut RelOptInfo, + pub top_parent_relids: Relids, + pub part_scheme: PartitionScheme, + pub nparts: ::core::ffi::c_int, + pub boundinfo: *mut PartitionBoundInfoData, + pub partbounds_merged: bool, + pub partition_qual: *mut List, + pub part_rels: *mut *mut RelOptInfo, + pub live_parts: *mut Bitmapset, + pub all_partrels: Relids, + pub partexprs: *mut *mut List, + pub nullable_partexprs: *mut *mut List, +} +impl Default for RelOptInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexOptInfo { + pub type_: NodeTag, + pub indexoid: Oid, + pub reltablespace: Oid, + pub rel: *mut RelOptInfo, + pub pages: BlockNumber, + pub tuples: Cardinality, + pub tree_height: ::core::ffi::c_int, + pub ncolumns: ::core::ffi::c_int, + pub nkeycolumns: ::core::ffi::c_int, + pub indexkeys: *mut ::core::ffi::c_int, + pub indexcollations: *mut Oid, + pub opfamily: *mut Oid, + pub opcintype: *mut Oid, + pub sortopfamily: *mut Oid, + pub reverse_sort: *mut bool, + pub nulls_first: *mut bool, + pub opclassoptions: *mut *mut bytea, + pub canreturn: *mut bool, + pub relam: Oid, + pub indexprs: *mut List, + pub indpred: *mut List, + pub indextlist: *mut List, + pub indrestrictinfo: *mut List, + pub predOK: bool, + pub unique: bool, + pub immediate: bool, + pub hypothetical: bool, + pub amcanorderbyop: bool, + pub amoptionalkey: bool, + pub amsearcharray: bool, + pub amsearchnulls: bool, + pub amhasgettuple: bool, + pub amhasgetbitmap: bool, + pub amcanparallel: bool, + pub amcanmarkpos: bool, + pub amcostestimate: ::core::option::Option, +} +impl Default for IndexOptInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignKeyOptInfo { + pub type_: NodeTag, + pub con_relid: Index, + pub ref_relid: Index, + pub nkeys: ::core::ffi::c_int, + pub conkey: [AttrNumber; 32usize], + pub confkey: [AttrNumber; 32usize], + pub conpfeqop: [Oid; 32usize], + pub nmatched_ec: ::core::ffi::c_int, + pub nconst_ec: ::core::ffi::c_int, + pub nmatched_rcols: ::core::ffi::c_int, + pub nmatched_ri: ::core::ffi::c_int, + pub eclass: [*mut EquivalenceClass; 32usize], + pub fk_eclass_member: [*mut EquivalenceMember; 32usize], + pub rinfos: [*mut List; 32usize], +} +impl Default for ForeignKeyOptInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StatisticExtInfo { + pub type_: NodeTag, + pub statOid: Oid, + pub inherit: bool, + pub rel: *mut RelOptInfo, + pub kind: ::core::ffi::c_char, + pub keys: *mut Bitmapset, + pub exprs: *mut List, +} +impl Default for StatisticExtInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinDomain { + pub type_: NodeTag, + pub jd_relids: Relids, +} +impl Default for JoinDomain { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EquivalenceClass { + pub type_: NodeTag, + pub ec_opfamilies: *mut List, + pub ec_collation: Oid, + pub ec_members: *mut List, + pub ec_sources: *mut List, + pub ec_derives: *mut List, + pub ec_relids: Relids, + pub ec_has_const: bool, + pub ec_has_volatile: bool, + pub ec_broken: bool, + pub ec_sortref: Index, + pub ec_min_security: Index, + pub ec_max_security: Index, + pub ec_merged: *mut EquivalenceClass, +} +impl Default for EquivalenceClass { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct EquivalenceMember { + pub type_: NodeTag, + pub em_expr: *mut Expr, + pub em_relids: Relids, + pub em_is_const: bool, + pub em_is_child: bool, + pub em_datatype: Oid, + pub em_jdomain: *mut JoinDomain, + pub em_parent: *mut EquivalenceMember, +} +impl Default for EquivalenceMember { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PathKey { + pub type_: NodeTag, + pub pk_eclass: *mut EquivalenceClass, + pub pk_opfamily: Oid, + pub pk_strategy: ::core::ffi::c_int, + pub pk_nulls_first: bool, +} +impl Default for PathKey { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupByOrdering { + pub type_: NodeTag, + pub pathkeys: *mut List, + pub clauses: *mut List, +} +impl Default for GroupByOrdering { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod VolatileFunctionStatus { + pub type Type = ::core::ffi::c_uint; + pub const VOLATILITY_UNKNOWN: Type = 0; + pub const VOLATILITY_VOLATILE: Type = 1; + pub const VOLATILITY_NOVOLATILE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PathTarget { + pub type_: NodeTag, + pub exprs: *mut List, + pub sortgrouprefs: *mut Index, + pub cost: QualCost, + pub width: ::core::ffi::c_int, + pub has_volatile_expr: VolatileFunctionStatus::Type, +} +impl Default for PathTarget { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParamPathInfo { + pub type_: NodeTag, + pub ppi_req_outer: Relids, + pub ppi_rows: Cardinality, + pub ppi_clauses: *mut List, + pub ppi_serials: *mut Bitmapset, +} +impl Default for ParamPathInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Path { + pub type_: NodeTag, + pub pathtype: NodeTag, + pub parent: *mut RelOptInfo, + pub pathtarget: *mut PathTarget, + pub param_info: *mut ParamPathInfo, + pub parallel_aware: bool, + pub parallel_safe: bool, + pub parallel_workers: ::core::ffi::c_int, + pub rows: Cardinality, + pub startup_cost: Cost, + pub total_cost: Cost, + pub pathkeys: *mut List, +} +impl Default for Path { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexPath { + pub path: Path, + pub indexinfo: *mut IndexOptInfo, + pub indexclauses: *mut List, + pub indexorderbys: *mut List, + pub indexorderbycols: *mut List, + pub indexscandir: ScanDirection::Type, + pub indextotalcost: Cost, + pub indexselectivity: Selectivity, +} +impl Default for IndexPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IndexClause { + pub type_: NodeTag, + pub rinfo: *mut RestrictInfo, + pub indexquals: *mut List, + pub lossy: bool, + pub indexcol: AttrNumber, + pub indexcols: *mut List, +} +impl Default for IndexClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapHeapPath { + pub path: Path, + pub bitmapqual: *mut Path, +} +impl Default for BitmapHeapPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapAndPath { + pub path: Path, + pub bitmapquals: *mut List, + pub bitmapselectivity: Selectivity, +} +impl Default for BitmapAndPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BitmapOrPath { + pub path: Path, + pub bitmapquals: *mut List, + pub bitmapselectivity: Selectivity, +} +impl Default for BitmapOrPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidPath { + pub path: Path, + pub tidquals: *mut List, +} +impl Default for TidPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TidRangePath { + pub path: Path, + pub tidrangequals: *mut List, +} +impl Default for TidRangePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SubqueryScanPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for SubqueryScanPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignPath { + pub path: Path, + pub fdw_outerpath: *mut Path, + pub fdw_restrictinfo: *mut List, + pub fdw_private: *mut List, +} +impl Default for ForeignPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomPath { + pub path: Path, + pub flags: uint32, + pub custom_paths: *mut List, + pub custom_restrictinfo: *mut List, + pub custom_private: *mut List, + pub methods: *const CustomPathMethods, +} +impl Default for CustomPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AppendPath { + pub path: Path, + pub subpaths: *mut List, + pub first_partial_path: ::core::ffi::c_int, + pub limit_tuples: Cardinality, +} +impl Default for AppendPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeAppendPath { + pub path: Path, + pub subpaths: *mut List, + pub limit_tuples: Cardinality, +} +impl Default for MergeAppendPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupResultPath { + pub path: Path, + pub quals: *mut List, +} +impl Default for GroupResultPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MaterialPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for MaterialPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MemoizePath { + pub path: Path, + pub subpath: *mut Path, + pub hash_operators: *mut List, + pub param_exprs: *mut List, + pub singlerow: bool, + pub binary_mode: bool, + pub calls: Cardinality, + pub est_entries: uint32, +} +impl Default for MemoizePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod UniquePathMethod { + pub type Type = ::core::ffi::c_uint; + pub const UNIQUE_PATH_NOOP: Type = 0; + pub const UNIQUE_PATH_HASH: Type = 1; + pub const UNIQUE_PATH_SORT: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UniquePath { + pub path: Path, + pub subpath: *mut Path, + pub umethod: UniquePathMethod::Type, + pub in_operators: *mut List, + pub uniq_exprs: *mut List, +} +impl Default for UniquePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherPath { + pub path: Path, + pub subpath: *mut Path, + pub single_copy: bool, + pub num_workers: ::core::ffi::c_int, +} +impl Default for GatherPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GatherMergePath { + pub path: Path, + pub subpath: *mut Path, + pub num_workers: ::core::ffi::c_int, +} +impl Default for GatherMergePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinPath { + pub path: Path, + pub jointype: JoinType::Type, + pub inner_unique: bool, + pub outerjoinpath: *mut Path, + pub innerjoinpath: *mut Path, + pub joinrestrictinfo: *mut List, +} +impl Default for JoinPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NestPath { + pub jpath: JoinPath, +} +impl Default for NestPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergePath { + pub jpath: JoinPath, + pub path_mergeclauses: *mut List, + pub outersortkeys: *mut List, + pub innersortkeys: *mut List, + pub skip_mark_restore: bool, + pub materialize_inner: bool, +} +impl Default for MergePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HashPath { + pub jpath: JoinPath, + pub path_hashclauses: *mut List, + pub num_batches: ::core::ffi::c_int, + pub inner_rows_total: Cardinality, +} +impl Default for HashPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectionPath { + pub path: Path, + pub subpath: *mut Path, + pub dummypp: bool, +} +impl Default for ProjectionPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ProjectSetPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for ProjectSetPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SortPath { + pub path: Path, + pub subpath: *mut Path, +} +impl Default for SortPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IncrementalSortPath { + pub spath: SortPath, + pub nPresortedCols: ::core::ffi::c_int, +} +impl Default for IncrementalSortPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupPath { + pub path: Path, + pub subpath: *mut Path, + pub groupClause: *mut List, + pub qual: *mut List, +} +impl Default for GroupPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UpperUniquePath { + pub path: Path, + pub subpath: *mut Path, + pub numkeys: ::core::ffi::c_int, +} +impl Default for UpperUniquePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggPath { + pub path: Path, + pub subpath: *mut Path, + pub aggstrategy: AggStrategy::Type, + pub aggsplit: AggSplit::Type, + pub numGroups: Cardinality, + pub transitionSpace: uint64, + pub groupClause: *mut List, + pub qual: *mut List, +} +impl Default for AggPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingSetData { + pub type_: NodeTag, + pub set: *mut List, + pub numGroups: Cardinality, +} +impl Default for GroupingSetData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RollupData { + pub type_: NodeTag, + pub groupClause: *mut List, + pub gsets: *mut List, + pub gsets_data: *mut List, + pub numGroups: Cardinality, + pub hashable: bool, + pub is_hashed: bool, +} +impl Default for RollupData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupingSetsPath { + pub path: Path, + pub subpath: *mut Path, + pub aggstrategy: AggStrategy::Type, + pub rollups: *mut List, + pub qual: *mut List, + pub transitionSpace: uint64, +} +impl Default for GroupingSetsPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinMaxAggPath { + pub path: Path, + pub mmaggregates: *mut List, + pub quals: *mut List, +} +impl Default for MinMaxAggPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowAggPath { + pub path: Path, + pub subpath: *mut Path, + pub winclause: *mut WindowClause, + pub qual: *mut List, + pub runCondition: *mut List, + pub topwindow: bool, +} +impl Default for WindowAggPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SetOpPath { + pub path: Path, + pub subpath: *mut Path, + pub cmd: SetOpCmd::Type, + pub strategy: SetOpStrategy::Type, + pub distinctList: *mut List, + pub flagColIdx: AttrNumber, + pub firstFlag: ::core::ffi::c_int, + pub numGroups: Cardinality, +} +impl Default for SetOpPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RecursiveUnionPath { + pub path: Path, + pub leftpath: *mut Path, + pub rightpath: *mut Path, + pub distinctList: *mut List, + pub wtParam: ::core::ffi::c_int, + pub numGroups: Cardinality, +} +impl Default for RecursiveUnionPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LockRowsPath { + pub path: Path, + pub subpath: *mut Path, + pub rowMarks: *mut List, + pub epqParam: ::core::ffi::c_int, +} +impl Default for LockRowsPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ModifyTablePath { + pub path: Path, + pub subpath: *mut Path, + pub operation: CmdType::Type, + pub canSetTag: bool, + pub nominalRelation: Index, + pub rootRelation: Index, + pub partColsUpdated: bool, + pub resultRelations: *mut List, + pub updateColnosLists: *mut List, + pub withCheckOptionLists: *mut List, + pub returningLists: *mut List, + pub rowMarks: *mut List, + pub onconflict: *mut OnConflictExpr, + pub epqParam: ::core::ffi::c_int, + pub mergeActionLists: *mut List, + pub mergeJoinConditions: *mut List, +} +impl Default for ModifyTablePath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LimitPath { + pub path: Path, + pub subpath: *mut Path, + pub limitOffset: *mut Node, + pub limitCount: *mut Node, + pub limitOption: LimitOption::Type, +} +impl Default for LimitPath { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RestrictInfo { + pub type_: NodeTag, + pub clause: *mut Expr, + pub is_pushed_down: bool, + pub can_join: bool, + pub pseudoconstant: bool, + pub has_clone: bool, + pub is_clone: bool, + pub leakproof: bool, + pub has_volatile: VolatileFunctionStatus::Type, + pub security_level: Index, + pub num_base_rels: ::core::ffi::c_int, + pub clause_relids: Relids, + pub required_relids: Relids, + pub incompatible_relids: Relids, + pub outer_relids: Relids, + pub left_relids: Relids, + pub right_relids: Relids, + pub orclause: *mut Expr, + pub rinfo_serial: ::core::ffi::c_int, + pub parent_ec: *mut EquivalenceClass, + pub eval_cost: QualCost, + pub norm_selec: Selectivity, + pub outer_selec: Selectivity, + pub mergeopfamilies: *mut List, + pub left_ec: *mut EquivalenceClass, + pub right_ec: *mut EquivalenceClass, + pub left_em: *mut EquivalenceMember, + pub right_em: *mut EquivalenceMember, + pub scansel_cache: *mut List, + pub outer_is_left: bool, + pub hashjoinoperator: Oid, + pub left_bucketsize: Selectivity, + pub right_bucketsize: Selectivity, + pub left_mcvfreq: Selectivity, + pub right_mcvfreq: Selectivity, + pub left_hasheqoperator: Oid, + pub right_hasheqoperator: Oid, +} +impl Default for RestrictInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MergeScanSelCache { + pub opfamily: Oid, + pub collation: Oid, + pub strategy: ::core::ffi::c_int, + pub nulls_first: bool, + pub leftstartsel: Selectivity, + pub leftendsel: Selectivity, + pub rightstartsel: Selectivity, + pub rightendsel: Selectivity, +} +impl Default for MergeScanSelCache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlaceHolderVar { + pub xpr: Expr, + pub phexpr: *mut Expr, + pub phrels: Relids, + pub phnullingrels: Relids, + pub phid: Index, + pub phlevelsup: Index, +} +impl Default for PlaceHolderVar { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SpecialJoinInfo { + pub type_: NodeTag, + pub min_lefthand: Relids, + pub min_righthand: Relids, + pub syn_lefthand: Relids, + pub syn_righthand: Relids, + pub jointype: JoinType::Type, + pub ojrelid: Index, + pub commute_above_l: Relids, + pub commute_above_r: Relids, + pub commute_below_l: Relids, + pub commute_below_r: Relids, + pub lhs_strict: bool, + pub semi_can_btree: bool, + pub semi_can_hash: bool, + pub semi_operators: *mut List, + pub semi_rhs_exprs: *mut List, +} +impl Default for SpecialJoinInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OuterJoinClauseInfo { + pub type_: NodeTag, + pub rinfo: *mut RestrictInfo, + pub sjinfo: *mut SpecialJoinInfo, +} +impl Default for OuterJoinClauseInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AppendRelInfo { + pub type_: NodeTag, + pub parent_relid: Index, + pub child_relid: Index, + pub parent_reltype: Oid, + pub child_reltype: Oid, + pub translated_vars: *mut List, + pub num_child_cols: ::core::ffi::c_int, + pub parent_colnos: *mut AttrNumber, + pub parent_reloid: Oid, +} +impl Default for AppendRelInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowIdentityVarInfo { + pub type_: NodeTag, + pub rowidvar: *mut Var, + pub rowidwidth: int32, + pub rowidname: *mut ::core::ffi::c_char, + pub rowidrels: Relids, +} +impl Default for RowIdentityVarInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlaceHolderInfo { + pub type_: NodeTag, + pub phid: Index, + pub ph_var: *mut PlaceHolderVar, + pub ph_eval_at: Relids, + pub ph_lateral: Relids, + pub ph_needed: Relids, + pub ph_width: int32, +} +impl Default for PlaceHolderInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct MinMaxAggInfo { + pub type_: NodeTag, + pub aggfnoid: Oid, + pub aggsortop: Oid, + pub target: *mut Expr, + pub subroot: *mut PlannerInfo, + pub path: *mut Path, + pub pathcost: Cost, + pub param: *mut Param, +} +impl Default for MinMaxAggInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PlannerParamItem { + pub type_: NodeTag, + pub item: *mut Node, + pub paramId: ::core::ffi::c_int, +} +impl Default for PlannerParamItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SemiAntiJoinFactors { + pub outer_match_frac: Selectivity, + pub match_count: Selectivity, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JoinPathExtraData { + pub restrictlist: *mut List, + pub mergeclause_list: *mut List, + pub inner_unique: bool, + pub sjinfo: *mut SpecialJoinInfo, + pub semifactors: SemiAntiJoinFactors, + pub param_source_rels: Relids, +} +impl Default for JoinPathExtraData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PartitionwiseAggregateType { + pub type Type = ::core::ffi::c_uint; + pub const PARTITIONWISE_AGGREGATE_NONE: Type = 0; + pub const PARTITIONWISE_AGGREGATE_FULL: Type = 1; + pub const PARTITIONWISE_AGGREGATE_PARTIAL: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct GroupPathExtraData { + pub flags: ::core::ffi::c_int, + pub partial_costs_set: bool, + pub agg_partial_costs: AggClauseCosts, + pub agg_final_costs: AggClauseCosts, + pub target_parallel_safe: bool, + pub havingQual: *mut Node, + pub targetList: *mut List, + pub patype: PartitionwiseAggregateType::Type, +} +impl Default for GroupPathExtraData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct FinalPathExtraData { + pub limit_needed: bool, + pub limit_tuples: Cardinality, + pub count_est: int64, + pub offset_est: int64, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JoinCostWorkspace { + pub startup_cost: Cost, + pub total_cost: Cost, + pub run_cost: Cost, + pub inner_run_cost: Cost, + pub inner_rescan_run_cost: Cost, + pub outer_rows: Cardinality, + pub inner_rows: Cardinality, + pub outer_skip_rows: Cardinality, + pub inner_skip_rows: Cardinality, + pub numbuckets: ::core::ffi::c_int, + pub numbatches: ::core::ffi::c_int, + pub inner_rows_total: Cardinality, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggInfo { + pub type_: NodeTag, + pub aggrefs: *mut List, + pub transno: ::core::ffi::c_int, + pub shareable: bool, + pub finalfn_oid: Oid, +} +impl Default for AggInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggTransInfo { + pub type_: NodeTag, + pub args: *mut List, + pub aggfilter: *mut Expr, + pub transfn_oid: Oid, + pub serialfn_oid: Oid, + pub deserialfn_oid: Oid, + pub combinefn_oid: Oid, + pub aggtranstype: Oid, + pub aggtranstypmod: int32, + pub transtypeLen: ::core::ffi::c_int, + pub transtypeByVal: bool, + pub aggtransspace: int32, + pub initValue: Datum, + pub initValueIsNull: bool, +} +impl Default for AggTransInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type GetForeignRelSize_function = ::core::option::Option< + unsafe extern "C" fn(root: *mut PlannerInfo, baserel: *mut RelOptInfo, foreigntableid: Oid), +>; +pub type GetForeignPaths_function = ::core::option::Option< + unsafe extern "C" fn(root: *mut PlannerInfo, baserel: *mut RelOptInfo, foreigntableid: Oid), +>; +pub type GetForeignPlan_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + foreigntableid: Oid, + best_path: *mut ForeignPath, + tlist: *mut List, + scan_clauses: *mut List, + outer_plan: *mut Plan, + ) -> *mut ForeignScan, +>; +pub type BeginForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, eflags: ::core::ffi::c_int), +>; +pub type IterateForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState) -> *mut TupleTableSlot, +>; +pub type RecheckForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, slot: *mut TupleTableSlot) -> bool, +>; +pub type ReScanForeignScan_function = + ::core::option::Option; +pub type EndForeignScan_function = + ::core::option::Option; +pub type GetForeignJoinPaths_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + extra: *mut JoinPathExtraData, + ), +>; +pub type GetForeignUpperPaths_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + stage: UpperRelationKind::Type, + input_rel: *mut RelOptInfo, + output_rel: *mut RelOptInfo, + extra: *mut ::core::ffi::c_void, + ), +>; +pub type AddForeignUpdateTargets_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rtindex: Index, + target_rte: *mut RangeTblEntry, + target_relation: Relation, + ), +>; +pub type PlanForeignModify_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + plan: *mut ModifyTable, + resultRelation: Index, + subplan_index: ::core::ffi::c_int, + ) -> *mut List, +>; +pub type BeginForeignModify_function = ::core::option::Option< + unsafe extern "C" fn( + mtstate: *mut ModifyTableState, + rinfo: *mut ResultRelInfo, + fdw_private: *mut List, + subplan_index: ::core::ffi::c_int, + eflags: ::core::ffi::c_int, + ), +>; +pub type ExecForeignInsert_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + planSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot, +>; +pub type ExecForeignBatchInsert_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slots: *mut *mut TupleTableSlot, + planSlots: *mut *mut TupleTableSlot, + numSlots: *mut ::core::ffi::c_int, + ) -> *mut *mut TupleTableSlot, +>; +pub type GetForeignModifyBatchSize_function = + ::core::option::Option ::core::ffi::c_int>; +pub type ExecForeignUpdate_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + planSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot, +>; +pub type ExecForeignDelete_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + rinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + planSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot, +>; +pub type EndForeignModify_function = + ::core::option::Option; +pub type BeginForeignInsert_function = ::core::option::Option< + unsafe extern "C" fn(mtstate: *mut ModifyTableState, rinfo: *mut ResultRelInfo), +>; +pub type EndForeignInsert_function = + ::core::option::Option; +pub type IsForeignRelUpdatable_function = + ::core::option::Option ::core::ffi::c_int>; +pub type PlanDirectModify_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + plan: *mut ModifyTable, + resultRelation: Index, + subplan_index: ::core::ffi::c_int, + ) -> bool, +>; +pub type BeginDirectModify_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, eflags: ::core::ffi::c_int), +>; +pub type IterateDirectModify_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState) -> *mut TupleTableSlot, +>; +pub type EndDirectModify_function = + ::core::option::Option; +pub type GetForeignRowMarkType_function = ::core::option::Option< + unsafe extern "C" fn( + rte: *mut RangeTblEntry, + strength: LockClauseStrength::Type, + ) -> RowMarkType::Type, +>; +pub type RefetchForeignRow_function = ::core::option::Option< + unsafe extern "C" fn( + estate: *mut EState, + erm: *mut ExecRowMark, + rowid: Datum, + slot: *mut TupleTableSlot, + updated: *mut bool, + ), +>; +pub type ExplainForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, es: *mut ExplainState), +>; +pub type ExplainForeignModify_function = ::core::option::Option< + unsafe extern "C" fn( + mtstate: *mut ModifyTableState, + rinfo: *mut ResultRelInfo, + fdw_private: *mut List, + subplan_index: ::core::ffi::c_int, + es: *mut ExplainState, + ), +>; +pub type ExplainDirectModify_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, es: *mut ExplainState), +>; +pub type AcquireSampleRowsFunc = ::core::option::Option< + unsafe extern "C" fn( + relation: Relation, + elevel: ::core::ffi::c_int, + rows: *mut HeapTuple, + targrows: ::core::ffi::c_int, + totalrows: *mut f64, + totaldeadrows: *mut f64, + ) -> ::core::ffi::c_int, +>; +pub type AnalyzeForeignTable_function = ::core::option::Option< + unsafe extern "C" fn( + relation: Relation, + func: *mut AcquireSampleRowsFunc, + totalpages: *mut BlockNumber, + ) -> bool, +>; +pub type ImportForeignSchema_function = ::core::option::Option< + unsafe extern "C" fn(stmt: *mut ImportForeignSchemaStmt, serverOid: Oid) -> *mut List, +>; +pub type ExecForeignTruncate_function = ::core::option::Option< + unsafe extern "C" fn(rels: *mut List, behavior: DropBehavior::Type, restart_seqs: bool), +>; +pub type EstimateDSMForeignScan_function = ::core::option::Option< + unsafe extern "C" fn(node: *mut ForeignScanState, pcxt: *mut ParallelContext) -> Size, +>; +pub type InitializeDSMForeignScan_function = ::core::option::Option< + unsafe extern "C" fn( + node: *mut ForeignScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), +>; +pub type ReInitializeDSMForeignScan_function = ::core::option::Option< + unsafe extern "C" fn( + node: *mut ForeignScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), +>; +pub type InitializeWorkerForeignScan_function = ::core::option::Option< + unsafe extern "C" fn( + node: *mut ForeignScanState, + toc: *mut shm_toc, + coordinate: *mut ::core::ffi::c_void, + ), +>; +pub type ShutdownForeignScan_function = + ::core::option::Option; +pub type IsForeignScanParallelSafe_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + rte: *mut RangeTblEntry, + ) -> bool, +>; +pub type ReparameterizeForeignPathByChild_function = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + fdw_private: *mut List, + child_rel: *mut RelOptInfo, + ) -> *mut List, +>; +pub type IsForeignPathAsyncCapable_function = + ::core::option::Option bool>; +pub type ForeignAsyncRequest_function = + ::core::option::Option; +pub type ForeignAsyncConfigureWait_function = + ::core::option::Option; +pub type ForeignAsyncNotify_function = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct FdwRoutine { + pub type_: NodeTag, + pub GetForeignRelSize: GetForeignRelSize_function, + pub GetForeignPaths: GetForeignPaths_function, + pub GetForeignPlan: GetForeignPlan_function, + pub BeginForeignScan: BeginForeignScan_function, + pub IterateForeignScan: IterateForeignScan_function, + pub ReScanForeignScan: ReScanForeignScan_function, + pub EndForeignScan: EndForeignScan_function, + pub GetForeignJoinPaths: GetForeignJoinPaths_function, + pub GetForeignUpperPaths: GetForeignUpperPaths_function, + pub AddForeignUpdateTargets: AddForeignUpdateTargets_function, + pub PlanForeignModify: PlanForeignModify_function, + pub BeginForeignModify: BeginForeignModify_function, + pub ExecForeignInsert: ExecForeignInsert_function, + pub ExecForeignBatchInsert: ExecForeignBatchInsert_function, + pub GetForeignModifyBatchSize: GetForeignModifyBatchSize_function, + pub ExecForeignUpdate: ExecForeignUpdate_function, + pub ExecForeignDelete: ExecForeignDelete_function, + pub EndForeignModify: EndForeignModify_function, + pub BeginForeignInsert: BeginForeignInsert_function, + pub EndForeignInsert: EndForeignInsert_function, + pub IsForeignRelUpdatable: IsForeignRelUpdatable_function, + pub PlanDirectModify: PlanDirectModify_function, + pub BeginDirectModify: BeginDirectModify_function, + pub IterateDirectModify: IterateDirectModify_function, + pub EndDirectModify: EndDirectModify_function, + pub GetForeignRowMarkType: GetForeignRowMarkType_function, + pub RefetchForeignRow: RefetchForeignRow_function, + pub RecheckForeignScan: RecheckForeignScan_function, + pub ExplainForeignScan: ExplainForeignScan_function, + pub ExplainForeignModify: ExplainForeignModify_function, + pub ExplainDirectModify: ExplainDirectModify_function, + pub AnalyzeForeignTable: AnalyzeForeignTable_function, + pub ImportForeignSchema: ImportForeignSchema_function, + pub ExecForeignTruncate: ExecForeignTruncate_function, + pub IsForeignScanParallelSafe: IsForeignScanParallelSafe_function, + pub EstimateDSMForeignScan: EstimateDSMForeignScan_function, + pub InitializeDSMForeignScan: InitializeDSMForeignScan_function, + pub ReInitializeDSMForeignScan: ReInitializeDSMForeignScan_function, + pub InitializeWorkerForeignScan: InitializeWorkerForeignScan_function, + pub ShutdownForeignScan: ShutdownForeignScan_function, + pub ReparameterizeForeignPathByChild: ReparameterizeForeignPathByChild_function, + pub IsForeignPathAsyncCapable: IsForeignPathAsyncCapable_function, + pub ForeignAsyncRequest: ForeignAsyncRequest_function, + pub ForeignAsyncConfigureWait: ForeignAsyncConfigureWait_function, + pub ForeignAsyncNotify: ForeignAsyncNotify_function, +} +impl Default for FdwRoutine { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignDataWrapper { + pub fdwid: Oid, + pub owner: Oid, + pub fdwname: *mut ::core::ffi::c_char, + pub fdwhandler: Oid, + pub fdwvalidator: Oid, + pub options: *mut List, +} +impl Default for ForeignDataWrapper { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignServer { + pub serverid: Oid, + pub fdwid: Oid, + pub owner: Oid, + pub servername: *mut ::core::ffi::c_char, + pub servertype: *mut ::core::ffi::c_char, + pub serverversion: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for ForeignServer { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UserMapping { + pub umid: Oid, + pub userid: Oid, + pub serverid: Oid, + pub options: *mut List, +} +impl Default for UserMapping { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ForeignTable { + pub relid: Oid, + pub serverid: Oid, + pub options: *mut List, +} +impl Default for ForeignTable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JitInstrumentation { + pub created_functions: usize, + pub generation_counter: instr_time, + pub deform_counter: instr_time, + pub inlining_counter: instr_time, + pub optimization_counter: instr_time, + pub emission_counter: instr_time, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct SharedJitInstrumentation { + pub num_workers: ::core::ffi::c_int, + pub jit_instr: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JitContext { + pub flags: ::core::ffi::c_int, + pub instr: JitInstrumentation, +} +pub type JitProviderInit = + ::core::option::Option; +pub type JitProviderResetAfterErrorCB = ::core::option::Option; +pub type JitProviderReleaseContextCB = + ::core::option::Option; +pub type JitProviderCompileExprCB = + ::core::option::Option bool>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct JitProviderCallbacks { + pub reset_after_error: JitProviderResetAfterErrorCB, + pub release_context: JitProviderReleaseContextCB, + pub compile_expr: JitProviderCompileExprCB, +} +pub type pg_wchar = ::core::ffi::c_uint; +pub mod pg_enc { + pub type Type = ::core::ffi::c_uint; + pub const PG_SQL_ASCII: Type = 0; + pub const PG_EUC_JP: Type = 1; + pub const PG_EUC_CN: Type = 2; + pub const PG_EUC_KR: Type = 3; + pub const PG_EUC_TW: Type = 4; + pub const PG_EUC_JIS_2004: Type = 5; + pub const PG_UTF8: Type = 6; + pub const PG_MULE_INTERNAL: Type = 7; + pub const PG_LATIN1: Type = 8; + pub const PG_LATIN2: Type = 9; + pub const PG_LATIN3: Type = 10; + pub const PG_LATIN4: Type = 11; + pub const PG_LATIN5: Type = 12; + pub const PG_LATIN6: Type = 13; + pub const PG_LATIN7: Type = 14; + pub const PG_LATIN8: Type = 15; + pub const PG_LATIN9: Type = 16; + pub const PG_LATIN10: Type = 17; + pub const PG_WIN1256: Type = 18; + pub const PG_WIN1258: Type = 19; + pub const PG_WIN866: Type = 20; + pub const PG_WIN874: Type = 21; + pub const PG_KOI8R: Type = 22; + pub const PG_WIN1251: Type = 23; + pub const PG_WIN1252: Type = 24; + pub const PG_ISO_8859_5: Type = 25; + pub const PG_ISO_8859_6: Type = 26; + pub const PG_ISO_8859_7: Type = 27; + pub const PG_ISO_8859_8: Type = 28; + pub const PG_WIN1250: Type = 29; + pub const PG_WIN1253: Type = 30; + pub const PG_WIN1254: Type = 31; + pub const PG_WIN1255: Type = 32; + pub const PG_WIN1257: Type = 33; + pub const PG_KOI8U: Type = 34; + pub const PG_SJIS: Type = 35; + pub const PG_BIG5: Type = 36; + pub const PG_GBK: Type = 37; + pub const PG_UHC: Type = 38; + pub const PG_GB18030: Type = 39; + pub const PG_JOHAB: Type = 40; + pub const PG_SHIFT_JIS_2004: Type = 41; + pub const _PG_LAST_ENCODING_: Type = 42; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_enc2name { + pub name: *const ::core::ffi::c_char, + pub encoding: pg_enc::Type, +} +impl Default for pg_enc2name { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type mb2wchar_with_len_converter = ::core::option::Option< + unsafe extern "C" fn( + from: *const ::core::ffi::c_uchar, + to: *mut pg_wchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type wchar2mb_with_len_converter = ::core::option::Option< + unsafe extern "C" fn( + from: *const pg_wchar, + to: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type mblen_converter = ::core::option::Option< + unsafe extern "C" fn(mbstr: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int, +>; +pub type mbdisplaylen_converter = ::core::option::Option< + unsafe extern "C" fn(mbstr: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int, +>; +pub type mbcharacter_incrementer = ::core::option::Option< + unsafe extern "C" fn(mbstr: *mut ::core::ffi::c_uchar, len: ::core::ffi::c_int) -> bool, +>; +pub type mbchar_verifier = ::core::option::Option< + unsafe extern "C" fn( + mbstr: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +pub type mbstr_verifier = ::core::option::Option< + unsafe extern "C" fn( + mbstr: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int, +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_wchar_tbl { + pub mb2wchar_with_len: mb2wchar_with_len_converter, + pub wchar2mb_with_len: wchar2mb_with_len_converter, + pub mblen: mblen_converter, + pub dsplen: mbdisplaylen_converter, + pub mbverifychar: mbchar_verifier, + pub mbverifystr: mbstr_verifier, + pub maxmblen: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pg_mb_radix_tree { + pub chars16: *const uint16, + pub chars32: *const uint32, + pub b1root: uint32, + pub b1_lower: uint8, + pub b1_upper: uint8, + pub b2root: uint32, + pub b2_1_lower: uint8, + pub b2_1_upper: uint8, + pub b2_2_lower: uint8, + pub b2_2_upper: uint8, + pub b3root: uint32, + pub b3_1_lower: uint8, + pub b3_1_upper: uint8, + pub b3_2_lower: uint8, + pub b3_2_upper: uint8, + pub b3_3_lower: uint8, + pub b3_3_upper: uint8, + pub b4root: uint32, + pub b4_1_lower: uint8, + pub b4_1_upper: uint8, + pub b4_2_lower: uint8, + pub b4_2_upper: uint8, + pub b4_3_lower: uint8, + pub b4_3_upper: uint8, + pub b4_4_lower: uint8, + pub b4_4_upper: uint8, +} +impl Default for pg_mb_radix_tree { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_utf_to_local_combined { + pub utf1: uint32, + pub utf2: uint32, + pub code: uint32, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_local_to_utf_combined { + pub code: uint32, + pub utf1: uint32, + pub utf2: uint32, +} +pub type utf_local_conversion_func = + ::core::option::Option uint32>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExtensibleNode { + pub type_: NodeTag, + pub extnodename: *const ::core::ffi::c_char, +} +impl Default for ExtensibleNode { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExtensibleNodeMethods { + pub extnodename: *const ::core::ffi::c_char, + pub node_size: Size, + pub nodeCopy: ::core::option::Option< + unsafe extern "C" fn(newnode: *mut ExtensibleNode, oldnode: *const ExtensibleNode), + >, + pub nodeEqual: ::core::option::Option< + unsafe extern "C" fn(a: *const ExtensibleNode, b: *const ExtensibleNode) -> bool, + >, + pub nodeOut: ::core::option::Option< + unsafe extern "C" fn(str_: *mut StringInfoData, node: *const ExtensibleNode), + >, + pub nodeRead: ::core::option::Option, +} +impl Default for ExtensibleNodeMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomPathMethods { + pub CustomName: *const ::core::ffi::c_char, + pub PlanCustomPath: ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + best_path: *mut CustomPath, + tlist: *mut List, + clauses: *mut List, + custom_plans: *mut List, + ) -> *mut Plan, + >, + pub ReparameterizeCustomPathByChild: ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + custom_private: *mut List, + child_rel: *mut RelOptInfo, + ) -> *mut List, + >, +} +impl Default for CustomPathMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomScanMethods { + pub CustomName: *const ::core::ffi::c_char, + pub CreateCustomScanState: + ::core::option::Option *mut Node>, +} +impl Default for CustomScanMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CustomExecMethods { + pub CustomName: *const ::core::ffi::c_char, + pub BeginCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + estate: *mut EState, + eflags: ::core::ffi::c_int, + ), + >, + pub ExecCustomScan: ::core::option::Option< + unsafe extern "C" fn(node: *mut CustomScanState) -> *mut TupleTableSlot, + >, + pub EndCustomScan: ::core::option::Option, + pub ReScanCustomScan: ::core::option::Option, + pub MarkPosCustomScan: ::core::option::Option, + pub RestrPosCustomScan: + ::core::option::Option, + pub EstimateDSMCustomScan: ::core::option::Option< + unsafe extern "C" fn(node: *mut CustomScanState, pcxt: *mut ParallelContext) -> Size, + >, + pub InitializeDSMCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), + >, + pub ReInitializeDSMCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + pcxt: *mut ParallelContext, + coordinate: *mut ::core::ffi::c_void, + ), + >, + pub InitializeWorkerCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + toc: *mut shm_toc, + coordinate: *mut ::core::ffi::c_void, + ), + >, + pub ShutdownCustomScan: + ::core::option::Option, + pub ExplainCustomScan: ::core::option::Option< + unsafe extern "C" fn( + node: *mut CustomScanState, + ancestors: *mut List, + es: *mut ExplainState, + ), + >, +} +impl Default for CustomExecMethods { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type check_function_callback = ::core::option::Option< + unsafe extern "C" fn(func_id: Oid, context: *mut ::core::ffi::c_void) -> bool, +>; +pub type tree_walker_callback = ::core::option::Option< + unsafe extern "C" fn(node: *mut Node, context: *mut ::core::ffi::c_void) -> bool, +>; +pub type planstate_tree_walker_callback = ::core::option::Option< + unsafe extern "C" fn(planstate: *mut PlanState, context: *mut ::core::ffi::c_void) -> bool, +>; +pub type tree_mutator_callback = ::core::option::Option< + unsafe extern "C" fn(node: *mut Node, context: *mut ::core::ffi::c_void) -> *mut Node, +>; +pub mod ReplicationKind { + pub type Type = ::core::ffi::c_uint; + pub const REPLICATION_KIND_PHYSICAL: Type = 0; + pub const REPLICATION_KIND_LOGICAL: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct IdentifySystemCmd { + pub type_: NodeTag, +} +impl Default for IdentifySystemCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BaseBackupCmd { + pub type_: NodeTag, + pub options: *mut List, +} +impl Default for BaseBackupCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CreateReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, + pub kind: ReplicationKind::Type, + pub plugin: *mut ::core::ffi::c_char, + pub temporary: bool, + pub options: *mut List, +} +impl Default for CreateReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DropReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, + pub wait: bool, +} +impl Default for DropReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, + pub options: *mut List, +} +impl Default for AlterReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StartReplicationCmd { + pub type_: NodeTag, + pub kind: ReplicationKind::Type, + pub slotname: *mut ::core::ffi::c_char, + pub timeline: TimeLineID, + pub startpoint: XLogRecPtr, + pub options: *mut List, +} +impl Default for StartReplicationCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReadReplicationSlotCmd { + pub type_: NodeTag, + pub slotname: *mut ::core::ffi::c_char, +} +impl Default for ReadReplicationSlotCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TimeLineHistoryCmd { + pub type_: NodeTag, + pub timeline: TimeLineID, +} +impl Default for TimeLineHistoryCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct UploadManifestCmd { + pub type_: NodeTag, +} +impl Default for UploadManifestCmd { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type SubscriptTransform = ::core::option::Option< + unsafe extern "C" fn( + sbsref: *mut SubscriptingRef, + indirection: *mut List, + pstate: *mut ParseState, + isSlice: bool, + isAssignment: bool, + ), +>; +pub type SubscriptExecSetup = ::core::option::Option< + unsafe extern "C" fn( + sbsref: *const SubscriptingRef, + sbsrefstate: *mut SubscriptingRefState, + methods: *mut SubscriptExecSteps, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SubscriptRoutines { + pub transform: SubscriptTransform, + pub exec_setup: SubscriptExecSetup, + pub fetch_strict: bool, + pub fetch_leakproof: bool, + pub store_leakproof: bool, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestSimplify { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub fcall: *mut FuncExpr, +} +impl Default for SupportRequestSimplify { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestSelectivity { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub args: *mut List, + pub inputcollid: Oid, + pub is_join: bool, + pub varRelid: ::core::ffi::c_int, + pub jointype: JoinType::Type, + pub sjinfo: *mut SpecialJoinInfo, + pub selectivity: Selectivity, +} +impl Default for SupportRequestSelectivity { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestCost { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub node: *mut Node, + pub startup: Cost, + pub per_tuple: Cost, +} +impl Default for SupportRequestCost { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestRows { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub node: *mut Node, + pub rows: f64, +} +impl Default for SupportRequestRows { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestIndexCondition { + pub type_: NodeTag, + pub root: *mut PlannerInfo, + pub funcid: Oid, + pub node: *mut Node, + pub indexarg: ::core::ffi::c_int, + pub index: *mut IndexOptInfo, + pub indexcol: ::core::ffi::c_int, + pub opfamily: Oid, + pub indexcollation: Oid, + pub lossy: bool, +} +impl Default for SupportRequestIndexCondition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestWFuncMonotonic { + pub type_: NodeTag, + pub window_func: *mut WindowFunc, + pub window_clause: *mut WindowClause, + pub monotonic: MonotonicFunction::Type, +} +impl Default for SupportRequestWFuncMonotonic { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct SupportRequestOptimizeWindowClause { + pub type_: NodeTag, + pub window_func: *mut WindowFunc, + pub window_clause: *mut WindowClause, + pub frameOptions: ::core::ffi::c_int, +} +impl Default for SupportRequestOptimizeWindowClause { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WindowFuncLists { + pub numWindowFuncs: ::core::ffi::c_int, + pub maxWinRef: Index, + pub windowFuncs: *mut *mut List, +} +impl Default for WindowFuncLists { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ConstraintExclusionType { + pub type Type = ::core::ffi::c_uint; + pub const CONSTRAINT_EXCLUSION_OFF: Type = 0; + pub const CONSTRAINT_EXCLUSION_ON: Type = 1; + pub const CONSTRAINT_EXCLUSION_PARTITION: Type = 2; +} +pub mod DebugParallelMode { + pub type Type = ::core::ffi::c_uint; + pub const DEBUG_PARALLEL_OFF: Type = 0; + pub const DEBUG_PARALLEL_ON: Type = 1; + pub const DEBUG_PARALLEL_REGRESS: Type = 2; +} +pub type set_rel_pathlist_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + rti: Index, + rte: *mut RangeTblEntry, + ), +>; +pub type set_join_pathlist_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + extra: *mut JoinPathExtraData, + ), +>; +pub type join_search_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + levels_needed: ::core::ffi::c_int, + initial_rels: *mut List, + ) -> *mut RelOptInfo, +>; +pub type ec_matches_callback_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + ec: *mut EquivalenceClass, + em: *mut EquivalenceMember, + arg: *mut ::core::ffi::c_void, + ) -> bool, +>; +pub mod PathKeysComparison { + pub type Type = ::core::ffi::c_uint; + pub const PATHKEYS_EQUAL: Type = 0; + pub const PATHKEYS_BETTER1: Type = 1; + pub const PATHKEYS_BETTER2: Type = 2; + pub const PATHKEYS_DIFFERENT: Type = 3; +} +pub type get_relation_info_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + relationObjectId: Oid, + inhparent: bool, + rel: *mut RelOptInfo, + ), +>; +pub type query_pathkeys_callback = ::core::option::Option< + unsafe extern "C" fn(root: *mut PlannerInfo, extra: *mut ::core::ffi::c_void), +>; +pub type planner_hook_type = ::core::option::Option< + unsafe extern "C" fn( + parse: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut PlannedStmt, +>; +pub type create_upper_paths_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + stage: UpperRelationKind::Type, + input_rel: *mut RelOptInfo, + output_rel: *mut RelOptInfo, + extra: *mut ::core::ffi::c_void, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LocationLen { + pub location: ::core::ffi::c_int, + pub length: ::core::ffi::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JumbleState { + pub jumble: *mut ::core::ffi::c_uchar, + pub jumble_len: Size, + pub clocations: *mut LocationLen, + pub clocations_buf_size: ::core::ffi::c_int, + pub clocations_count: ::core::ffi::c_int, + pub highest_extern_param_id: ::core::ffi::c_int, +} +impl Default for JumbleState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod ComputeQueryIdType { + pub type Type = ::core::ffi::c_uint; + pub const COMPUTE_QUERY_ID_OFF: Type = 0; + pub const COMPUTE_QUERY_ID_ON: Type = 1; + pub const COMPUTE_QUERY_ID_AUTO: Type = 2; + pub const COMPUTE_QUERY_ID_REGRESS: Type = 3; +} +pub type post_parse_analyze_hook_type = ::core::option::Option< + unsafe extern "C" fn(pstate: *mut ParseState, query: *mut Query, jstate: *mut JumbleState), +>; +pub mod FuncDetailCode { + pub type Type = ::core::ffi::c_uint; + pub const FUNCDETAIL_NOTFOUND: Type = 0; + pub const FUNCDETAIL_MULTIPLE: Type = 1; + pub const FUNCDETAIL_NORMAL: Type = 2; + pub const FUNCDETAIL_PROCEDURE: Type = 3; + pub const FUNCDETAIL_AGGREGATE: Type = 4; + pub const FUNCDETAIL_WINDOWFUNC: Type = 5; + pub const FUNCDETAIL_COERCION: Type = 6; +} +pub type Operator = HeapTuple; +pub type Type = HeapTuple; +pub type TYPCATEGORY = ::core::ffi::c_char; +pub mod CoercionPathType { + pub type Type = ::core::ffi::c_uint; + pub const COERCION_PATH_NONE: Type = 0; + pub const COERCION_PATH_FUNC: Type = 1; + pub const COERCION_PATH_RELABELTYPE: Type = 2; + pub const COERCION_PATH_ARRAYCOERCE: Type = 3; + pub const COERCION_PATH_COERCEVIAIO: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedRecordHeader { + pub hdr: ExpandedObjectHeader, + pub er_magic: ::core::ffi::c_int, + pub flags: ::core::ffi::c_int, + pub er_decltypeid: Oid, + pub er_typeid: Oid, + pub er_typmod: int32, + pub er_tupdesc: TupleDesc, + pub er_tupdesc_id: uint64, + pub dvalues: *mut Datum, + pub dnulls: *mut bool, + pub nfields: ::core::ffi::c_int, + pub flat_size: Size, + pub data_len: Size, + pub hoff: ::core::ffi::c_int, + pub hasnull: bool, + pub fvalue: HeapTuple, + pub fstartptr: *mut ::core::ffi::c_char, + pub fendptr: *mut ::core::ffi::c_char, + pub er_short_term_cxt: MemoryContext, + pub er_dummy_header: *mut ExpandedRecordHeader, + pub er_domaininfo: *mut ::core::ffi::c_void, + pub er_mcb: MemoryContextCallback, +} +impl Default for ExpandedRecordHeader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExpandedRecordFieldInfo { + pub fnumber: ::core::ffi::c_int, + pub ftypeid: Oid, + pub ftypmod: int32, + pub fcollation: Oid, +} +impl Default for ExpandedRecordFieldInfo { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PLpgSQL_nsitem_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_NSTYPE_LABEL: Type = 0; + pub const PLPGSQL_NSTYPE_VAR: Type = 1; + pub const PLPGSQL_NSTYPE_REC: Type = 2; +} +pub mod PLpgSQL_label_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_LABEL_BLOCK: Type = 0; + pub const PLPGSQL_LABEL_LOOP: Type = 1; + pub const PLPGSQL_LABEL_OTHER: Type = 2; +} +pub mod PLpgSQL_datum_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_DTYPE_VAR: Type = 0; + pub const PLPGSQL_DTYPE_ROW: Type = 1; + pub const PLPGSQL_DTYPE_REC: Type = 2; + pub const PLPGSQL_DTYPE_RECFIELD: Type = 3; + pub const PLPGSQL_DTYPE_PROMISE: Type = 4; +} +pub mod PLpgSQL_promise_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_PROMISE_NONE: Type = 0; + pub const PLPGSQL_PROMISE_TG_NAME: Type = 1; + pub const PLPGSQL_PROMISE_TG_WHEN: Type = 2; + pub const PLPGSQL_PROMISE_TG_LEVEL: Type = 3; + pub const PLPGSQL_PROMISE_TG_OP: Type = 4; + pub const PLPGSQL_PROMISE_TG_RELID: Type = 5; + pub const PLPGSQL_PROMISE_TG_TABLE_NAME: Type = 6; + pub const PLPGSQL_PROMISE_TG_TABLE_SCHEMA: Type = 7; + pub const PLPGSQL_PROMISE_TG_NARGS: Type = 8; + pub const PLPGSQL_PROMISE_TG_ARGV: Type = 9; + pub const PLPGSQL_PROMISE_TG_EVENT: Type = 10; + pub const PLPGSQL_PROMISE_TG_TAG: Type = 11; +} +pub mod PLpgSQL_type_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_TTYPE_SCALAR: Type = 0; + pub const PLPGSQL_TTYPE_REC: Type = 1; + pub const PLPGSQL_TTYPE_PSEUDO: Type = 2; +} +pub mod PLpgSQL_stmt_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_STMT_BLOCK: Type = 0; + pub const PLPGSQL_STMT_ASSIGN: Type = 1; + pub const PLPGSQL_STMT_IF: Type = 2; + pub const PLPGSQL_STMT_CASE: Type = 3; + pub const PLPGSQL_STMT_LOOP: Type = 4; + pub const PLPGSQL_STMT_WHILE: Type = 5; + pub const PLPGSQL_STMT_FORI: Type = 6; + pub const PLPGSQL_STMT_FORS: Type = 7; + pub const PLPGSQL_STMT_FORC: Type = 8; + pub const PLPGSQL_STMT_FOREACH_A: Type = 9; + pub const PLPGSQL_STMT_EXIT: Type = 10; + pub const PLPGSQL_STMT_RETURN: Type = 11; + pub const PLPGSQL_STMT_RETURN_NEXT: Type = 12; + pub const PLPGSQL_STMT_RETURN_QUERY: Type = 13; + pub const PLPGSQL_STMT_RAISE: Type = 14; + pub const PLPGSQL_STMT_ASSERT: Type = 15; + pub const PLPGSQL_STMT_EXECSQL: Type = 16; + pub const PLPGSQL_STMT_DYNEXECUTE: Type = 17; + pub const PLPGSQL_STMT_DYNFORS: Type = 18; + pub const PLPGSQL_STMT_GETDIAG: Type = 19; + pub const PLPGSQL_STMT_OPEN: Type = 20; + pub const PLPGSQL_STMT_FETCH: Type = 21; + pub const PLPGSQL_STMT_CLOSE: Type = 22; + pub const PLPGSQL_STMT_PERFORM: Type = 23; + pub const PLPGSQL_STMT_CALL: Type = 24; + pub const PLPGSQL_STMT_COMMIT: Type = 25; + pub const PLPGSQL_STMT_ROLLBACK: Type = 26; +} +pub mod _bindgen_ty_22 { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_RC_OK: Type = 0; + pub const PLPGSQL_RC_EXIT: Type = 1; + pub const PLPGSQL_RC_RETURN: Type = 2; + pub const PLPGSQL_RC_CONTINUE: Type = 3; +} +pub mod PLpgSQL_getdiag_kind { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_GETDIAG_ROW_COUNT: Type = 0; + pub const PLPGSQL_GETDIAG_ROUTINE_OID: Type = 1; + pub const PLPGSQL_GETDIAG_CONTEXT: Type = 2; + pub const PLPGSQL_GETDIAG_ERROR_CONTEXT: Type = 3; + pub const PLPGSQL_GETDIAG_ERROR_DETAIL: Type = 4; + pub const PLPGSQL_GETDIAG_ERROR_HINT: Type = 5; + pub const PLPGSQL_GETDIAG_RETURNED_SQLSTATE: Type = 6; + pub const PLPGSQL_GETDIAG_COLUMN_NAME: Type = 7; + pub const PLPGSQL_GETDIAG_CONSTRAINT_NAME: Type = 8; + pub const PLPGSQL_GETDIAG_DATATYPE_NAME: Type = 9; + pub const PLPGSQL_GETDIAG_MESSAGE_TEXT: Type = 10; + pub const PLPGSQL_GETDIAG_TABLE_NAME: Type = 11; + pub const PLPGSQL_GETDIAG_SCHEMA_NAME: Type = 12; +} +pub mod PLpgSQL_raise_option_type { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_RAISEOPTION_ERRCODE: Type = 0; + pub const PLPGSQL_RAISEOPTION_MESSAGE: Type = 1; + pub const PLPGSQL_RAISEOPTION_DETAIL: Type = 2; + pub const PLPGSQL_RAISEOPTION_HINT: Type = 3; + pub const PLPGSQL_RAISEOPTION_COLUMN: Type = 4; + pub const PLPGSQL_RAISEOPTION_CONSTRAINT: Type = 5; + pub const PLPGSQL_RAISEOPTION_DATATYPE: Type = 6; + pub const PLPGSQL_RAISEOPTION_TABLE: Type = 7; + pub const PLPGSQL_RAISEOPTION_SCHEMA: Type = 8; +} +pub mod PLpgSQL_resolve_option { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_RESOLVE_ERROR: Type = 0; + pub const PLPGSQL_RESOLVE_VARIABLE: Type = 1; + pub const PLPGSQL_RESOLVE_COLUMN: Type = 2; +} +#[doc = " Node and structure definitions"] +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_type { + pub typname: *mut ::core::ffi::c_char, + pub typoid: Oid, + pub ttype: PLpgSQL_type_type::Type, + pub typlen: int16, + pub typbyval: bool, + pub typtype: ::core::ffi::c_char, + pub collation: Oid, + pub typisarray: bool, + pub atttypmod: int32, + pub origtypname: *mut TypeName, + pub tcache: *mut TypeCacheEntry, + pub tupdesc_id: uint64, +} +impl Default for PLpgSQL_type { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_expr { + pub query: *mut ::core::ffi::c_char, + pub parseMode: RawParseMode::Type, + pub plan: SPIPlanPtr, + pub paramnos: *mut Bitmapset, + pub func: *mut PLpgSQL_function, + pub ns: *mut PLpgSQL_nsitem, + pub expr_simple_expr: *mut Expr, + pub expr_simple_type: Oid, + pub expr_simple_typmod: int32, + pub expr_simple_mutable: bool, + pub target_param: ::core::ffi::c_int, + pub expr_rw_param: *mut Param, + pub expr_simple_plansource: *mut CachedPlanSource, + pub expr_simple_plan: *mut CachedPlan, + pub expr_simple_plan_lxid: LocalTransactionId, + pub expr_simple_state: *mut ExprState, + pub expr_simple_in_use: bool, + pub expr_simple_lxid: LocalTransactionId, +} +impl Default for PLpgSQL_expr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_datum { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, +} +impl Default for PLpgSQL_datum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_variable { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_variable { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_var { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, + pub datatype: *mut PLpgSQL_type, + pub cursor_explicit_expr: *mut PLpgSQL_expr, + pub cursor_explicit_argrow: ::core::ffi::c_int, + pub cursor_options: ::core::ffi::c_int, + pub value: Datum, + pub isnull: bool, + pub freeval: bool, + pub promise: PLpgSQL_promise_type::Type, +} +impl Default for PLpgSQL_var { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_row { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, + pub rowtupdesc: TupleDesc, + pub nfields: ::core::ffi::c_int, + pub fieldnames: *mut *mut ::core::ffi::c_char, + pub varnos: *mut ::core::ffi::c_int, +} +impl Default for PLpgSQL_row { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_rec { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub refname: *mut ::core::ffi::c_char, + pub lineno: ::core::ffi::c_int, + pub isconst: bool, + pub notnull: bool, + pub default_val: *mut PLpgSQL_expr, + pub datatype: *mut PLpgSQL_type, + pub rectypeid: Oid, + pub firstfield: ::core::ffi::c_int, + pub erh: *mut ExpandedRecordHeader, +} +impl Default for PLpgSQL_rec { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_recfield { + pub dtype: PLpgSQL_datum_type::Type, + pub dno: ::core::ffi::c_int, + pub fieldname: *mut ::core::ffi::c_char, + pub recparentno: ::core::ffi::c_int, + pub nextfield: ::core::ffi::c_int, + pub rectupledescid: uint64, + pub finfo: ExpandedRecordFieldInfo, +} +impl Default for PLpgSQL_recfield { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug)] +pub struct PLpgSQL_nsitem { + pub itemtype: PLpgSQL_nsitem_type::Type, + pub itemno: ::core::ffi::c_int, + pub prev: *mut PLpgSQL_nsitem, + pub name: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for PLpgSQL_nsitem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, +} +impl Default for PLpgSQL_stmt { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_condition { + pub sqlerrstate: ::core::ffi::c_int, + pub condname: *mut ::core::ffi::c_char, + pub next: *mut PLpgSQL_condition, +} +impl Default for PLpgSQL_condition { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_exception_block { + pub sqlstate_varno: ::core::ffi::c_int, + pub sqlerrm_varno: ::core::ffi::c_int, + pub exc_list: *mut List, +} +impl Default for PLpgSQL_exception_block { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_exception { + pub lineno: ::core::ffi::c_int, + pub conditions: *mut PLpgSQL_condition, + pub action: *mut List, +} +impl Default for PLpgSQL_exception { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_block { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub body: *mut List, + pub n_initvars: ::core::ffi::c_int, + pub initvarnos: *mut ::core::ffi::c_int, + pub exceptions: *mut PLpgSQL_exception_block, +} +impl Default for PLpgSQL_stmt_block { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_assign { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub varno: ::core::ffi::c_int, + pub expr: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_assign { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_perform { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_perform { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_call { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, + pub is_call: bool, + pub target: *mut PLpgSQL_variable, +} +impl Default for PLpgSQL_stmt_call { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_commit { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub chain: bool, +} +impl Default for PLpgSQL_stmt_commit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_rollback { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub chain: bool, +} +impl Default for PLpgSQL_stmt_rollback { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_diag_item { + pub kind: PLpgSQL_getdiag_kind::Type, + pub target: ::core::ffi::c_int, +} +impl Default for PLpgSQL_diag_item { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_getdiag { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub is_stacked: bool, + pub diag_items: *mut List, +} +impl Default for PLpgSQL_stmt_getdiag { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_if { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub cond: *mut PLpgSQL_expr, + pub then_body: *mut List, + pub elsif_list: *mut List, + pub else_body: *mut List, +} +impl Default for PLpgSQL_stmt_if { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_if_elsif { + pub lineno: ::core::ffi::c_int, + pub cond: *mut PLpgSQL_expr, + pub stmts: *mut List, +} +impl Default for PLpgSQL_if_elsif { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_case { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub t_expr: *mut PLpgSQL_expr, + pub t_varno: ::core::ffi::c_int, + pub case_when_list: *mut List, + pub have_else: bool, + pub else_stmts: *mut List, +} +impl Default for PLpgSQL_stmt_case { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_case_when { + pub lineno: ::core::ffi::c_int, + pub expr: *mut PLpgSQL_expr, + pub stmts: *mut List, +} +impl Default for PLpgSQL_case_when { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_loop { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_loop { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_while { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub cond: *mut PLpgSQL_expr, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_while { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_fori { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_var, + pub lower: *mut PLpgSQL_expr, + pub upper: *mut PLpgSQL_expr, + pub step: *mut PLpgSQL_expr, + pub reverse: ::core::ffi::c_int, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_fori { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_forq { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_forq { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_fors { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, + pub query: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_fors { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_forc { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, + pub curvar: ::core::ffi::c_int, + pub argquery: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_forc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_dynfors { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub var: *mut PLpgSQL_variable, + pub body: *mut List, + pub query: *mut PLpgSQL_expr, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_dynfors { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_foreach_a { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub label: *mut ::core::ffi::c_char, + pub varno: ::core::ffi::c_int, + pub slice: ::core::ffi::c_int, + pub expr: *mut PLpgSQL_expr, + pub body: *mut List, +} +impl Default for PLpgSQL_stmt_foreach_a { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_open { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub curvar: ::core::ffi::c_int, + pub cursor_options: ::core::ffi::c_int, + pub argquery: *mut PLpgSQL_expr, + pub query: *mut PLpgSQL_expr, + pub dynquery: *mut PLpgSQL_expr, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_open { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_fetch { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub target: *mut PLpgSQL_variable, + pub curvar: ::core::ffi::c_int, + pub direction: FetchDirection::Type, + pub how_many: ::core::ffi::c_long, + pub expr: *mut PLpgSQL_expr, + pub is_move: bool, + pub returns_multiple_rows: bool, +} +impl Default for PLpgSQL_stmt_fetch { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_close { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub curvar: ::core::ffi::c_int, +} +impl Default for PLpgSQL_stmt_close { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_exit { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub is_exit: bool, + pub label: *mut ::core::ffi::c_char, + pub cond: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_exit { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_return { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, + pub retvarno: ::core::ffi::c_int, +} +impl Default for PLpgSQL_stmt_return { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_return_next { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub expr: *mut PLpgSQL_expr, + pub retvarno: ::core::ffi::c_int, +} +impl Default for PLpgSQL_stmt_return_next { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_return_query { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub query: *mut PLpgSQL_expr, + pub dynquery: *mut PLpgSQL_expr, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_return_query { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_raise { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub elog_level: ::core::ffi::c_int, + pub condname: *mut ::core::ffi::c_char, + pub message: *mut ::core::ffi::c_char, + pub params: *mut List, + pub options: *mut List, +} +impl Default for PLpgSQL_stmt_raise { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_raise_option { + pub opt_type: PLpgSQL_raise_option_type::Type, + pub expr: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_raise_option { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_assert { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub cond: *mut PLpgSQL_expr, + pub message: *mut PLpgSQL_expr, +} +impl Default for PLpgSQL_stmt_assert { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_execsql { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub sqlstmt: *mut PLpgSQL_expr, + pub mod_stmt: bool, + pub mod_stmt_set: bool, + pub into: bool, + pub strict: bool, + pub target: *mut PLpgSQL_variable, +} +impl Default for PLpgSQL_stmt_execsql { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_stmt_dynexecute { + pub cmd_type: PLpgSQL_stmt_type::Type, + pub lineno: ::core::ffi::c_int, + pub stmtid: ::core::ffi::c_uint, + pub query: *mut PLpgSQL_expr, + pub into: bool, + pub strict: bool, + pub target: *mut PLpgSQL_variable, + pub params: *mut List, +} +impl Default for PLpgSQL_stmt_dynexecute { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_func_hashkey { + pub funcOid: Oid, + pub isTrigger: bool, + pub isEventTrigger: bool, + pub trigOid: Oid, + pub inputCollation: Oid, + pub argtypes: [Oid; 100usize], +} +impl Default for PLpgSQL_func_hashkey { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod PLpgSQL_trigtype { + pub type Type = ::core::ffi::c_uint; + pub const PLPGSQL_DML_TRIGGER: Type = 0; + pub const PLPGSQL_EVENT_TRIGGER: Type = 1; + pub const PLPGSQL_NOT_TRIGGER: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_function { + pub fn_signature: *mut ::core::ffi::c_char, + pub fn_oid: Oid, + pub fn_xmin: TransactionId, + pub fn_tid: ItemPointerData, + pub fn_is_trigger: PLpgSQL_trigtype::Type, + pub fn_input_collation: Oid, + pub fn_hashkey: *mut PLpgSQL_func_hashkey, + pub fn_cxt: MemoryContext, + pub fn_rettype: Oid, + pub fn_rettyplen: ::core::ffi::c_int, + pub fn_retbyval: bool, + pub fn_retistuple: bool, + pub fn_retisdomain: bool, + pub fn_retset: bool, + pub fn_readonly: bool, + pub fn_prokind: ::core::ffi::c_char, + pub fn_nargs: ::core::ffi::c_int, + pub fn_argvarnos: [::core::ffi::c_int; 100usize], + pub out_param_varno: ::core::ffi::c_int, + pub found_varno: ::core::ffi::c_int, + pub new_varno: ::core::ffi::c_int, + pub old_varno: ::core::ffi::c_int, + pub resolve_option: PLpgSQL_resolve_option::Type, + pub print_strict_params: bool, + pub extra_warnings: ::core::ffi::c_int, + pub extra_errors: ::core::ffi::c_int, + pub ndatums: ::core::ffi::c_int, + pub datums: *mut *mut PLpgSQL_datum, + pub copiable_size: Size, + pub action: *mut PLpgSQL_stmt_block, + pub nstatements: ::core::ffi::c_uint, + pub requires_procedure_resowner: bool, + pub cur_estate: *mut PLpgSQL_execstate, + pub use_count: ::core::ffi::c_ulong, +} +impl Default for PLpgSQL_function { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLpgSQL_execstate { + pub func: *mut PLpgSQL_function, + pub trigdata: *mut TriggerData, + pub evtrigdata: *mut EventTriggerData, + pub retval: Datum, + pub retisnull: bool, + pub rettype: Oid, + pub fn_rettype: Oid, + pub retistuple: bool, + pub retisset: bool, + pub readonly_func: bool, + pub atomic: bool, + pub exitlabel: *mut ::core::ffi::c_char, + pub cur_error: *mut ErrorData, + pub tuple_store: *mut Tuplestorestate, + pub tuple_store_desc: TupleDesc, + pub tuple_store_cxt: MemoryContext, + pub tuple_store_owner: ResourceOwner, + pub rsi: *mut ReturnSetInfo, + pub found_varno: ::core::ffi::c_int, + pub ndatums: ::core::ffi::c_int, + pub datums: *mut *mut PLpgSQL_datum, + pub datum_context: MemoryContext, + pub paramLI: ParamListInfo, + pub simple_eval_estate: *mut EState, + pub simple_eval_resowner: ResourceOwner, + pub procedure_resowner: ResourceOwner, + pub cast_hash: *mut HTAB, + pub stmt_mcontext: MemoryContext, + pub stmt_mcontext_parent: MemoryContext, + pub eval_tuptable: *mut SPITupleTable, + pub eval_processed: uint64, + pub eval_econtext: *mut ExprContext, + pub err_stmt: *mut PLpgSQL_stmt, + pub err_var: *mut PLpgSQL_variable, + pub err_text: *const ::core::ffi::c_char, + pub plugin_info: *mut ::core::ffi::c_void, +} +impl Default for PLpgSQL_execstate { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PLpgSQL_plugin { + pub func_setup: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, func: *mut PLpgSQL_function), + >, + pub func_beg: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, func: *mut PLpgSQL_function), + >, + pub func_end: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, func: *mut PLpgSQL_function), + >, + pub stmt_beg: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, stmt: *mut PLpgSQL_stmt), + >, + pub stmt_end: ::core::option::Option< + unsafe extern "C" fn(estate: *mut PLpgSQL_execstate, stmt: *mut PLpgSQL_stmt), + >, + pub error_callback: ::core::option::Option, + pub assign_expr: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + target: *mut PLpgSQL_datum, + expr: *mut PLpgSQL_expr, + ), + >, + pub assign_value: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + target: *mut PLpgSQL_datum, + value: Datum, + isNull: bool, + valtype: Oid, + valtypmod: int32, + ), + >, + pub eval_datum: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + datum: *mut PLpgSQL_datum, + typeId: *mut Oid, + typetypmod: *mut int32, + value: *mut Datum, + isnull: *mut bool, + ), + >, + pub cast_value: ::core::option::Option< + unsafe extern "C" fn( + estate: *mut PLpgSQL_execstate, + value: Datum, + isnull: *mut bool, + valtype: Oid, + valtypmod: int32, + reqtype: Oid, + reqtypmod: int32, + ) -> Datum, + >, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLword { + pub ident: *mut ::core::ffi::c_char, + pub quoted: bool, +} +impl Default for PLword { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLcword { + pub idents: *mut List, +} +impl Default for PLcword { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PLwdatum { + pub datum: *mut PLpgSQL_datum, + pub ident: *mut ::core::ffi::c_char, + pub quoted: bool, + pub idents: *mut List, +} +impl Default for PLwdatum { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod IdentifierLookup { + #[doc = " Global variable declarations"] + pub type Type = ::core::ffi::c_uint; + pub const IDENTIFIER_LOOKUP_NORMAL: Type = 0; + pub const IDENTIFIER_LOOKUP_DECLARE: Type = 1; + pub const IDENTIFIER_LOOKUP_EXPR: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClientSocket { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct PipeProtoHeader { + pub nuls: [::core::ffi::c_char; 2usize], + pub len: uint16, + pub pid: int32, + pub flags: bits8, + pub data: __IncompleteArrayField<::core::ffi::c_char>, +} +#[repr(C)] +pub union PipeProtoChunk { + pub proto: ::core::mem::ManuallyDrop, + pub filler: ::core::mem::ManuallyDrop<[::core::ffi::c_char; 4096usize]>, +} +impl Default for PipeProtoChunk { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod DebugLogicalRepStreamingMode { + pub type Type = ::core::ffi::c_uint; + pub const DEBUG_LOGICAL_REP_STREAMING_BUFFERED: Type = 0; + pub const DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE: Type = 1; +} +pub mod ReorderBufferChangeType { + pub type Type = ::core::ffi::c_uint; + pub const REORDER_BUFFER_CHANGE_INSERT: Type = 0; + pub const REORDER_BUFFER_CHANGE_UPDATE: Type = 1; + pub const REORDER_BUFFER_CHANGE_DELETE: Type = 2; + pub const REORDER_BUFFER_CHANGE_MESSAGE: Type = 3; + pub const REORDER_BUFFER_CHANGE_INVALIDATION: Type = 4; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT: Type = 5; + pub const REORDER_BUFFER_CHANGE_INTERNAL_COMMAND_ID: Type = 6; + pub const REORDER_BUFFER_CHANGE_INTERNAL_TUPLECID: Type = 7; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT: Type = 8; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM: Type = 9; + pub const REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT: Type = 10; + pub const REORDER_BUFFER_CHANGE_TRUNCATE: Type = 11; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ReorderBufferChange { + pub lsn: XLogRecPtr, + pub action: ReorderBufferChangeType::Type, + pub txn: *mut ReorderBufferTXN, + pub origin_id: RepOriginId, + pub data: ReorderBufferChange__bindgen_ty_1, + pub node: dlist_node, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ReorderBufferChange__bindgen_ty_1 { + pub tp: ReorderBufferChange__bindgen_ty_1__bindgen_ty_1, + pub truncate: ReorderBufferChange__bindgen_ty_1__bindgen_ty_2, + pub msg: ReorderBufferChange__bindgen_ty_1__bindgen_ty_3, + pub snapshot: Snapshot, + pub command_id: CommandId, + pub tuplecid: ReorderBufferChange__bindgen_ty_1__bindgen_ty_4, + pub inval: ReorderBufferChange__bindgen_ty_1__bindgen_ty_5, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_1 { + pub rlocator: RelFileLocator, + pub clear_toast_afterwards: bool, + pub oldtuple: HeapTuple, + pub newtuple: HeapTuple, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_2 { + pub nrelids: Size, + pub cascade: bool, + pub restart_seqs: bool, + pub relids: *mut Oid, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_3 { + pub prefix: *mut ::core::ffi::c_char, + pub message_size: Size, + pub message: *mut ::core::ffi::c_char, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_4 { + pub locator: RelFileLocator, + pub tid: ItemPointerData, + pub cmin: CommandId, + pub cmax: CommandId, + pub combocid: CommandId, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_4 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBufferChange__bindgen_ty_1__bindgen_ty_5 { + pub ninvalidations: uint32, + pub invalidations: *mut SharedInvalidationMessage, +} +impl Default for ReorderBufferChange__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ReorderBufferChange__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ReorderBufferChange { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ReorderBufferTXN { + pub txn_flags: bits32, + pub xid: TransactionId, + pub toplevel_xid: TransactionId, + pub gid: *mut ::core::ffi::c_char, + pub first_lsn: XLogRecPtr, + pub final_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub toptxn: *mut ReorderBufferTXN, + pub restart_decoding_lsn: XLogRecPtr, + pub origin_id: RepOriginId, + pub origin_lsn: XLogRecPtr, + pub xact_time: ReorderBufferTXN__bindgen_ty_1, + pub base_snapshot: Snapshot, + pub base_snapshot_lsn: XLogRecPtr, + pub base_snapshot_node: dlist_node, + pub snapshot_now: Snapshot, + pub command_id: CommandId, + pub nentries: uint64, + pub nentries_mem: uint64, + pub changes: dlist_head, + pub tuplecids: dlist_head, + pub ntuplecids: uint64, + pub tuplecid_hash: *mut HTAB, + pub toast_hash: *mut HTAB, + pub subtxns: dlist_head, + pub nsubtxns: uint32, + pub ninvalidations: uint32, + pub invalidations: *mut SharedInvalidationMessage, + pub node: dlist_node, + pub catchange_node: dlist_node, + pub txn_node: pairingheap_node, + pub size: Size, + pub total_size: Size, + pub concurrent_abort: bool, + pub output_plugin_private: *mut ::core::ffi::c_void, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ReorderBufferTXN__bindgen_ty_1 { + pub commit_time: TimestampTz, + pub prepare_time: TimestampTz, + pub abort_time: TimestampTz, +} +impl Default for ReorderBufferTXN__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ReorderBufferTXN { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ReorderBufferApplyChangeCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferApplyTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferBeginCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN), +>; +pub type ReorderBufferCommitCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferMessageCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + sz: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type ReorderBufferBeginPrepareCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN), +>; +pub type ReorderBufferPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferCommitPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferRollbackPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + prepare_end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + ), +>; +pub type ReorderBufferStreamStartCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, first_lsn: XLogRecPtr), +>; +pub type ReorderBufferStreamStopCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, last_lsn: XLogRecPtr), +>; +pub type ReorderBufferStreamAbortCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, abort_lsn: XLogRecPtr), +>; +pub type ReorderBufferStreamPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferStreamCommitCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type ReorderBufferStreamChangeCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferStreamMessageCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + sz: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type ReorderBufferStreamTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + rb: *mut ReorderBuffer, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type ReorderBufferUpdateProgressTxnCB = ::core::option::Option< + unsafe extern "C" fn(rb: *mut ReorderBuffer, txn: *mut ReorderBufferTXN, lsn: XLogRecPtr), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReorderBuffer { + pub by_txn: *mut HTAB, + pub toplevel_by_lsn: dlist_head, + pub txns_by_base_snapshot_lsn: dlist_head, + pub catchange_txns: dclist_head, + pub by_txn_last_xid: TransactionId, + pub by_txn_last_txn: *mut ReorderBufferTXN, + pub begin: ReorderBufferBeginCB, + pub apply_change: ReorderBufferApplyChangeCB, + pub apply_truncate: ReorderBufferApplyTruncateCB, + pub commit: ReorderBufferCommitCB, + pub message: ReorderBufferMessageCB, + pub begin_prepare: ReorderBufferBeginCB, + pub prepare: ReorderBufferPrepareCB, + pub commit_prepared: ReorderBufferCommitPreparedCB, + pub rollback_prepared: ReorderBufferRollbackPreparedCB, + pub stream_start: ReorderBufferStreamStartCB, + pub stream_stop: ReorderBufferStreamStopCB, + pub stream_abort: ReorderBufferStreamAbortCB, + pub stream_prepare: ReorderBufferStreamPrepareCB, + pub stream_commit: ReorderBufferStreamCommitCB, + pub stream_change: ReorderBufferStreamChangeCB, + pub stream_message: ReorderBufferStreamMessageCB, + pub stream_truncate: ReorderBufferStreamTruncateCB, + pub update_progress_txn: ReorderBufferUpdateProgressTxnCB, + pub private_data: *mut ::core::ffi::c_void, + pub output_rewrites: bool, + pub context: MemoryContext, + pub change_context: MemoryContext, + pub txn_context: MemoryContext, + pub tup_context: MemoryContext, + pub current_restart_decoding_lsn: XLogRecPtr, + pub outbuf: *mut ::core::ffi::c_char, + pub outbufsize: Size, + pub size: Size, + pub txn_heap: *mut pairingheap, + pub spillTxns: int64, + pub spillCount: int64, + pub spillBytes: int64, + pub streamTxns: int64, + pub streamCount: int64, + pub streamBytes: int64, + pub totalTxns: int64, + pub totalBytes: int64, +} +impl Default for ReorderBuffer { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod OutputPluginOutputType { + pub type Type = ::core::ffi::c_uint; + pub const OUTPUT_PLUGIN_BINARY_OUTPUT: Type = 0; + pub const OUTPUT_PLUGIN_TEXTUAL_OUTPUT: Type = 1; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OutputPluginOptions { + pub output_type: OutputPluginOutputType::Type, + pub receive_rewrites: bool, +} +impl Default for OutputPluginOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LogicalOutputPluginInit = + ::core::option::Option; +pub type LogicalDecodeStartupCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + options: *mut OutputPluginOptions, + is_init: bool, + ), +>; +pub type LogicalDecodeBeginCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodeChangeCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type LogicalDecodeTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type LogicalDecodeCommitCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeMessageCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + message_size: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type LogicalDecodeFilterByOriginCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, origin_id: RepOriginId) -> bool, +>; +pub type LogicalDecodeShutdownCB = + ::core::option::Option; +pub type LogicalDecodeFilterPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + xid: TransactionId, + gid: *const ::core::ffi::c_char, + ) -> bool, +>; +pub type LogicalDecodeBeginPrepareCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodePrepareCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeCommitPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeRollbackPreparedCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + prepare_end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + ), +>; +pub type LogicalDecodeStreamStartCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodeStreamStopCB = ::core::option::Option< + unsafe extern "C" fn(ctx: *mut LogicalDecodingContext, txn: *mut ReorderBufferTXN), +>; +pub type LogicalDecodeStreamAbortCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + abort_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeStreamPrepareCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeStreamCommitCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ), +>; +pub type LogicalDecodeStreamChangeCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + relation: Relation, + change: *mut ReorderBufferChange, + ), +>; +pub type LogicalDecodeStreamMessageCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + message_lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + message_size: Size, + message: *const ::core::ffi::c_char, + ), +>; +pub type LogicalDecodeStreamTruncateCB = ::core::option::Option< + unsafe extern "C" fn( + ctx: *mut LogicalDecodingContext, + txn: *mut ReorderBufferTXN, + nrelations: ::core::ffi::c_int, + relations: *mut Relation, + change: *mut ReorderBufferChange, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct OutputPluginCallbacks { + pub startup_cb: LogicalDecodeStartupCB, + pub begin_cb: LogicalDecodeBeginCB, + pub change_cb: LogicalDecodeChangeCB, + pub truncate_cb: LogicalDecodeTruncateCB, + pub commit_cb: LogicalDecodeCommitCB, + pub message_cb: LogicalDecodeMessageCB, + pub filter_by_origin_cb: LogicalDecodeFilterByOriginCB, + pub shutdown_cb: LogicalDecodeShutdownCB, + pub filter_prepare_cb: LogicalDecodeFilterPrepareCB, + pub begin_prepare_cb: LogicalDecodeBeginPrepareCB, + pub prepare_cb: LogicalDecodePrepareCB, + pub commit_prepared_cb: LogicalDecodeCommitPreparedCB, + pub rollback_prepared_cb: LogicalDecodeRollbackPreparedCB, + pub stream_start_cb: LogicalDecodeStreamStartCB, + pub stream_stop_cb: LogicalDecodeStreamStopCB, + pub stream_abort_cb: LogicalDecodeStreamAbortCB, + pub stream_prepare_cb: LogicalDecodeStreamPrepareCB, + pub stream_commit_cb: LogicalDecodeStreamCommitCB, + pub stream_change_cb: LogicalDecodeStreamChangeCB, + pub stream_message_cb: LogicalDecodeStreamMessageCB, + pub stream_truncate_cb: LogicalDecodeStreamTruncateCB, +} +pub mod LogicalRepMsgType { + pub type Type = ::core::ffi::c_uint; + pub const LOGICAL_REP_MSG_BEGIN: Type = 66; + pub const LOGICAL_REP_MSG_COMMIT: Type = 67; + pub const LOGICAL_REP_MSG_ORIGIN: Type = 79; + pub const LOGICAL_REP_MSG_INSERT: Type = 73; + pub const LOGICAL_REP_MSG_UPDATE: Type = 85; + pub const LOGICAL_REP_MSG_DELETE: Type = 68; + pub const LOGICAL_REP_MSG_TRUNCATE: Type = 84; + pub const LOGICAL_REP_MSG_RELATION: Type = 82; + pub const LOGICAL_REP_MSG_TYPE: Type = 89; + pub const LOGICAL_REP_MSG_MESSAGE: Type = 77; + pub const LOGICAL_REP_MSG_BEGIN_PREPARE: Type = 98; + pub const LOGICAL_REP_MSG_PREPARE: Type = 80; + pub const LOGICAL_REP_MSG_COMMIT_PREPARED: Type = 75; + pub const LOGICAL_REP_MSG_ROLLBACK_PREPARED: Type = 114; + pub const LOGICAL_REP_MSG_STREAM_START: Type = 83; + pub const LOGICAL_REP_MSG_STREAM_STOP: Type = 69; + pub const LOGICAL_REP_MSG_STREAM_COMMIT: Type = 99; + pub const LOGICAL_REP_MSG_STREAM_ABORT: Type = 65; + pub const LOGICAL_REP_MSG_STREAM_PREPARE: Type = 112; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepTupleData { + pub colvalues: *mut StringInfoData, + pub colstatus: *mut ::core::ffi::c_char, + pub ncols: ::core::ffi::c_int, +} +impl Default for LogicalRepTupleData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LogicalRepRelId = uint32; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepRelation { + pub remoteid: LogicalRepRelId, + pub nspname: *mut ::core::ffi::c_char, + pub relname: *mut ::core::ffi::c_char, + pub natts: ::core::ffi::c_int, + pub attnames: *mut *mut ::core::ffi::c_char, + pub atttyps: *mut Oid, + pub replident: ::core::ffi::c_char, + pub relkind: ::core::ffi::c_char, + pub attkeys: *mut Bitmapset, +} +impl Default for LogicalRepRelation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepTyp { + pub remoteid: Oid, + pub nspname: *mut ::core::ffi::c_char, + pub typname: *mut ::core::ffi::c_char, +} +impl Default for LogicalRepTyp { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LogicalRepBeginData { + pub final_lsn: XLogRecPtr, + pub committime: TimestampTz, + pub xid: TransactionId, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LogicalRepCommitData { + pub commit_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub committime: TimestampTz, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepPreparedTxnData { + pub prepare_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub prepare_time: TimestampTz, + pub xid: TransactionId, + pub gid: [::core::ffi::c_char; 200usize], +} +impl Default for LogicalRepPreparedTxnData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepCommitPreparedTxnData { + pub commit_lsn: XLogRecPtr, + pub end_lsn: XLogRecPtr, + pub commit_time: TimestampTz, + pub xid: TransactionId, + pub gid: [::core::ffi::c_char; 200usize], +} +impl Default for LogicalRepCommitPreparedTxnData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalRepRollbackPreparedTxnData { + pub prepare_end_lsn: XLogRecPtr, + pub rollback_end_lsn: XLogRecPtr, + pub prepare_time: TimestampTz, + pub rollback_time: TimestampTz, + pub xid: TransactionId, + pub gid: [::core::ffi::c_char; 200usize], +} +impl Default for LogicalRepRollbackPreparedTxnData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LogicalRepStreamAbortData { + pub xid: TransactionId, + pub subxid: TransactionId, + pub abort_lsn: XLogRecPtr, + pub abort_time: TimestampTz, +} +pub mod CRSSnapshotAction { + pub type Type = ::core::ffi::c_uint; + pub const CRS_EXPORT_SNAPSHOT: Type = 0; + pub const CRS_NOEXPORT_SNAPSHOT: Type = 1; + pub const CRS_USE_SNAPSHOT: Type = 2; +} +pub mod WalRcvState { + pub type Type = ::core::ffi::c_uint; + pub const WALRCV_STOPPED: Type = 0; + pub const WALRCV_STARTING: Type = 1; + pub const WALRCV_STREAMING: Type = 2; + pub const WALRCV_WAITING: Type = 3; + pub const WALRCV_RESTARTING: Type = 4; + pub const WALRCV_STOPPING: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalRcvData { + pub pid: pid_t, + pub walRcvState: WalRcvState::Type, + pub walRcvStoppedCV: ConditionVariable, + pub startTime: pg_time_t, + pub receiveStart: XLogRecPtr, + pub receiveStartTLI: TimeLineID, + pub flushedUpto: XLogRecPtr, + pub receivedTLI: TimeLineID, + pub latestChunkStart: XLogRecPtr, + pub lastMsgSendTime: TimestampTz, + pub lastMsgReceiptTime: TimestampTz, + pub latestWalEnd: XLogRecPtr, + pub latestWalEndTime: TimestampTz, + pub conninfo: [::core::ffi::c_char; 1024usize], + pub sender_host: [::core::ffi::c_char; 1025usize], + pub sender_port: ::core::ffi::c_int, + pub slotname: [::core::ffi::c_char; 64usize], + pub is_temp_slot: bool, + pub ready_to_display: bool, + pub latch: *mut Latch, + pub mutex: slock_t, + pub writtenUpto: pg_atomic_uint64, + pub force_reply: sig_atomic_t, +} +impl Default for WalRcvData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct WalRcvStreamOptions { + pub logical: bool, + pub slotname: *mut ::core::ffi::c_char, + pub startpoint: XLogRecPtr, + pub proto: WalRcvStreamOptions__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union WalRcvStreamOptions__bindgen_ty_1 { + pub physical: WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_1, + pub logical: WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_1 { + pub startpointTLI: TimeLineID, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_2 { + pub proto_version: uint32, + pub publication_names: *mut List, + pub binary: bool, + pub streaming_str: *mut ::core::ffi::c_char, + pub twophase: bool, + pub origin: *mut ::core::ffi::c_char, +} +impl Default for WalRcvStreamOptions__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for WalRcvStreamOptions__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for WalRcvStreamOptions { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalReceiverConn { + _unused: [u8; 0], +} +pub mod WalRcvExecStatus { + pub type Type = ::core::ffi::c_uint; + pub const WALRCV_ERROR: Type = 0; + pub const WALRCV_OK_COMMAND: Type = 1; + pub const WALRCV_OK_TUPLES: Type = 2; + pub const WALRCV_OK_COPY_IN: Type = 3; + pub const WALRCV_OK_COPY_OUT: Type = 4; + pub const WALRCV_OK_COPY_BOTH: Type = 5; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct WalRcvExecResult { + pub status: WalRcvExecStatus::Type, + pub sqlstate: ::core::ffi::c_int, + pub err: *mut ::core::ffi::c_char, + pub tuplestore: *mut Tuplestorestate, + pub tupledesc: TupleDesc, +} +impl Default for WalRcvExecResult { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type walrcv_connect_fn = ::core::option::Option< + unsafe extern "C" fn( + conninfo: *const ::core::ffi::c_char, + replication: bool, + logical: bool, + must_use_password: bool, + appname: *const ::core::ffi::c_char, + err: *mut *mut ::core::ffi::c_char, + ) -> *mut WalReceiverConn, +>; +pub type walrcv_check_conninfo_fn = ::core::option::Option< + unsafe extern "C" fn(conninfo: *const ::core::ffi::c_char, must_use_password: bool), +>; +pub type walrcv_get_conninfo_fn = ::core::option::Option< + unsafe extern "C" fn(conn: *mut WalReceiverConn) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_get_senderinfo_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + sender_host: *mut *mut ::core::ffi::c_char, + sender_port: *mut ::core::ffi::c_int, + ), +>; +pub type walrcv_identify_system_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + primary_tli: *mut TimeLineID, + ) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_get_dbname_from_conninfo_fn = ::core::option::Option< + unsafe extern "C" fn(conninfo: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_server_version_fn = + ::core::option::Option ::core::ffi::c_int>; +pub type walrcv_readtimelinehistoryfile_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + tli: TimeLineID, + filename: *mut *mut ::core::ffi::c_char, + content: *mut *mut ::core::ffi::c_char, + size: *mut ::core::ffi::c_int, + ), +>; +pub type walrcv_startstreaming_fn = ::core::option::Option< + unsafe extern "C" fn(conn: *mut WalReceiverConn, options: *const WalRcvStreamOptions) -> bool, +>; +pub type walrcv_endstreaming_fn = ::core::option::Option< + unsafe extern "C" fn(conn: *mut WalReceiverConn, next_tli: *mut TimeLineID), +>; +pub type walrcv_receive_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + buffer: *mut *mut ::core::ffi::c_char, + wait_fd: *mut pgsocket, + ) -> ::core::ffi::c_int, +>; +pub type walrcv_send_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + buffer: *const ::core::ffi::c_char, + nbytes: ::core::ffi::c_int, + ), +>; +pub type walrcv_create_slot_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + slotname: *const ::core::ffi::c_char, + temporary: bool, + two_phase: bool, + failover: bool, + snapshot_action: CRSSnapshotAction::Type, + lsn: *mut XLogRecPtr, + ) -> *mut ::core::ffi::c_char, +>; +pub type walrcv_alter_slot_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + slotname: *const ::core::ffi::c_char, + failover: bool, + ), +>; +pub type walrcv_get_backend_pid_fn = + ::core::option::Option pid_t>; +pub type walrcv_exec_fn = ::core::option::Option< + unsafe extern "C" fn( + conn: *mut WalReceiverConn, + query: *const ::core::ffi::c_char, + nRetTypes: ::core::ffi::c_int, + retTypes: *const Oid, + ) -> *mut WalRcvExecResult, +>; +pub type walrcv_disconnect_fn = + ::core::option::Option; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WalReceiverFunctionsType { + pub walrcv_connect: walrcv_connect_fn, + pub walrcv_check_conninfo: walrcv_check_conninfo_fn, + pub walrcv_get_conninfo: walrcv_get_conninfo_fn, + pub walrcv_get_senderinfo: walrcv_get_senderinfo_fn, + pub walrcv_identify_system: walrcv_identify_system_fn, + pub walrcv_get_dbname_from_conninfo: walrcv_get_dbname_from_conninfo_fn, + pub walrcv_server_version: walrcv_server_version_fn, + pub walrcv_readtimelinehistoryfile: walrcv_readtimelinehistoryfile_fn, + pub walrcv_startstreaming: walrcv_startstreaming_fn, + pub walrcv_endstreaming: walrcv_endstreaming_fn, + pub walrcv_receive: walrcv_receive_fn, + pub walrcv_send: walrcv_send_fn, + pub walrcv_create_slot: walrcv_create_slot_fn, + pub walrcv_alter_slot: walrcv_alter_slot_fn, + pub walrcv_get_backend_pid: walrcv_get_backend_pid_fn, + pub walrcv_exec: walrcv_exec_fn, + pub walrcv_disconnect: walrcv_disconnect_fn, +} +pub mod ReplicationSlotPersistency { + pub type Type = ::core::ffi::c_uint; + pub const RS_PERSISTENT: Type = 0; + pub const RS_EPHEMERAL: Type = 1; + pub const RS_TEMPORARY: Type = 2; +} +pub mod ReplicationSlotInvalidationCause { + pub type Type = ::core::ffi::c_uint; + pub const RS_INVAL_NONE: Type = 0; + pub const RS_INVAL_WAL_REMOVED: Type = 1; + pub const RS_INVAL_HORIZON: Type = 2; + pub const RS_INVAL_WAL_LEVEL: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicationSlotPersistentData { + pub name: NameData, + pub database: Oid, + pub persistency: ReplicationSlotPersistency::Type, + pub xmin: TransactionId, + pub catalog_xmin: TransactionId, + pub restart_lsn: XLogRecPtr, + pub invalidated: ReplicationSlotInvalidationCause::Type, + pub confirmed_flush: XLogRecPtr, + pub two_phase_at: XLogRecPtr, + pub two_phase: bool, + pub plugin: NameData, + pub synced: ::core::ffi::c_char, + pub failover: bool, +} +impl Default for ReplicationSlotPersistentData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicationSlot { + pub mutex: slock_t, + pub in_use: bool, + pub active_pid: pid_t, + pub just_dirtied: bool, + pub dirty: bool, + pub effective_xmin: TransactionId, + pub effective_catalog_xmin: TransactionId, + pub data: ReplicationSlotPersistentData, + pub io_in_progress_lock: LWLock, + pub active_cv: ConditionVariable, + pub candidate_catalog_xmin: TransactionId, + pub candidate_xmin_lsn: XLogRecPtr, + pub candidate_restart_valid: XLogRecPtr, + pub candidate_restart_lsn: XLogRecPtr, + pub last_saved_confirmed_flush: XLogRecPtr, + pub inactive_since: TimestampTz, +} +impl Default for ReplicationSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ReplicationSlotCtlData { + pub replication_slots: [ReplicationSlot; 1usize], +} +impl Default for ReplicationSlotCtlData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type LogicalOutputPluginWriterWrite = ::core::option::Option< + unsafe extern "C" fn( + lr: *mut LogicalDecodingContext, + Ptr: XLogRecPtr, + xid: TransactionId, + last_write: bool, + ), +>; +pub type LogicalOutputPluginWriterPrepareWrite = LogicalOutputPluginWriterWrite; +pub type LogicalOutputPluginWriterUpdateProgress = ::core::option::Option< + unsafe extern "C" fn( + lr: *mut LogicalDecodingContext, + Ptr: XLogRecPtr, + xid: TransactionId, + skipped_xact: bool, + ), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LogicalDecodingContext { + pub context: MemoryContext, + pub slot: *mut ReplicationSlot, + pub reader: *mut XLogReaderState, + pub reorder: *mut ReorderBuffer, + pub snapshot_builder: *mut SnapBuild, + pub fast_forward: bool, + pub callbacks: OutputPluginCallbacks, + pub options: OutputPluginOptions, + pub output_plugin_options: *mut List, + pub prepare_write: LogicalOutputPluginWriterPrepareWrite, + pub write: LogicalOutputPluginWriterWrite, + pub update_progress: LogicalOutputPluginWriterUpdateProgress, + pub out: StringInfo, + pub output_plugin_private: *mut ::core::ffi::c_void, + pub output_writer_private: *mut ::core::ffi::c_void, + pub streaming: bool, + pub twophase: bool, + pub twophase_opt_given: bool, + pub accept_writes: bool, + pub prepared_write: bool, + pub write_location: XLogRecPtr, + pub write_xid: TransactionId, + pub end_xact: bool, + pub processing_required: bool, +} +impl Default for LogicalDecodingContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowSecurityPolicy { + pub policy_name: *mut ::core::ffi::c_char, + pub polcmd: ::core::ffi::c_char, + pub roles: *mut ArrayType, + pub permissive: bool, + pub qual: *mut Expr, + pub with_check_qual: *mut Expr, + pub hassublinks: bool, +} +impl Default for RowSecurityPolicy { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RowSecurityDesc { + pub rscxt: MemoryContext, + pub policies: *mut List, +} +impl Default for RowSecurityDesc { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type row_security_policy_hook_type = ::core::option::Option< + unsafe extern "C" fn(cmdtype: CmdType::Type, relation: Relation) -> *mut List, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct BufFile { + _unused: [u8; 0], +} +pub type pg_on_exit_callback = + ::core::option::Option; +pub type shmem_startup_hook_type = ::core::option::Option; +pub mod XLTW_Oper { + pub type Type = ::core::ffi::c_uint; + pub const XLTW_None: Type = 0; + pub const XLTW_Update: Type = 1; + pub const XLTW_Delete: Type = 2; + pub const XLTW_Lock: Type = 3; + pub const XLTW_LockUpdated: Type = 4; + pub const XLTW_InsertIndex: Type = 5; + pub const XLTW_InsertIndexUnique: Type = 6; + pub const XLTW_FetchUpdated: Type = 7; + pub const XLTW_RecheckExclusionConstr: Type = 8; +} +pub mod ProcSignalReason { + pub type Type = ::core::ffi::c_uint; + pub const PROCSIG_CATCHUP_INTERRUPT: Type = 0; + pub const PROCSIG_NOTIFY_INTERRUPT: Type = 1; + pub const PROCSIG_PARALLEL_MESSAGE: Type = 2; + pub const PROCSIG_WALSND_INIT_STOPPING: Type = 3; + pub const PROCSIG_BARRIER: Type = 4; + pub const PROCSIG_LOG_MEMORY_CONTEXT: Type = 5; + pub const PROCSIG_PARALLEL_APPLY_MESSAGE: Type = 6; + pub const PROCSIG_RECOVERY_CONFLICT_FIRST: Type = 7; + pub const PROCSIG_RECOVERY_CONFLICT_DATABASE: Type = 7; + pub const PROCSIG_RECOVERY_CONFLICT_TABLESPACE: Type = 8; + pub const PROCSIG_RECOVERY_CONFLICT_LOCK: Type = 9; + pub const PROCSIG_RECOVERY_CONFLICT_SNAPSHOT: Type = 10; + pub const PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT: Type = 11; + pub const PROCSIG_RECOVERY_CONFLICT_BUFFERPIN: Type = 12; + pub const PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK: Type = 13; + pub const PROCSIG_RECOVERY_CONFLICT_LAST: Type = 13; + pub const NUM_PROCSIGNALS: Type = 14; +} +pub mod ProcSignalBarrierType { + pub type Type = ::core::ffi::c_uint; + pub const PROCSIGNAL_BARRIER_SMGRRELEASE: Type = 0; +} +#[repr(C)] +#[derive(Debug)] +pub struct xl_standby_locks { + pub nlocks: ::core::ffi::c_int, + pub locks: __IncompleteArrayField, +} +impl Default for xl_standby_locks { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct xl_running_xacts { + pub xcnt: ::core::ffi::c_int, + pub subxcnt: ::core::ffi::c_int, + pub subxid_overflow: bool, + pub nextXid: TransactionId, + pub oldestRunningXid: TransactionId, + pub latestCompletedXid: TransactionId, + pub xids: __IncompleteArrayField, +} +#[repr(C)] +pub struct xl_invalidations { + pub dbId: Oid, + pub tsId: Oid, + pub relcacheInitFileInval: bool, + pub nmsgs: ::core::ffi::c_int, + pub msgs: __IncompleteArrayField, +} +impl Default for xl_invalidations { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod subxids_array_status { + pub type Type = ::core::ffi::c_uint; + pub const SUBXIDS_IN_ARRAY: Type = 0; + pub const SUBXIDS_MISSING: Type = 1; + pub const SUBXIDS_IN_SUBTRANS: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RunningTransactionsData { + pub xcnt: ::core::ffi::c_int, + pub subxcnt: ::core::ffi::c_int, + pub subxid_status: subxids_array_status::Type, + pub nextXid: TransactionId, + pub oldestRunningXid: TransactionId, + pub oldestDatabaseRunningXid: TransactionId, + pub latestCompletedXid: TransactionId, + pub xids: *mut TransactionId, +} +impl Default for RunningTransactionsData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type RunningTransactions = *mut RunningTransactionsData; +pub mod LogStmtLevel { + pub type Type = ::core::ffi::c_uint; + pub const LOGSTMT_NONE: Type = 0; + pub const LOGSTMT_DDL: Type = 1; + pub const LOGSTMT_MOD: Type = 2; + pub const LOGSTMT_ALL: Type = 3; +} +pub mod ProcessUtilityContext { + pub type Type = ::core::ffi::c_uint; + pub const PROCESS_UTILITY_TOPLEVEL: Type = 0; + pub const PROCESS_UTILITY_QUERY: Type = 1; + pub const PROCESS_UTILITY_QUERY_NONATOMIC: Type = 2; + pub const PROCESS_UTILITY_SUBCOMMAND: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AlterTableUtilityContext { + pub pstmt: *mut PlannedStmt, + pub queryString: *const ::core::ffi::c_char, + pub relid: Oid, + pub params: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, +} +impl Default for AlterTableUtilityContext { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ProcessUtility_hook_type = ::core::option::Option< + unsafe extern "C" fn( + pstmt: *mut PlannedStmt, + queryString: *const ::core::ffi::c_char, + readOnlyTree: bool, + context: ProcessUtilityContext::Type, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ), +>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WordEntry { + pub _bitfield_align_1: [u32; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +} +impl WordEntry { + #[inline] + pub fn haspos(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } + } + #[inline] + pub fn set_haspos(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 1u8, val as u64) + } + } + #[inline] + pub fn len(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 11u8) as u32) } + } + #[inline] + pub fn set_len(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(1usize, 11u8, val as u64) + } + } + #[inline] + pub fn pos(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 20u8) as u32) } + } + #[inline] + pub fn set_pos(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(12usize, 20u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + haspos: uint32, + len: uint32, + pos: uint32, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 1u8, { + let haspos: u32 = unsafe { ::core::mem::transmute(haspos) }; + haspos as u64 + }); + __bindgen_bitfield_unit.set(1usize, 11u8, { + let len: u32 = unsafe { ::core::mem::transmute(len) }; + len as u64 + }); + __bindgen_bitfield_unit.set(12usize, 20u8, { + let pos: u32 = unsafe { ::core::mem::transmute(pos) }; + pos as u64 + }); + __bindgen_bitfield_unit + } +} +pub type WordEntryPos = uint16; +#[repr(C)] +#[derive(Debug, Default)] +pub struct WordEntryPosVector { + pub npos: uint16, + pub pos: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WordEntryPosVector1 { + pub npos: uint16, + pub pos: [WordEntryPos; 1usize], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TSVectorData { + pub vl_len_: int32, + pub size: int32, + pub entries: __IncompleteArrayField, +} +pub type TSVector = *mut TSVectorData; +pub type QueryItemType = int8; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct QueryOperand { + pub type_: QueryItemType, + pub weight: uint8, + pub prefix: bool, + pub valcrc: int32, + pub _bitfield_align_1: [u32; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +} +impl QueryOperand { + #[inline] + pub fn length(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 12u8) as u32) } + } + #[inline] + pub fn set_length(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 12u8, val as u64) + } + } + #[inline] + pub fn distance(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 20u8) as u32) } + } + #[inline] + pub fn set_distance(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(12usize, 20u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1(length: uint32, distance: uint32) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 12u8, { + let length: u32 = unsafe { ::core::mem::transmute(length) }; + length as u64 + }); + __bindgen_bitfield_unit.set(12usize, 20u8, { + let distance: u32 = unsafe { ::core::mem::transmute(distance) }; + distance as u64 + }); + __bindgen_bitfield_unit + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct QueryOperator { + pub type_: QueryItemType, + pub oper: int8, + pub distance: int16, + pub left: uint32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union QueryItem { + pub type_: QueryItemType, + pub qoperator: QueryOperator, + pub qoperand: QueryOperand, +} +impl Default for QueryItem { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TSQueryData { + pub vl_len_: int32, + pub size: int32, + pub data: __IncompleteArrayField<::core::ffi::c_char>, +} +pub type TSQuery = *mut TSQueryData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct LexDescr { + pub lexid: ::core::ffi::c_int, + pub alias: *mut ::core::ffi::c_char, + pub descr: *mut ::core::ffi::c_char, +} +impl Default for LexDescr { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeadlineWordEntry { + pub _bitfield_align_1: [u16; 0], + pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, + pub pos: WordEntryPos, + pub word: *mut ::core::ffi::c_char, + pub item: *mut QueryOperand, +} +impl Default for HeadlineWordEntry { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl HeadlineWordEntry { + #[inline] + pub fn selected(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } + } + #[inline] + pub fn set_selected(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(0usize, 1u8, val as u64) + } + } + #[inline] + pub fn in_(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } + } + #[inline] + pub fn set_in(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(1usize, 1u8, val as u64) + } + } + #[inline] + pub fn replace(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) } + } + #[inline] + pub fn set_replace(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(2usize, 1u8, val as u64) + } + } + #[inline] + pub fn repeated(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) } + } + #[inline] + pub fn set_repeated(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(3usize, 1u8, val as u64) + } + } + #[inline] + pub fn skip(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) } + } + #[inline] + pub fn set_skip(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(4usize, 1u8, val as u64) + } + } + #[inline] + pub fn unused(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 3u8) as u32) } + } + #[inline] + pub fn set_unused(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(5usize, 3u8, val as u64) + } + } + #[inline] + pub fn type_(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 8u8) as u32) } + } + #[inline] + pub fn set_type(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(8usize, 8u8, val as u64) + } + } + #[inline] + pub fn len(&self) -> uint32 { + unsafe { ::core::mem::transmute(self._bitfield_1.get(16usize, 16u8) as u32) } + } + #[inline] + pub fn set_len(&mut self, val: uint32) { + unsafe { + let val: u32 = ::core::mem::transmute(val); + self._bitfield_1.set(16usize, 16u8, val as u64) + } + } + #[inline] + pub fn new_bitfield_1( + selected: uint32, + in_: uint32, + replace: uint32, + repeated: uint32, + skip: uint32, + unused: uint32, + type_: uint32, + len: uint32, + ) -> __BindgenBitfieldUnit<[u8; 4usize]> { + let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); + __bindgen_bitfield_unit.set(0usize, 1u8, { + let selected: u32 = unsafe { ::core::mem::transmute(selected) }; + selected as u64 + }); + __bindgen_bitfield_unit.set(1usize, 1u8, { + let in_: u32 = unsafe { ::core::mem::transmute(in_) }; + in_ as u64 + }); + __bindgen_bitfield_unit.set(2usize, 1u8, { + let replace: u32 = unsafe { ::core::mem::transmute(replace) }; + replace as u64 + }); + __bindgen_bitfield_unit.set(3usize, 1u8, { + let repeated: u32 = unsafe { ::core::mem::transmute(repeated) }; + repeated as u64 + }); + __bindgen_bitfield_unit.set(4usize, 1u8, { + let skip: u32 = unsafe { ::core::mem::transmute(skip) }; + skip as u64 + }); + __bindgen_bitfield_unit.set(5usize, 3u8, { + let unused: u32 = unsafe { ::core::mem::transmute(unused) }; + unused as u64 + }); + __bindgen_bitfield_unit.set(8usize, 8u8, { + let type_: u32 = unsafe { ::core::mem::transmute(type_) }; + type_ as u64 + }); + __bindgen_bitfield_unit.set(16usize, 16u8, { + let len: u32 = unsafe { ::core::mem::transmute(len) }; + len as u64 + }); + __bindgen_bitfield_unit + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct HeadlineParsedText { + pub words: *mut HeadlineWordEntry, + pub lenwords: int32, + pub curwords: int32, + pub vectorpos: int32, + pub startsel: *mut ::core::ffi::c_char, + pub stopsel: *mut ::core::ffi::c_char, + pub fragdelim: *mut ::core::ffi::c_char, + pub startsellen: int16, + pub stopsellen: int16, + pub fragdelimlen: int16, +} +impl Default for HeadlineParsedText { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct StopList { + pub len: ::core::ffi::c_int, + pub stop: *mut *mut ::core::ffi::c_char, +} +impl Default for StopList { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TSLexeme { + pub nvariant: uint16, + pub flags: uint16, + pub lexeme: *mut ::core::ffi::c_char, +} +impl Default for TSLexeme { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DictSubState { + pub isend: bool, + pub getnext: bool, + pub private_state: *mut ::core::ffi::c_void, +} +impl Default for DictSubState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TSVectorParseStateData { + _unused: [u8; 0], +} +pub type TSVectorParseState = *mut TSVectorParseStateData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct TSQueryParserStateData { + _unused: [u8; 0], +} +pub type TSQueryParserState = *mut TSQueryParserStateData; +pub type PushFunction = ::core::option::Option< + unsafe extern "C" fn( + opaque: Datum, + state: TSQueryParserState, + token: *mut ::core::ffi::c_char, + tokenlen: ::core::ffi::c_int, + tokenweights: int16, + prefix: bool, + ), +>; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ParsedWord { + pub flags: uint16, + pub len: uint16, + pub nvariant: uint16, + pub alen: uint16, + pub pos: ParsedWord__bindgen_ty_1, + pub word: *mut ::core::ffi::c_char, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ParsedWord__bindgen_ty_1 { + pub pos: uint16, + pub apos: *mut uint16, +} +impl Default for ParsedWord__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ParsedWord { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ParsedText { + pub words: *mut ParsedWord, + pub lenwords: int32, + pub curwords: int32, + pub pos: int32, +} +impl Default for ParsedText { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod TSTernaryValue { + pub type Type = ::core::ffi::c_uint; + pub const TS_NO: Type = 0; + pub const TS_YES: Type = 1; + pub const TS_MAYBE: Type = 2; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExecPhraseData { + pub npos: ::core::ffi::c_int, + pub allocated: bool, + pub negate: bool, + pub pos: *mut WordEntryPos, + pub width: ::core::ffi::c_int, +} +impl Default for ExecPhraseData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TSExecuteCallback = ::core::option::Option< + unsafe extern "C" fn( + arg: *mut ::core::ffi::c_void, + val: *mut QueryOperand, + data: *mut ExecPhraseData, + ) -> TSTernaryValue::Type, +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct QTNode { + pub valnode: *mut QueryItem, + pub flags: uint32, + pub nchild: int32, + pub word: *mut ::core::ffi::c_char, + pub sign: uint32, + pub child: *mut *mut QTNode, +} +impl Default for QTNode { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type TSQuerySign = uint64; +pub type DateADT = int32; +pub type TimeADT = int64; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TimeTzADT { + pub time: TimeADT, + pub zone: int32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tzEntry { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct datetkn { + pub token: [::core::ffi::c_char; 11usize], + pub type_: ::core::ffi::c_char, + pub value: int32, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct TimeZoneAbbrevTable { + pub tblsize: Size, + pub numabbrevs: ::core::ffi::c_int, + pub abbrevs: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug)] +pub struct DynamicZoneAbbrev { + pub tz: *mut pg_tz, + pub zone: __IncompleteArrayField<::core::ffi::c_char>, +} +impl Default for DynamicZoneAbbrev { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct DateTimeErrorExtra { + pub dtee_timezone: *const ::core::ffi::c_char, + pub dtee_abbrev: *const ::core::ffi::c_char, +} +impl Default for DateTimeErrorExtra { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct Point { + pub x: float8, + pub y: float8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LSEG { + pub p: [Point; 2usize], +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct PATH { + pub vl_len_: int32, + pub npts: int32, + pub closed: int32, + pub dummy: int32, + pub p: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct LINE { + pub A: float8, + pub B: float8, + pub C: float8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BOX { + pub high: Point, + pub low: Point, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct POLYGON { + pub vl_len_: int32, + pub npts: int32, + pub boundbox: BOX, + pub p: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct CIRCLE { + pub center: Point, + pub radius: float8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct pg_prng_state { + pub s0: uint64, + pub s1: uint64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct NumericData { + _unused: [u8; 0], +} +pub type Numeric = *mut NumericData; +pub mod JsonbIteratorToken { + pub type Type = ::core::ffi::c_uint; + pub const WJB_DONE: Type = 0; + pub const WJB_KEY: Type = 1; + pub const WJB_VALUE: Type = 2; + pub const WJB_ELEM: Type = 3; + pub const WJB_BEGIN_ARRAY: Type = 4; + pub const WJB_END_ARRAY: Type = 5; + pub const WJB_BEGIN_OBJECT: Type = 6; + pub const WJB_END_OBJECT: Type = 7; +} +pub type JEntry = uint32; +#[repr(C)] +#[derive(Debug, Default)] +pub struct JsonbContainer { + pub header: uint32, + pub children: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Default)] +pub struct Jsonb { + pub vl_len_: int32, + pub root: JsonbContainer, +} +pub mod jbvType { + pub type Type = ::core::ffi::c_uint; + pub const jbvNull: Type = 0; + pub const jbvString: Type = 1; + pub const jbvNumeric: Type = 2; + pub const jbvBool: Type = 3; + pub const jbvArray: Type = 16; + pub const jbvObject: Type = 17; + pub const jbvBinary: Type = 18; + pub const jbvDatetime: Type = 32; +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct JsonbValue { + pub type_: jbvType::Type, + pub val: JsonbValue__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union JsonbValue__bindgen_ty_1 { + pub numeric: Numeric, + pub boolean: bool, + pub string: JsonbValue__bindgen_ty_1__bindgen_ty_1, + pub array: JsonbValue__bindgen_ty_1__bindgen_ty_2, + pub object: JsonbValue__bindgen_ty_1__bindgen_ty_3, + pub binary: JsonbValue__bindgen_ty_1__bindgen_ty_4, + pub datetime: JsonbValue__bindgen_ty_1__bindgen_ty_5, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_1 { + pub len: ::core::ffi::c_int, + pub val: *mut ::core::ffi::c_char, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_2 { + pub nElems: ::core::ffi::c_int, + pub elems: *mut JsonbValue, + pub rawScalar: bool, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_3 { + pub nPairs: ::core::ffi::c_int, + pub pairs: *mut JsonbPair, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_3 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_4 { + pub len: ::core::ffi::c_int, + pub data: *mut JsonbContainer, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_4 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbValue__bindgen_ty_1__bindgen_ty_5 { + pub value: Datum, + pub typid: Oid, + pub typmod: int32, + pub tz: ::core::ffi::c_int, +} +impl Default for JsonbValue__bindgen_ty_1__bindgen_ty_5 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonbValue__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonbValue { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct JsonbPair { + pub key: JsonbValue, + pub value: JsonbValue, + pub order: uint32, +} +impl Default for JsonbPair { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct JsonbParseState { + pub contVal: JsonbValue, + pub size: Size, + pub next: *mut JsonbParseState, + pub unique_keys: bool, + pub skip_nulls: bool, +} +impl Default for JsonbParseState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod JsonbIterState { + pub type Type = ::core::ffi::c_uint; + pub const JBI_ARRAY_START: Type = 0; + pub const JBI_ARRAY_ELEM: Type = 1; + pub const JBI_OBJECT_START: Type = 2; + pub const JBI_OBJECT_KEY: Type = 3; + pub const JBI_OBJECT_VALUE: Type = 4; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonbIterator { + pub container: *mut JsonbContainer, + pub nElems: uint32, + pub isScalar: bool, + pub children: *mut JEntry, + pub dataProper: *mut ::core::ffi::c_char, + pub curIndex: ::core::ffi::c_int, + pub curDataOffset: uint32, + pub curValueOffset: uint32, + pub state: JsonbIterState::Type, + pub parent: *mut JsonbIterator, +} +impl Default for JsonbIterator { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct OpBtreeInterpretation { + pub opfamily_id: Oid, + pub strategy: ::core::ffi::c_int, + pub oplefttype: Oid, + pub oprighttype: Oid, +} +impl Default for OpBtreeInterpretation { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub mod IOFuncSelector { + pub type Type = ::core::ffi::c_uint; + pub const IOFunc_input: Type = 0; + pub const IOFunc_output: Type = 1; + pub const IOFunc_receive: Type = 2; + pub const IOFunc_send: Type = 3; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AttStatsSlot { + pub staop: Oid, + pub stacoll: Oid, + pub valuetype: Oid, + pub values: *mut Datum, + pub nvalues: ::core::ffi::c_int, + pub numbers: *mut float4, + pub nnumbers: ::core::ffi::c_int, + pub values_arr: *mut ::core::ffi::c_void, + pub numbers_arr: *mut ::core::ffi::c_void, +} +impl Default for AttStatsSlot { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type get_attavgwidth_hook_type = + ::core::option::Option int32>; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct BlockSamplerData { + pub N: BlockNumber, + pub n: ::core::ffi::c_int, + pub t: BlockNumber, + pub m: ::core::ffi::c_int, + pub randstate: pg_prng_state, +} +pub type BlockSampler = *mut BlockSamplerData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ReservoirStateData { + pub W: f64, + pub randstate: pg_prng_state, +} +pub type ReservoirState = *mut ReservoirStateData; +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct EstimationInfo { + pub flags: uint32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct VariableStatData { + pub var: *mut Node, + pub rel: *mut RelOptInfo, + pub statsTuple: HeapTuple, + pub freefunc: ::core::option::Option, + pub vartype: Oid, + pub atttype: Oid, + pub atttypmod: int32, + pub isunique: bool, + pub acl_ok: bool, +} +impl Default for VariableStatData { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct GenericCosts { + pub indexStartupCost: Cost, + pub indexTotalCost: Cost, + pub indexSelectivity: Selectivity, + pub indexCorrelation: f64, + pub numIndexPages: f64, + pub numIndexTuples: f64, + pub spc_random_page_cost: f64, + pub num_sa_scans: f64, +} +pub type get_relation_stats_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + rte: *mut RangeTblEntry, + attnum: AttrNumber, + vardata: *mut VariableStatData, + ) -> bool, +>; +pub type get_index_stats_hook_type = ::core::option::Option< + unsafe extern "C" fn( + root: *mut PlannerInfo, + indexOid: Oid, + indexattnum: AttrNumber, + vardata: *mut VariableStatData, + ) -> bool, +>; +pub type CCHashFN = ::core::option::Option uint32>; +pub type CCFastEqualFN = ::core::option::Option bool>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct catcache { + pub id: ::core::ffi::c_int, + pub cc_nbuckets: ::core::ffi::c_int, + pub cc_tupdesc: TupleDesc, + pub cc_bucket: *mut dlist_head, + pub cc_hashfunc: [CCHashFN; 4usize], + pub cc_fastequal: [CCFastEqualFN; 4usize], + pub cc_keyno: [::core::ffi::c_int; 4usize], + pub cc_nkeys: ::core::ffi::c_int, + pub cc_ntup: ::core::ffi::c_int, + pub cc_nlist: ::core::ffi::c_int, + pub cc_nlbuckets: ::core::ffi::c_int, + pub cc_lbucket: *mut dlist_head, + pub cc_relname: *const ::core::ffi::c_char, + pub cc_reloid: Oid, + pub cc_indexoid: Oid, + pub cc_relisshared: bool, + pub cc_next: slist_node, + pub cc_skey: [ScanKeyData; 4usize], +} +impl Default for catcache { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCache = catcache; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct catctup { + pub ct_magic: ::core::ffi::c_int, + pub hash_value: uint32, + pub keys: [Datum; 4usize], + pub cache_elem: dlist_node, + pub refcount: ::core::ffi::c_int, + pub dead: bool, + pub negative: bool, + pub tuple: HeapTupleData, + pub c_list: *mut catclist, + pub my_cache: *mut CatCache, +} +impl Default for catctup { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCTup = catctup; +#[repr(C)] +#[derive(Debug)] +pub struct catclist { + pub cl_magic: ::core::ffi::c_int, + pub hash_value: uint32, + pub cache_elem: dlist_node, + pub keys: [Datum; 4usize], + pub refcount: ::core::ffi::c_int, + pub dead: bool, + pub ordered: bool, + pub nkeys: ::core::ffi::c_short, + pub n_members: ::core::ffi::c_int, + pub my_cache: *mut CatCache, + pub members: __IncompleteArrayField<*mut CatCTup>, +} +impl Default for catclist { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCList = catclist; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct catcacheheader { + pub ch_caches: slist_head, + pub ch_ntup: ::core::ffi::c_int, +} +impl Default for catcacheheader { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type CatCacheHeader = catcacheheader; +pub mod SysCacheIdentifier { + pub type Type = ::core::ffi::c_uint; + pub const AGGFNOID: Type = 0; + pub const AMNAME: Type = 1; + pub const AMOID: Type = 2; + pub const AMOPOPID: Type = 3; + pub const AMOPSTRATEGY: Type = 4; + pub const AMPROCNUM: Type = 5; + pub const ATTNAME: Type = 6; + pub const ATTNUM: Type = 7; + pub const AUTHMEMMEMROLE: Type = 8; + pub const AUTHMEMROLEMEM: Type = 9; + pub const AUTHNAME: Type = 10; + pub const AUTHOID: Type = 11; + pub const CASTSOURCETARGET: Type = 12; + pub const CLAAMNAMENSP: Type = 13; + pub const CLAOID: Type = 14; + pub const COLLNAMEENCNSP: Type = 15; + pub const COLLOID: Type = 16; + pub const CONDEFAULT: Type = 17; + pub const CONNAMENSP: Type = 18; + pub const CONSTROID: Type = 19; + pub const CONVOID: Type = 20; + pub const DATABASEOID: Type = 21; + pub const DEFACLROLENSPOBJ: Type = 22; + pub const ENUMOID: Type = 23; + pub const ENUMTYPOIDNAME: Type = 24; + pub const EVENTTRIGGERNAME: Type = 25; + pub const EVENTTRIGGEROID: Type = 26; + pub const FOREIGNDATAWRAPPERNAME: Type = 27; + pub const FOREIGNDATAWRAPPEROID: Type = 28; + pub const FOREIGNSERVERNAME: Type = 29; + pub const FOREIGNSERVEROID: Type = 30; + pub const FOREIGNTABLEREL: Type = 31; + pub const INDEXRELID: Type = 32; + pub const LANGNAME: Type = 33; + pub const LANGOID: Type = 34; + pub const NAMESPACENAME: Type = 35; + pub const NAMESPACEOID: Type = 36; + pub const OPERNAMENSP: Type = 37; + pub const OPEROID: Type = 38; + pub const OPFAMILYAMNAMENSP: Type = 39; + pub const OPFAMILYOID: Type = 40; + pub const PARAMETERACLNAME: Type = 41; + pub const PARAMETERACLOID: Type = 42; + pub const PARTRELID: Type = 43; + pub const PROCNAMEARGSNSP: Type = 44; + pub const PROCOID: Type = 45; + pub const PUBLICATIONNAME: Type = 46; + pub const PUBLICATIONNAMESPACE: Type = 47; + pub const PUBLICATIONNAMESPACEMAP: Type = 48; + pub const PUBLICATIONOID: Type = 49; + pub const PUBLICATIONREL: Type = 50; + pub const PUBLICATIONRELMAP: Type = 51; + pub const RANGEMULTIRANGE: Type = 52; + pub const RANGETYPE: Type = 53; + pub const RELNAMENSP: Type = 54; + pub const RELOID: Type = 55; + pub const REPLORIGIDENT: Type = 56; + pub const REPLORIGNAME: Type = 57; + pub const RULERELNAME: Type = 58; + pub const SEQRELID: Type = 59; + pub const STATEXTDATASTXOID: Type = 60; + pub const STATEXTNAMENSP: Type = 61; + pub const STATEXTOID: Type = 62; + pub const STATRELATTINH: Type = 63; + pub const SUBSCRIPTIONNAME: Type = 64; + pub const SUBSCRIPTIONOID: Type = 65; + pub const SUBSCRIPTIONRELMAP: Type = 66; + pub const TABLESPACEOID: Type = 67; + pub const TRFOID: Type = 68; + pub const TRFTYPELANG: Type = 69; + pub const TSCONFIGMAP: Type = 70; + pub const TSCONFIGNAMENSP: Type = 71; + pub const TSCONFIGOID: Type = 72; + pub const TSDICTNAMENSP: Type = 73; + pub const TSDICTOID: Type = 74; + pub const TSPARSERNAMENSP: Type = 75; + pub const TSPARSEROID: Type = 76; + pub const TSTEMPLATENAMENSP: Type = 77; + pub const TSTEMPLATEOID: Type = 78; + pub const TYPENAMENSP: Type = 79; + pub const TYPEOID: Type = 80; + pub const USERMAPPINGOID: Type = 81; + pub const USERMAPPINGUSERSERVER: Type = 82; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeType { + pub vl_len_: int32, + pub rangetypid: Oid, +} +impl Default for RangeType { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct RangeBound { + pub val: Datum, + pub infinite: bool, + pub inclusive: bool, + pub lower: bool, +} +impl Default for RangeBound { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ClosestMatchState { + pub source: *const ::core::ffi::c_char, + pub min_d: ::core::ffi::c_int, + pub max_d: ::core::ffi::c_int, + pub match_: *const ::core::ffi::c_char, +} +impl Default for ClosestMatchState { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type __builtin_va_list = [__va_list_tag; 1usize]; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __va_list_tag { + pub gp_offset: ::core::ffi::c_uint, + pub fp_offset: ::core::ffi::c_uint, + pub overflow_arg_area: *mut ::core::ffi::c_void, + pub reg_save_area: *mut ::core::ffi::c_void, +} +impl Default for __va_list_tag { + fn default() -> Self { + let mut s = ::core::mem::MaybeUninit::::uninit(); + unsafe { + ::core::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct __locale_data { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct AttrMissing { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct PartitionTupleRouting { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WaitEventSet { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct binaryheap { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TsmRoutine { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TableFuncRoutine { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct memoize_hash { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct HashAggSpill { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct WindowObjectData { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ParallelExecutorInfo { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct TupleQueueReader { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct _MdfdVec { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct SnapBuild { + pub _address: u8, +} +extern "C" { + pub static mut stdin: *mut FILE; + pub static mut stdout: *mut FILE; + pub static mut stderr: *mut FILE; + pub fn remove(__filename: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn rename( + __old: *const ::core::ffi::c_char, + __new: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn renameat( + __oldfd: ::core::ffi::c_int, + __old: *const ::core::ffi::c_char, + __newfd: ::core::ffi::c_int, + __new: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn fclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn tmpfile() -> *mut FILE; + pub fn fflush(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fflush_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fopen( + __filename: *const ::core::ffi::c_char, + __modes: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn freopen( + __filename: *const ::core::ffi::c_char, + __modes: *const ::core::ffi::c_char, + __stream: *mut FILE, + ) -> *mut FILE; + pub fn fdopen(__fd: ::core::ffi::c_int, __modes: *const ::core::ffi::c_char) -> *mut FILE; + pub fn fmemopen( + __s: *mut ::core::ffi::c_void, + __len: usize, + __modes: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn open_memstream( + __bufloc: *mut *mut ::core::ffi::c_char, + __sizeloc: *mut usize, + ) -> *mut FILE; + pub fn setbuf(__stream: *mut FILE, __buf: *mut ::core::ffi::c_char); + pub fn setvbuf( + __stream: *mut FILE, + __buf: *mut ::core::ffi::c_char, + __modes: ::core::ffi::c_int, + __n: usize, + ) -> ::core::ffi::c_int; + pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::core::ffi::c_char, __size: usize); + pub fn setlinebuf(__stream: *mut FILE); + pub fn fprintf( + __stream: *mut FILE, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn printf(__format: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn sprintf( + __s: *mut ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn vfprintf( + __s: *mut FILE, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn vprintf( + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn vsprintf( + __s: *mut ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn snprintf( + __s: *mut ::core::ffi::c_char, + __maxlen: ::core::ffi::c_ulong, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn vsnprintf( + __s: *mut ::core::ffi::c_char, + __maxlen: ::core::ffi::c_ulong, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn vdprintf( + __fd: ::core::ffi::c_int, + __fmt: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn dprintf( + __fd: ::core::ffi::c_int, + __fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn fscanf( + __stream: *mut FILE, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn scanf(__format: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn sscanf( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_fscanf"] + pub fn fscanf1( + __stream: *mut FILE, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_scanf"] + pub fn scanf1(__format: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_sscanf"] + pub fn sscanf1( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn vfscanf( + __s: *mut FILE, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn vscanf( + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn vsscanf( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_vfscanf"] + pub fn vfscanf1( + __s: *mut FILE, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_vscanf"] + pub fn vscanf1( + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + #[link_name = "\u{1}__isoc99_vsscanf"] + pub fn vsscanf1( + __s: *const ::core::ffi::c_char, + __format: *const ::core::ffi::c_char, + __arg: *mut __va_list_tag, + ) -> ::core::ffi::c_int; + pub fn fgetc(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn getc(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn getchar() -> ::core::ffi::c_int; + pub fn getc_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn getchar_unlocked() -> ::core::ffi::c_int; + pub fn fgetc_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fputc(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putc(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putchar(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn fputc_unlocked(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putc_unlocked(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putchar_unlocked(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn getw(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn putw(__w: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fgets( + __s: *mut ::core::ffi::c_char, + __n: ::core::ffi::c_int, + __stream: *mut FILE, + ) -> *mut ::core::ffi::c_char; + pub fn __getdelim( + __lineptr: *mut *mut ::core::ffi::c_char, + __n: *mut usize, + __delimiter: ::core::ffi::c_int, + __stream: *mut FILE, + ) -> __ssize_t; + pub fn getdelim( + __lineptr: *mut *mut ::core::ffi::c_char, + __n: *mut usize, + __delimiter: ::core::ffi::c_int, + __stream: *mut FILE, + ) -> __ssize_t; + pub fn getline( + __lineptr: *mut *mut ::core::ffi::c_char, + __n: *mut usize, + __stream: *mut FILE, + ) -> __ssize_t; + pub fn fputs(__s: *const ::core::ffi::c_char, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn puts(__s: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn ungetc(__c: ::core::ffi::c_int, __stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fread( + __ptr: *mut ::core::ffi::c_void, + __size: ::core::ffi::c_ulong, + __n: ::core::ffi::c_ulong, + __stream: *mut FILE, + ) -> ::core::ffi::c_ulong; + pub fn fwrite( + __ptr: *const ::core::ffi::c_void, + __size: ::core::ffi::c_ulong, + __n: ::core::ffi::c_ulong, + __s: *mut FILE, + ) -> ::core::ffi::c_ulong; + pub fn fread_unlocked( + __ptr: *mut ::core::ffi::c_void, + __size: usize, + __n: usize, + __stream: *mut FILE, + ) -> usize; + pub fn fwrite_unlocked( + __ptr: *const ::core::ffi::c_void, + __size: usize, + __n: usize, + __stream: *mut FILE, + ) -> usize; + pub fn fseek( + __stream: *mut FILE, + __off: ::core::ffi::c_long, + __whence: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ftell(__stream: *mut FILE) -> ::core::ffi::c_long; + pub fn rewind(__stream: *mut FILE); + pub fn fseeko( + __stream: *mut FILE, + __off: __off_t, + __whence: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ftello(__stream: *mut FILE) -> __off_t; + pub fn fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::core::ffi::c_int; + pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::core::ffi::c_int; + pub fn clearerr(__stream: *mut FILE); + pub fn feof(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn ferror(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn clearerr_unlocked(__stream: *mut FILE); + pub fn feof_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn ferror_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn perror(__s: *const ::core::ffi::c_char); + pub fn fileno(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn fileno_unlocked(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn pclose(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn popen( + __command: *const ::core::ffi::c_char, + __modes: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn ctermid(__s: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn flockfile(__stream: *mut FILE); + pub fn ftrylockfile(__stream: *mut FILE) -> ::core::ffi::c_int; + pub fn funlockfile(__stream: *mut FILE); + pub fn __uflow(arg1: *mut FILE) -> ::core::ffi::c_int; + pub fn __overflow(arg1: *mut FILE, arg2: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn __ctype_get_mb_cur_max() -> usize; + pub fn atof(__nptr: *const ::core::ffi::c_char) -> f64; + pub fn atoi(__nptr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn atol(__nptr: *const ::core::ffi::c_char) -> ::core::ffi::c_long; + pub fn atoll(__nptr: *const ::core::ffi::c_char) -> ::core::ffi::c_longlong; + pub fn strtod( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + ) -> f64; + pub fn strtof( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + ) -> f32; + pub fn strtold( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + ) -> u128; + pub fn strtol( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_long; + pub fn strtoul( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_ulong; + pub fn strtoq( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_longlong; + pub fn strtouq( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_ulonglong; + pub fn strtoll( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_longlong; + pub fn strtoull( + __nptr: *const ::core::ffi::c_char, + __endptr: *mut *mut ::core::ffi::c_char, + __base: ::core::ffi::c_int, + ) -> ::core::ffi::c_ulonglong; + pub fn l64a(__n: ::core::ffi::c_long) -> *mut ::core::ffi::c_char; + pub fn a64l(__s: *const ::core::ffi::c_char) -> ::core::ffi::c_long; + pub fn select( + __nfds: ::core::ffi::c_int, + __readfds: *mut fd_set, + __writefds: *mut fd_set, + __exceptfds: *mut fd_set, + __timeout: *mut timeval, + ) -> ::core::ffi::c_int; + pub fn pselect( + __nfds: ::core::ffi::c_int, + __readfds: *mut fd_set, + __writefds: *mut fd_set, + __exceptfds: *mut fd_set, + __timeout: *const timespec, + __sigmask: *const __sigset_t, + ) -> ::core::ffi::c_int; + pub fn random() -> ::core::ffi::c_long; + pub fn srandom(__seed: ::core::ffi::c_uint); + pub fn initstate( + __seed: ::core::ffi::c_uint, + __statebuf: *mut ::core::ffi::c_char, + __statelen: usize, + ) -> *mut ::core::ffi::c_char; + pub fn setstate(__statebuf: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::core::ffi::c_int; + pub fn srandom_r(__seed: ::core::ffi::c_uint, __buf: *mut random_data) -> ::core::ffi::c_int; + pub fn initstate_r( + __seed: ::core::ffi::c_uint, + __statebuf: *mut ::core::ffi::c_char, + __statelen: usize, + __buf: *mut random_data, + ) -> ::core::ffi::c_int; + pub fn setstate_r( + __statebuf: *mut ::core::ffi::c_char, + __buf: *mut random_data, + ) -> ::core::ffi::c_int; + pub fn rand() -> ::core::ffi::c_int; + pub fn srand(__seed: ::core::ffi::c_uint); + pub fn rand_r(__seed: *mut ::core::ffi::c_uint) -> ::core::ffi::c_int; + pub fn drand48() -> f64; + pub fn erand48(__xsubi: *mut ::core::ffi::c_ushort) -> f64; + pub fn lrand48() -> ::core::ffi::c_long; + pub fn nrand48(__xsubi: *mut ::core::ffi::c_ushort) -> ::core::ffi::c_long; + pub fn mrand48() -> ::core::ffi::c_long; + pub fn jrand48(__xsubi: *mut ::core::ffi::c_ushort) -> ::core::ffi::c_long; + pub fn srand48(__seedval: ::core::ffi::c_long); + pub fn seed48(__seed16v: *mut ::core::ffi::c_ushort) -> *mut ::core::ffi::c_ushort; + pub fn lcong48(__param: *mut ::core::ffi::c_ushort); + pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::core::ffi::c_int; + pub fn erand48_r( + __xsubi: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + __result: *mut f64, + ) -> ::core::ffi::c_int; + pub fn lrand48_r( + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn nrand48_r( + __xsubi: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn mrand48_r( + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn jrand48_r( + __xsubi: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + __result: *mut ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn srand48_r( + __seedval: ::core::ffi::c_long, + __buffer: *mut drand48_data, + ) -> ::core::ffi::c_int; + pub fn seed48_r( + __seed16v: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + ) -> ::core::ffi::c_int; + pub fn lcong48_r( + __param: *mut ::core::ffi::c_ushort, + __buffer: *mut drand48_data, + ) -> ::core::ffi::c_int; + pub fn arc4random() -> __uint32_t; + pub fn arc4random_buf(__buf: *mut ::core::ffi::c_void, __size: usize); + pub fn arc4random_uniform(__upper_bound: __uint32_t) -> __uint32_t; + pub fn malloc(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; + pub fn calloc( + __nmemb: ::core::ffi::c_ulong, + __size: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn realloc( + __ptr: *mut ::core::ffi::c_void, + __size: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn free(__ptr: *mut ::core::ffi::c_void); + pub fn reallocarray( + __ptr: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + ) -> *mut ::core::ffi::c_void; + pub fn alloca(__size: ::core::ffi::c_ulong) -> *mut ::core::ffi::c_void; + pub fn valloc(__size: usize) -> *mut ::core::ffi::c_void; + pub fn posix_memalign( + __memptr: *mut *mut ::core::ffi::c_void, + __alignment: usize, + __size: usize, + ) -> ::core::ffi::c_int; + pub fn aligned_alloc( + __alignment: ::core::ffi::c_ulong, + __size: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn abort() -> !; + pub fn atexit(__func: ::core::option::Option) -> ::core::ffi::c_int; + pub fn at_quick_exit( + __func: ::core::option::Option, + ) -> ::core::ffi::c_int; + pub fn on_exit( + __func: ::core::option::Option< + unsafe extern "C" fn(__status: ::core::ffi::c_int, __arg: *mut ::core::ffi::c_void), + >, + __arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn exit(__status: ::core::ffi::c_int) -> !; + pub fn quick_exit(__status: ::core::ffi::c_int) -> !; + pub fn _Exit(__status: ::core::ffi::c_int) -> !; + pub fn getenv(__name: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn putenv(__string: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn setenv( + __name: *const ::core::ffi::c_char, + __value: *const ::core::ffi::c_char, + __replace: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn unsetenv(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn clearenv() -> ::core::ffi::c_int; + pub fn mkstemp(__template: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn mkstemps( + __template: *mut ::core::ffi::c_char, + __suffixlen: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn mkdtemp(__template: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn system(__command: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn realpath( + __name: *const ::core::ffi::c_char, + __resolved: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn bsearch( + __key: *const ::core::ffi::c_void, + __base: *const ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + __compar: __compar_fn_t, + ) -> *mut ::core::ffi::c_void; + pub fn qsort( + __base: *mut ::core::ffi::c_void, + __nmemb: usize, + __size: usize, + __compar: __compar_fn_t, + ); + pub fn abs(__x: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn labs(__x: ::core::ffi::c_long) -> ::core::ffi::c_long; + pub fn llabs(__x: ::core::ffi::c_longlong) -> ::core::ffi::c_longlong; + pub fn div(__numer: ::core::ffi::c_int, __denom: ::core::ffi::c_int) -> div_t; + pub fn ldiv(__numer: ::core::ffi::c_long, __denom: ::core::ffi::c_long) -> ldiv_t; + pub fn lldiv(__numer: ::core::ffi::c_longlong, __denom: ::core::ffi::c_longlong) -> lldiv_t; + pub fn ecvt( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn fcvt( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn gcvt( + __value: f64, + __ndigit: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn qecvt( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn qfcvt( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn qgcvt( + __value: u128, + __ndigit: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn ecvt_r( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn fcvt_r( + __value: f64, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn qecvt_r( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn qfcvt_r( + __value: u128, + __ndigit: ::core::ffi::c_int, + __decpt: *mut ::core::ffi::c_int, + __sign: *mut ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> ::core::ffi::c_int; + pub fn mblen(__s: *const ::core::ffi::c_char, __n: usize) -> ::core::ffi::c_int; + pub fn mbtowc( + __pwc: *mut wchar_t, + __s: *const ::core::ffi::c_char, + __n: usize, + ) -> ::core::ffi::c_int; + pub fn wctomb(__s: *mut ::core::ffi::c_char, __wchar: wchar_t) -> ::core::ffi::c_int; + pub fn mbstowcs(__pwcs: *mut wchar_t, __s: *const ::core::ffi::c_char, __n: usize) -> usize; + pub fn wcstombs(__s: *mut ::core::ffi::c_char, __pwcs: *const wchar_t, __n: usize) -> usize; + pub fn rpmatch(__response: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getsubopt( + __optionp: *mut *mut ::core::ffi::c_char, + __tokens: *const *mut ::core::ffi::c_char, + __valuep: *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn getloadavg(__loadavg: *mut f64, __nelem: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn memcpy( + __dest: *mut ::core::ffi::c_void, + __src: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memmove( + __dest: *mut ::core::ffi::c_void, + __src: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memccpy( + __dest: *mut ::core::ffi::c_void, + __src: *const ::core::ffi::c_void, + __c: ::core::ffi::c_int, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memset( + __s: *mut ::core::ffi::c_void, + __c: ::core::ffi::c_int, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn memcmp( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn __memcmpeq( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: usize, + ) -> ::core::ffi::c_int; + pub fn memchr( + __s: *const ::core::ffi::c_void, + __c: ::core::ffi::c_int, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_void; + pub fn strcpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strncpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn strcat( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strncat( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn strcmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn strncmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn strcoll( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn strxfrm( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_ulong; + pub fn strcoll_l( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __l: locale_t, + ) -> ::core::ffi::c_int; + pub fn strxfrm_l( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: usize, + __l: locale_t, + ) -> usize; + pub fn strdup(__s: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn strndup( + __string: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn strchr( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn strrchr( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn strcspn( + __s: *const ::core::ffi::c_char, + __reject: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_ulong; + pub fn strspn( + __s: *const ::core::ffi::c_char, + __accept: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_ulong; + pub fn strpbrk( + __s: *const ::core::ffi::c_char, + __accept: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strstr( + __haystack: *const ::core::ffi::c_char, + __needle: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strtok( + __s: *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn __strtok_r( + __s: *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + __save_ptr: *mut *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strtok_r( + __s: *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + __save_ptr: *mut *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strlen(__s: *const ::core::ffi::c_char) -> ::core::ffi::c_ulong; + pub fn strnlen(__string: *const ::core::ffi::c_char, __maxlen: usize) -> usize; + pub fn strerror(__errnum: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + #[link_name = "\u{1}__xpg_strerror_r"] + pub fn strerror_r( + __errnum: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + ) -> ::core::ffi::c_int; + pub fn strerror_l(__errnum: ::core::ffi::c_int, __l: locale_t) -> *mut ::core::ffi::c_char; + pub fn bcmp( + __s1: *const ::core::ffi::c_void, + __s2: *const ::core::ffi::c_void, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn bcopy(__src: *const ::core::ffi::c_void, __dest: *mut ::core::ffi::c_void, __n: usize); + pub fn bzero(__s: *mut ::core::ffi::c_void, __n: ::core::ffi::c_ulong); + pub fn index( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn rindex( + __s: *const ::core::ffi::c_char, + __c: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn ffs(__i: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ffsl(__l: ::core::ffi::c_long) -> ::core::ffi::c_int; + pub fn ffsll(__ll: ::core::ffi::c_longlong) -> ::core::ffi::c_int; + pub fn strcasecmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn strncasecmp( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> ::core::ffi::c_int; + pub fn strcasecmp_l( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __loc: locale_t, + ) -> ::core::ffi::c_int; + pub fn strncasecmp_l( + __s1: *const ::core::ffi::c_char, + __s2: *const ::core::ffi::c_char, + __n: usize, + __loc: locale_t, + ) -> ::core::ffi::c_int; + pub fn explicit_bzero(__s: *mut ::core::ffi::c_void, __n: usize); + pub fn strsep( + __stringp: *mut *mut ::core::ffi::c_char, + __delim: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn strsignal(__sig: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn __stpcpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn stpcpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn __stpncpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: usize, + ) -> *mut ::core::ffi::c_char; + pub fn stpncpy( + __dest: *mut ::core::ffi::c_char, + __src: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn __errno_location() -> *mut ::core::ffi::c_int; + pub fn setlocale( + __category: ::core::ffi::c_int, + __locale: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn localeconv() -> *mut lconv; + pub fn newlocale( + __category_mask: ::core::ffi::c_int, + __locale: *const ::core::ffi::c_char, + __base: locale_t, + ) -> locale_t; + pub fn duplocale(__dataset: locale_t) -> locale_t; + pub fn freelocale(__dataset: locale_t); + pub fn uselocale(__dataset: locale_t) -> locale_t; + pub fn gettext(__msgid: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn dgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn __dgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn dcgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + __category: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn __dcgettext( + __domainname: *const ::core::ffi::c_char, + __msgid: *const ::core::ffi::c_char, + __category: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn ngettext( + __msgid1: *const ::core::ffi::c_char, + __msgid2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn dngettext( + __domainname: *const ::core::ffi::c_char, + __msgid1: *const ::core::ffi::c_char, + __msgid2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + ) -> *mut ::core::ffi::c_char; + pub fn dcngettext( + __domainname: *const ::core::ffi::c_char, + __msgid1: *const ::core::ffi::c_char, + __msgid2: *const ::core::ffi::c_char, + __n: ::core::ffi::c_ulong, + __category: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn textdomain(__domainname: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn bindtextdomain( + __domainname: *const ::core::ffi::c_char, + __dirname: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn bind_textdomain_codeset( + __domainname: *const ::core::ffi::c_char, + __codeset: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn ExceptionalCondition( + conditionName: *const ::core::ffi::c_char, + fileName: *const ::core::ffi::c_char, + lineNumber: ::core::ffi::c_int, + ) -> !; + pub fn __ctype_b_loc() -> *mut *const ::core::ffi::c_ushort; + pub fn __ctype_tolower_loc() -> *mut *const __int32_t; + pub fn __ctype_toupper_loc() -> *mut *const __int32_t; + pub fn isalnum(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isalpha(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn iscntrl(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isdigit(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn islower(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isgraph(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isprint(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ispunct(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isspace(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isupper(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isxdigit(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn tolower(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn toupper(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isblank(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isascii(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn toascii(__c: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn _toupper(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn _tolower(arg1: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isalnum_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isalpha_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn iscntrl_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isdigit_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn islower_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isgraph_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isprint_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn ispunct_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isspace_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isupper_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isxdigit_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn isblank_l(arg1: ::core::ffi::c_int, arg2: locale_t) -> ::core::ffi::c_int; + pub fn __tolower_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn tolower_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn __toupper_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn toupper_l(__c: ::core::ffi::c_int, __l: locale_t) -> ::core::ffi::c_int; + pub fn pg_set_noblock(sock: pgsocket) -> bool; + pub fn pg_set_block(sock: pgsocket) -> bool; + pub fn has_drive_prefix(path: *const ::core::ffi::c_char) -> bool; + pub fn first_dir_separator(filename: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn last_dir_separator(filename: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn first_path_var_separator( + pathlist: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn join_path_components( + ret_path: *mut ::core::ffi::c_char, + head: *const ::core::ffi::c_char, + tail: *const ::core::ffi::c_char, + ); + pub fn canonicalize_path(path: *mut ::core::ffi::c_char); + pub fn make_native_path(filename: *mut ::core::ffi::c_char); + pub fn cleanup_path(path: *mut ::core::ffi::c_char); + pub fn path_contains_parent_reference(path: *const ::core::ffi::c_char) -> bool; + pub fn path_is_relative_and_below_cwd(path: *const ::core::ffi::c_char) -> bool; + pub fn path_is_prefix_of_path( + path1: *const ::core::ffi::c_char, + path2: *const ::core::ffi::c_char, + ) -> bool; + pub fn make_absolute_path(path: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn get_progname(argv0: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char; + pub fn get_share_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_etc_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_include_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_pkginclude_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_includeserver_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_lib_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_pkglib_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_locale_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_doc_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_html_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_man_path( + my_exec_path: *const ::core::ffi::c_char, + ret_path: *mut ::core::ffi::c_char, + ); + pub fn get_home_path(ret_path: *mut ::core::ffi::c_char) -> bool; + pub fn get_parent_directory(path: *mut ::core::ffi::c_char); + pub fn pgfnames(path: *const ::core::ffi::c_char) -> *mut *mut ::core::ffi::c_char; + pub fn pgfnames_cleanup(filenames: *mut *mut ::core::ffi::c_char); + pub fn set_pglocale_pgservice( + argv0: *const ::core::ffi::c_char, + app: *const ::core::ffi::c_char, + ); + pub fn validate_exec(path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn find_my_exec( + argv0: *const ::core::ffi::c_char, + retpath: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn find_other_exec( + argv0: *const ::core::ffi::c_char, + target: *const ::core::ffi::c_char, + versionstr: *const ::core::ffi::c_char, + retpath: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pipe_read_line(cmd: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn pg_usleep(microsec: ::core::ffi::c_long); + pub fn pg_strcasecmp( + s1: *const ::core::ffi::c_char, + s2: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_strncasecmp( + s1: *const ::core::ffi::c_char, + s2: *const ::core::ffi::c_char, + n: usize, + ) -> ::core::ffi::c_int; + pub fn pg_toupper(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_tolower(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_ascii_toupper(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_ascii_tolower(ch: ::core::ffi::c_uchar) -> ::core::ffi::c_uchar; + pub fn pg_snprintf( + str_: *mut ::core::ffi::c_char, + count: usize, + fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn pg_sprintf( + str_: *mut ::core::ffi::c_char, + fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn pg_fprintf( + stream: *mut FILE, + fmt: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn pg_printf(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn pg_strfromd( + str_: *mut ::core::ffi::c_char, + count: usize, + precision: ::core::ffi::c_int, + value: f64, + ) -> ::core::ffi::c_int; + pub fn pg_strerror(errnum: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn pg_strerror_r( + errnum: ::core::ffi::c_int, + buf: *mut ::core::ffi::c_char, + buflen: usize, + ) -> *mut ::core::ffi::c_char; + pub fn pg_strsignal(signum: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pclose_check(stream: *mut FILE) -> ::core::ffi::c_int; + pub fn rmtree(path: *const ::core::ffi::c_char, rmtopdir: bool) -> bool; + pub fn getpeereid( + sock: ::core::ffi::c_int, + uid: *mut uid_t, + gid: *mut gid_t, + ) -> ::core::ffi::c_int; + pub fn __fpclassify(__value: f64) -> ::core::ffi::c_int; + pub fn __signbit(__value: f64) -> ::core::ffi::c_int; + pub fn __isinf(__value: f64) -> ::core::ffi::c_int; + pub fn __finite(__value: f64) -> ::core::ffi::c_int; + pub fn __isnan(__value: f64) -> ::core::ffi::c_int; + pub fn __iseqsig(__x: f64, __y: f64) -> ::core::ffi::c_int; + pub fn __issignaling(__value: f64) -> ::core::ffi::c_int; + pub fn acos(__x: f64) -> f64; + pub fn __acos(__x: f64) -> f64; + pub fn asin(__x: f64) -> f64; + pub fn __asin(__x: f64) -> f64; + pub fn atan(__x: f64) -> f64; + pub fn __atan(__x: f64) -> f64; + pub fn atan2(__y: f64, __x: f64) -> f64; + pub fn __atan2(__y: f64, __x: f64) -> f64; + pub fn cos(__x: f64) -> f64; + pub fn __cos(__x: f64) -> f64; + pub fn sin(__x: f64) -> f64; + pub fn __sin(__x: f64) -> f64; + pub fn tan(__x: f64) -> f64; + pub fn __tan(__x: f64) -> f64; + pub fn cosh(__x: f64) -> f64; + pub fn __cosh(__x: f64) -> f64; + pub fn sinh(__x: f64) -> f64; + pub fn __sinh(__x: f64) -> f64; + pub fn tanh(__x: f64) -> f64; + pub fn __tanh(__x: f64) -> f64; + pub fn acosh(__x: f64) -> f64; + pub fn __acosh(__x: f64) -> f64; + pub fn asinh(__x: f64) -> f64; + pub fn __asinh(__x: f64) -> f64; + pub fn atanh(__x: f64) -> f64; + pub fn __atanh(__x: f64) -> f64; + pub fn exp(__x: f64) -> f64; + pub fn __exp(__x: f64) -> f64; + pub fn frexp(__x: f64, __exponent: *mut ::core::ffi::c_int) -> f64; + pub fn __frexp(__x: f64, __exponent: *mut ::core::ffi::c_int) -> f64; + pub fn ldexp(__x: f64, __exponent: ::core::ffi::c_int) -> f64; + pub fn __ldexp(__x: f64, __exponent: ::core::ffi::c_int) -> f64; + pub fn __log(__x: f64) -> f64; + pub fn log10(__x: f64) -> f64; + pub fn __log10(__x: f64) -> f64; + pub fn modf(__x: f64, __iptr: *mut f64) -> f64; + pub fn __modf(__x: f64, __iptr: *mut f64) -> f64; + pub fn expm1(__x: f64) -> f64; + pub fn __expm1(__x: f64) -> f64; + pub fn log1p(__x: f64) -> f64; + pub fn __log1p(__x: f64) -> f64; + pub fn logb(__x: f64) -> f64; + pub fn __logb(__x: f64) -> f64; + pub fn exp2(__x: f64) -> f64; + pub fn __exp2(__x: f64) -> f64; + pub fn log2(__x: f64) -> f64; + pub fn __log2(__x: f64) -> f64; + pub fn pow(__x: f64, __y: f64) -> f64; + pub fn __pow(__x: f64, __y: f64) -> f64; + pub fn sqrt(__x: f64) -> f64; + pub fn __sqrt(__x: f64) -> f64; + pub fn hypot(__x: f64, __y: f64) -> f64; + pub fn __hypot(__x: f64, __y: f64) -> f64; + pub fn cbrt(__x: f64) -> f64; + pub fn __cbrt(__x: f64) -> f64; + pub fn ceil(__x: f64) -> f64; + pub fn __ceil(__x: f64) -> f64; + pub fn fabs(__x: f64) -> f64; + pub fn __fabs(__x: f64) -> f64; + pub fn floor(__x: f64) -> f64; + pub fn __floor(__x: f64) -> f64; + pub fn fmod(__x: f64, __y: f64) -> f64; + pub fn __fmod(__x: f64, __y: f64) -> f64; + pub fn isinf(__value: f64) -> ::core::ffi::c_int; + pub fn finite(__value: f64) -> ::core::ffi::c_int; + pub fn drem(__x: f64, __y: f64) -> f64; + pub fn __drem(__x: f64, __y: f64) -> f64; + pub fn significand(__x: f64) -> f64; + pub fn __significand(__x: f64) -> f64; + pub fn copysign(__x: f64, __y: f64) -> f64; + pub fn __copysign(__x: f64, __y: f64) -> f64; + pub fn nan(__tagb: *const ::core::ffi::c_char) -> f64; + pub fn __nan(__tagb: *const ::core::ffi::c_char) -> f64; + pub fn isnan(__value: f64) -> ::core::ffi::c_int; + pub fn j0(arg1: f64) -> f64; + pub fn __j0(arg1: f64) -> f64; + pub fn j1(arg1: f64) -> f64; + pub fn __j1(arg1: f64) -> f64; + pub fn jn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn __jn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn y0(arg1: f64) -> f64; + pub fn __y0(arg1: f64) -> f64; + pub fn y1(arg1: f64) -> f64; + pub fn __y1(arg1: f64) -> f64; + pub fn yn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn __yn(arg1: ::core::ffi::c_int, arg2: f64) -> f64; + pub fn erf(arg1: f64) -> f64; + pub fn __erf(arg1: f64) -> f64; + pub fn erfc(arg1: f64) -> f64; + pub fn __erfc(arg1: f64) -> f64; + pub fn lgamma(arg1: f64) -> f64; + pub fn __lgamma(arg1: f64) -> f64; + pub fn tgamma(arg1: f64) -> f64; + pub fn __tgamma(arg1: f64) -> f64; + pub fn gamma(arg1: f64) -> f64; + pub fn __gamma(arg1: f64) -> f64; + pub fn lgamma_r(arg1: f64, __signgamp: *mut ::core::ffi::c_int) -> f64; + pub fn __lgamma_r(arg1: f64, __signgamp: *mut ::core::ffi::c_int) -> f64; + pub fn rint(__x: f64) -> f64; + pub fn __rint(__x: f64) -> f64; + pub fn nextafter(__x: f64, __y: f64) -> f64; + pub fn __nextafter(__x: f64, __y: f64) -> f64; + pub fn nexttoward(__x: f64, __y: u128) -> f64; + pub fn __nexttoward(__x: f64, __y: u128) -> f64; + pub fn remainder(__x: f64, __y: f64) -> f64; + pub fn __remainder(__x: f64, __y: f64) -> f64; + pub fn scalbn(__x: f64, __n: ::core::ffi::c_int) -> f64; + pub fn __scalbn(__x: f64, __n: ::core::ffi::c_int) -> f64; + pub fn ilogb(__x: f64) -> ::core::ffi::c_int; + pub fn __ilogb(__x: f64) -> ::core::ffi::c_int; + pub fn scalbln(__x: f64, __n: ::core::ffi::c_long) -> f64; + pub fn __scalbln(__x: f64, __n: ::core::ffi::c_long) -> f64; + pub fn nearbyint(__x: f64) -> f64; + pub fn __nearbyint(__x: f64) -> f64; + pub fn round(__x: f64) -> f64; + pub fn __round(__x: f64) -> f64; + pub fn trunc(__x: f64) -> f64; + pub fn __trunc(__x: f64) -> f64; + pub fn remquo(__x: f64, __y: f64, __quo: *mut ::core::ffi::c_int) -> f64; + pub fn __remquo(__x: f64, __y: f64, __quo: *mut ::core::ffi::c_int) -> f64; + pub fn lrint(__x: f64) -> ::core::ffi::c_long; + pub fn __lrint(__x: f64) -> ::core::ffi::c_long; + pub fn llrint(__x: f64) -> ::core::ffi::c_longlong; + pub fn __llrint(__x: f64) -> ::core::ffi::c_longlong; + pub fn lround(__x: f64) -> ::core::ffi::c_long; + pub fn __lround(__x: f64) -> ::core::ffi::c_long; + pub fn llround(__x: f64) -> ::core::ffi::c_longlong; + pub fn __llround(__x: f64) -> ::core::ffi::c_longlong; + pub fn fdim(__x: f64, __y: f64) -> f64; + pub fn __fdim(__x: f64, __y: f64) -> f64; + pub fn fmax(__x: f64, __y: f64) -> f64; + pub fn __fmax(__x: f64, __y: f64) -> f64; + pub fn fmin(__x: f64, __y: f64) -> f64; + pub fn __fmin(__x: f64, __y: f64) -> f64; + pub fn fma(__x: f64, __y: f64, __z: f64) -> f64; + pub fn __fma(__x: f64, __y: f64, __z: f64) -> f64; + pub fn scalb(__x: f64, __n: f64) -> f64; + pub fn __scalb(__x: f64, __n: f64) -> f64; + pub fn __fpclassifyf(__value: f32) -> ::core::ffi::c_int; + pub fn __signbitf(__value: f32) -> ::core::ffi::c_int; + pub fn __isinff(__value: f32) -> ::core::ffi::c_int; + pub fn __finitef(__value: f32) -> ::core::ffi::c_int; + pub fn __isnanf(__value: f32) -> ::core::ffi::c_int; + pub fn __iseqsigf(__x: f32, __y: f32) -> ::core::ffi::c_int; + pub fn __issignalingf(__value: f32) -> ::core::ffi::c_int; + pub fn acosf(__x: f32) -> f32; + pub fn __acosf(__x: f32) -> f32; + pub fn asinf(__x: f32) -> f32; + pub fn __asinf(__x: f32) -> f32; + pub fn atanf(__x: f32) -> f32; + pub fn __atanf(__x: f32) -> f32; + pub fn atan2f(__y: f32, __x: f32) -> f32; + pub fn __atan2f(__y: f32, __x: f32) -> f32; + pub fn cosf(__x: f32) -> f32; + pub fn __cosf(__x: f32) -> f32; + pub fn sinf(__x: f32) -> f32; + pub fn __sinf(__x: f32) -> f32; + pub fn tanf(__x: f32) -> f32; + pub fn __tanf(__x: f32) -> f32; + pub fn coshf(__x: f32) -> f32; + pub fn __coshf(__x: f32) -> f32; + pub fn sinhf(__x: f32) -> f32; + pub fn __sinhf(__x: f32) -> f32; + pub fn tanhf(__x: f32) -> f32; + pub fn __tanhf(__x: f32) -> f32; + pub fn acoshf(__x: f32) -> f32; + pub fn __acoshf(__x: f32) -> f32; + pub fn asinhf(__x: f32) -> f32; + pub fn __asinhf(__x: f32) -> f32; + pub fn atanhf(__x: f32) -> f32; + pub fn __atanhf(__x: f32) -> f32; + pub fn expf(__x: f32) -> f32; + pub fn __expf(__x: f32) -> f32; + pub fn frexpf(__x: f32, __exponent: *mut ::core::ffi::c_int) -> f32; + pub fn __frexpf(__x: f32, __exponent: *mut ::core::ffi::c_int) -> f32; + pub fn ldexpf(__x: f32, __exponent: ::core::ffi::c_int) -> f32; + pub fn __ldexpf(__x: f32, __exponent: ::core::ffi::c_int) -> f32; + pub fn logf(__x: f32) -> f32; + pub fn __logf(__x: f32) -> f32; + pub fn log10f(__x: f32) -> f32; + pub fn __log10f(__x: f32) -> f32; + pub fn modff(__x: f32, __iptr: *mut f32) -> f32; + pub fn __modff(__x: f32, __iptr: *mut f32) -> f32; + pub fn expm1f(__x: f32) -> f32; + pub fn __expm1f(__x: f32) -> f32; + pub fn log1pf(__x: f32) -> f32; + pub fn __log1pf(__x: f32) -> f32; + pub fn logbf(__x: f32) -> f32; + pub fn __logbf(__x: f32) -> f32; + pub fn exp2f(__x: f32) -> f32; + pub fn __exp2f(__x: f32) -> f32; + pub fn log2f(__x: f32) -> f32; + pub fn __log2f(__x: f32) -> f32; + pub fn powf(__x: f32, __y: f32) -> f32; + pub fn __powf(__x: f32, __y: f32) -> f32; + pub fn sqrtf(__x: f32) -> f32; + pub fn __sqrtf(__x: f32) -> f32; + pub fn hypotf(__x: f32, __y: f32) -> f32; + pub fn __hypotf(__x: f32, __y: f32) -> f32; + pub fn cbrtf(__x: f32) -> f32; + pub fn __cbrtf(__x: f32) -> f32; + pub fn ceilf(__x: f32) -> f32; + pub fn __ceilf(__x: f32) -> f32; + pub fn fabsf(__x: f32) -> f32; + pub fn __fabsf(__x: f32) -> f32; + pub fn floorf(__x: f32) -> f32; + pub fn __floorf(__x: f32) -> f32; + pub fn fmodf(__x: f32, __y: f32) -> f32; + pub fn __fmodf(__x: f32, __y: f32) -> f32; + pub fn isinff(__value: f32) -> ::core::ffi::c_int; + pub fn finitef(__value: f32) -> ::core::ffi::c_int; + pub fn dremf(__x: f32, __y: f32) -> f32; + pub fn __dremf(__x: f32, __y: f32) -> f32; + pub fn significandf(__x: f32) -> f32; + pub fn __significandf(__x: f32) -> f32; + pub fn copysignf(__x: f32, __y: f32) -> f32; + pub fn __copysignf(__x: f32, __y: f32) -> f32; + pub fn nanf(__tagb: *const ::core::ffi::c_char) -> f32; + pub fn __nanf(__tagb: *const ::core::ffi::c_char) -> f32; + pub fn isnanf(__value: f32) -> ::core::ffi::c_int; + pub fn j0f(arg1: f32) -> f32; + pub fn __j0f(arg1: f32) -> f32; + pub fn j1f(arg1: f32) -> f32; + pub fn __j1f(arg1: f32) -> f32; + pub fn jnf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn __jnf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn y0f(arg1: f32) -> f32; + pub fn __y0f(arg1: f32) -> f32; + pub fn y1f(arg1: f32) -> f32; + pub fn __y1f(arg1: f32) -> f32; + pub fn ynf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn __ynf(arg1: ::core::ffi::c_int, arg2: f32) -> f32; + pub fn erff(arg1: f32) -> f32; + pub fn __erff(arg1: f32) -> f32; + pub fn erfcf(arg1: f32) -> f32; + pub fn __erfcf(arg1: f32) -> f32; + pub fn lgammaf(arg1: f32) -> f32; + pub fn __lgammaf(arg1: f32) -> f32; + pub fn tgammaf(arg1: f32) -> f32; + pub fn __tgammaf(arg1: f32) -> f32; + pub fn gammaf(arg1: f32) -> f32; + pub fn __gammaf(arg1: f32) -> f32; + pub fn lgammaf_r(arg1: f32, __signgamp: *mut ::core::ffi::c_int) -> f32; + pub fn __lgammaf_r(arg1: f32, __signgamp: *mut ::core::ffi::c_int) -> f32; + pub fn rintf(__x: f32) -> f32; + pub fn __rintf(__x: f32) -> f32; + pub fn nextafterf(__x: f32, __y: f32) -> f32; + pub fn __nextafterf(__x: f32, __y: f32) -> f32; + pub fn nexttowardf(__x: f32, __y: u128) -> f32; + pub fn __nexttowardf(__x: f32, __y: u128) -> f32; + pub fn remainderf(__x: f32, __y: f32) -> f32; + pub fn __remainderf(__x: f32, __y: f32) -> f32; + pub fn scalbnf(__x: f32, __n: ::core::ffi::c_int) -> f32; + pub fn __scalbnf(__x: f32, __n: ::core::ffi::c_int) -> f32; + pub fn ilogbf(__x: f32) -> ::core::ffi::c_int; + pub fn __ilogbf(__x: f32) -> ::core::ffi::c_int; + pub fn scalblnf(__x: f32, __n: ::core::ffi::c_long) -> f32; + pub fn __scalblnf(__x: f32, __n: ::core::ffi::c_long) -> f32; + pub fn nearbyintf(__x: f32) -> f32; + pub fn __nearbyintf(__x: f32) -> f32; + pub fn roundf(__x: f32) -> f32; + pub fn __roundf(__x: f32) -> f32; + pub fn truncf(__x: f32) -> f32; + pub fn __truncf(__x: f32) -> f32; + pub fn remquof(__x: f32, __y: f32, __quo: *mut ::core::ffi::c_int) -> f32; + pub fn __remquof(__x: f32, __y: f32, __quo: *mut ::core::ffi::c_int) -> f32; + pub fn lrintf(__x: f32) -> ::core::ffi::c_long; + pub fn __lrintf(__x: f32) -> ::core::ffi::c_long; + pub fn llrintf(__x: f32) -> ::core::ffi::c_longlong; + pub fn __llrintf(__x: f32) -> ::core::ffi::c_longlong; + pub fn lroundf(__x: f32) -> ::core::ffi::c_long; + pub fn __lroundf(__x: f32) -> ::core::ffi::c_long; + pub fn llroundf(__x: f32) -> ::core::ffi::c_longlong; + pub fn __llroundf(__x: f32) -> ::core::ffi::c_longlong; + pub fn fdimf(__x: f32, __y: f32) -> f32; + pub fn __fdimf(__x: f32, __y: f32) -> f32; + pub fn fmaxf(__x: f32, __y: f32) -> f32; + pub fn __fmaxf(__x: f32, __y: f32) -> f32; + pub fn fminf(__x: f32, __y: f32) -> f32; + pub fn __fminf(__x: f32, __y: f32) -> f32; + pub fn fmaf(__x: f32, __y: f32, __z: f32) -> f32; + pub fn __fmaf(__x: f32, __y: f32, __z: f32) -> f32; + pub fn scalbf(__x: f32, __n: f32) -> f32; + pub fn __scalbf(__x: f32, __n: f32) -> f32; + pub fn __fpclassifyl(__value: u128) -> ::core::ffi::c_int; + pub fn __signbitl(__value: u128) -> ::core::ffi::c_int; + pub fn __isinfl(__value: u128) -> ::core::ffi::c_int; + pub fn __finitel(__value: u128) -> ::core::ffi::c_int; + pub fn __isnanl(__value: u128) -> ::core::ffi::c_int; + pub fn __iseqsigl(__x: u128, __y: u128) -> ::core::ffi::c_int; + pub fn __issignalingl(__value: u128) -> ::core::ffi::c_int; + pub fn acosl(__x: u128) -> u128; + pub fn __acosl(__x: u128) -> u128; + pub fn asinl(__x: u128) -> u128; + pub fn __asinl(__x: u128) -> u128; + pub fn atanl(__x: u128) -> u128; + pub fn __atanl(__x: u128) -> u128; + pub fn atan2l(__y: u128, __x: u128) -> u128; + pub fn __atan2l(__y: u128, __x: u128) -> u128; + pub fn cosl(__x: u128) -> u128; + pub fn __cosl(__x: u128) -> u128; + pub fn sinl(__x: u128) -> u128; + pub fn __sinl(__x: u128) -> u128; + pub fn tanl(__x: u128) -> u128; + pub fn __tanl(__x: u128) -> u128; + pub fn coshl(__x: u128) -> u128; + pub fn __coshl(__x: u128) -> u128; + pub fn sinhl(__x: u128) -> u128; + pub fn __sinhl(__x: u128) -> u128; + pub fn tanhl(__x: u128) -> u128; + pub fn __tanhl(__x: u128) -> u128; + pub fn acoshl(__x: u128) -> u128; + pub fn __acoshl(__x: u128) -> u128; + pub fn asinhl(__x: u128) -> u128; + pub fn __asinhl(__x: u128) -> u128; + pub fn atanhl(__x: u128) -> u128; + pub fn __atanhl(__x: u128) -> u128; + pub fn expl(__x: u128) -> u128; + pub fn __expl(__x: u128) -> u128; + pub fn frexpl(__x: u128, __exponent: *mut ::core::ffi::c_int) -> u128; + pub fn __frexpl(__x: u128, __exponent: *mut ::core::ffi::c_int) -> u128; + pub fn ldexpl(__x: u128, __exponent: ::core::ffi::c_int) -> u128; + pub fn __ldexpl(__x: u128, __exponent: ::core::ffi::c_int) -> u128; + pub fn logl(__x: u128) -> u128; + pub fn __logl(__x: u128) -> u128; + pub fn log10l(__x: u128) -> u128; + pub fn __log10l(__x: u128) -> u128; + pub fn modfl(__x: u128, __iptr: *mut u128) -> u128; + pub fn __modfl(__x: u128, __iptr: *mut u128) -> u128; + pub fn expm1l(__x: u128) -> u128; + pub fn __expm1l(__x: u128) -> u128; + pub fn log1pl(__x: u128) -> u128; + pub fn __log1pl(__x: u128) -> u128; + pub fn logbl(__x: u128) -> u128; + pub fn __logbl(__x: u128) -> u128; + pub fn exp2l(__x: u128) -> u128; + pub fn __exp2l(__x: u128) -> u128; + pub fn log2l(__x: u128) -> u128; + pub fn __log2l(__x: u128) -> u128; + pub fn powl(__x: u128, __y: u128) -> u128; + pub fn __powl(__x: u128, __y: u128) -> u128; + pub fn sqrtl(__x: u128) -> u128; + pub fn __sqrtl(__x: u128) -> u128; + pub fn hypotl(__x: u128, __y: u128) -> u128; + pub fn __hypotl(__x: u128, __y: u128) -> u128; + pub fn cbrtl(__x: u128) -> u128; + pub fn __cbrtl(__x: u128) -> u128; + pub fn ceill(__x: u128) -> u128; + pub fn __ceill(__x: u128) -> u128; + pub fn fabsl(__x: u128) -> u128; + pub fn __fabsl(__x: u128) -> u128; + pub fn floorl(__x: u128) -> u128; + pub fn __floorl(__x: u128) -> u128; + pub fn fmodl(__x: u128, __y: u128) -> u128; + pub fn __fmodl(__x: u128, __y: u128) -> u128; + pub fn isinfl(__value: u128) -> ::core::ffi::c_int; + pub fn finitel(__value: u128) -> ::core::ffi::c_int; + pub fn dreml(__x: u128, __y: u128) -> u128; + pub fn __dreml(__x: u128, __y: u128) -> u128; + pub fn significandl(__x: u128) -> u128; + pub fn __significandl(__x: u128) -> u128; + pub fn copysignl(__x: u128, __y: u128) -> u128; + pub fn __copysignl(__x: u128, __y: u128) -> u128; + pub fn nanl(__tagb: *const ::core::ffi::c_char) -> u128; + pub fn __nanl(__tagb: *const ::core::ffi::c_char) -> u128; + pub fn isnanl(__value: u128) -> ::core::ffi::c_int; + pub fn j0l(arg1: u128) -> u128; + pub fn __j0l(arg1: u128) -> u128; + pub fn j1l(arg1: u128) -> u128; + pub fn __j1l(arg1: u128) -> u128; + pub fn jnl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn __jnl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn y0l(arg1: u128) -> u128; + pub fn __y0l(arg1: u128) -> u128; + pub fn y1l(arg1: u128) -> u128; + pub fn __y1l(arg1: u128) -> u128; + pub fn ynl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn __ynl(arg1: ::core::ffi::c_int, arg2: u128) -> u128; + pub fn erfl(arg1: u128) -> u128; + pub fn __erfl(arg1: u128) -> u128; + pub fn erfcl(arg1: u128) -> u128; + pub fn __erfcl(arg1: u128) -> u128; + pub fn lgammal(arg1: u128) -> u128; + pub fn __lgammal(arg1: u128) -> u128; + pub fn tgammal(arg1: u128) -> u128; + pub fn __tgammal(arg1: u128) -> u128; + pub fn gammal(arg1: u128) -> u128; + pub fn __gammal(arg1: u128) -> u128; + pub fn lgammal_r(arg1: u128, __signgamp: *mut ::core::ffi::c_int) -> u128; + pub fn __lgammal_r(arg1: u128, __signgamp: *mut ::core::ffi::c_int) -> u128; + pub fn rintl(__x: u128) -> u128; + pub fn __rintl(__x: u128) -> u128; + pub fn nextafterl(__x: u128, __y: u128) -> u128; + pub fn __nextafterl(__x: u128, __y: u128) -> u128; + pub fn nexttowardl(__x: u128, __y: u128) -> u128; + pub fn __nexttowardl(__x: u128, __y: u128) -> u128; + pub fn remainderl(__x: u128, __y: u128) -> u128; + pub fn __remainderl(__x: u128, __y: u128) -> u128; + pub fn scalbnl(__x: u128, __n: ::core::ffi::c_int) -> u128; + pub fn __scalbnl(__x: u128, __n: ::core::ffi::c_int) -> u128; + pub fn ilogbl(__x: u128) -> ::core::ffi::c_int; + pub fn __ilogbl(__x: u128) -> ::core::ffi::c_int; + pub fn scalblnl(__x: u128, __n: ::core::ffi::c_long) -> u128; + pub fn __scalblnl(__x: u128, __n: ::core::ffi::c_long) -> u128; + pub fn nearbyintl(__x: u128) -> u128; + pub fn __nearbyintl(__x: u128) -> u128; + pub fn roundl(__x: u128) -> u128; + pub fn __roundl(__x: u128) -> u128; + pub fn truncl(__x: u128) -> u128; + pub fn __truncl(__x: u128) -> u128; + pub fn remquol(__x: u128, __y: u128, __quo: *mut ::core::ffi::c_int) -> u128; + pub fn __remquol(__x: u128, __y: u128, __quo: *mut ::core::ffi::c_int) -> u128; + pub fn lrintl(__x: u128) -> ::core::ffi::c_long; + pub fn __lrintl(__x: u128) -> ::core::ffi::c_long; + pub fn llrintl(__x: u128) -> ::core::ffi::c_longlong; + pub fn __llrintl(__x: u128) -> ::core::ffi::c_longlong; + pub fn lroundl(__x: u128) -> ::core::ffi::c_long; + pub fn __lroundl(__x: u128) -> ::core::ffi::c_long; + pub fn llroundl(__x: u128) -> ::core::ffi::c_longlong; + pub fn __llroundl(__x: u128) -> ::core::ffi::c_longlong; + pub fn fdiml(__x: u128, __y: u128) -> u128; + pub fn __fdiml(__x: u128, __y: u128) -> u128; + pub fn fmaxl(__x: u128, __y: u128) -> u128; + pub fn __fmaxl(__x: u128, __y: u128) -> u128; + pub fn fminl(__x: u128, __y: u128) -> u128; + pub fn __fminl(__x: u128, __y: u128) -> u128; + pub fn fmal(__x: u128, __y: u128, __z: u128) -> u128; + pub fn __fmal(__x: u128, __y: u128, __z: u128) -> u128; + pub fn scalbl(__x: u128, __n: u128) -> u128; + pub fn __scalbl(__x: u128, __n: u128) -> u128; + pub static mut signgam: ::core::ffi::c_int; + pub fn strlcat( + dst: *mut ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + siz: usize, + ) -> usize; + pub fn strlcpy( + dst: *mut ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + siz: usize, + ) -> usize; + pub fn pg_get_user_name( + user_id: uid_t, + buffer: *mut ::core::ffi::c_char, + buflen: usize, + ) -> bool; + pub fn pg_get_user_home_dir( + user_id: uid_t, + buffer: *mut ::core::ffi::c_char, + buflen: usize, + ) -> bool; + pub fn pg_qsort( + base: *mut ::core::ffi::c_void, + nel: usize, + elsize: usize, + cmp: ::core::option::Option< + unsafe extern "C" fn( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int, + >, + ); + pub fn pg_qsort_strcmp( + a: *const ::core::ffi::c_void, + b: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn qsort_arg( + base: *mut ::core::ffi::c_void, + nel: usize, + elsize: usize, + cmp: qsort_arg_comparator, + arg: *mut ::core::ffi::c_void, + ); + pub fn qsort_interruptible( + base: *mut ::core::ffi::c_void, + nel: usize, + elsize: usize, + cmp: qsort_arg_comparator, + arg: *mut ::core::ffi::c_void, + ); + pub fn bsearch_arg( + key: *const ::core::ffi::c_void, + base0: *const ::core::ffi::c_void, + nmemb: usize, + size: usize, + compar: ::core::option::Option< + unsafe extern "C" fn( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + arg3: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int, + >, + arg: *mut ::core::ffi::c_void, + ) -> *mut ::core::ffi::c_void; + pub fn pg_get_encoding_from_locale( + ctype: *const ::core::ffi::c_char, + write_message: bool, + ) -> ::core::ffi::c_int; + pub fn pg_inet_net_ntop( + af: ::core::ffi::c_int, + src: *const ::core::ffi::c_void, + bits: ::core::ffi::c_int, + dst: *mut ::core::ffi::c_char, + size: usize, + ) -> *mut ::core::ffi::c_char; + pub fn pg_strong_random_init(); + pub fn pg_strong_random(buf: *mut ::core::ffi::c_void, len: usize) -> bool; + pub fn pg_check_dir(dir: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_mkdir_p( + path: *mut ::core::ffi::c_char, + omode: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pqsignal(signo: ::core::ffi::c_int, func: pqsigfunc) -> pqsigfunc; + pub fn escape_single_quotes_ascii(src: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn wait_result_to_str(exitstatus: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn wait_result_is_signal( + exit_status: ::core::ffi::c_int, + signum: ::core::ffi::c_int, + ) -> bool; + pub fn wait_result_is_any_signal( + exit_status: ::core::ffi::c_int, + include_command_not_found: bool, + ) -> bool; + pub fn wait_result_to_exit_code(exit_status: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn makeStringInfo() -> StringInfo; + pub fn initStringInfo(str_: StringInfo); + pub fn resetStringInfo(str_: StringInfo); + pub fn appendStringInfo(str_: StringInfo, fmt: *const ::core::ffi::c_char, ...); + pub fn appendStringInfoString(str_: StringInfo, s: *const ::core::ffi::c_char); + pub fn appendStringInfoChar(str_: StringInfo, ch: ::core::ffi::c_char); + pub fn appendStringInfoSpaces(str_: StringInfo, count: ::core::ffi::c_int); + pub fn appendBinaryStringInfo( + str_: StringInfo, + data: *const ::core::ffi::c_void, + datalen: ::core::ffi::c_int, + ); + pub fn appendBinaryStringInfoNT( + str_: StringInfo, + data: *const ::core::ffi::c_void, + datalen: ::core::ffi::c_int, + ); + pub fn enlargeStringInfo(str_: StringInfo, needed: ::core::ffi::c_int); + pub fn destroyStringInfo(str_: StringInfo); + pub fn message_level_is_interesting(elevel: ::core::ffi::c_int) -> bool; + pub fn errstart_cold(elevel: ::core::ffi::c_int, domain: *const ::core::ffi::c_char) -> bool; + pub fn errcode_for_file_access() -> ::core::ffi::c_int; + pub fn errcode_for_socket_access() -> ::core::ffi::c_int; + pub fn errmsg_internal(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn errmsg_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn errdetail_internal(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn errdetail_log(fmt: *const ::core::ffi::c_char, ...) -> ::core::ffi::c_int; + pub fn errdetail_log_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn errdetail_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn errhint_plural( + fmt_singular: *const ::core::ffi::c_char, + fmt_plural: *const ::core::ffi::c_char, + n: ::core::ffi::c_ulong, + ... + ) -> ::core::ffi::c_int; + pub fn set_errcontext_domain(domain: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn errhidestmt(hide_stmt: bool) -> ::core::ffi::c_int; + pub fn errhidecontext(hide_ctx: bool) -> ::core::ffi::c_int; + pub fn errbacktrace() -> ::core::ffi::c_int; + pub fn errposition(cursorpos: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn internalerrposition(cursorpos: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn internalerrquery(query: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn err_generic_string( + field: ::core::ffi::c_int, + str_: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn geterrcode() -> ::core::ffi::c_int; + pub fn geterrlevel() -> ::core::ffi::c_int; + pub fn geterrposition() -> ::core::ffi::c_int; + pub fn getinternalerrposition() -> ::core::ffi::c_int; + pub fn errsave_start(context: *mut Node, domain: *const ::core::ffi::c_char) -> bool; + pub fn errsave_finish( + context: *mut Node, + filename: *const ::core::ffi::c_char, + lineno: ::core::ffi::c_int, + funcname: *const ::core::ffi::c_char, + ); + pub fn pre_format_elog_string( + errnumber: ::core::ffi::c_int, + domain: *const ::core::ffi::c_char, + ); + pub fn format_elog_string(fmt: *const ::core::ffi::c_char, ...) -> *mut ::core::ffi::c_char; + pub static mut error_context_stack: *mut ErrorContextCallback; + pub static mut PG_exception_stack: *mut sigjmp_buf; + pub fn EmitErrorReport(); + pub fn CopyErrorData() -> *mut ErrorData; + pub fn FreeErrorData(edata: *mut ErrorData); + pub fn FlushErrorState(); + pub fn ReThrowError(edata: *mut ErrorData) -> !; + pub fn ThrowErrorData(edata: *mut ErrorData); + pub fn GetErrorContextStack() -> *mut ::core::ffi::c_char; + pub static mut emit_log_hook: emit_log_hook_type; + pub static mut Log_error_verbosity: ::core::ffi::c_int; + pub static mut Log_line_prefix: *mut ::core::ffi::c_char; + pub static mut Log_destination: ::core::ffi::c_int; + pub static mut Log_destination_string: *mut ::core::ffi::c_char; + pub static mut syslog_sequence_numbers: bool; + pub static mut syslog_split_messages: bool; + pub fn log_status_format( + buf: StringInfo, + format: *const ::core::ffi::c_char, + edata: *mut ErrorData, + ); + pub fn DebugFileOpen(); + pub fn unpack_sql_state(sql_state: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn in_error_recursion_trouble() -> bool; + pub fn reset_formatted_start_time(); + pub fn get_formatted_start_time() -> *mut ::core::ffi::c_char; + pub fn get_formatted_log_time() -> *mut ::core::ffi::c_char; + pub fn get_backend_type_for_log() -> *const ::core::ffi::c_char; + pub fn check_log_of_query(edata: *mut ErrorData) -> bool; + pub fn error_severity(elevel: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn write_pipe_chunks( + data: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + dest: ::core::ffi::c_int, + ); + pub fn write_csvlog(edata: *mut ErrorData); + pub fn write_jsonlog(edata: *mut ErrorData); + pub fn write_stderr(fmt: *const ::core::ffi::c_char, ...); + pub static mut CurrentMemoryContext: MemoryContext; + pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::core::ffi::c_void; + pub fn MemoryContextAllocZero(context: MemoryContext, size: Size) -> *mut ::core::ffi::c_void; + pub fn MemoryContextAllocExtended( + context: MemoryContext, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn MemoryContextAllocAligned( + context: MemoryContext, + size: Size, + alignto: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn palloc(size: Size) -> *mut ::core::ffi::c_void; + pub fn palloc0(size: Size) -> *mut ::core::ffi::c_void; + pub fn palloc_extended(size: Size, flags: ::core::ffi::c_int) -> *mut ::core::ffi::c_void; + pub fn palloc_aligned( + size: Size, + alignto: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn repalloc(pointer: *mut ::core::ffi::c_void, size: Size) -> *mut ::core::ffi::c_void; + pub fn repalloc_extended( + pointer: *mut ::core::ffi::c_void, + size: Size, + flags: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn repalloc0( + pointer: *mut ::core::ffi::c_void, + oldsize: Size, + size: Size, + ) -> *mut ::core::ffi::c_void; + pub fn pfree(pointer: *mut ::core::ffi::c_void); + pub fn MemoryContextAllocHuge(context: MemoryContext, size: Size) -> *mut ::core::ffi::c_void; + pub fn repalloc_huge(pointer: *mut ::core::ffi::c_void, size: Size) + -> *mut ::core::ffi::c_void; + pub fn MemoryContextRegisterResetCallback( + context: MemoryContext, + cb: *mut MemoryContextCallback, + ); + pub fn MemoryContextStrdup( + context: MemoryContext, + string: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn pstrdup(in_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn pnstrdup(in_: *const ::core::ffi::c_char, len: Size) -> *mut ::core::ffi::c_char; + pub fn pchomp(in_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn psprintf(fmt: *const ::core::ffi::c_char, ...) -> *mut ::core::ffi::c_char; + pub static mut no_such_variable: ::core::ffi::c_int; + pub fn outNode(str_: *mut StringInfoData, obj: *const ::core::ffi::c_void); + pub fn outToken(str_: *mut StringInfoData, s: *const ::core::ffi::c_char); + pub fn outBitmapset(str_: *mut StringInfoData, bms: *const Bitmapset); + pub fn outDatum( + str_: *mut StringInfoData, + value: usize, + typlen: ::core::ffi::c_int, + typbyval: bool, + ); + pub fn nodeToString(obj: *const ::core::ffi::c_void) -> *mut ::core::ffi::c_char; + pub fn nodeToStringWithLocations(obj: *const ::core::ffi::c_void) -> *mut ::core::ffi::c_char; + pub fn bmsToString(bms: *const Bitmapset) -> *mut ::core::ffi::c_char; + pub fn stringToNode(str_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_void; + pub fn readBitmapset() -> *mut Bitmapset; + pub fn readDatum(typbyval: bool) -> usize; + pub fn readBoolCols(numCols: ::core::ffi::c_int) -> *mut bool; + pub fn readIntCols(numCols: ::core::ffi::c_int) -> *mut ::core::ffi::c_int; + pub fn readOidCols(numCols: ::core::ffi::c_int) -> *mut Oid; + pub fn readAttrNumberCols(numCols: ::core::ffi::c_int) -> *mut int16; + pub fn copyObjectImpl(from: *const ::core::ffi::c_void) -> *mut ::core::ffi::c_void; + pub fn equal(a: *const ::core::ffi::c_void, b: *const ::core::ffi::c_void) -> bool; + pub fn list_make1_impl(t: NodeTag, datum1: ListCell) -> *mut List; + pub fn list_make2_impl(t: NodeTag, datum1: ListCell, datum2: ListCell) -> *mut List; + pub fn list_make3_impl( + t: NodeTag, + datum1: ListCell, + datum2: ListCell, + datum3: ListCell, + ) -> *mut List; + pub fn list_make4_impl( + t: NodeTag, + datum1: ListCell, + datum2: ListCell, + datum3: ListCell, + datum4: ListCell, + ) -> *mut List; + pub fn list_make5_impl( + t: NodeTag, + datum1: ListCell, + datum2: ListCell, + datum3: ListCell, + datum4: ListCell, + datum5: ListCell, + ) -> *mut List; + pub fn lappend(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn lappend_int(list: *mut List, datum: ::core::ffi::c_int) -> *mut List; + pub fn lappend_oid(list: *mut List, datum: Oid) -> *mut List; + pub fn lappend_xid(list: *mut List, datum: TransactionId) -> *mut List; + pub fn list_insert_nth( + list: *mut List, + pos: ::core::ffi::c_int, + datum: *mut ::core::ffi::c_void, + ) -> *mut List; + pub fn list_insert_nth_int( + list: *mut List, + pos: ::core::ffi::c_int, + datum: ::core::ffi::c_int, + ) -> *mut List; + pub fn list_insert_nth_oid(list: *mut List, pos: ::core::ffi::c_int, datum: Oid) -> *mut List; + pub fn lcons(datum: *mut ::core::ffi::c_void, list: *mut List) -> *mut List; + pub fn lcons_int(datum: ::core::ffi::c_int, list: *mut List) -> *mut List; + pub fn lcons_oid(datum: Oid, list: *mut List) -> *mut List; + pub fn list_concat(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_copy(list1: *const List, list2: *const List) -> *mut List; + pub fn list_truncate(list: *mut List, new_size: ::core::ffi::c_int) -> *mut List; + pub fn list_member(list: *const List, datum: *const ::core::ffi::c_void) -> bool; + pub fn list_member_ptr(list: *const List, datum: *const ::core::ffi::c_void) -> bool; + pub fn list_member_int(list: *const List, datum: ::core::ffi::c_int) -> bool; + pub fn list_member_oid(list: *const List, datum: Oid) -> bool; + pub fn list_member_xid(list: *const List, datum: TransactionId) -> bool; + pub fn list_delete(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_delete_ptr(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_delete_int(list: *mut List, datum: ::core::ffi::c_int) -> *mut List; + pub fn list_delete_oid(list: *mut List, datum: Oid) -> *mut List; + pub fn list_delete_first(list: *mut List) -> *mut List; + pub fn list_delete_last(list: *mut List) -> *mut List; + pub fn list_delete_first_n(list: *mut List, n: ::core::ffi::c_int) -> *mut List; + pub fn list_delete_nth_cell(list: *mut List, n: ::core::ffi::c_int) -> *mut List; + pub fn list_delete_cell(list: *mut List, cell: *mut ListCell) -> *mut List; + pub fn list_union(list1: *const List, list2: *const List) -> *mut List; + pub fn list_union_ptr(list1: *const List, list2: *const List) -> *mut List; + pub fn list_union_int(list1: *const List, list2: *const List) -> *mut List; + pub fn list_union_oid(list1: *const List, list2: *const List) -> *mut List; + pub fn list_intersection(list1: *const List, list2: *const List) -> *mut List; + pub fn list_intersection_int(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference_ptr(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference_int(list1: *const List, list2: *const List) -> *mut List; + pub fn list_difference_oid(list1: *const List, list2: *const List) -> *mut List; + pub fn list_append_unique(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_append_unique_ptr(list: *mut List, datum: *mut ::core::ffi::c_void) -> *mut List; + pub fn list_append_unique_int(list: *mut List, datum: ::core::ffi::c_int) -> *mut List; + pub fn list_append_unique_oid(list: *mut List, datum: Oid) -> *mut List; + pub fn list_concat_unique(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_unique_ptr(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_unique_int(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_concat_unique_oid(list1: *mut List, list2: *const List) -> *mut List; + pub fn list_deduplicate_oid(list: *mut List); + pub fn list_free(list: *mut List); + pub fn list_free_deep(list: *mut List); + pub fn list_copy(oldlist: *const List) -> *mut List; + pub fn list_copy_head(oldlist: *const List, len: ::core::ffi::c_int) -> *mut List; + pub fn list_copy_tail(oldlist: *const List, nskip: ::core::ffi::c_int) -> *mut List; + pub fn list_copy_deep(oldlist: *const List) -> *mut List; + pub fn list_sort(list: *mut List, cmp: list_sort_comparator); + pub fn list_int_cmp(p1: *const ListCell, p2: *const ListCell) -> ::core::ffi::c_int; + pub fn list_oid_cmp(p1: *const ListCell, p2: *const ListCell) -> ::core::ffi::c_int; + pub fn CreateTemplateTupleDesc(natts: ::core::ffi::c_int) -> TupleDesc; + pub fn CreateTupleDesc(natts: ::core::ffi::c_int, attrs: *mut Form_pg_attribute) -> TupleDesc; + pub fn CreateTupleDescCopy(tupdesc: TupleDesc) -> TupleDesc; + pub fn CreateTupleDescCopyConstr(tupdesc: TupleDesc) -> TupleDesc; + pub fn TupleDescCopy(dst: TupleDesc, src: TupleDesc); + pub fn TupleDescCopyEntry( + dst: TupleDesc, + dstAttno: AttrNumber, + src: TupleDesc, + srcAttno: AttrNumber, + ); + pub fn FreeTupleDesc(tupdesc: TupleDesc); + pub fn IncrTupleDescRefCount(tupdesc: TupleDesc); + pub fn DecrTupleDescRefCount(tupdesc: TupleDesc); + pub fn equalTupleDescs(tupdesc1: TupleDesc, tupdesc2: TupleDesc) -> bool; + pub fn equalRowTypes(tupdesc1: TupleDesc, tupdesc2: TupleDesc) -> bool; + pub fn hashRowType(desc: TupleDesc) -> uint32; + pub fn TupleDescInitEntry( + desc: TupleDesc, + attributeNumber: AttrNumber, + attributeName: *const ::core::ffi::c_char, + oidtypeid: Oid, + typmod: int32, + attdim: ::core::ffi::c_int, + ); + pub fn TupleDescInitBuiltinEntry( + desc: TupleDesc, + attributeNumber: AttrNumber, + attributeName: *const ::core::ffi::c_char, + oidtypeid: Oid, + typmod: int32, + attdim: ::core::ffi::c_int, + ); + pub fn TupleDescInitEntryCollation( + desc: TupleDesc, + attributeNumber: AttrNumber, + collationid: Oid, + ); + pub fn BuildDescFromLists( + names: *const List, + types: *const List, + typmods: *const List, + collations: *const List, + ) -> TupleDesc; + pub fn TupleDescGetDefault(tupdesc: TupleDesc, attnum: AttrNumber) -> *mut Node; + pub fn make_attrmap(maplen: ::core::ffi::c_int) -> *mut AttrMap; + pub fn free_attrmap(map: *mut AttrMap); + pub fn build_attrmap_by_name( + indesc: TupleDesc, + outdesc: TupleDesc, + missing_ok: bool, + ) -> *mut AttrMap; + pub fn build_attrmap_by_name_if_req( + indesc: TupleDesc, + outdesc: TupleDesc, + missing_ok: bool, + ) -> *mut AttrMap; + pub fn build_attrmap_by_position( + indesc: TupleDesc, + outdesc: TupleDesc, + msg: *const ::core::ffi::c_char, + ) -> *mut AttrMap; + pub fn ItemPointerEquals(pointer1: ItemPointer, pointer2: ItemPointer) -> bool; + pub fn ItemPointerCompare(arg1: ItemPointer, arg2: ItemPointer) -> int32; + pub fn ItemPointerInc(pointer: ItemPointer); + pub fn ItemPointerDec(pointer: ItemPointer); + pub fn HeapTupleHeaderGetCmin(tup: HeapTupleHeader) -> CommandId; + pub fn HeapTupleHeaderGetCmax(tup: HeapTupleHeader) -> CommandId; + pub fn HeapTupleHeaderAdjustCmax( + tup: HeapTupleHeader, + cmax: *mut CommandId, + iscombo: *mut bool, + ); + pub fn HeapTupleGetUpdateXid(tuple: HeapTupleHeader) -> TransactionId; + pub fn fcntl(__fd: ::core::ffi::c_int, __cmd: ::core::ffi::c_int, ...) -> ::core::ffi::c_int; + pub fn open( + __file: *const ::core::ffi::c_char, + __oflag: ::core::ffi::c_int, + ... + ) -> ::core::ffi::c_int; + pub fn openat( + __fd: ::core::ffi::c_int, + __file: *const ::core::ffi::c_char, + __oflag: ::core::ffi::c_int, + ... + ) -> ::core::ffi::c_int; + pub fn creat(__file: *const ::core::ffi::c_char, __mode: mode_t) -> ::core::ffi::c_int; + pub fn lockf( + __fd: ::core::ffi::c_int, + __cmd: ::core::ffi::c_int, + __len: off_t, + ) -> ::core::ffi::c_int; + pub fn posix_fadvise( + __fd: ::core::ffi::c_int, + __offset: off_t, + __len: off_t, + __advise: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn posix_fallocate( + __fd: ::core::ffi::c_int, + __offset: off_t, + __len: off_t, + ) -> ::core::ffi::c_int; + pub fn TransactionStartedDuringRecovery() -> bool; + pub static mut TransamVariables: *mut TransamVariablesData; + pub fn TransactionIdDidCommit(transactionId: TransactionId) -> bool; + pub fn TransactionIdDidAbort(transactionId: TransactionId) -> bool; + pub fn TransactionIdCommitTree( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *mut TransactionId, + ); + pub fn TransactionIdAsyncCommitTree( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *mut TransactionId, + lsn: XLogRecPtr, + ); + pub fn TransactionIdAbortTree( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *mut TransactionId, + ); + pub fn TransactionIdPrecedes(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdPrecedesOrEquals(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdFollows(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdFollowsOrEquals(id1: TransactionId, id2: TransactionId) -> bool; + pub fn TransactionIdLatest( + mainxid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *const TransactionId, + ) -> TransactionId; + pub fn TransactionIdGetCommitLSN(xid: TransactionId) -> XLogRecPtr; + pub fn VarsupShmemSize() -> Size; + pub fn VarsupShmemInit(); + pub fn GetNewTransactionId(isSubXact: bool) -> FullTransactionId; + pub fn AdvanceNextFullTransactionIdPastXid(xid: TransactionId); + pub fn ReadNextFullTransactionId() -> FullTransactionId; + pub fn SetTransactionIdLimit(oldest_datfrozenxid: TransactionId, oldest_datoid: Oid); + pub fn AdvanceOldestClogXid(oldest_datfrozenxid: TransactionId); + pub fn ForceTransactionIdLimitUpdate() -> bool; + pub fn GetNewObjectId() -> Oid; + pub fn StopGeneratingPinnedObjectIds(); + pub fn PageInit(page: Page, pageSize: Size, specialSize: Size); + pub fn PageIsVerifiedExtended( + page: Page, + blkno: BlockNumber, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn PageAddItemExtended( + page: Page, + item: Item, + size: Size, + offsetNumber: OffsetNumber, + flags: ::core::ffi::c_int, + ) -> OffsetNumber; + pub fn PageGetTempPage(page: Page) -> Page; + pub fn PageGetTempPageCopy(page: Page) -> Page; + pub fn PageGetTempPageCopySpecial(page: Page) -> Page; + pub fn PageRestoreTempPage(tempPage: Page, oldPage: Page); + pub fn PageRepairFragmentation(page: Page); + pub fn PageTruncateLinePointerArray(page: Page); + pub fn PageGetFreeSpace(page: Page) -> Size; + pub fn PageGetFreeSpaceForMultipleTuples(page: Page, ntups: ::core::ffi::c_int) -> Size; + pub fn PageGetExactFreeSpace(page: Page) -> Size; + pub fn PageGetHeapFreeSpace(page: Page) -> Size; + pub fn PageIndexTupleDelete(page: Page, offnum: OffsetNumber); + pub fn PageIndexMultiDelete(page: Page, itemnos: *mut OffsetNumber, nitems: ::core::ffi::c_int); + pub fn PageIndexTupleDeleteNoCompact(page: Page, offnum: OffsetNumber); + pub fn PageIndexTupleOverwrite( + page: Page, + offnum: OffsetNumber, + newtup: Item, + newsize: Size, + ) -> bool; + pub fn PageSetChecksumCopy(page: Page, blkno: BlockNumber) -> *mut ::core::ffi::c_char; + pub fn PageSetChecksumInplace(page: Page, blkno: BlockNumber); + pub fn heap_compute_data_size( + tupleDesc: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> Size; + pub fn heap_fill_tuple( + tupleDesc: TupleDesc, + values: *const Datum, + isnull: *const bool, + data: *mut ::core::ffi::c_char, + data_size: Size, + infomask: *mut uint16, + bit: *mut bits8, + ); + pub fn heap_attisnull(tup: HeapTuple, attnum: ::core::ffi::c_int, tupleDesc: TupleDesc) + -> bool; + pub fn nocachegetattr( + tup: HeapTuple, + attnum: ::core::ffi::c_int, + tupleDesc: TupleDesc, + ) -> Datum; + pub fn heap_getsysattr( + tup: HeapTuple, + attnum: ::core::ffi::c_int, + tupleDesc: TupleDesc, + isnull: *mut bool, + ) -> Datum; + pub fn getmissingattr( + tupleDesc: TupleDesc, + attnum: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn heap_copytuple(tuple: HeapTuple) -> HeapTuple; + pub fn heap_copytuple_with_tuple(src: HeapTuple, dest: HeapTuple); + pub fn heap_copy_tuple_as_datum(tuple: HeapTuple, tupleDesc: TupleDesc) -> Datum; + pub fn heap_form_tuple( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> HeapTuple; + pub fn heap_modify_tuple( + tuple: HeapTuple, + tupleDesc: TupleDesc, + replValues: *const Datum, + replIsnull: *const bool, + doReplace: *const bool, + ) -> HeapTuple; + pub fn heap_modify_tuple_by_cols( + tuple: HeapTuple, + tupleDesc: TupleDesc, + nCols: ::core::ffi::c_int, + replCols: *const ::core::ffi::c_int, + replValues: *const Datum, + replIsnull: *const bool, + ) -> HeapTuple; + pub fn heap_deform_tuple( + tuple: HeapTuple, + tupleDesc: TupleDesc, + values: *mut Datum, + isnull: *mut bool, + ); + pub fn heap_freetuple(htup: HeapTuple); + pub fn heap_form_minimal_tuple( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> MinimalTuple; + pub fn heap_free_minimal_tuple(mtup: MinimalTuple); + pub fn heap_copy_minimal_tuple(mtup: MinimalTuple) -> MinimalTuple; + pub fn heap_tuple_from_minimal_tuple(mtup: MinimalTuple) -> HeapTuple; + pub fn minimal_tuple_from_heap_tuple(htup: HeapTuple) -> MinimalTuple; + pub fn heap_expand_tuple(sourceTuple: HeapTuple, tupleDesc: TupleDesc) -> HeapTuple; + pub fn minimal_expand_tuple(sourceTuple: HeapTuple, tupleDesc: TupleDesc) -> MinimalTuple; + pub static TTSOpsVirtual: TupleTableSlotOps; + pub static TTSOpsHeapTuple: TupleTableSlotOps; + pub static TTSOpsMinimalTuple: TupleTableSlotOps; + pub static TTSOpsBufferHeapTuple: TupleTableSlotOps; + pub fn MakeTupleTableSlot( + tupleDesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecAllocTableSlot( + tupleTable: *mut *mut List, + desc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecResetTupleTable(tupleTable: *mut List, shouldFree: bool); + pub fn MakeSingleTupleTableSlot( + tupdesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecDropSingleTupleTableSlot(slot: *mut TupleTableSlot); + pub fn ExecSetSlotDescriptor(slot: *mut TupleTableSlot, tupdesc: TupleDesc); + pub fn ExecStoreHeapTuple( + tuple: HeapTuple, + slot: *mut TupleTableSlot, + shouldFree: bool, + ) -> *mut TupleTableSlot; + pub fn ExecForceStoreHeapTuple(tuple: HeapTuple, slot: *mut TupleTableSlot, shouldFree: bool); + pub fn ExecStoreBufferHeapTuple( + tuple: HeapTuple, + slot: *mut TupleTableSlot, + buffer: Buffer, + ) -> *mut TupleTableSlot; + pub fn ExecStorePinnedBufferHeapTuple( + tuple: HeapTuple, + slot: *mut TupleTableSlot, + buffer: Buffer, + ) -> *mut TupleTableSlot; + pub fn ExecStoreMinimalTuple( + mtup: MinimalTuple, + slot: *mut TupleTableSlot, + shouldFree: bool, + ) -> *mut TupleTableSlot; + pub fn ExecForceStoreMinimalTuple( + mtup: MinimalTuple, + slot: *mut TupleTableSlot, + shouldFree: bool, + ); + pub fn ExecStoreVirtualTuple(slot: *mut TupleTableSlot) -> *mut TupleTableSlot; + pub fn ExecStoreAllNullTuple(slot: *mut TupleTableSlot) -> *mut TupleTableSlot; + pub fn ExecStoreHeapTupleDatum(data: Datum, slot: *mut TupleTableSlot); + pub fn ExecFetchSlotHeapTuple( + slot: *mut TupleTableSlot, + materialize: bool, + shouldFree: *mut bool, + ) -> HeapTuple; + pub fn ExecFetchSlotMinimalTuple( + slot: *mut TupleTableSlot, + shouldFree: *mut bool, + ) -> MinimalTuple; + pub fn ExecFetchSlotHeapTupleDatum(slot: *mut TupleTableSlot) -> Datum; + pub fn slot_getmissingattrs( + slot: *mut TupleTableSlot, + startAttNum: ::core::ffi::c_int, + lastAttNum: ::core::ffi::c_int, + ); + pub fn slot_getsomeattrs_int(slot: *mut TupleTableSlot, attnum: ::core::ffi::c_int); + pub fn bms_copy(a: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_equal(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_compare(a: *const Bitmapset, b: *const Bitmapset) -> ::core::ffi::c_int; + pub fn bms_make_singleton(x: ::core::ffi::c_int) -> *mut Bitmapset; + pub fn bms_free(a: *mut Bitmapset); + pub fn bms_union(a: *const Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_intersect(a: *const Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_difference(a: *const Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_is_subset(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_subset_compare(a: *const Bitmapset, b: *const Bitmapset) -> BMS_Comparison::Type; + pub fn bms_is_member(x: ::core::ffi::c_int, a: *const Bitmapset) -> bool; + pub fn bms_member_index(a: *mut Bitmapset, x: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn bms_overlap(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_overlap_list(a: *const Bitmapset, b: *const List) -> bool; + pub fn bms_nonempty_difference(a: *const Bitmapset, b: *const Bitmapset) -> bool; + pub fn bms_singleton_member(a: *const Bitmapset) -> ::core::ffi::c_int; + pub fn bms_get_singleton_member(a: *const Bitmapset, member: *mut ::core::ffi::c_int) -> bool; + pub fn bms_num_members(a: *const Bitmapset) -> ::core::ffi::c_int; + pub fn bms_membership(a: *const Bitmapset) -> BMS_Membership::Type; + pub fn bms_add_member(a: *mut Bitmapset, x: ::core::ffi::c_int) -> *mut Bitmapset; + pub fn bms_del_member(a: *mut Bitmapset, x: ::core::ffi::c_int) -> *mut Bitmapset; + pub fn bms_add_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_replace_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_add_range( + a: *mut Bitmapset, + lower: ::core::ffi::c_int, + upper: ::core::ffi::c_int, + ) -> *mut Bitmapset; + pub fn bms_int_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_del_members(a: *mut Bitmapset, b: *const Bitmapset) -> *mut Bitmapset; + pub fn bms_join(a: *mut Bitmapset, b: *mut Bitmapset) -> *mut Bitmapset; + pub fn bms_next_member(a: *const Bitmapset, prevbit: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn bms_prev_member(a: *const Bitmapset, prevbit: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn bms_hash_value(a: *const Bitmapset) -> uint32; + pub fn bitmap_hash(key: *const ::core::ffi::c_void, keysize: Size) -> uint32; + pub fn bitmap_match( + key1: *const ::core::ffi::c_void, + key2: *const ::core::ffi::c_void, + keysize: Size, + ) -> ::core::ffi::c_int; + pub fn convert_tuples_by_position( + indesc: TupleDesc, + outdesc: TupleDesc, + msg: *const ::core::ffi::c_char, + ) -> *mut TupleConversionMap; + pub fn convert_tuples_by_name(indesc: TupleDesc, outdesc: TupleDesc) + -> *mut TupleConversionMap; + pub fn convert_tuples_by_name_attrmap( + indesc: TupleDesc, + outdesc: TupleDesc, + attrMap: *mut AttrMap, + ) -> *mut TupleConversionMap; + pub fn execute_attr_map_tuple(tuple: HeapTuple, map: *mut TupleConversionMap) -> HeapTuple; + pub fn execute_attr_map_slot( + attrMap: *mut AttrMap, + in_slot: *mut TupleTableSlot, + out_slot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn execute_attr_map_cols(attrMap: *mut AttrMap, in_cols: *mut Bitmapset) -> *mut Bitmapset; + pub fn free_conversion_map(map: *mut TupleConversionMap); + pub fn clock() -> clock_t; + pub fn time(__timer: *mut time_t) -> time_t; + pub fn difftime(__time1: time_t, __time0: time_t) -> f64; + pub fn mktime(__tp: *mut tm) -> time_t; + pub fn strftime( + __s: *mut ::core::ffi::c_char, + __maxsize: usize, + __format: *const ::core::ffi::c_char, + __tp: *const tm, + ) -> usize; + pub fn strftime_l( + __s: *mut ::core::ffi::c_char, + __maxsize: usize, + __format: *const ::core::ffi::c_char, + __tp: *const tm, + __loc: locale_t, + ) -> usize; + pub fn gmtime(__timer: *const time_t) -> *mut tm; + pub fn localtime(__timer: *const time_t) -> *mut tm; + pub fn gmtime_r(__timer: *const time_t, __tp: *mut tm) -> *mut tm; + pub fn localtime_r(__timer: *const time_t, __tp: *mut tm) -> *mut tm; + pub fn asctime(__tp: *const tm) -> *mut ::core::ffi::c_char; + pub fn ctime(__timer: *const time_t) -> *mut ::core::ffi::c_char; + pub fn asctime_r(__tp: *const tm, __buf: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn ctime_r( + __timer: *const time_t, + __buf: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub static mut __tzname: [*mut ::core::ffi::c_char; 2usize]; + pub static mut __daylight: ::core::ffi::c_int; + pub static mut __timezone: ::core::ffi::c_long; + pub static mut tzname: [*mut ::core::ffi::c_char; 2usize]; + pub fn tzset(); + pub static mut daylight: ::core::ffi::c_int; + pub static mut timezone: ::core::ffi::c_long; + pub fn timegm(__tp: *mut tm) -> time_t; + pub fn timelocal(__tp: *mut tm) -> time_t; + pub fn dysize(__year: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn nanosleep( + __requested_time: *const timespec, + __remaining: *mut timespec, + ) -> ::core::ffi::c_int; + pub fn clock_getres(__clock_id: clockid_t, __res: *mut timespec) -> ::core::ffi::c_int; + pub fn clock_gettime(__clock_id: clockid_t, __tp: *mut timespec) -> ::core::ffi::c_int; + pub fn clock_settime(__clock_id: clockid_t, __tp: *const timespec) -> ::core::ffi::c_int; + pub fn clock_nanosleep( + __clock_id: clockid_t, + __flags: ::core::ffi::c_int, + __req: *const timespec, + __rem: *mut timespec, + ) -> ::core::ffi::c_int; + pub fn clock_getcpuclockid(__pid: pid_t, __clock_id: *mut clockid_t) -> ::core::ffi::c_int; + pub fn timer_create( + __clock_id: clockid_t, + __evp: *mut sigevent, + __timerid: *mut timer_t, + ) -> ::core::ffi::c_int; + pub fn timer_delete(__timerid: timer_t) -> ::core::ffi::c_int; + pub fn timer_settime( + __timerid: timer_t, + __flags: ::core::ffi::c_int, + __value: *const itimerspec, + __ovalue: *mut itimerspec, + ) -> ::core::ffi::c_int; + pub fn timer_gettime(__timerid: timer_t, __value: *mut itimerspec) -> ::core::ffi::c_int; + pub fn timer_getoverrun(__timerid: timer_t) -> ::core::ffi::c_int; + pub fn timespec_get(__ts: *mut timespec, __base: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub static mut pgBufferUsage: BufferUsage; + pub static mut pgWalUsage: WalUsage; + pub fn InstrAlloc( + n: ::core::ffi::c_int, + instrument_options: ::core::ffi::c_int, + async_mode: bool, + ) -> *mut Instrumentation; + pub fn InstrInit(instr: *mut Instrumentation, instrument_options: ::core::ffi::c_int); + pub fn InstrStartNode(instr: *mut Instrumentation); + pub fn InstrStopNode(instr: *mut Instrumentation, nTuples: f64); + pub fn InstrUpdateTupleCount(instr: *mut Instrumentation, nTuples: f64); + pub fn InstrEndLoop(instr: *mut Instrumentation); + pub fn InstrAggNode(dst: *mut Instrumentation, add: *mut Instrumentation); + pub fn InstrStartParallelQuery(); + pub fn InstrEndParallelQuery(bufusage: *mut BufferUsage, walusage: *mut WalUsage); + pub fn InstrAccumParallelQuery(bufusage: *mut BufferUsage, walusage: *mut WalUsage); + pub fn BufferUsageAccumDiff( + dst: *mut BufferUsage, + add: *const BufferUsage, + sub: *const BufferUsage, + ); + pub fn WalUsageAccumDiff(dst: *mut WalUsage, add: *const WalUsage, sub: *const WalUsage); + pub fn fmgr_info(functionId: Oid, finfo: *mut FmgrInfo); + pub fn fmgr_info_cxt(functionId: Oid, finfo: *mut FmgrInfo, mcxt: MemoryContext); + pub fn fmgr_info_copy(dstinfo: *mut FmgrInfo, srcinfo: *mut FmgrInfo, destcxt: MemoryContext); + pub fn fmgr_symbol( + functionId: Oid, + mod_: *mut *mut ::core::ffi::c_char, + fn_: *mut *mut ::core::ffi::c_char, + ); + pub fn pg_detoast_datum(datum: *mut varlena) -> *mut varlena; + pub fn pg_detoast_datum_copy(datum: *mut varlena) -> *mut varlena; + pub fn pg_detoast_datum_slice(datum: *mut varlena, first: int32, count: int32) -> *mut varlena; + pub fn pg_detoast_datum_packed(datum: *mut varlena) -> *mut varlena; + pub fn _PG_init(); + pub fn _PG_fini(); + pub fn DirectFunctionCall1Coll(func: PGFunction, collation: Oid, arg1: Datum) -> Datum; + pub fn DirectFunctionCall2Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + ) -> Datum; + pub fn DirectFunctionCall3Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + ) -> Datum; + pub fn DirectFunctionCall4Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + ) -> Datum; + pub fn DirectFunctionCall5Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + ) -> Datum; + pub fn DirectFunctionCall6Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + ) -> Datum; + pub fn DirectFunctionCall7Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + ) -> Datum; + pub fn DirectFunctionCall8Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + ) -> Datum; + pub fn DirectFunctionCall9Coll( + func: PGFunction, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + arg9: Datum, + ) -> Datum; + pub fn CallerFInfoFunctionCall1( + func: PGFunction, + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + ) -> Datum; + pub fn CallerFInfoFunctionCall2( + func: PGFunction, + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + ) -> Datum; + pub fn FunctionCall0Coll(flinfo: *mut FmgrInfo, collation: Oid) -> Datum; + pub fn FunctionCall1Coll(flinfo: *mut FmgrInfo, collation: Oid, arg1: Datum) -> Datum; + pub fn FunctionCall2Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + ) -> Datum; + pub fn FunctionCall3Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + ) -> Datum; + pub fn FunctionCall4Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + ) -> Datum; + pub fn FunctionCall5Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + ) -> Datum; + pub fn FunctionCall6Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + ) -> Datum; + pub fn FunctionCall7Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + ) -> Datum; + pub fn FunctionCall8Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + ) -> Datum; + pub fn FunctionCall9Coll( + flinfo: *mut FmgrInfo, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + arg9: Datum, + ) -> Datum; + pub fn OidFunctionCall0Coll(functionId: Oid, collation: Oid) -> Datum; + pub fn OidFunctionCall1Coll(functionId: Oid, collation: Oid, arg1: Datum) -> Datum; + pub fn OidFunctionCall2Coll(functionId: Oid, collation: Oid, arg1: Datum, arg2: Datum) + -> Datum; + pub fn OidFunctionCall3Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + ) -> Datum; + pub fn OidFunctionCall4Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + ) -> Datum; + pub fn OidFunctionCall5Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + ) -> Datum; + pub fn OidFunctionCall6Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + ) -> Datum; + pub fn OidFunctionCall7Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + ) -> Datum; + pub fn OidFunctionCall8Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + ) -> Datum; + pub fn OidFunctionCall9Coll( + functionId: Oid, + collation: Oid, + arg1: Datum, + arg2: Datum, + arg3: Datum, + arg4: Datum, + arg5: Datum, + arg6: Datum, + arg7: Datum, + arg8: Datum, + arg9: Datum, + ) -> Datum; + pub fn InputFunctionCall( + flinfo: *mut FmgrInfo, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn InputFunctionCallSafe( + flinfo: *mut FmgrInfo, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + escontext: fmNodePtr, + result: *mut Datum, + ) -> bool; + pub fn DirectInputFunctionCallSafe( + func: PGFunction, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + escontext: fmNodePtr, + result: *mut Datum, + ) -> bool; + pub fn OidInputFunctionCall( + functionId: Oid, + str_: *mut ::core::ffi::c_char, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn OutputFunctionCall(flinfo: *mut FmgrInfo, val: Datum) -> *mut ::core::ffi::c_char; + pub fn OidOutputFunctionCall(functionId: Oid, val: Datum) -> *mut ::core::ffi::c_char; + pub fn ReceiveFunctionCall( + flinfo: *mut FmgrInfo, + buf: fmStringInfo, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn OidReceiveFunctionCall( + functionId: Oid, + buf: fmStringInfo, + typioparam: Oid, + typmod: int32, + ) -> Datum; + pub fn SendFunctionCall(flinfo: *mut FmgrInfo, val: Datum) -> *mut bytea; + pub fn OidSendFunctionCall(functionId: Oid, val: Datum) -> *mut bytea; + pub fn fetch_finfo_record( + filehandle: *mut ::core::ffi::c_void, + funcname: *const ::core::ffi::c_char, + ) -> *const Pg_finfo_record; + pub fn fmgr_internal_function(proname: *const ::core::ffi::c_char) -> Oid; + pub fn get_fn_expr_rettype(flinfo: *mut FmgrInfo) -> Oid; + pub fn get_fn_expr_argtype(flinfo: *mut FmgrInfo, argnum: ::core::ffi::c_int) -> Oid; + pub fn get_call_expr_argtype(expr: fmNodePtr, argnum: ::core::ffi::c_int) -> Oid; + pub fn get_fn_expr_arg_stable(flinfo: *mut FmgrInfo, argnum: ::core::ffi::c_int) -> bool; + pub fn get_call_expr_arg_stable(expr: fmNodePtr, argnum: ::core::ffi::c_int) -> bool; + pub fn get_fn_expr_variadic(flinfo: *mut FmgrInfo) -> bool; + pub fn get_fn_opclass_options(flinfo: *mut FmgrInfo) -> *mut bytea; + pub fn has_fn_opclass_options(flinfo: *mut FmgrInfo) -> bool; + pub fn set_fn_opclass_options(flinfo: *mut FmgrInfo, options: *mut bytea); + pub fn CheckFunctionValidatorAccess(validatorOid: Oid, functionOid: Oid) -> bool; + pub static mut Dynamic_library_path: *mut ::core::ffi::c_char; + pub fn load_external_function( + filename: *const ::core::ffi::c_char, + funcname: *const ::core::ffi::c_char, + signalNotFound: bool, + filehandle: *mut *mut ::core::ffi::c_void, + ) -> *mut ::core::ffi::c_void; + pub fn lookup_external_function( + filehandle: *mut ::core::ffi::c_void, + funcname: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_void; + pub fn load_file(filename: *const ::core::ffi::c_char, restricted: bool); + pub fn find_rendezvous_variable( + varName: *const ::core::ffi::c_char, + ) -> *mut *mut ::core::ffi::c_void; + pub fn EstimateLibraryStateSpace() -> Size; + pub fn SerializeLibraryState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreLibraryState(start_address: *mut ::core::ffi::c_char); + pub fn AggCheckCallContext( + fcinfo: FunctionCallInfo, + aggcontext: *mut MemoryContext, + ) -> ::core::ffi::c_int; + pub fn AggGetAggref(fcinfo: FunctionCallInfo) -> fmAggrefPtr; + pub fn AggGetTempMemoryContext(fcinfo: FunctionCallInfo) -> MemoryContext; + pub fn AggStateIsShared(fcinfo: FunctionCallInfo) -> bool; + pub fn AggRegisterCallback( + fcinfo: FunctionCallInfo, + func: fmExprContextCallbackFunction, + arg: Datum, + ); + pub static mut needs_fmgr_hook: needs_fmgr_hook_type; + pub static mut fmgr_hook: fmgr_hook_type; + pub fn slist_delete(head: *mut slist_head, node: *const slist_node); + pub fn pairingheap_allocate( + compare: pairingheap_comparator, + arg: *mut ::core::ffi::c_void, + ) -> *mut pairingheap; + pub fn pairingheap_free(heap: *mut pairingheap); + pub fn pairingheap_add(heap: *mut pairingheap, node: *mut pairingheap_node); + pub fn pairingheap_first(heap: *mut pairingheap) -> *mut pairingheap_node; + pub fn pairingheap_remove_first(heap: *mut pairingheap) -> *mut pairingheap_node; + pub fn pairingheap_remove(heap: *mut pairingheap, node: *mut pairingheap_node); + pub fn makeParamList(numParams: ::core::ffi::c_int) -> ParamListInfo; + pub fn copyParamList(from: ParamListInfo) -> ParamListInfo; + pub fn EstimateParamListSpace(paramLI: ParamListInfo) -> Size; + pub fn SerializeParamList(paramLI: ParamListInfo, start_address: *mut *mut ::core::ffi::c_char); + pub fn RestoreParamList(start_address: *mut *mut ::core::ffi::c_char) -> ParamListInfo; + pub fn BuildParamLogString( + params: ParamListInfo, + knownTextValues: *mut *mut ::core::ffi::c_char, + maxlen: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn ParamsErrorCallback(arg: *mut ::core::ffi::c_void); + pub static forkNames: [*const ::core::ffi::c_char; 0usize]; + pub fn forkname_to_number(forkName: *const ::core::ffi::c_char) -> ForkNumber::Type; + pub fn forkname_chars( + str_: *const ::core::ffi::c_char, + fork: *mut ForkNumber::Type, + ) -> ::core::ffi::c_int; + pub fn GetDatabasePath(dbOid: Oid, spcOid: Oid) -> *mut ::core::ffi::c_char; + pub fn GetRelationPath( + dbOid: Oid, + spcOid: Oid, + relNumber: RelFileNumber, + procNumber: ::core::ffi::c_int, + forkNumber: ForkNumber::Type, + ) -> *mut ::core::ffi::c_char; + pub static mut dynamic_shared_memory_type: ::core::ffi::c_int; + pub static mut min_dynamic_shared_memory: ::core::ffi::c_int; + pub fn dsm_impl_op( + op: dsm_op::Type, + handle: dsm_handle, + request_size: Size, + impl_private: *mut *mut ::core::ffi::c_void, + mapped_address: *mut *mut ::core::ffi::c_void, + mapped_size: *mut Size, + elevel: ::core::ffi::c_int, + ) -> bool; + pub fn dsm_impl_pin_segment( + handle: dsm_handle, + impl_private: *mut ::core::ffi::c_void, + impl_private_pm_handle: *mut *mut ::core::ffi::c_void, + ); + pub fn dsm_impl_unpin_segment(handle: dsm_handle, impl_private: *mut *mut ::core::ffi::c_void); + pub fn dsm_cleanup_using_control_segment(old_control_handle: dsm_handle); + pub fn dsm_postmaster_startup(arg1: *mut PGShmemHeader); + pub fn dsm_backend_shutdown(); + pub fn dsm_detach_all(); + pub fn dsm_estimate_size() -> usize; + pub fn dsm_shmem_init(); + pub fn dsm_create(size: Size, flags: ::core::ffi::c_int) -> *mut dsm_segment; + pub fn dsm_attach(h: dsm_handle) -> *mut dsm_segment; + pub fn dsm_detach(seg: *mut dsm_segment); + pub fn dsm_pin_mapping(seg: *mut dsm_segment); + pub fn dsm_unpin_mapping(seg: *mut dsm_segment); + pub fn dsm_pin_segment(seg: *mut dsm_segment); + pub fn dsm_unpin_segment(handle: dsm_handle); + pub fn dsm_find_mapping(handle: dsm_handle) -> *mut dsm_segment; + pub fn dsm_segment_address(seg: *mut dsm_segment) -> *mut ::core::ffi::c_void; + pub fn dsm_segment_map_length(seg: *mut dsm_segment) -> Size; + pub fn dsm_segment_handle(seg: *mut dsm_segment) -> dsm_handle; + pub fn on_dsm_detach(seg: *mut dsm_segment, function: on_dsm_detach_callback, arg: Datum); + pub fn cancel_on_dsm_detach( + seg: *mut dsm_segment, + function: on_dsm_detach_callback, + arg: Datum, + ); + pub fn reset_on_dsm_detach(); + pub fn dsa_create_ext( + tranche_id: ::core::ffi::c_int, + init_segment_size: usize, + max_segment_size: usize, + ) -> *mut dsa_area; + pub fn dsa_create_in_place_ext( + place: *mut ::core::ffi::c_void, + size: usize, + tranche_id: ::core::ffi::c_int, + segment: *mut dsm_segment, + init_segment_size: usize, + max_segment_size: usize, + ) -> *mut dsa_area; + pub fn dsa_attach(handle: dsa_handle) -> *mut dsa_area; + pub fn dsa_attach_in_place( + place: *mut ::core::ffi::c_void, + segment: *mut dsm_segment, + ) -> *mut dsa_area; + pub fn dsa_release_in_place(place: *mut ::core::ffi::c_void); + pub fn dsa_on_dsm_detach_release_in_place(arg1: *mut dsm_segment, arg2: Datum); + pub fn dsa_on_shmem_exit_release_in_place(arg1: ::core::ffi::c_int, arg2: Datum); + pub fn dsa_pin_mapping(area: *mut dsa_area); + pub fn dsa_detach(area: *mut dsa_area); + pub fn dsa_pin(area: *mut dsa_area); + pub fn dsa_unpin(area: *mut dsa_area); + pub fn dsa_set_size_limit(area: *mut dsa_area, limit: usize); + pub fn dsa_minimum_size() -> usize; + pub fn dsa_get_handle(area: *mut dsa_area) -> dsa_handle; + pub fn dsa_allocate_extended( + area: *mut dsa_area, + size: usize, + flags: ::core::ffi::c_int, + ) -> dsa_pointer; + pub fn dsa_free(area: *mut dsa_area, dp: dsa_pointer); + pub fn dsa_get_address(area: *mut dsa_area, dp: dsa_pointer) -> *mut ::core::ffi::c_void; + pub fn dsa_get_total_size(area: *mut dsa_area) -> usize; + pub fn dsa_trim(area: *mut dsa_area); + pub fn dsa_dump(area: *mut dsa_area); + pub fn tbm_create(maxbytes: ::core::ffi::c_long, dsa: *mut dsa_area) -> *mut TIDBitmap; + pub fn tbm_free(tbm: *mut TIDBitmap); + pub fn tbm_free_shared_area(dsa: *mut dsa_area, dp: dsa_pointer); + pub fn tbm_add_tuples( + tbm: *mut TIDBitmap, + tids: ItemPointer, + ntids: ::core::ffi::c_int, + recheck: bool, + ); + pub fn tbm_add_page(tbm: *mut TIDBitmap, pageno: BlockNumber); + pub fn tbm_union(a: *mut TIDBitmap, b: *const TIDBitmap); + pub fn tbm_intersect(a: *mut TIDBitmap, b: *const TIDBitmap); + pub fn tbm_is_empty(tbm: *const TIDBitmap) -> bool; + pub fn tbm_begin_iterate(tbm: *mut TIDBitmap) -> *mut TBMIterator; + pub fn tbm_prepare_shared_iterate(tbm: *mut TIDBitmap) -> dsa_pointer; + pub fn tbm_iterate(iterator: *mut TBMIterator) -> *mut TBMIterateResult; + pub fn tbm_shared_iterate(iterator: *mut TBMSharedIterator) -> *mut TBMIterateResult; + pub fn tbm_end_iterate(iterator: *mut TBMIterator); + pub fn tbm_end_shared_iterate(iterator: *mut TBMSharedIterator); + pub fn tbm_attach_shared_iterate(dsa: *mut dsa_area, dp: dsa_pointer) + -> *mut TBMSharedIterator; + pub fn tbm_calculate_entries(maxbytes: f64) -> ::core::ffi::c_long; + pub static mut MyProcNumber: ProcNumber; + pub static mut ParallelLeaderProcNumber: ProcNumber; + pub fn s_lock( + lock: *mut slock_t, + file: *const ::core::ffi::c_char, + line: ::core::ffi::c_int, + func: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn set_spins_per_delay(shared_spins_per_delay: ::core::ffi::c_int); + pub fn update_spins_per_delay(shared_spins_per_delay: ::core::ffi::c_int) + -> ::core::ffi::c_int; + pub fn perform_spin_delay(status: *mut SpinDelayStatus); + pub fn finish_spin_delay(status: *mut SpinDelayStatus); + pub fn SpinlockSemas() -> ::core::ffi::c_int; + pub fn SpinlockSemaSize() -> Size; + pub fn ConditionVariableInit(cv: *mut ConditionVariable); + pub fn ConditionVariableSleep(cv: *mut ConditionVariable, wait_event_info: uint32); + pub fn ConditionVariableTimedSleep( + cv: *mut ConditionVariable, + timeout: ::core::ffi::c_long, + wait_event_info: uint32, + ) -> bool; + pub fn ConditionVariableCancelSleep() -> bool; + pub fn ConditionVariablePrepareToSleep(cv: *mut ConditionVariable); + pub fn ConditionVariableSignal(cv: *mut ConditionVariable); + pub fn ConditionVariableBroadcast(cv: *mut ConditionVariable); + pub fn hash_create( + tabname: *const ::core::ffi::c_char, + nelem: ::core::ffi::c_long, + info: *const HASHCTL, + flags: ::core::ffi::c_int, + ) -> *mut HTAB; + pub fn hash_destroy(hashp: *mut HTAB); + pub fn hash_stats(where_: *const ::core::ffi::c_char, hashp: *mut HTAB); + pub fn hash_search( + hashp: *mut HTAB, + keyPtr: *const ::core::ffi::c_void, + action: HASHACTION::Type, + foundPtr: *mut bool, + ) -> *mut ::core::ffi::c_void; + pub fn get_hash_value(hashp: *mut HTAB, keyPtr: *const ::core::ffi::c_void) -> uint32; + pub fn hash_search_with_hash_value( + hashp: *mut HTAB, + keyPtr: *const ::core::ffi::c_void, + hashvalue: uint32, + action: HASHACTION::Type, + foundPtr: *mut bool, + ) -> *mut ::core::ffi::c_void; + pub fn hash_update_hash_key( + hashp: *mut HTAB, + existingEntry: *mut ::core::ffi::c_void, + newKeyPtr: *const ::core::ffi::c_void, + ) -> bool; + pub fn hash_get_num_entries(hashp: *mut HTAB) -> ::core::ffi::c_long; + pub fn hash_seq_init(status: *mut HASH_SEQ_STATUS, hashp: *mut HTAB); + pub fn hash_seq_search(status: *mut HASH_SEQ_STATUS) -> *mut ::core::ffi::c_void; + pub fn hash_seq_term(status: *mut HASH_SEQ_STATUS); + pub fn hash_freeze(hashp: *mut HTAB); + pub fn hash_estimate_size(num_entries: ::core::ffi::c_long, entrysize: Size) -> Size; + pub fn hash_select_dirsize(num_entries: ::core::ffi::c_long) -> ::core::ffi::c_long; + pub fn hash_get_shared_size(info: *mut HASHCTL, flags: ::core::ffi::c_int) -> Size; + pub fn AtEOXact_HashTables(isCommit: bool); + pub fn AtEOSubXact_HashTables(isCommit: bool, nestDepth: ::core::ffi::c_int); + pub fn create_queryEnv() -> *mut QueryEnvironment; + pub fn get_visible_ENR_metadata( + queryEnv: *mut QueryEnvironment, + refname: *const ::core::ffi::c_char, + ) -> EphemeralNamedRelationMetadata; + pub fn register_ENR(queryEnv: *mut QueryEnvironment, enr: EphemeralNamedRelation); + pub fn unregister_ENR(queryEnv: *mut QueryEnvironment, name: *const ::core::ffi::c_char); + pub fn get_ENR( + queryEnv: *mut QueryEnvironment, + name: *const ::core::ffi::c_char, + ) -> EphemeralNamedRelation; + pub fn ENRMetadataGetTupDesc(enrmd: EphemeralNamedRelationMetadata) -> TupleDesc; + pub fn readv( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + ) -> isize; + pub fn writev( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + ) -> isize; + pub fn preadv( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + __offset: __off_t, + ) -> isize; + pub fn pwritev( + __fd: ::core::ffi::c_int, + __iovec: *const iovec, + __count: ::core::ffi::c_int, + __offset: __off_t, + ) -> isize; + pub fn access( + __name: *const ::core::ffi::c_char, + __type: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn faccessat( + __fd: ::core::ffi::c_int, + __file: *const ::core::ffi::c_char, + __type: ::core::ffi::c_int, + __flag: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn lseek( + __fd: ::core::ffi::c_int, + __offset: __off_t, + __whence: ::core::ffi::c_int, + ) -> __off_t; + pub fn close(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn closefrom(__lowfd: ::core::ffi::c_int); + pub fn read( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __nbytes: usize, + ) -> isize; + pub fn write(__fd: ::core::ffi::c_int, __buf: *const ::core::ffi::c_void, __n: usize) -> isize; + pub fn pread( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __nbytes: usize, + __offset: __off_t, + ) -> isize; + pub fn pwrite( + __fd: ::core::ffi::c_int, + __buf: *const ::core::ffi::c_void, + __n: usize, + __offset: __off_t, + ) -> isize; + pub fn pipe(__pipedes: *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn alarm(__seconds: ::core::ffi::c_uint) -> ::core::ffi::c_uint; + pub fn sleep(__seconds: ::core::ffi::c_uint) -> ::core::ffi::c_uint; + pub fn ualarm(__value: __useconds_t, __interval: __useconds_t) -> __useconds_t; + pub fn usleep(__useconds: __useconds_t) -> ::core::ffi::c_int; + pub fn pause() -> ::core::ffi::c_int; + pub fn chown( + __file: *const ::core::ffi::c_char, + __owner: __uid_t, + __group: __gid_t, + ) -> ::core::ffi::c_int; + pub fn fchown( + __fd: ::core::ffi::c_int, + __owner: __uid_t, + __group: __gid_t, + ) -> ::core::ffi::c_int; + pub fn lchown( + __file: *const ::core::ffi::c_char, + __owner: __uid_t, + __group: __gid_t, + ) -> ::core::ffi::c_int; + pub fn fchownat( + __fd: ::core::ffi::c_int, + __file: *const ::core::ffi::c_char, + __owner: __uid_t, + __group: __gid_t, + __flag: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn chdir(__path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn fchdir(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn getcwd(__buf: *mut ::core::ffi::c_char, __size: usize) -> *mut ::core::ffi::c_char; + pub fn getwd(__buf: *mut ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn dup(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn dup2(__fd: ::core::ffi::c_int, __fd2: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub static mut __environ: *mut *mut ::core::ffi::c_char; + pub fn execve( + __path: *const ::core::ffi::c_char, + __argv: *const *mut ::core::ffi::c_char, + __envp: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn fexecve( + __fd: ::core::ffi::c_int, + __argv: *const *mut ::core::ffi::c_char, + __envp: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn execv( + __path: *const ::core::ffi::c_char, + __argv: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn execle( + __path: *const ::core::ffi::c_char, + __arg: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn execl( + __path: *const ::core::ffi::c_char, + __arg: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn execvp( + __file: *const ::core::ffi::c_char, + __argv: *const *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn execlp( + __file: *const ::core::ffi::c_char, + __arg: *const ::core::ffi::c_char, + ... + ) -> ::core::ffi::c_int; + pub fn nice(__inc: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn _exit(__status: ::core::ffi::c_int) -> !; + pub fn pathconf( + __path: *const ::core::ffi::c_char, + __name: ::core::ffi::c_int, + ) -> ::core::ffi::c_long; + pub fn fpathconf(__fd: ::core::ffi::c_int, __name: ::core::ffi::c_int) -> ::core::ffi::c_long; + pub fn sysconf(__name: ::core::ffi::c_int) -> ::core::ffi::c_long; + pub fn confstr( + __name: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> usize; + pub fn getpid() -> __pid_t; + pub fn getppid() -> __pid_t; + pub fn getpgrp() -> __pid_t; + pub fn __getpgid(__pid: __pid_t) -> __pid_t; + pub fn getpgid(__pid: __pid_t) -> __pid_t; + pub fn setpgid(__pid: __pid_t, __pgid: __pid_t) -> ::core::ffi::c_int; + pub fn setpgrp() -> ::core::ffi::c_int; + pub fn setsid() -> __pid_t; + pub fn getsid(__pid: __pid_t) -> __pid_t; + pub fn getuid() -> __uid_t; + pub fn geteuid() -> __uid_t; + pub fn getgid() -> __gid_t; + pub fn getegid() -> __gid_t; + pub fn getgroups(__size: ::core::ffi::c_int, __list: *mut __gid_t) -> ::core::ffi::c_int; + pub fn setuid(__uid: __uid_t) -> ::core::ffi::c_int; + pub fn setreuid(__ruid: __uid_t, __euid: __uid_t) -> ::core::ffi::c_int; + pub fn seteuid(__uid: __uid_t) -> ::core::ffi::c_int; + pub fn setgid(__gid: __gid_t) -> ::core::ffi::c_int; + pub fn setregid(__rgid: __gid_t, __egid: __gid_t) -> ::core::ffi::c_int; + pub fn setegid(__gid: __gid_t) -> ::core::ffi::c_int; + pub fn fork() -> __pid_t; + pub fn ttyname(__fd: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn ttyname_r( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + ) -> ::core::ffi::c_int; + pub fn isatty(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ttyslot() -> ::core::ffi::c_int; + pub fn link( + __from: *const ::core::ffi::c_char, + __to: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn linkat( + __fromfd: ::core::ffi::c_int, + __from: *const ::core::ffi::c_char, + __tofd: ::core::ffi::c_int, + __to: *const ::core::ffi::c_char, + __flags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn symlink( + __from: *const ::core::ffi::c_char, + __to: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn readlink( + __path: *const ::core::ffi::c_char, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> isize; + pub fn symlinkat( + __from: *const ::core::ffi::c_char, + __tofd: ::core::ffi::c_int, + __to: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn readlinkat( + __fd: ::core::ffi::c_int, + __path: *const ::core::ffi::c_char, + __buf: *mut ::core::ffi::c_char, + __len: usize, + ) -> isize; + pub fn unlink(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn unlinkat( + __fd: ::core::ffi::c_int, + __name: *const ::core::ffi::c_char, + __flag: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn rmdir(__path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn tcgetpgrp(__fd: ::core::ffi::c_int) -> __pid_t; + pub fn tcsetpgrp(__fd: ::core::ffi::c_int, __pgrp_id: __pid_t) -> ::core::ffi::c_int; + pub fn getlogin() -> *mut ::core::ffi::c_char; + pub fn getlogin_r(__name: *mut ::core::ffi::c_char, __name_len: usize) -> ::core::ffi::c_int; + pub fn setlogin(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub static mut optarg: *mut ::core::ffi::c_char; + pub static mut optind: ::core::ffi::c_int; + pub static mut opterr: ::core::ffi::c_int; + pub static mut optopt: ::core::ffi::c_int; + pub fn getopt( + ___argc: ::core::ffi::c_int, + ___argv: *const *mut ::core::ffi::c_char, + __shortopts: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn gethostname(__name: *mut ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn sethostname(__name: *const ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn sethostid(__id: ::core::ffi::c_long) -> ::core::ffi::c_int; + pub fn getdomainname(__name: *mut ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn setdomainname(__name: *const ::core::ffi::c_char, __len: usize) -> ::core::ffi::c_int; + pub fn vhangup() -> ::core::ffi::c_int; + pub fn revoke(__file: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn profil( + __sample_buffer: *mut ::core::ffi::c_ushort, + __size: usize, + __offset: usize, + __scale: ::core::ffi::c_uint, + ) -> ::core::ffi::c_int; + pub fn acct(__name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getusershell() -> *mut ::core::ffi::c_char; + pub fn endusershell(); + pub fn setusershell(); + pub fn daemon( + __nochdir: ::core::ffi::c_int, + __noclose: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn chroot(__path: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getpass(__prompt: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn fsync(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn gethostid() -> ::core::ffi::c_long; + pub fn sync(); + pub fn getpagesize() -> ::core::ffi::c_int; + pub fn getdtablesize() -> ::core::ffi::c_int; + pub fn truncate(__file: *const ::core::ffi::c_char, __length: __off_t) -> ::core::ffi::c_int; + pub fn ftruncate(__fd: ::core::ffi::c_int, __length: __off_t) -> ::core::ffi::c_int; + pub fn brk(__addr: *mut ::core::ffi::c_void) -> ::core::ffi::c_int; + pub fn sbrk(__delta: isize) -> *mut ::core::ffi::c_void; + pub fn syscall(__sysno: ::core::ffi::c_long, ...) -> ::core::ffi::c_long; + pub fn fdatasync(__fildes: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn crypt( + __key: *const ::core::ffi::c_char, + __salt: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn getentropy(__buffer: *mut ::core::ffi::c_void, __length: usize) -> ::core::ffi::c_int; + pub fn closedir(__dirp: *mut DIR) -> ::core::ffi::c_int; + pub fn opendir(__name: *const ::core::ffi::c_char) -> *mut DIR; + pub fn fdopendir(__fd: ::core::ffi::c_int) -> *mut DIR; + pub fn readdir(__dirp: *mut DIR) -> *mut dirent; + pub fn readdir_r( + __dirp: *mut DIR, + __entry: *mut dirent, + __result: *mut *mut dirent, + ) -> ::core::ffi::c_int; + pub fn rewinddir(__dirp: *mut DIR); + pub fn seekdir(__dirp: *mut DIR, __pos: ::core::ffi::c_long); + pub fn telldir(__dirp: *mut DIR) -> ::core::ffi::c_long; + pub fn dirfd(__dirp: *mut DIR) -> ::core::ffi::c_int; + pub fn scandir( + __dir: *const ::core::ffi::c_char, + __namelist: *mut *mut *mut dirent, + __selector: ::core::option::Option< + unsafe extern "C" fn(arg1: *const dirent) -> ::core::ffi::c_int, + >, + __cmp: ::core::option::Option< + unsafe extern "C" fn( + arg1: *mut *const dirent, + arg2: *mut *const dirent, + ) -> ::core::ffi::c_int, + >, + ) -> ::core::ffi::c_int; + pub fn alphasort(__e1: *mut *const dirent, __e2: *mut *const dirent) -> ::core::ffi::c_int; + pub fn getdirentries( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_char, + __nbytes: usize, + __basep: *mut __off_t, + ) -> __ssize_t; + pub static mut max_files_per_process: ::core::ffi::c_int; + pub static mut data_sync_retry: bool; + pub static mut recovery_init_sync_method: ::core::ffi::c_int; + pub static mut io_direct_flags: ::core::ffi::c_int; + pub static mut max_safe_fds: ::core::ffi::c_int; + pub fn PathNameOpenFile( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + ) -> File; + pub fn PathNameOpenFilePerm( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + fileMode: mode_t, + ) -> File; + pub fn OpenTemporaryFile(interXact: bool) -> File; + pub fn FileClose(file: File); + pub fn FilePrefetch( + file: File, + offset: off_t, + amount: off_t, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn FileReadV( + file: File, + iov: *const iovec, + iovcnt: ::core::ffi::c_int, + offset: off_t, + wait_event_info: uint32, + ) -> isize; + pub fn FileWriteV( + file: File, + iov: *const iovec, + iovcnt: ::core::ffi::c_int, + offset: off_t, + wait_event_info: uint32, + ) -> isize; + pub fn FileSync(file: File, wait_event_info: uint32) -> ::core::ffi::c_int; + pub fn FileZero( + file: File, + offset: off_t, + amount: off_t, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn FileFallocate( + file: File, + offset: off_t, + amount: off_t, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn FileSize(file: File) -> off_t; + pub fn FileTruncate(file: File, offset: off_t, wait_event_info: uint32) -> ::core::ffi::c_int; + pub fn FileWriteback(file: File, offset: off_t, nbytes: off_t, wait_event_info: uint32); + pub fn FilePathName(file: File) -> *mut ::core::ffi::c_char; + pub fn FileGetRawDesc(file: File) -> ::core::ffi::c_int; + pub fn FileGetRawFlags(file: File) -> ::core::ffi::c_int; + pub fn FileGetRawMode(file: File) -> mode_t; + pub fn PathNameCreateTemporaryFile( + path: *const ::core::ffi::c_char, + error_on_failure: bool, + ) -> File; + pub fn PathNameOpenTemporaryFile( + path: *const ::core::ffi::c_char, + mode: ::core::ffi::c_int, + ) -> File; + pub fn PathNameDeleteTemporaryFile( + path: *const ::core::ffi::c_char, + error_on_failure: bool, + ) -> bool; + pub fn PathNameCreateTemporaryDir( + basedir: *const ::core::ffi::c_char, + directory: *const ::core::ffi::c_char, + ); + pub fn PathNameDeleteTemporaryDir(dirname: *const ::core::ffi::c_char); + pub fn TempTablespacePath(path: *mut ::core::ffi::c_char, tablespace: Oid); + pub fn AllocateFile( + name: *const ::core::ffi::c_char, + mode: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn FreeFile(file: *mut FILE) -> ::core::ffi::c_int; + pub fn OpenPipeStream( + command: *const ::core::ffi::c_char, + mode: *const ::core::ffi::c_char, + ) -> *mut FILE; + pub fn ClosePipeStream(file: *mut FILE) -> ::core::ffi::c_int; + pub fn AllocateDir(dirname: *const ::core::ffi::c_char) -> *mut DIR; + pub fn ReadDir(dir: *mut DIR, dirname: *const ::core::ffi::c_char) -> *mut dirent; + pub fn ReadDirExtended( + dir: *mut DIR, + dirname: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> *mut dirent; + pub fn FreeDir(dir: *mut DIR) -> ::core::ffi::c_int; + pub fn OpenTransientFile( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn OpenTransientFilePerm( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + fileMode: mode_t, + ) -> ::core::ffi::c_int; + pub fn CloseTransientFile(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn BasicOpenFile( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn BasicOpenFilePerm( + fileName: *const ::core::ffi::c_char, + fileFlags: ::core::ffi::c_int, + fileMode: mode_t, + ) -> ::core::ffi::c_int; + pub fn AcquireExternalFD() -> bool; + pub fn ReserveExternalFD(); + pub fn ReleaseExternalFD(); + pub fn MakePGDirectory(directoryName: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn InitFileAccess(); + pub fn InitTemporaryFileAccess(); + pub fn set_max_safe_fds(); + pub fn closeAllVfds(); + pub fn SetTempTablespaces(tableSpaces: *mut Oid, numSpaces: ::core::ffi::c_int); + pub fn TempTablespacesAreSet() -> bool; + pub fn GetTempTablespaces( + tableSpaces: *mut Oid, + numSpaces: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn GetNextTempTableSpace() -> Oid; + pub fn AtEOXact_Files(isCommit: bool); + pub fn AtEOSubXact_Files( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub fn RemovePgTempFiles(); + pub fn RemovePgTempFilesInDir( + tmpdirname: *const ::core::ffi::c_char, + missing_ok: bool, + unlink_all: bool, + ); + pub fn looks_like_temp_rel_name(name: *const ::core::ffi::c_char) -> bool; + pub fn pg_fsync(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_fsync_no_writethrough(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_fsync_writethrough(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_fdatasync(fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_file_exists(name: *const ::core::ffi::c_char) -> bool; + pub fn pg_flush_data(fd: ::core::ffi::c_int, offset: off_t, nbytes: off_t); + pub fn pg_truncate(path: *const ::core::ffi::c_char, length: off_t) -> ::core::ffi::c_int; + pub fn fsync_fname(fname: *const ::core::ffi::c_char, isdir: bool); + pub fn fsync_fname_ext( + fname: *const ::core::ffi::c_char, + isdir: bool, + ignore_perm: bool, + elevel: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn durable_rename( + oldfile: *const ::core::ffi::c_char, + newfile: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn durable_unlink( + fname: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn SyncDataDirectory(); + pub fn data_sync_elevel(elevel: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn FileSetInit(fileset: *mut FileSet); + pub fn FileSetCreate(fileset: *mut FileSet, name: *const ::core::ffi::c_char) -> File; + pub fn FileSetOpen( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + mode: ::core::ffi::c_int, + ) -> File; + pub fn FileSetDelete( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + error_on_failure: bool, + ) -> bool; + pub fn FileSetDeleteAll(fileset: *mut FileSet); + pub fn SharedFileSetInit(fileset: *mut SharedFileSet, seg: *mut dsm_segment); + pub fn SharedFileSetAttach(fileset: *mut SharedFileSet, seg: *mut dsm_segment); + pub fn SharedFileSetDeleteAll(fileset: *mut SharedFileSet); + pub fn sts_estimate(participants: ::core::ffi::c_int) -> usize; + pub fn sts_initialize( + sts: *mut SharedTuplestore, + participants: ::core::ffi::c_int, + my_participant_number: ::core::ffi::c_int, + meta_data_size: usize, + flags: ::core::ffi::c_int, + fileset: *mut SharedFileSet, + name: *const ::core::ffi::c_char, + ) -> *mut SharedTuplestoreAccessor; + pub fn sts_attach( + sts: *mut SharedTuplestore, + my_participant_number: ::core::ffi::c_int, + fileset: *mut SharedFileSet, + ) -> *mut SharedTuplestoreAccessor; + pub fn sts_end_write(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_reinitialize(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_begin_parallel_scan(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_end_parallel_scan(accessor: *mut SharedTuplestoreAccessor); + pub fn sts_puttuple( + accessor: *mut SharedTuplestoreAccessor, + meta_data: *mut ::core::ffi::c_void, + tuple: MinimalTuple, + ); + pub fn sts_parallel_scan_next( + accessor: *mut SharedTuplestoreAccessor, + meta_data: *mut ::core::ffi::c_void, + ) -> MinimalTuple; + pub fn RelationIdGetRelation(relationId: Oid) -> Relation; + pub fn RelationClose(relation: Relation); + pub fn RelationGetFKeyList(relation: Relation) -> *mut List; + pub fn RelationGetIndexList(relation: Relation) -> *mut List; + pub fn RelationGetStatExtList(relation: Relation) -> *mut List; + pub fn RelationGetPrimaryKeyIndex(relation: Relation) -> Oid; + pub fn RelationGetReplicaIndex(relation: Relation) -> Oid; + pub fn RelationGetIndexExpressions(relation: Relation) -> *mut List; + pub fn RelationGetDummyIndexExpressions(relation: Relation) -> *mut List; + pub fn RelationGetIndexPredicate(relation: Relation) -> *mut List; + pub fn RelationGetIndexAttOptions(relation: Relation, copy: bool) -> *mut *mut bytea; + pub fn RelationGetIndexAttrBitmap( + relation: Relation, + attrKind: IndexAttrBitmapKind::Type, + ) -> *mut Bitmapset; + pub fn RelationGetIdentityKeyBitmap(relation: Relation) -> *mut Bitmapset; + pub fn RelationGetExclusionInfo( + indexRelation: Relation, + operators: *mut *mut Oid, + procs: *mut *mut Oid, + strategies: *mut *mut uint16, + ); + pub fn RelationInitIndexAccessInfo(relation: Relation); + pub fn RelationBuildPublicationDesc(relation: Relation, pubdesc: *mut PublicationDesc); + pub fn RelationInitTableAccessMethod(relation: Relation); + pub fn errtable(rel: Relation) -> ::core::ffi::c_int; + pub fn errtablecol(rel: Relation, attnum: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn errtablecolname( + rel: Relation, + colname: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn errtableconstraint( + rel: Relation, + conname: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn RelationCacheInitialize(); + pub fn RelationCacheInitializePhase2(); + pub fn RelationCacheInitializePhase3(); + pub fn RelationBuildLocalRelation( + relname: *const ::core::ffi::c_char, + relnamespace: Oid, + tupDesc: TupleDesc, + relid: Oid, + accessmtd: Oid, + relfilenumber: RelFileNumber, + reltablespace: Oid, + shared_relation: bool, + mapped_relation: bool, + relpersistence: ::core::ffi::c_char, + relkind: ::core::ffi::c_char, + ) -> Relation; + pub fn RelationSetNewRelfilenumber(relation: Relation, persistence: ::core::ffi::c_char); + pub fn RelationAssumeNewRelfilelocator(relation: Relation); + pub fn RelationForgetRelation(rid: Oid); + pub fn RelationCacheInvalidateEntry(relationId: Oid); + pub fn RelationCacheInvalidate(debug_discard: bool); + pub fn AtEOXact_RelationCache(isCommit: bool); + pub fn AtEOSubXact_RelationCache( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub fn RelationIdIsInInitFile(relationId: Oid) -> bool; + pub fn RelationCacheInitFilePreInvalidate(); + pub fn RelationCacheInitFilePostInvalidate(); + pub fn RelationCacheInitFileRemove(); + pub static mut criticalRelcachesBuilt: bool; + pub static mut criticalSharedRelcachesBuilt: bool; + pub fn ssup_datum_unsigned_cmp(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int; + pub fn ssup_datum_signed_cmp(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int; + pub fn ssup_datum_int32_cmp(x: Datum, y: Datum, ssup: SortSupport) -> ::core::ffi::c_int; + pub fn PrepareSortSupportComparisonShim(cmpFunc: Oid, ssup: SortSupport); + pub fn PrepareSortSupportFromOrderingOp(orderingOp: Oid, ssup: SortSupport); + pub fn PrepareSortSupportFromIndexRel(indexRel: Relation, strategy: int16, ssup: SortSupport); + pub fn PrepareSortSupportFromGistIndexRel(indexRel: Relation, ssup: SortSupport); + pub fn ScanKeyInit( + entry: ScanKey, + attributeNumber: AttrNumber, + strategy: StrategyNumber, + procedure: RegProcedure, + argument: Datum, + ); + pub fn ScanKeyEntryInitialize( + entry: ScanKey, + flags: ::core::ffi::c_int, + attributeNumber: AttrNumber, + strategy: StrategyNumber, + subtype: Oid, + collation: Oid, + procedure: RegProcedure, + argument: Datum, + ); + pub fn ScanKeyEntryInitializeWithInfo( + entry: ScanKey, + flags: ::core::ffi::c_int, + attributeNumber: AttrNumber, + strategy: StrategyNumber, + subtype: Oid, + collation: Oid, + finfo: *mut FmgrInfo, + argument: Datum, + ); + pub fn index_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn try_index_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn index_close(relation: Relation, lockmode: LOCKMODE); + pub fn index_insert( + indexRelation: Relation, + values: *mut Datum, + isnull: *mut bool, + heap_t_ctid: ItemPointer, + heapRelation: Relation, + checkUnique: IndexUniqueCheck::Type, + indexUnchanged: bool, + indexInfo: *mut IndexInfo, + ) -> bool; + pub fn index_insert_cleanup(indexRelation: Relation, indexInfo: *mut IndexInfo); + pub fn index_beginscan( + heapRelation: Relation, + indexRelation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn index_beginscan_bitmap( + indexRelation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn index_rescan( + scan: IndexScanDesc, + keys: ScanKey, + nkeys: ::core::ffi::c_int, + orderbys: ScanKey, + norderbys: ::core::ffi::c_int, + ); + pub fn index_endscan(scan: IndexScanDesc); + pub fn index_markpos(scan: IndexScanDesc); + pub fn index_restrpos(scan: IndexScanDesc); + pub fn index_parallelscan_estimate( + indexRelation: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + snapshot: Snapshot, + ) -> Size; + pub fn index_parallelscan_initialize( + heapRelation: Relation, + indexRelation: Relation, + snapshot: Snapshot, + target: ParallelIndexScanDesc, + ); + pub fn index_parallelrescan(scan: IndexScanDesc); + pub fn index_beginscan_parallel( + heaprel: Relation, + indexrel: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + pscan: ParallelIndexScanDesc, + ) -> IndexScanDesc; + pub fn index_getnext_tid(scan: IndexScanDesc, direction: ScanDirection::Type) -> ItemPointer; + pub fn index_fetch_heap(scan: IndexScanDesc, slot: *mut TupleTableSlot) -> bool; + pub fn index_getnext_slot( + scan: IndexScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn index_getbitmap(scan: IndexScanDesc, bitmap: *mut TIDBitmap) -> int64; + pub fn index_bulk_delete( + info: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + callback: IndexBulkDeleteCallback, + callback_state: *mut ::core::ffi::c_void, + ) -> *mut IndexBulkDeleteResult; + pub fn index_vacuum_cleanup( + info: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult; + pub fn index_can_return(indexRelation: Relation, attno: ::core::ffi::c_int) -> bool; + pub fn index_getprocid(irel: Relation, attnum: AttrNumber, procnum: uint16) -> RegProcedure; + pub fn index_getprocinfo(irel: Relation, attnum: AttrNumber, procnum: uint16) -> *mut FmgrInfo; + pub fn index_store_float8_orderby_distances( + scan: IndexScanDesc, + orderByTypes: *mut Oid, + distances: *mut IndexOrderByDistance, + recheckOrderBy: bool, + ); + pub fn index_opclass_options( + indrel: Relation, + attnum: AttrNumber, + attoptions: Datum, + validate: bool, + ) -> *mut bytea; + pub fn RelationGetIndexScan( + indexRelation: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn IndexScanEnd(scan: IndexScanDesc); + pub fn BuildIndexValueDescription( + indexRelation: Relation, + values: *const Datum, + isnull: *const bool, + ) -> *mut ::core::ffi::c_char; + pub fn index_compute_xid_horizon_for_tuples( + irel: Relation, + hrel: Relation, + ibuf: Buffer, + itemnos: *mut OffsetNumber, + nitems: ::core::ffi::c_int, + ) -> TransactionId; + pub fn systable_beginscan( + heapRelation: Relation, + indexId: Oid, + indexOK: bool, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: ScanKey, + ) -> SysScanDesc; + pub fn systable_getnext(sysscan: SysScanDesc) -> HeapTuple; + pub fn systable_recheck_tuple(sysscan: SysScanDesc, tup: HeapTuple) -> bool; + pub fn systable_endscan(sysscan: SysScanDesc); + pub fn systable_beginscan_ordered( + heapRelation: Relation, + indexRelation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: ScanKey, + ) -> SysScanDesc; + pub fn systable_getnext_ordered( + sysscan: SysScanDesc, + direction: ScanDirection::Type, + ) -> HeapTuple; + pub fn systable_endscan_ordered(sysscan: SysScanDesc); + pub fn GetIndexAmRoutine(amhandler: Oid) -> *mut IndexAmRoutine; + pub fn GetIndexAmRoutineByAmId(amoid: Oid, noerror: bool) -> *mut IndexAmRoutine; + pub fn lookup_type_cache(type_id: Oid, flags: ::core::ffi::c_int) -> *mut TypeCacheEntry; + pub fn InitDomainConstraintRef( + type_id: Oid, + ref_: *mut DomainConstraintRef, + refctx: MemoryContext, + need_exprstate: bool, + ); + pub fn UpdateDomainConstraintRef(ref_: *mut DomainConstraintRef); + pub fn DomainHasConstraints(type_id: Oid) -> bool; + pub fn lookup_rowtype_tupdesc(type_id: Oid, typmod: int32) -> TupleDesc; + pub fn lookup_rowtype_tupdesc_noerror(type_id: Oid, typmod: int32, noError: bool) -> TupleDesc; + pub fn lookup_rowtype_tupdesc_copy(type_id: Oid, typmod: int32) -> TupleDesc; + pub fn lookup_rowtype_tupdesc_domain(type_id: Oid, typmod: int32, noError: bool) -> TupleDesc; + pub fn assign_record_type_typmod(tupDesc: TupleDesc); + pub fn assign_record_type_identifier(type_id: Oid, typmod: int32) -> uint64; + pub fn compare_values_of_enum( + tcache: *mut TypeCacheEntry, + arg1: Oid, + arg2: Oid, + ) -> ::core::ffi::c_int; + pub fn SharedRecordTypmodRegistryEstimate() -> usize; + pub fn SharedRecordTypmodRegistryInit( + arg1: *mut SharedRecordTypmodRegistry, + segment: *mut dsm_segment, + area: *mut dsa_area, + ); + pub fn SharedRecordTypmodRegistryAttach(arg1: *mut SharedRecordTypmodRegistry); + pub fn brin_build_desc(rel: Relation) -> *mut BrinDesc; + pub fn brin_free_desc(bdesc: *mut BrinDesc); + pub fn brinbuild( + heap: Relation, + index: Relation, + indexInfo: *mut IndexInfo, + ) -> *mut IndexBuildResult; + pub fn brinbuildempty(index: Relation); + pub fn brininsert( + idxRel: Relation, + values: *mut Datum, + nulls: *mut bool, + heaptid: ItemPointer, + heapRel: Relation, + checkUnique: IndexUniqueCheck::Type, + indexUnchanged: bool, + indexInfo: *mut IndexInfo, + ) -> bool; + pub fn brininsertcleanup(index: Relation, indexInfo: *mut IndexInfo); + pub fn brinbeginscan( + r: Relation, + nkeys: ::core::ffi::c_int, + norderbys: ::core::ffi::c_int, + ) -> IndexScanDesc; + pub fn bringetbitmap(scan: IndexScanDesc, tbm: *mut TIDBitmap) -> int64; + pub fn brinrescan( + scan: IndexScanDesc, + scankey: ScanKey, + nscankeys: ::core::ffi::c_int, + orderbys: ScanKey, + norderbys: ::core::ffi::c_int, + ); + pub fn brinendscan(scan: IndexScanDesc); + pub fn brinbulkdelete( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + callback: IndexBulkDeleteCallback, + callback_state: *mut ::core::ffi::c_void, + ) -> *mut IndexBulkDeleteResult; + pub fn brinvacuumcleanup( + info: *mut IndexVacuumInfo, + stats: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult; + pub fn brinoptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn brinvalidate(opclassoid: Oid) -> bool; + pub fn brin_form_tuple( + brdesc: *mut BrinDesc, + blkno: BlockNumber, + tuple: *mut BrinMemTuple, + size: *mut Size, + ) -> *mut BrinTuple; + pub fn brin_form_placeholder_tuple( + brdesc: *mut BrinDesc, + blkno: BlockNumber, + size: *mut Size, + ) -> *mut BrinTuple; + pub fn brin_free_tuple(tuple: *mut BrinTuple); + pub fn brin_copy_tuple( + tuple: *mut BrinTuple, + len: Size, + dest: *mut BrinTuple, + destsz: *mut Size, + ) -> *mut BrinTuple; + pub fn brin_tuples_equal( + a: *const BrinTuple, + alen: Size, + b: *const BrinTuple, + blen: Size, + ) -> bool; + pub fn brin_new_memtuple(brdesc: *mut BrinDesc) -> *mut BrinMemTuple; + pub fn brin_memtuple_initialize( + dtuple: *mut BrinMemTuple, + brdesc: *mut BrinDesc, + ) -> *mut BrinMemTuple; + pub fn brin_deform_tuple( + brdesc: *mut BrinDesc, + tuple: *mut BrinTuple, + dMemtuple: *mut BrinMemTuple, + ) -> *mut BrinMemTuple; + pub fn index_form_tuple( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + ) -> IndexTuple; + pub fn index_form_tuple_context( + tupleDescriptor: TupleDesc, + values: *const Datum, + isnull: *const bool, + context: MemoryContext, + ) -> IndexTuple; + pub fn nocache_index_getattr( + tup: IndexTuple, + attnum: ::core::ffi::c_int, + tupleDesc: TupleDesc, + ) -> Datum; + pub fn index_deform_tuple( + tup: IndexTuple, + tupleDescriptor: TupleDesc, + values: *mut Datum, + isnull: *mut bool, + ); + pub fn index_deform_tuple_internal( + tupleDescriptor: TupleDesc, + values: *mut Datum, + isnull: *mut bool, + tp: *mut ::core::ffi::c_char, + bp: *mut bits8, + hasnulls: ::core::ffi::c_int, + ); + pub fn CopyIndexTuple(source: IndexTuple) -> IndexTuple; + pub fn index_truncate_tuple( + sourceDescriptor: TupleDesc, + source: IndexTuple, + leavenatts: ::core::ffi::c_int, + ) -> IndexTuple; + pub fn LogicalTapeSetCreate( + preallocate: bool, + fileset: *mut SharedFileSet, + worker: ::core::ffi::c_int, + ) -> *mut LogicalTapeSet; + pub fn LogicalTapeClose(lt: *mut LogicalTape); + pub fn LogicalTapeSetClose(lts: *mut LogicalTapeSet); + pub fn LogicalTapeCreate(lts: *mut LogicalTapeSet) -> *mut LogicalTape; + pub fn LogicalTapeImport( + lts: *mut LogicalTapeSet, + worker: ::core::ffi::c_int, + shared: *mut TapeShare, + ) -> *mut LogicalTape; + pub fn LogicalTapeSetForgetFreeSpace(lts: *mut LogicalTapeSet); + pub fn LogicalTapeRead( + lt: *mut LogicalTape, + ptr: *mut ::core::ffi::c_void, + size: usize, + ) -> usize; + pub fn LogicalTapeWrite(lt: *mut LogicalTape, ptr: *const ::core::ffi::c_void, size: usize); + pub fn LogicalTapeRewindForRead(lt: *mut LogicalTape, buffer_size: usize); + pub fn LogicalTapeFreeze(lt: *mut LogicalTape, share: *mut TapeShare); + pub fn LogicalTapeBackspace(lt: *mut LogicalTape, size: usize) -> usize; + pub fn LogicalTapeSeek(lt: *mut LogicalTape, blocknum: int64, offset: ::core::ffi::c_int); + pub fn LogicalTapeTell( + lt: *mut LogicalTape, + blocknum: *mut int64, + offset: *mut ::core::ffi::c_int, + ); + pub fn LogicalTapeSetBlocks(lts: *mut LogicalTapeSet) -> int64; + pub fn tuplesort_begin_common( + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_set_bound(state: *mut Tuplesortstate, bound: int64); + pub fn tuplesort_used_bound(state: *mut Tuplesortstate) -> bool; + pub fn tuplesort_puttuple_common( + state: *mut Tuplesortstate, + tuple: *mut SortTuple, + useAbbrev: bool, + tuplen: Size, + ); + pub fn tuplesort_performsort(state: *mut Tuplesortstate); + pub fn tuplesort_gettuple_common( + state: *mut Tuplesortstate, + forward: bool, + stup: *mut SortTuple, + ) -> bool; + pub fn tuplesort_skiptuples(state: *mut Tuplesortstate, ntuples: int64, forward: bool) -> bool; + pub fn tuplesort_end(state: *mut Tuplesortstate); + pub fn tuplesort_reset(state: *mut Tuplesortstate); + pub fn tuplesort_get_stats(state: *mut Tuplesortstate, stats: *mut TuplesortInstrumentation); + pub fn tuplesort_method_name(m: TuplesortMethod::Type) -> *const ::core::ffi::c_char; + pub fn tuplesort_space_type_name(t: TuplesortSpaceType::Type) -> *const ::core::ffi::c_char; + pub fn tuplesort_merge_order(allowedMem: int64) -> ::core::ffi::c_int; + pub fn tuplesort_estimate_shared(nWorkers: ::core::ffi::c_int) -> Size; + pub fn tuplesort_initialize_shared( + shared: *mut Sharedsort, + nWorkers: ::core::ffi::c_int, + seg: *mut dsm_segment, + ); + pub fn tuplesort_attach_shared(shared: *mut Sharedsort, seg: *mut dsm_segment); + pub fn tuplesort_rescan(state: *mut Tuplesortstate); + pub fn tuplesort_markpos(state: *mut Tuplesortstate); + pub fn tuplesort_restorepos(state: *mut Tuplesortstate); + pub fn tuplesort_readtup_alloc( + state: *mut Tuplesortstate, + tuplen: Size, + ) -> *mut ::core::ffi::c_void; + pub fn tuplesort_begin_heap( + tupDesc: TupleDesc, + nkeys: ::core::ffi::c_int, + attNums: *mut AttrNumber, + sortOperators: *mut Oid, + sortCollations: *mut Oid, + nullsFirstFlags: *mut bool, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_cluster( + tupDesc: TupleDesc, + indexRel: Relation, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_btree( + heapRel: Relation, + indexRel: Relation, + enforceUnique: bool, + uniqueNullsNotDistinct: bool, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_hash( + heapRel: Relation, + indexRel: Relation, + high_mask: uint32, + low_mask: uint32, + max_buckets: uint32, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_gist( + heapRel: Relation, + indexRel: Relation, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_index_brin( + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_begin_datum( + datumType: Oid, + sortOperator: Oid, + sortCollation: Oid, + nullsFirstFlag: bool, + workMem: ::core::ffi::c_int, + coordinate: SortCoordinate, + sortopt: ::core::ffi::c_int, + ) -> *mut Tuplesortstate; + pub fn tuplesort_puttupleslot(state: *mut Tuplesortstate, slot: *mut TupleTableSlot); + pub fn tuplesort_putheaptuple(state: *mut Tuplesortstate, tup: HeapTuple); + pub fn tuplesort_putindextuplevalues( + state: *mut Tuplesortstate, + rel: Relation, + self_: ItemPointer, + values: *const Datum, + isnull: *const bool, + ); + pub fn tuplesort_putbrintuple(state: *mut Tuplesortstate, tuple: *mut BrinTuple, size: Size); + pub fn tuplesort_putdatum(state: *mut Tuplesortstate, val: Datum, isNull: bool); + pub fn tuplesort_gettupleslot( + state: *mut Tuplesortstate, + forward: bool, + copy: bool, + slot: *mut TupleTableSlot, + abbrev: *mut Datum, + ) -> bool; + pub fn tuplesort_getheaptuple(state: *mut Tuplesortstate, forward: bool) -> HeapTuple; + pub fn tuplesort_getindextuple(state: *mut Tuplesortstate, forward: bool) -> IndexTuple; + pub fn tuplesort_getbrintuple( + state: *mut Tuplesortstate, + len: *mut Size, + forward: bool, + ) -> *mut BrinTuple; + pub fn tuplesort_getdatum( + state: *mut Tuplesortstate, + forward: bool, + copy: bool, + val: *mut Datum, + isNull: *mut bool, + abbrev: *mut Datum, + ) -> bool; + pub fn tuplestore_begin_heap( + randomAccess: bool, + interXact: bool, + maxKBytes: ::core::ffi::c_int, + ) -> *mut Tuplestorestate; + pub fn tuplestore_set_eflags(state: *mut Tuplestorestate, eflags: ::core::ffi::c_int); + pub fn tuplestore_puttupleslot(state: *mut Tuplestorestate, slot: *mut TupleTableSlot); + pub fn tuplestore_puttuple(state: *mut Tuplestorestate, tuple: HeapTuple); + pub fn tuplestore_putvalues( + state: *mut Tuplestorestate, + tdesc: TupleDesc, + values: *const Datum, + isnull: *const bool, + ); + pub fn tuplestore_alloc_read_pointer( + state: *mut Tuplestorestate, + eflags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn tuplestore_select_read_pointer(state: *mut Tuplestorestate, ptr: ::core::ffi::c_int); + pub fn tuplestore_copy_read_pointer( + state: *mut Tuplestorestate, + srcptr: ::core::ffi::c_int, + destptr: ::core::ffi::c_int, + ); + pub fn tuplestore_trim(state: *mut Tuplestorestate); + pub fn tuplestore_in_memory(state: *mut Tuplestorestate) -> bool; + pub fn tuplestore_gettupleslot( + state: *mut Tuplestorestate, + forward: bool, + copy: bool, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn tuplestore_advance(state: *mut Tuplestorestate, forward: bool) -> bool; + pub fn tuplestore_skiptuples( + state: *mut Tuplestorestate, + ntuples: int64, + forward: bool, + ) -> bool; + pub fn tuplestore_tuple_count(state: *mut Tuplestorestate) -> int64; + pub fn tuplestore_ateof(state: *mut Tuplestorestate) -> bool; + pub fn tuplestore_rescan(state: *mut Tuplestorestate); + pub fn tuplestore_clear(state: *mut Tuplestorestate); + pub fn tuplestore_end(state: *mut Tuplestorestate); + pub static pg_leftmost_one_pos: [uint8; 256usize]; + pub static pg_rightmost_one_pos: [uint8; 256usize]; + pub static pg_number_of_ones: [uint8; 256usize]; + pub static mut pg_popcount32: + ::core::option::Option ::core::ffi::c_int>; + pub static mut pg_popcount64: + ::core::option::Option ::core::ffi::c_int>; + pub static mut pg_popcount_optimized: ::core::option::Option< + unsafe extern "C" fn(buf: *const ::core::ffi::c_char, bytes: ::core::ffi::c_int) -> uint64, + >; + pub static mut pg_popcount_masked_optimized: ::core::option::Option< + unsafe extern "C" fn( + buf: *const ::core::ffi::c_char, + bytes: ::core::ffi::c_int, + mask: bits8, + ) -> uint64, + >; + pub fn pg_popcount_avx512_available() -> bool; + pub fn pg_popcount_avx512(buf: *const ::core::ffi::c_char, bytes: ::core::ffi::c_int) + -> uint64; + pub fn pg_popcount_masked_avx512( + buf: *const ::core::ffi::c_char, + bytes: ::core::ffi::c_int, + mask: bits8, + ) -> uint64; + pub fn tuplehash_create( + ctx: MemoryContext, + nelements: uint32, + private_data: *mut ::core::ffi::c_void, + ) -> *mut tuplehash_hash; + pub fn tuplehash_destroy(tb: *mut tuplehash_hash); + pub fn tuplehash_reset(tb: *mut tuplehash_hash); + pub fn tuplehash_grow(tb: *mut tuplehash_hash, newsize: uint64); + pub fn tuplehash_insert( + tb: *mut tuplehash_hash, + key: MinimalTuple, + found: *mut bool, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_insert_hash( + tb: *mut tuplehash_hash, + key: MinimalTuple, + hash: uint32, + found: *mut bool, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_lookup(tb: *mut tuplehash_hash, key: MinimalTuple) -> *mut TupleHashEntryData; + pub fn tuplehash_lookup_hash( + tb: *mut tuplehash_hash, + key: MinimalTuple, + hash: uint32, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_delete_item(tb: *mut tuplehash_hash, entry: *mut TupleHashEntryData); + pub fn tuplehash_delete(tb: *mut tuplehash_hash, key: MinimalTuple) -> bool; + pub fn tuplehash_start_iterate(tb: *mut tuplehash_hash, iter: *mut tuplehash_iterator); + pub fn tuplehash_start_iterate_at( + tb: *mut tuplehash_hash, + iter: *mut tuplehash_iterator, + at: uint32, + ); + pub fn tuplehash_iterate( + tb: *mut tuplehash_hash, + iter: *mut tuplehash_iterator, + ) -> *mut TupleHashEntryData; + pub fn tuplehash_stat(tb: *mut tuplehash_hash); + pub fn InitializeQueryCompletion(qc: *mut QueryCompletion); + pub fn GetCommandTagName(commandTag: CommandTag::Type) -> *const ::core::ffi::c_char; + pub fn GetCommandTagNameAndLen( + commandTag: CommandTag::Type, + len: *mut Size, + ) -> *const ::core::ffi::c_char; + pub fn command_tag_display_rowcount(commandTag: CommandTag::Type) -> bool; + pub fn command_tag_event_trigger_ok(commandTag: CommandTag::Type) -> bool; + pub fn command_tag_table_rewrite_ok(commandTag: CommandTag::Type) -> bool; + pub fn GetCommandTagEnum(commandname: *const ::core::ffi::c_char) -> CommandTag::Type; + pub fn BuildQueryCompletionString( + buff: *mut ::core::ffi::c_char, + qc: *const QueryCompletion, + nameonly: bool, + ) -> Size; + pub static mut None_Receiver: *mut DestReceiver; + pub fn BeginCommand(commandTag: CommandTag::Type, dest: CommandDest::Type); + pub fn CreateDestReceiver(dest: CommandDest::Type) -> *mut DestReceiver; + pub fn EndCommand( + qc: *const QueryCompletion, + dest: CommandDest::Type, + force_undecorated_output: bool, + ); + pub fn EndReplicationCommand(commandTag: *const ::core::ffi::c_char); + pub fn NullCommand(dest: CommandDest::Type); + pub fn ReadyForQuery(dest: CommandDest::Type); + pub fn CreateQueryDesc( + plannedstmt: *mut PlannedStmt, + sourceText: *const ::core::ffi::c_char, + snapshot: Snapshot, + crosscheck_snapshot: Snapshot, + dest: *mut DestReceiver, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + instrument_options: ::core::ffi::c_int, + ) -> *mut QueryDesc; + pub fn FreeQueryDesc(qdesc: *mut QueryDesc); + pub fn makeInteger(i: ::core::ffi::c_int) -> *mut Integer; + pub fn makeFloat(numericStr: *mut ::core::ffi::c_char) -> *mut Float; + pub fn makeBoolean(val: bool) -> *mut Boolean; + pub fn makeString(str_: *mut ::core::ffi::c_char) -> *mut String; + pub fn makeBitString(str_: *mut ::core::ffi::c_char) -> *mut BitString; + pub static mut TopMemoryContext: MemoryContext; + pub static mut ErrorContext: MemoryContext; + pub static mut PostmasterContext: MemoryContext; + pub static mut CacheMemoryContext: MemoryContext; + pub static mut MessageContext: MemoryContext; + pub static mut TopTransactionContext: MemoryContext; + pub static mut CurTransactionContext: MemoryContext; + pub static mut PortalContext: MemoryContext; + pub fn MemoryContextInit(); + pub fn MemoryContextReset(context: MemoryContext); + pub fn MemoryContextDelete(context: MemoryContext); + pub fn MemoryContextResetOnly(context: MemoryContext); + pub fn MemoryContextResetChildren(context: MemoryContext); + pub fn MemoryContextDeleteChildren(context: MemoryContext); + pub fn MemoryContextSetIdentifier(context: MemoryContext, id: *const ::core::ffi::c_char); + pub fn MemoryContextSetParent(context: MemoryContext, new_parent: MemoryContext); + pub fn GetMemoryChunkSpace(pointer: *mut ::core::ffi::c_void) -> Size; + pub fn MemoryContextGetParent(context: MemoryContext) -> MemoryContext; + pub fn MemoryContextIsEmpty(context: MemoryContext) -> bool; + pub fn MemoryContextMemAllocated(context: MemoryContext, recurse: bool) -> Size; + pub fn MemoryContextMemConsumed(context: MemoryContext, consumed: *mut MemoryContextCounters); + pub fn MemoryContextStats(context: MemoryContext); + pub fn MemoryContextStatsDetail( + context: MemoryContext, + max_level: ::core::ffi::c_int, + max_children: ::core::ffi::c_int, + print_to_stderr: bool, + ); + pub fn MemoryContextAllowInCriticalSection(context: MemoryContext, allow: bool); + pub fn HandleLogMemoryContextInterrupt(); + pub fn ProcessLogMemoryContextInterrupt(); + pub fn AllocSetContextCreateInternal( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + minContextSize: Size, + initBlockSize: Size, + maxBlockSize: Size, + ) -> MemoryContext; + pub fn SlabContextCreate( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + blockSize: Size, + chunkSize: Size, + ) -> MemoryContext; + pub fn GenerationContextCreate( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + minContextSize: Size, + initBlockSize: Size, + maxBlockSize: Size, + ) -> MemoryContext; + pub fn BumpContextCreate( + parent: MemoryContext, + name: *const ::core::ffi::c_char, + minContextSize: Size, + initBlockSize: Size, + maxBlockSize: Size, + ) -> MemoryContext; + pub static mut ExecutorStart_hook: ExecutorStart_hook_type; + pub static mut ExecutorRun_hook: ExecutorRun_hook_type; + pub static mut ExecutorFinish_hook: ExecutorFinish_hook_type; + pub static mut ExecutorEnd_hook: ExecutorEnd_hook_type; + pub static mut ExecutorCheckPerms_hook: ExecutorCheckPerms_hook_type; + pub fn ExecReScan(node: *mut PlanState); + pub fn ExecMarkPos(node: *mut PlanState); + pub fn ExecRestrPos(node: *mut PlanState); + pub fn ExecSupportsMarkRestore(pathnode: *mut Path) -> bool; + pub fn ExecSupportsBackwardScan(node: *mut Plan) -> bool; + pub fn ExecMaterializesOutput(plantype: NodeTag) -> bool; + pub fn execCurrentOf( + cexpr: *mut CurrentOfExpr, + econtext: *mut ExprContext, + table_oid: Oid, + current_tid: ItemPointer, + ) -> bool; + pub fn execTuplesMatchPrepare( + desc: TupleDesc, + numCols: ::core::ffi::c_int, + keyColIdx: *const AttrNumber, + eqOperators: *const Oid, + collations: *const Oid, + parent: *mut PlanState, + ) -> *mut ExprState; + pub fn execTuplesHashPrepare( + numCols: ::core::ffi::c_int, + eqOperators: *const Oid, + eqFuncOids: *mut *mut Oid, + hashFunctions: *mut *mut FmgrInfo, + ); + pub fn BuildTupleHashTable( + parent: *mut PlanState, + inputDesc: TupleDesc, + numCols: ::core::ffi::c_int, + keyColIdx: *mut AttrNumber, + eqfuncoids: *const Oid, + hashfunctions: *mut FmgrInfo, + collations: *mut Oid, + nbuckets: ::core::ffi::c_long, + additionalsize: Size, + tablecxt: MemoryContext, + tempcxt: MemoryContext, + use_variable_hash_iv: bool, + ) -> TupleHashTable; + pub fn BuildTupleHashTableExt( + parent: *mut PlanState, + inputDesc: TupleDesc, + numCols: ::core::ffi::c_int, + keyColIdx: *mut AttrNumber, + eqfuncoids: *const Oid, + hashfunctions: *mut FmgrInfo, + collations: *mut Oid, + nbuckets: ::core::ffi::c_long, + additionalsize: Size, + metacxt: MemoryContext, + tablecxt: MemoryContext, + tempcxt: MemoryContext, + use_variable_hash_iv: bool, + ) -> TupleHashTable; + pub fn LookupTupleHashEntry( + hashtable: TupleHashTable, + slot: *mut TupleTableSlot, + isnew: *mut bool, + hash: *mut uint32, + ) -> TupleHashEntry; + pub fn TupleHashTableHash(hashtable: TupleHashTable, slot: *mut TupleTableSlot) -> uint32; + pub fn LookupTupleHashEntryHash( + hashtable: TupleHashTable, + slot: *mut TupleTableSlot, + isnew: *mut bool, + hash: uint32, + ) -> TupleHashEntry; + pub fn FindTupleHashEntry( + hashtable: TupleHashTable, + slot: *mut TupleTableSlot, + eqcomp: *mut ExprState, + hashfunctions: *mut FmgrInfo, + ) -> TupleHashEntry; + pub fn ResetTupleHashTable(hashtable: TupleHashTable); + pub fn ExecInitJunkFilter(targetList: *mut List, slot: *mut TupleTableSlot) -> *mut JunkFilter; + pub fn ExecInitJunkFilterConversion( + targetList: *mut List, + cleanTupType: TupleDesc, + slot: *mut TupleTableSlot, + ) -> *mut JunkFilter; + pub fn ExecFindJunkAttribute( + junkfilter: *mut JunkFilter, + attrName: *const ::core::ffi::c_char, + ) -> AttrNumber; + pub fn ExecFindJunkAttributeInTlist( + targetlist: *mut List, + attrName: *const ::core::ffi::c_char, + ) -> AttrNumber; + pub fn ExecFilterJunk( + junkfilter: *mut JunkFilter, + slot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn ExecutorStart(queryDesc: *mut QueryDesc, eflags: ::core::ffi::c_int); + pub fn standard_ExecutorStart(queryDesc: *mut QueryDesc, eflags: ::core::ffi::c_int); + pub fn ExecutorRun( + queryDesc: *mut QueryDesc, + direction: ScanDirection::Type, + count: uint64, + execute_once: bool, + ); + pub fn standard_ExecutorRun( + queryDesc: *mut QueryDesc, + direction: ScanDirection::Type, + count: uint64, + execute_once: bool, + ); + pub fn ExecutorFinish(queryDesc: *mut QueryDesc); + pub fn standard_ExecutorFinish(queryDesc: *mut QueryDesc); + pub fn ExecutorEnd(queryDesc: *mut QueryDesc); + pub fn standard_ExecutorEnd(queryDesc: *mut QueryDesc); + pub fn ExecutorRewind(queryDesc: *mut QueryDesc); + pub fn ExecCheckPermissions( + rangeTable: *mut List, + rteperminfos: *mut List, + ereport_on_violation: bool, + ) -> bool; + pub fn CheckValidResultRel( + resultRelInfo: *mut ResultRelInfo, + operation: CmdType::Type, + mergeActions: *mut List, + ); + pub fn InitResultRelInfo( + resultRelInfo: *mut ResultRelInfo, + resultRelationDesc: Relation, + resultRelationIndex: Index, + partition_root_rri: *mut ResultRelInfo, + instrument_options: ::core::ffi::c_int, + ); + pub fn ExecGetTriggerResultRel( + estate: *mut EState, + relid: Oid, + rootRelInfo: *mut ResultRelInfo, + ) -> *mut ResultRelInfo; + pub fn ExecGetAncestorResultRels( + estate: *mut EState, + resultRelInfo: *mut ResultRelInfo, + ) -> *mut List; + pub fn ExecConstraints( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + ); + pub fn ExecPartitionCheck( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + emitError: bool, + ) -> bool; + pub fn ExecPartitionCheckEmitError( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + ); + pub fn ExecWithCheckOptions( + kind: WCOKind::Type, + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + ); + pub fn ExecUpdateLockMode( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + ) -> LockTupleMode::Type; + pub fn ExecFindRowMark(estate: *mut EState, rti: Index, missing_ok: bool) -> *mut ExecRowMark; + pub fn ExecBuildAuxRowMark(erm: *mut ExecRowMark, targetlist: *mut List) + -> *mut ExecAuxRowMark; + pub fn EvalPlanQual( + epqstate: *mut EPQState, + relation: Relation, + rti: Index, + inputslot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn EvalPlanQualInit( + epqstate: *mut EPQState, + parentestate: *mut EState, + subplan: *mut Plan, + auxrowmarks: *mut List, + epqParam: ::core::ffi::c_int, + resultRelations: *mut List, + ); + pub fn EvalPlanQualSetPlan(epqstate: *mut EPQState, subplan: *mut Plan, auxrowmarks: *mut List); + pub fn EvalPlanQualSlot( + epqstate: *mut EPQState, + relation: Relation, + rti: Index, + ) -> *mut TupleTableSlot; + pub fn EvalPlanQualFetchRowMark( + epqstate: *mut EPQState, + rti: Index, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn EvalPlanQualNext(epqstate: *mut EPQState) -> *mut TupleTableSlot; + pub fn EvalPlanQualBegin(epqstate: *mut EPQState); + pub fn EvalPlanQualEnd(epqstate: *mut EPQState); + pub fn ExecInitNode( + node: *mut Plan, + estate: *mut EState, + eflags: ::core::ffi::c_int, + ) -> *mut PlanState; + pub fn ExecSetExecProcNode(node: *mut PlanState, function: ExecProcNodeMtd); + pub fn MultiExecProcNode(node: *mut PlanState) -> *mut Node; + pub fn ExecEndNode(node: *mut PlanState); + pub fn ExecShutdownNode(node: *mut PlanState); + pub fn ExecSetTupleBound(tuples_needed: int64, child_node: *mut PlanState); + pub fn ExecInitExpr(node: *mut Expr, parent: *mut PlanState) -> *mut ExprState; + pub fn ExecInitExprWithParams(node: *mut Expr, ext_params: ParamListInfo) -> *mut ExprState; + pub fn ExecInitQual(qual: *mut List, parent: *mut PlanState) -> *mut ExprState; + pub fn ExecInitCheck(qual: *mut List, parent: *mut PlanState) -> *mut ExprState; + pub fn ExecInitExprList(nodes: *mut List, parent: *mut PlanState) -> *mut List; + pub fn ExecBuildAggTrans( + aggstate: *mut AggState, + phase: *mut AggStatePerPhaseData, + doSort: bool, + doHash: bool, + nullcheck: bool, + ) -> *mut ExprState; + pub fn ExecBuildGroupingEqual( + ldesc: TupleDesc, + rdesc: TupleDesc, + lops: *const TupleTableSlotOps, + rops: *const TupleTableSlotOps, + numCols: ::core::ffi::c_int, + keyColIdx: *const AttrNumber, + eqfunctions: *const Oid, + collations: *const Oid, + parent: *mut PlanState, + ) -> *mut ExprState; + pub fn ExecBuildParamSetEqual( + desc: TupleDesc, + lops: *const TupleTableSlotOps, + rops: *const TupleTableSlotOps, + eqfunctions: *const Oid, + collations: *const Oid, + param_exprs: *const List, + parent: *mut PlanState, + ) -> *mut ExprState; + pub fn ExecBuildProjectionInfo( + targetList: *mut List, + econtext: *mut ExprContext, + slot: *mut TupleTableSlot, + parent: *mut PlanState, + inputDesc: TupleDesc, + ) -> *mut ProjectionInfo; + pub fn ExecBuildUpdateProjection( + targetList: *mut List, + evalTargetList: bool, + targetColnos: *mut List, + relDesc: TupleDesc, + econtext: *mut ExprContext, + slot: *mut TupleTableSlot, + parent: *mut PlanState, + ) -> *mut ProjectionInfo; + pub fn ExecPrepareExpr(node: *mut Expr, estate: *mut EState) -> *mut ExprState; + pub fn ExecPrepareQual(qual: *mut List, estate: *mut EState) -> *mut ExprState; + pub fn ExecPrepareCheck(qual: *mut List, estate: *mut EState) -> *mut ExprState; + pub fn ExecPrepareExprList(nodes: *mut List, estate: *mut EState) -> *mut List; + pub fn ExecCheck(state: *mut ExprState, econtext: *mut ExprContext) -> bool; + pub fn ExecInitTableFunctionResult( + expr: *mut Expr, + econtext: *mut ExprContext, + parent: *mut PlanState, + ) -> *mut SetExprState; + pub fn ExecMakeTableFunctionResult( + setexpr: *mut SetExprState, + econtext: *mut ExprContext, + argContext: MemoryContext, + expectedDesc: TupleDesc, + randomAccess: bool, + ) -> *mut Tuplestorestate; + pub fn ExecInitFunctionResultSet( + expr: *mut Expr, + econtext: *mut ExprContext, + parent: *mut PlanState, + ) -> *mut SetExprState; + pub fn ExecMakeFunctionResultSet( + fcache: *mut SetExprState, + econtext: *mut ExprContext, + argContext: MemoryContext, + isNull: *mut bool, + isDone: *mut ExprDoneCond::Type, + ) -> Datum; + pub fn ExecScan( + node: *mut ScanState, + accessMtd: ExecScanAccessMtd, + recheckMtd: ExecScanRecheckMtd, + ) -> *mut TupleTableSlot; + pub fn ExecAssignScanProjectionInfo(node: *mut ScanState); + pub fn ExecAssignScanProjectionInfoWithVarno(node: *mut ScanState, varno: ::core::ffi::c_int); + pub fn ExecScanReScan(node: *mut ScanState); + pub fn ExecInitResultTypeTL(planstate: *mut PlanState); + pub fn ExecInitResultSlot(planstate: *mut PlanState, tts_ops: *const TupleTableSlotOps); + pub fn ExecInitResultTupleSlotTL(planstate: *mut PlanState, tts_ops: *const TupleTableSlotOps); + pub fn ExecInitScanTupleSlot( + estate: *mut EState, + scanstate: *mut ScanState, + tupledesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ); + pub fn ExecInitExtraTupleSlot( + estate: *mut EState, + tupledesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecInitNullTupleSlot( + estate: *mut EState, + tupType: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupleTableSlot; + pub fn ExecTypeFromTL(targetList: *mut List) -> TupleDesc; + pub fn ExecCleanTypeFromTL(targetList: *mut List) -> TupleDesc; + pub fn ExecTypeFromExprList(exprList: *mut List) -> TupleDesc; + pub fn ExecTypeSetColNames(typeInfo: TupleDesc, namesList: *mut List); + pub fn UpdateChangedParamSet(node: *mut PlanState, newchg: *mut Bitmapset); + pub fn begin_tup_output_tupdesc( + dest: *mut DestReceiver, + tupdesc: TupleDesc, + tts_ops: *const TupleTableSlotOps, + ) -> *mut TupOutputState; + pub fn do_tup_output(tstate: *mut TupOutputState, values: *const Datum, isnull: *const bool); + pub fn do_text_output_multiline(tstate: *mut TupOutputState, txt: *const ::core::ffi::c_char); + pub fn end_tup_output(tstate: *mut TupOutputState); + pub fn CreateExecutorState() -> *mut EState; + pub fn FreeExecutorState(estate: *mut EState); + pub fn CreateExprContext(estate: *mut EState) -> *mut ExprContext; + pub fn CreateWorkExprContext(estate: *mut EState) -> *mut ExprContext; + pub fn CreateStandaloneExprContext() -> *mut ExprContext; + pub fn FreeExprContext(econtext: *mut ExprContext, isCommit: bool); + pub fn ReScanExprContext(econtext: *mut ExprContext); + pub fn MakePerTupleExprContext(estate: *mut EState) -> *mut ExprContext; + pub fn ExecAssignExprContext(estate: *mut EState, planstate: *mut PlanState); + pub fn ExecGetResultType(planstate: *mut PlanState) -> TupleDesc; + pub fn ExecGetResultSlotOps( + planstate: *mut PlanState, + isfixed: *mut bool, + ) -> *const TupleTableSlotOps; + pub fn ExecAssignProjectionInfo(planstate: *mut PlanState, inputDesc: TupleDesc); + pub fn ExecConditionalAssignProjectionInfo( + planstate: *mut PlanState, + inputDesc: TupleDesc, + varno: ::core::ffi::c_int, + ); + pub fn ExecAssignScanType(scanstate: *mut ScanState, tupDesc: TupleDesc); + pub fn ExecCreateScanSlotFromOuterPlan( + estate: *mut EState, + scanstate: *mut ScanState, + tts_ops: *const TupleTableSlotOps, + ); + pub fn ExecRelationIsTargetRelation(estate: *mut EState, scanrelid: Index) -> bool; + pub fn ExecOpenScanRelation( + estate: *mut EState, + scanrelid: Index, + eflags: ::core::ffi::c_int, + ) -> Relation; + pub fn ExecInitRangeTable(estate: *mut EState, rangeTable: *mut List, permInfos: *mut List); + pub fn ExecCloseRangeTableRelations(estate: *mut EState); + pub fn ExecCloseResultRelations(estate: *mut EState); + pub fn ExecGetRangeTableRelation(estate: *mut EState, rti: Index) -> Relation; + pub fn ExecInitResultRelation( + estate: *mut EState, + resultRelInfo: *mut ResultRelInfo, + rti: Index, + ); + pub fn executor_errposition( + estate: *mut EState, + location: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn RegisterExprContextCallback( + econtext: *mut ExprContext, + function: ExprContextCallbackFunction, + arg: Datum, + ); + pub fn UnregisterExprContextCallback( + econtext: *mut ExprContext, + function: ExprContextCallbackFunction, + arg: Datum, + ); + pub fn GetAttributeByName( + tuple: HeapTupleHeader, + attname: *const ::core::ffi::c_char, + isNull: *mut bool, + ) -> Datum; + pub fn GetAttributeByNum( + tuple: HeapTupleHeader, + attrno: AttrNumber, + isNull: *mut bool, + ) -> Datum; + pub fn ExecTargetListLength(targetlist: *mut List) -> ::core::ffi::c_int; + pub fn ExecCleanTargetListLength(targetlist: *mut List) -> ::core::ffi::c_int; + pub fn ExecGetTriggerOldSlot( + estate: *mut EState, + relInfo: *mut ResultRelInfo, + ) -> *mut TupleTableSlot; + pub fn ExecGetTriggerNewSlot( + estate: *mut EState, + relInfo: *mut ResultRelInfo, + ) -> *mut TupleTableSlot; + pub fn ExecGetReturningSlot( + estate: *mut EState, + relInfo: *mut ResultRelInfo, + ) -> *mut TupleTableSlot; + pub fn ExecGetChildToRootMap(resultRelInfo: *mut ResultRelInfo) -> *mut TupleConversionMap; + pub fn ExecGetRootToChildMap( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + ) -> *mut TupleConversionMap; + pub fn ExecGetResultRelCheckAsUser(relInfo: *mut ResultRelInfo, estate: *mut EState) -> Oid; + pub fn ExecGetInsertedCols(relinfo: *mut ResultRelInfo, estate: *mut EState) -> *mut Bitmapset; + pub fn ExecGetUpdatedCols(relinfo: *mut ResultRelInfo, estate: *mut EState) -> *mut Bitmapset; + pub fn ExecGetExtraUpdatedCols( + relinfo: *mut ResultRelInfo, + estate: *mut EState, + ) -> *mut Bitmapset; + pub fn ExecGetAllUpdatedCols( + relinfo: *mut ResultRelInfo, + estate: *mut EState, + ) -> *mut Bitmapset; + pub fn ExecOpenIndices(resultRelInfo: *mut ResultRelInfo, speculative: bool); + pub fn ExecCloseIndices(resultRelInfo: *mut ResultRelInfo); + pub fn ExecInsertIndexTuples( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + update: bool, + noDupErr: bool, + specConflict: *mut bool, + arbiterIndexes: *mut List, + onlySummarizing: bool, + ) -> *mut List; + pub fn ExecCheckIndexConstraints( + resultRelInfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + conflictTid: ItemPointer, + arbiterIndexes: *mut List, + ) -> bool; + pub fn check_exclusion_constraint( + heap: Relation, + index: Relation, + indexInfo: *mut IndexInfo, + tupleid: ItemPointer, + values: *const Datum, + isnull: *const bool, + estate: *mut EState, + newIndex: bool, + ); + pub fn get_equal_strategy_number_for_am(am: Oid) -> StrategyNumber; + pub fn RelationFindReplTupleByIndex( + rel: Relation, + idxoid: Oid, + lockmode: LockTupleMode::Type, + searchslot: *mut TupleTableSlot, + outslot: *mut TupleTableSlot, + ) -> bool; + pub fn RelationFindReplTupleSeq( + rel: Relation, + lockmode: LockTupleMode::Type, + searchslot: *mut TupleTableSlot, + outslot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecSimpleRelationInsert( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + slot: *mut TupleTableSlot, + ); + pub fn ExecSimpleRelationUpdate( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + epqstate: *mut EPQState, + searchslot: *mut TupleTableSlot, + slot: *mut TupleTableSlot, + ); + pub fn ExecSimpleRelationDelete( + resultRelInfo: *mut ResultRelInfo, + estate: *mut EState, + epqstate: *mut EPQState, + searchslot: *mut TupleTableSlot, + ); + pub fn CheckCmdReplicaIdentity(rel: Relation, cmd: CmdType::Type); + pub fn CheckSubscriptionRelkind( + relkind: ::core::ffi::c_char, + nspname: *const ::core::ffi::c_char, + relname: *const ::core::ffi::c_char, + ); + pub fn ExecGetUpdateNewTuple( + relinfo: *mut ResultRelInfo, + planSlot: *mut TupleTableSlot, + oldSlot: *mut TupleTableSlot, + ) -> *mut TupleTableSlot; + pub fn ExecLookupResultRelByOid( + node: *mut ModifyTableState, + resultoid: Oid, + missing_ok: bool, + update_cache: bool, + ) -> *mut ResultRelInfo; + pub fn get_call_result_type( + fcinfo: FunctionCallInfo, + resultTypeId: *mut Oid, + resultTupleDesc: *mut TupleDesc, + ) -> TypeFuncClass::Type; + pub fn get_expr_result_type( + expr: *mut Node, + resultTypeId: *mut Oid, + resultTupleDesc: *mut TupleDesc, + ) -> TypeFuncClass::Type; + pub fn get_func_result_type( + functionId: Oid, + resultTypeId: *mut Oid, + resultTupleDesc: *mut TupleDesc, + ) -> TypeFuncClass::Type; + pub fn get_expr_result_tupdesc(expr: *mut Node, noError: bool) -> TupleDesc; + pub fn resolve_polymorphic_argtypes( + numargs: ::core::ffi::c_int, + argtypes: *mut Oid, + argmodes: *mut ::core::ffi::c_char, + call_expr: *mut Node, + ) -> bool; + pub fn get_func_arg_info( + procTup: HeapTuple, + p_argtypes: *mut *mut Oid, + p_argnames: *mut *mut *mut ::core::ffi::c_char, + p_argmodes: *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn get_func_input_arg_names( + proargnames: Datum, + proargmodes: Datum, + arg_names: *mut *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn get_func_trftypes(procTup: HeapTuple, p_trftypes: *mut *mut Oid) -> ::core::ffi::c_int; + pub fn get_func_result_name(functionId: Oid) -> *mut ::core::ffi::c_char; + pub fn build_function_result_tupdesc_d( + prokind: ::core::ffi::c_char, + proallargtypes: Datum, + proargmodes: Datum, + proargnames: Datum, + ) -> TupleDesc; + pub fn build_function_result_tupdesc_t(procTuple: HeapTuple) -> TupleDesc; + pub fn RelationNameGetTupleDesc(relname: *const ::core::ffi::c_char) -> TupleDesc; + pub fn TypeGetTupleDesc(typeoid: Oid, colaliases: *mut List) -> TupleDesc; + pub fn BlessTupleDesc(tupdesc: TupleDesc) -> TupleDesc; + pub fn TupleDescGetAttInMetadata(tupdesc: TupleDesc) -> *mut AttInMetadata; + pub fn BuildTupleFromCStrings( + attinmeta: *mut AttInMetadata, + values: *mut *mut ::core::ffi::c_char, + ) -> HeapTuple; + pub fn HeapTupleHeaderGetDatum(tuple: HeapTupleHeader) -> Datum; + pub fn InitMaterializedSRF(fcinfo: FunctionCallInfo, flags: bits32); + pub fn init_MultiFuncCall(fcinfo: FunctionCallInfo) -> *mut FuncCallContext; + pub fn per_MultiFuncCall(fcinfo: FunctionCallInfo) -> *mut FuncCallContext; + pub fn end_MultiFuncCall(fcinfo: FunctionCallInfo, funcctx: *mut FuncCallContext); + pub fn extract_variadic_args( + fcinfo: FunctionCallInfo, + variadic_start: ::core::ffi::c_int, + convert_unknown: bool, + args: *mut *mut Datum, + types: *mut *mut Oid, + nulls: *mut *mut bool, + ) -> ::core::ffi::c_int; + pub fn __sysv_signal(__sig: ::core::ffi::c_int, __handler: __sighandler_t) -> __sighandler_t; + pub fn signal(__sig: ::core::ffi::c_int, __handler: __sighandler_t) -> __sighandler_t; + pub fn kill(__pid: __pid_t, __sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn killpg(__pgrp: __pid_t, __sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn raise(__sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn ssignal(__sig: ::core::ffi::c_int, __handler: __sighandler_t) -> __sighandler_t; + pub fn gsignal(__sig: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn psignal(__sig: ::core::ffi::c_int, __s: *const ::core::ffi::c_char); + pub fn psiginfo(__pinfo: *const siginfo_t, __s: *const ::core::ffi::c_char); + pub fn sigblock(__mask: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigsetmask(__mask: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigemptyset(__set: *mut sigset_t) -> ::core::ffi::c_int; + pub fn sigfillset(__set: *mut sigset_t) -> ::core::ffi::c_int; + pub fn sigaddset(__set: *mut sigset_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigdelset(__set: *mut sigset_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigismember(__set: *const sigset_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigprocmask( + __how: ::core::ffi::c_int, + __set: *const sigset_t, + __oset: *mut sigset_t, + ) -> ::core::ffi::c_int; + pub fn sigsuspend(__set: *const sigset_t) -> ::core::ffi::c_int; + pub fn sigaction( + __sig: ::core::ffi::c_int, + __act: *const sigaction, + __oact: *mut sigaction, + ) -> ::core::ffi::c_int; + pub fn sigpending(__set: *mut sigset_t) -> ::core::ffi::c_int; + pub fn sigwait(__set: *const sigset_t, __sig: *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sigwaitinfo(__set: *const sigset_t, __info: *mut siginfo_t) -> ::core::ffi::c_int; + pub fn sigtimedwait( + __set: *const sigset_t, + __info: *mut siginfo_t, + __timeout: *const timespec, + ) -> ::core::ffi::c_int; + pub fn sigqueue(__pid: __pid_t, __sig: ::core::ffi::c_int, __val: sigval) + -> ::core::ffi::c_int; + pub fn siginterrupt( + __sig: ::core::ffi::c_int, + __interrupt: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn sigaltstack(__ss: *const stack_t, __oss: *mut stack_t) -> ::core::ffi::c_int; + pub fn pthread_sigmask( + __how: ::core::ffi::c_int, + __newmask: *const __sigset_t, + __oldmask: *mut __sigset_t, + ) -> ::core::ffi::c_int; + pub fn pthread_kill(__threadid: pthread_t, __signo: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn __libc_current_sigrtmin() -> ::core::ffi::c_int; + pub fn __libc_current_sigrtmax() -> ::core::ffi::c_int; + pub fn pg_localtime(timep: *const pg_time_t, tz: *const pg_tz) -> *mut pg_tm; + pub fn pg_gmtime(timep: *const pg_time_t) -> *mut pg_tm; + pub fn pg_next_dst_boundary( + timep: *const pg_time_t, + before_gmtoff: *mut ::core::ffi::c_long, + before_isdst: *mut ::core::ffi::c_int, + boundary: *mut pg_time_t, + after_gmtoff: *mut ::core::ffi::c_long, + after_isdst: *mut ::core::ffi::c_int, + tz: *const pg_tz, + ) -> ::core::ffi::c_int; + pub fn pg_interpret_timezone_abbrev( + abbrev: *const ::core::ffi::c_char, + timep: *const pg_time_t, + gmtoff: *mut ::core::ffi::c_long, + isdst: *mut ::core::ffi::c_int, + tz: *const pg_tz, + ) -> bool; + pub fn pg_get_timezone_offset(tz: *const pg_tz, gmtoff: *mut ::core::ffi::c_long) -> bool; + pub fn pg_get_timezone_name(tz: *mut pg_tz) -> *const ::core::ffi::c_char; + pub fn pg_tz_acceptable(tz: *mut pg_tz) -> bool; + pub fn pg_strftime( + s: *mut ::core::ffi::c_char, + maxsize: usize, + format: *const ::core::ffi::c_char, + t: *const pg_tm, + ) -> usize; + pub static mut session_timezone: *mut pg_tz; + pub static mut log_timezone: *mut pg_tz; + pub fn pg_timezone_initialize(); + pub fn pg_tzset(tzname: *const ::core::ffi::c_char) -> *mut pg_tz; + pub fn pg_tzset_offset(gmtoffset: ::core::ffi::c_long) -> *mut pg_tz; + pub fn pg_tzenumerate_start() -> *mut pg_tzenum; + pub fn pg_tzenumerate_next(dir: *mut pg_tzenum) -> *mut pg_tz; + pub fn pg_tzenumerate_end(dir: *mut pg_tzenum); + #[doc = "\t System interrupt and critical section handling\n\n There are two types of interrupts that a running backend needs to accept\n without messing up its state: QueryCancel (SIGINT) and ProcDie (SIGTERM).\n In both cases, we need to be able to clean up the current transaction\n gracefully, so we can't respond to the interrupt instantaneously ---\n there's no guarantee that internal data structures would be self-consistent\n if the code is interrupted at an arbitrary instant. Instead, the signal\n handlers set flags that are checked periodically during execution.\n\n The CHECK_FOR_INTERRUPTS() macro is called at strategically located spots\n where it is normally safe to accept a cancel or die interrupt. In some\n cases, we invoke CHECK_FOR_INTERRUPTS() inside low-level subroutines that\n might sometimes be called in contexts that do *not* want to allow a cancel\n or die interrupt. The HOLD_INTERRUPTS() and RESUME_INTERRUPTS() macros\n allow code to ensure that no cancel or die interrupt will be accepted,\n even if CHECK_FOR_INTERRUPTS() gets called in a subroutine. The interrupt\n will be held off until CHECK_FOR_INTERRUPTS() is done outside any\n HOLD_INTERRUPTS() ... RESUME_INTERRUPTS() section.\n\n There is also a mechanism to prevent query cancel interrupts, while still\n allowing die interrupts: HOLD_CANCEL_INTERRUPTS() and\n RESUME_CANCEL_INTERRUPTS().\n\n Note that ProcessInterrupts() has also acquired a number of tasks that\n do not necessarily cause a query-cancel-or-die response. Hence, it's\n possible that it will just clear InterruptPending and return.\n\n INTERRUPTS_PENDING_CONDITION() can be checked to see whether an\n interrupt needs to be serviced, without trying to do so immediately.\n Some callers are also interested in INTERRUPTS_CAN_BE_PROCESSED(),\n which tells whether ProcessInterrupts is sure to clear the interrupt.\n\n Special mechanisms are used to let an interrupt be accepted when we are\n waiting for a lock or when we are waiting for command input (but, of\n course, only if the interrupt holdoff counter is zero). See the\n related code for details.\n\n A lost connection is handled similarly, although the loss of connection\n does not raise a signal, but is detected when we fail to write to the\n socket. If there was a signal for a broken connection, we could make use of\n it by setting ClientConnectionLost in the signal handler.\n\n A related, but conceptually distinct, mechanism is the \"critical section\"\n mechanism. A critical section not only holds off cancel/die interrupts,\n but causes any ereport(ERROR) or ereport(FATAL) to become ereport(PANIC)\n --- that is, a system-wide reset is forced. Needless to say, only really\n *critical* code should be marked as a critical section!\tCurrently, this\n mechanism is only used for XLOG-related code.\n"] + pub static mut InterruptPending: sig_atomic_t; + pub static mut QueryCancelPending: sig_atomic_t; + pub static mut ProcDiePending: sig_atomic_t; + pub static mut IdleInTransactionSessionTimeoutPending: sig_atomic_t; + pub static mut TransactionTimeoutPending: sig_atomic_t; + pub static mut IdleSessionTimeoutPending: sig_atomic_t; + pub static mut ProcSignalBarrierPending: sig_atomic_t; + pub static mut LogMemoryContextPending: sig_atomic_t; + pub static mut IdleStatsUpdateTimeoutPending: sig_atomic_t; + pub static mut CheckClientConnectionPending: sig_atomic_t; + pub static mut ClientConnectionLost: sig_atomic_t; + pub static mut InterruptHoldoffCount: uint32; + pub static mut QueryCancelHoldoffCount: uint32; + pub static mut CritSectionCount: uint32; + pub fn ProcessInterrupts(); + #[doc = "\t globals.h --\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t *"] + pub static mut PostmasterPid: pid_t; + pub static mut IsPostmasterEnvironment: bool; + pub static mut IsUnderPostmaster: bool; + pub static mut IsBinaryUpgrade: bool; + pub static mut ExitOnAnyError: bool; + pub static mut DataDir: *mut ::core::ffi::c_char; + pub static mut data_directory_mode: ::core::ffi::c_int; + pub static mut NBuffers: ::core::ffi::c_int; + pub static mut MaxBackends: ::core::ffi::c_int; + pub static mut MaxConnections: ::core::ffi::c_int; + pub static mut max_worker_processes: ::core::ffi::c_int; + pub static mut max_parallel_workers: ::core::ffi::c_int; + pub static mut commit_timestamp_buffers: ::core::ffi::c_int; + pub static mut multixact_member_buffers: ::core::ffi::c_int; + pub static mut multixact_offset_buffers: ::core::ffi::c_int; + pub static mut notify_buffers: ::core::ffi::c_int; + pub static mut serializable_buffers: ::core::ffi::c_int; + pub static mut subtransaction_buffers: ::core::ffi::c_int; + pub static mut transaction_buffers: ::core::ffi::c_int; + pub static mut MyProcPid: ::core::ffi::c_int; + pub static mut MyStartTime: pg_time_t; + pub static mut MyStartTimestamp: TimestampTz; + pub static mut MyProcPort: *mut Port; + pub static mut MyLatch: *mut Latch; + pub static mut MyCancelKey: int32; + pub static mut MyPMChildSlot: ::core::ffi::c_int; + pub static mut OutputFileName: [::core::ffi::c_char; 0usize]; + pub static mut my_exec_path: [::core::ffi::c_char; 0usize]; + pub static mut pkglib_path: [::core::ffi::c_char; 0usize]; + pub static mut MyDatabaseId: Oid; + pub static mut MyDatabaseTableSpace: Oid; + pub static mut MyDatabaseHasLoginEventTriggers: bool; + pub static mut DateStyle: ::core::ffi::c_int; + pub static mut DateOrder: ::core::ffi::c_int; + pub static mut IntervalStyle: ::core::ffi::c_int; + pub static mut enableFsync: bool; + pub static mut allowSystemTableMods: bool; + pub static mut work_mem: ::core::ffi::c_int; + pub static mut hash_mem_multiplier: f64; + pub static mut maintenance_work_mem: ::core::ffi::c_int; + pub static mut max_parallel_maintenance_workers: ::core::ffi::c_int; + pub static mut VacuumBufferUsageLimit: ::core::ffi::c_int; + pub static mut VacuumCostPageHit: ::core::ffi::c_int; + pub static mut VacuumCostPageMiss: ::core::ffi::c_int; + pub static mut VacuumCostPageDirty: ::core::ffi::c_int; + pub static mut VacuumCostLimit: ::core::ffi::c_int; + pub static mut VacuumCostDelay: f64; + pub static mut VacuumPageHit: int64; + pub static mut VacuumPageMiss: int64; + pub static mut VacuumPageDirty: int64; + pub static mut VacuumCostBalance: ::core::ffi::c_int; + pub static mut VacuumCostActive: bool; + pub fn set_stack_base() -> pg_stack_base_t; + pub fn restore_stack_base(base: pg_stack_base_t); + pub fn check_stack_depth(); + pub fn stack_is_too_deep() -> bool; + pub fn PreventCommandIfReadOnly(cmdname: *const ::core::ffi::c_char); + pub fn PreventCommandIfParallelMode(cmdname: *const ::core::ffi::c_char); + pub fn PreventCommandDuringRecovery(cmdname: *const ::core::ffi::c_char); + pub static mut DatabasePath: *mut ::core::ffi::c_char; + pub fn InitPostmasterChild(); + pub fn InitStandaloneProcess(argv0: *const ::core::ffi::c_char); + pub fn InitProcessLocalLatch(); + pub fn SwitchToSharedLatch(); + pub fn SwitchBackToLocalLatch(); + pub static mut MyBackendType: BackendType::Type; + pub fn GetBackendTypeDesc(backendType: BackendType::Type) -> *const ::core::ffi::c_char; + pub fn SetDatabasePath(path: *const ::core::ffi::c_char); + pub fn checkDataDir(); + pub fn SetDataDir(dir: *const ::core::ffi::c_char); + pub fn ChangeToDataDir(); + pub fn GetUserNameFromId(roleid: Oid, noerr: bool) -> *mut ::core::ffi::c_char; + pub fn GetUserId() -> Oid; + pub fn GetOuterUserId() -> Oid; + pub fn GetSessionUserId() -> Oid; + pub fn GetAuthenticatedUserId() -> Oid; + pub fn GetUserIdAndSecContext(userid: *mut Oid, sec_context: *mut ::core::ffi::c_int); + pub fn SetUserIdAndSecContext(userid: Oid, sec_context: ::core::ffi::c_int); + pub fn InLocalUserIdChange() -> bool; + pub fn InSecurityRestrictedOperation() -> bool; + pub fn InNoForceRLSOperation() -> bool; + pub fn GetUserIdAndContext(userid: *mut Oid, sec_def_context: *mut bool); + pub fn SetUserIdAndContext(userid: Oid, sec_def_context: bool); + pub fn InitializeSessionUserId( + rolename: *const ::core::ffi::c_char, + roleid: Oid, + bypass_login_check: bool, + ); + pub fn InitializeSessionUserIdStandalone(); + pub fn SetSessionAuthorization(userid: Oid, is_superuser: bool); + pub fn GetCurrentRoleId() -> Oid; + pub fn SetCurrentRoleId(roleid: Oid, is_superuser: bool); + pub fn InitializeSystemUser( + authn_id: *const ::core::ffi::c_char, + auth_method: *const ::core::ffi::c_char, + ); + pub fn GetSystemUser() -> *const ::core::ffi::c_char; + pub fn superuser() -> bool; + pub fn superuser_arg(roleid: Oid) -> bool; + pub static mut Mode: ProcessingMode::Type; + pub fn pg_split_opts( + argv: *mut *mut ::core::ffi::c_char, + argcp: *mut ::core::ffi::c_int, + optstr: *const ::core::ffi::c_char, + ); + pub fn InitializeMaxBackends(); + pub fn InitPostgres( + in_dbname: *const ::core::ffi::c_char, + dboid: Oid, + username: *const ::core::ffi::c_char, + useroid: Oid, + flags: bits32, + out_dbname: *mut ::core::ffi::c_char, + ); + pub fn BaseInit(); + pub static mut IgnoreSystemIndexes: bool; + pub static mut process_shared_preload_libraries_in_progress: bool; + pub static mut process_shared_preload_libraries_done: bool; + pub static mut process_shmem_requests_in_progress: bool; + pub static mut session_preload_libraries_string: *mut ::core::ffi::c_char; + pub static mut shared_preload_libraries_string: *mut ::core::ffi::c_char; + pub static mut local_preload_libraries_string: *mut ::core::ffi::c_char; + pub fn CreateDataDirLockFile(amPostmaster: bool); + pub fn CreateSocketLockFile( + socketfile: *const ::core::ffi::c_char, + amPostmaster: bool, + socketDir: *const ::core::ffi::c_char, + ); + pub fn TouchSocketLockFiles(); + pub fn AddToDataDirLockFile(target_line: ::core::ffi::c_int, str_: *const ::core::ffi::c_char); + pub fn RecheckDataDirLockFile() -> bool; + pub fn ValidatePgVersion(path: *const ::core::ffi::c_char); + pub fn process_shared_preload_libraries(); + pub fn process_session_preload_libraries(); + pub fn process_shmem_requests(); + pub fn pg_bindtextdomain(domain: *const ::core::ffi::c_char); + pub fn has_rolreplication(roleid: Oid) -> bool; + pub static mut shmem_request_hook: shmem_request_hook_type; + pub fn EstimateClientConnectionInfoSpace() -> Size; + pub fn SerializeClientConnectionInfo(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreClientConnectionInfo(conninfo: *mut ::core::ffi::c_char); + pub fn get_hash_memory_limit() -> usize; + pub fn PgArchShmemSize() -> Size; + pub fn PgArchShmemInit(); + pub fn PgArchCanRestart() -> bool; + pub fn PgArchiverMain(startup_data: *mut ::core::ffi::c_char, startup_data_len: usize) -> !; + pub fn PgArchWakeup(); + pub fn PgArchForceDirScan(); + pub fn pgstat_progress_start_command(cmdtype: ProgressCommandType::Type, relid: Oid); + pub fn pgstat_progress_update_param(index: ::core::ffi::c_int, val: int64); + pub fn pgstat_progress_incr_param(index: ::core::ffi::c_int, incr: int64); + pub fn pgstat_progress_parallel_incr_param(index: ::core::ffi::c_int, incr: int64); + pub fn pgstat_progress_update_multi_param( + nparam: ::core::ffi::c_int, + index: *const ::core::ffi::c_int, + val: *const int64, + ); + pub fn pgstat_progress_end_command(); + pub fn __cmsg_nxthdr(__mhdr: *mut msghdr, __cmsg: *mut cmsghdr) -> *mut cmsghdr; + pub fn socket( + __domain: ::core::ffi::c_int, + __type: ::core::ffi::c_int, + __protocol: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn socketpair( + __domain: ::core::ffi::c_int, + __type: ::core::ffi::c_int, + __protocol: ::core::ffi::c_int, + __fds: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn bind( + __fd: ::core::ffi::c_int, + __addr: *const sockaddr, + __len: socklen_t, + ) -> ::core::ffi::c_int; + pub fn getsockname( + __fd: ::core::ffi::c_int, + __addr: *mut sockaddr, + __len: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn connect( + __fd: ::core::ffi::c_int, + __addr: *const sockaddr, + __len: socklen_t, + ) -> ::core::ffi::c_int; + pub fn getpeername( + __fd: ::core::ffi::c_int, + __addr: *mut sockaddr, + __len: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn send( + __fd: ::core::ffi::c_int, + __buf: *const ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn recv( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn sendto( + __fd: ::core::ffi::c_int, + __buf: *const ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + __addr: *const sockaddr, + __addr_len: socklen_t, + ) -> isize; + pub fn recvfrom( + __fd: ::core::ffi::c_int, + __buf: *mut ::core::ffi::c_void, + __n: usize, + __flags: ::core::ffi::c_int, + __addr: *mut sockaddr, + __addr_len: *mut socklen_t, + ) -> isize; + pub fn sendmsg( + __fd: ::core::ffi::c_int, + __message: *const msghdr, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn recvmsg( + __fd: ::core::ffi::c_int, + __message: *mut msghdr, + __flags: ::core::ffi::c_int, + ) -> isize; + pub fn getsockopt( + __fd: ::core::ffi::c_int, + __level: ::core::ffi::c_int, + __optname: ::core::ffi::c_int, + __optval: *mut ::core::ffi::c_void, + __optlen: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn setsockopt( + __fd: ::core::ffi::c_int, + __level: ::core::ffi::c_int, + __optname: ::core::ffi::c_int, + __optval: *const ::core::ffi::c_void, + __optlen: socklen_t, + ) -> ::core::ffi::c_int; + pub fn listen(__fd: ::core::ffi::c_int, __n: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn accept( + __fd: ::core::ffi::c_int, + __addr: *mut sockaddr, + __addr_len: *mut socklen_t, + ) -> ::core::ffi::c_int; + pub fn shutdown(__fd: ::core::ffi::c_int, __how: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn sockatmark(__fd: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isfdtype(__fd: ::core::ffi::c_int, __fdtype: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub static in6addr_any: in6_addr; + pub static in6addr_loopback: in6_addr; + pub fn ntohl(__netlong: u32) -> u32; + pub fn ntohs(__netshort: u16) -> u16; + pub fn htonl(__hostlong: u32) -> u32; + pub fn htons(__hostshort: u16) -> u16; + pub fn bindresvport( + __sockfd: ::core::ffi::c_int, + __sock_in: *mut sockaddr_in, + ) -> ::core::ffi::c_int; + pub fn bindresvport6( + __sockfd: ::core::ffi::c_int, + __sock_in: *mut sockaddr_in6, + ) -> ::core::ffi::c_int; + pub fn setrpcent(__stayopen: ::core::ffi::c_int); + pub fn endrpcent(); + pub fn getrpcbyname(__name: *const ::core::ffi::c_char) -> *mut rpcent; + pub fn getrpcbynumber(__number: ::core::ffi::c_int) -> *mut rpcent; + pub fn getrpcent() -> *mut rpcent; + pub fn getrpcbyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut rpcent, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut rpcent, + ) -> ::core::ffi::c_int; + pub fn getrpcbynumber_r( + __number: ::core::ffi::c_int, + __result_buf: *mut rpcent, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut rpcent, + ) -> ::core::ffi::c_int; + pub fn getrpcent_r( + __result_buf: *mut rpcent, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut rpcent, + ) -> ::core::ffi::c_int; + pub fn __h_errno_location() -> *mut ::core::ffi::c_int; + pub fn herror(__str: *const ::core::ffi::c_char); + pub fn hstrerror(__err_num: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn sethostent(__stay_open: ::core::ffi::c_int); + pub fn endhostent(); + pub fn gethostent() -> *mut hostent; + pub fn gethostbyaddr( + __addr: *const ::core::ffi::c_void, + __len: __socklen_t, + __type: ::core::ffi::c_int, + ) -> *mut hostent; + pub fn gethostbyname(__name: *const ::core::ffi::c_char) -> *mut hostent; + pub fn gethostbyname2( + __name: *const ::core::ffi::c_char, + __af: ::core::ffi::c_int, + ) -> *mut hostent; + pub fn gethostent_r( + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn gethostbyaddr_r( + __addr: *const ::core::ffi::c_void, + __len: __socklen_t, + __type: ::core::ffi::c_int, + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn gethostbyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn gethostbyname2_r( + __name: *const ::core::ffi::c_char, + __af: ::core::ffi::c_int, + __result_buf: *mut hostent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut hostent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn setnetent(__stay_open: ::core::ffi::c_int); + pub fn endnetent(); + pub fn getnetent() -> *mut netent; + pub fn getnetbyaddr(__net: u32, __type: ::core::ffi::c_int) -> *mut netent; + pub fn getnetbyname(__name: *const ::core::ffi::c_char) -> *mut netent; + pub fn getnetent_r( + __result_buf: *mut netent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut netent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn getnetbyaddr_r( + __net: u32, + __type: ::core::ffi::c_int, + __result_buf: *mut netent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut netent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn getnetbyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut netent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut netent, + __h_errnop: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn setservent(__stay_open: ::core::ffi::c_int); + pub fn endservent(); + pub fn getservent() -> *mut servent; + pub fn getservbyname( + __name: *const ::core::ffi::c_char, + __proto: *const ::core::ffi::c_char, + ) -> *mut servent; + pub fn getservbyport( + __port: ::core::ffi::c_int, + __proto: *const ::core::ffi::c_char, + ) -> *mut servent; + pub fn getservent_r( + __result_buf: *mut servent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut servent, + ) -> ::core::ffi::c_int; + pub fn getservbyname_r( + __name: *const ::core::ffi::c_char, + __proto: *const ::core::ffi::c_char, + __result_buf: *mut servent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut servent, + ) -> ::core::ffi::c_int; + pub fn getservbyport_r( + __port: ::core::ffi::c_int, + __proto: *const ::core::ffi::c_char, + __result_buf: *mut servent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut servent, + ) -> ::core::ffi::c_int; + pub fn setprotoent(__stay_open: ::core::ffi::c_int); + pub fn endprotoent(); + pub fn getprotoent() -> *mut protoent; + pub fn getprotobyname(__name: *const ::core::ffi::c_char) -> *mut protoent; + pub fn getprotobynumber(__proto: ::core::ffi::c_int) -> *mut protoent; + pub fn getprotoent_r( + __result_buf: *mut protoent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut protoent, + ) -> ::core::ffi::c_int; + pub fn getprotobyname_r( + __name: *const ::core::ffi::c_char, + __result_buf: *mut protoent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut protoent, + ) -> ::core::ffi::c_int; + pub fn getprotobynumber_r( + __proto: ::core::ffi::c_int, + __result_buf: *mut protoent, + __buf: *mut ::core::ffi::c_char, + __buflen: usize, + __result: *mut *mut protoent, + ) -> ::core::ffi::c_int; + pub fn setnetgrent(__netgroup: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn endnetgrent(); + pub fn getnetgrent( + __hostp: *mut *mut ::core::ffi::c_char, + __userp: *mut *mut ::core::ffi::c_char, + __domainp: *mut *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn innetgr( + __netgroup: *const ::core::ffi::c_char, + __host: *const ::core::ffi::c_char, + __user: *const ::core::ffi::c_char, + __domain: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn getnetgrent_r( + __hostp: *mut *mut ::core::ffi::c_char, + __userp: *mut *mut ::core::ffi::c_char, + __domainp: *mut *mut ::core::ffi::c_char, + __buffer: *mut ::core::ffi::c_char, + __buflen: usize, + ) -> ::core::ffi::c_int; + pub fn rcmd( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_ushort, + __locuser: *const ::core::ffi::c_char, + __remuser: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn rcmd_af( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_ushort, + __locuser: *const ::core::ffi::c_char, + __remuser: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn rexec( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_int, + __name: *const ::core::ffi::c_char, + __pass: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn rexec_af( + __ahost: *mut *mut ::core::ffi::c_char, + __rport: ::core::ffi::c_int, + __name: *const ::core::ffi::c_char, + __pass: *const ::core::ffi::c_char, + __cmd: *const ::core::ffi::c_char, + __fd2p: *mut ::core::ffi::c_int, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn ruserok( + __rhost: *const ::core::ffi::c_char, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn ruserok_af( + __rhost: *const ::core::ffi::c_char, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn iruserok( + __raddr: u32, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn iruserok_af( + __raddr: *const ::core::ffi::c_void, + __suser: ::core::ffi::c_int, + __remuser: *const ::core::ffi::c_char, + __locuser: *const ::core::ffi::c_char, + __af: sa_family_t, + ) -> ::core::ffi::c_int; + pub fn rresvport(__alport: *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn rresvport_af(__alport: *mut ::core::ffi::c_int, __af: sa_family_t) + -> ::core::ffi::c_int; + pub fn getaddrinfo( + __name: *const ::core::ffi::c_char, + __service: *const ::core::ffi::c_char, + __req: *const addrinfo, + __pai: *mut *mut addrinfo, + ) -> ::core::ffi::c_int; + pub fn freeaddrinfo(__ai: *mut addrinfo); + pub fn gai_strerror(__ecode: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn getnameinfo( + __sa: *const sockaddr, + __salen: socklen_t, + __host: *mut ::core::ffi::c_char, + __hostlen: socklen_t, + __serv: *mut ::core::ffi::c_char, + __servlen: socklen_t, + __flags: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub static mut pgstat_track_activities: bool; + pub static mut pgstat_track_activity_query_size: ::core::ffi::c_int; + pub static mut MyBEEntry: *mut PgBackendStatus; + pub fn BackendStatusShmemSize() -> Size; + pub fn CreateSharedBackendStatus(); + pub fn pgstat_beinit(); + pub fn pgstat_bestart(); + pub fn pgstat_clear_backend_activity_snapshot(); + pub fn pgstat_report_activity(state: BackendState::Type, cmd_str: *const ::core::ffi::c_char); + pub fn pgstat_report_query_id(query_id: uint64, force: bool); + pub fn pgstat_report_tempfile(filesize: usize); + pub fn pgstat_report_appname(appname: *const ::core::ffi::c_char); + pub fn pgstat_report_xact_timestamp(tstamp: TimestampTz); + pub fn pgstat_get_backend_current_activity( + pid: ::core::ffi::c_int, + checkUser: bool, + ) -> *const ::core::ffi::c_char; + pub fn pgstat_get_crashed_backend_activity( + pid: ::core::ffi::c_int, + buffer: *mut ::core::ffi::c_char, + buflen: ::core::ffi::c_int, + ) -> *const ::core::ffi::c_char; + pub fn pgstat_get_my_query_id() -> uint64; + pub fn pgstat_fetch_stat_numbackends() -> ::core::ffi::c_int; + pub fn pgstat_get_beentry_by_proc_number(procNumber: ProcNumber) -> *mut PgBackendStatus; + pub fn pgstat_get_local_beentry_by_proc_number( + procNumber: ProcNumber, + ) -> *mut LocalPgBackendStatus; + pub fn pgstat_get_local_beentry_by_index(idx: ::core::ffi::c_int) -> *mut LocalPgBackendStatus; + pub fn pgstat_clip_activity( + raw_activity: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn pgstat_get_wait_event(wait_event_info: uint32) -> *const ::core::ffi::c_char; + pub fn pgstat_get_wait_event_type(wait_event_info: uint32) -> *const ::core::ffi::c_char; + pub fn pgstat_set_wait_event_storage(wait_event_info: *mut uint32); + pub fn pgstat_reset_wait_event_storage(); + pub static mut my_wait_event_info: *mut uint32; + pub fn WaitEventExtensionNew(wait_event_name: *const ::core::ffi::c_char) -> uint32; + pub fn WaitEventInjectionPointNew(wait_event_name: *const ::core::ffi::c_char) -> uint32; + pub fn WaitEventCustomShmemInit(); + pub fn WaitEventCustomShmemSize() -> Size; + pub fn GetWaitEventCustomNames( + classId: uint32, + nwaitevents: *mut ::core::ffi::c_int, + ) -> *mut *mut ::core::ffi::c_char; + pub fn StatsShmemSize() -> Size; + pub fn StatsShmemInit(); + pub fn pgstat_restore_stats(); + pub fn pgstat_discard_stats(); + pub fn pgstat_before_server_shutdown(code: ::core::ffi::c_int, arg: Datum); + pub fn pgstat_initialize(); + pub fn pgstat_report_stat(force: bool) -> ::core::ffi::c_long; + pub fn pgstat_force_next_flush(); + pub fn pgstat_reset_counters(); + pub fn pgstat_reset(kind: PgStat_Kind::Type, dboid: Oid, objoid: Oid); + pub fn pgstat_reset_of_kind(kind: PgStat_Kind::Type); + pub fn pgstat_clear_snapshot(); + pub fn pgstat_get_stat_snapshot_timestamp(have_snapshot: *mut bool) -> TimestampTz; + pub fn pgstat_get_kind_from_str(kind_str: *mut ::core::ffi::c_char) -> PgStat_Kind::Type; + pub fn pgstat_have_entry(kind: PgStat_Kind::Type, dboid: Oid, objoid: Oid) -> bool; + pub fn pgstat_report_archiver(xlog: *const ::core::ffi::c_char, failed: bool); + pub fn pgstat_fetch_stat_archiver() -> *mut PgStat_ArchiverStats; + pub fn pgstat_report_bgwriter(); + pub fn pgstat_fetch_stat_bgwriter() -> *mut PgStat_BgWriterStats; + pub fn pgstat_report_checkpointer(); + pub fn pgstat_fetch_stat_checkpointer() -> *mut PgStat_CheckpointerStats; + pub fn pgstat_bktype_io_stats_valid( + backend_io: *mut PgStat_BktypeIO, + bktype: BackendType::Type, + ) -> bool; + pub fn pgstat_count_io_op( + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + ); + pub fn pgstat_count_io_op_n( + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + cnt: uint32, + ); + pub fn pgstat_prepare_io_time(track_io_guc: bool) -> instr_time; + pub fn pgstat_count_io_op_time( + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + start_time: instr_time, + cnt: uint32, + ); + pub fn pgstat_fetch_stat_io() -> *mut PgStat_IO; + pub fn pgstat_get_io_context_name(io_context: IOContext::Type) -> *const ::core::ffi::c_char; + pub fn pgstat_get_io_object_name(io_object: IOObject::Type) -> *const ::core::ffi::c_char; + pub fn pgstat_tracks_io_bktype(bktype: BackendType::Type) -> bool; + pub fn pgstat_tracks_io_object( + bktype: BackendType::Type, + io_object: IOObject::Type, + io_context: IOContext::Type, + ) -> bool; + pub fn pgstat_tracks_io_op( + bktype: BackendType::Type, + io_object: IOObject::Type, + io_context: IOContext::Type, + io_op: IOOp::Type, + ) -> bool; + pub fn pgstat_drop_database(databaseid: Oid); + pub fn pgstat_report_autovac(dboid: Oid); + pub fn pgstat_report_recovery_conflict(reason: ::core::ffi::c_int); + pub fn pgstat_report_deadlock(); + pub fn pgstat_report_checksum_failures_in_db(dboid: Oid, failurecount: ::core::ffi::c_int); + pub fn pgstat_report_checksum_failure(); + pub fn pgstat_report_connect(dboid: Oid); + pub fn pgstat_fetch_stat_dbentry(dboid: Oid) -> *mut PgStat_StatDBEntry; + pub fn pgstat_create_function(proid: Oid); + pub fn pgstat_drop_function(proid: Oid); + pub fn pgstat_init_function_usage( + fcinfo: *mut FunctionCallInfoBaseData, + fcu: *mut PgStat_FunctionCallUsage, + ); + pub fn pgstat_end_function_usage(fcu: *mut PgStat_FunctionCallUsage, finalize: bool); + pub fn pgstat_fetch_stat_funcentry(func_id: Oid) -> *mut PgStat_StatFuncEntry; + pub fn find_funcstat_entry(func_id: Oid) -> *mut PgStat_FunctionCounts; + pub fn pgstat_create_relation(rel: Relation); + pub fn pgstat_drop_relation(rel: Relation); + pub fn pgstat_copy_relation_stats(dst: Relation, src: Relation); + pub fn pgstat_init_relation(rel: Relation); + pub fn pgstat_assoc_relation(rel: Relation); + pub fn pgstat_unlink_relation(rel: Relation); + pub fn pgstat_report_vacuum( + tableoid: Oid, + shared: bool, + livetuples: PgStat_Counter, + deadtuples: PgStat_Counter, + ); + pub fn pgstat_report_analyze( + rel: Relation, + livetuples: PgStat_Counter, + deadtuples: PgStat_Counter, + resetcounter: bool, + ); + pub fn pgstat_count_heap_insert(rel: Relation, n: PgStat_Counter); + pub fn pgstat_count_heap_update(rel: Relation, hot: bool, newpage: bool); + pub fn pgstat_count_heap_delete(rel: Relation); + pub fn pgstat_count_truncate(rel: Relation); + pub fn pgstat_update_heap_dead_tuples(rel: Relation, delta: ::core::ffi::c_int); + pub fn pgstat_twophase_postcommit( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn pgstat_twophase_postabort( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn pgstat_fetch_stat_tabentry(relid: Oid) -> *mut PgStat_StatTabEntry; + pub fn pgstat_fetch_stat_tabentry_ext(shared: bool, reloid: Oid) -> *mut PgStat_StatTabEntry; + pub fn find_tabstat_entry(rel_id: Oid) -> *mut PgStat_TableStatus; + pub fn pgstat_reset_replslot(name: *const ::core::ffi::c_char); + pub fn pgstat_report_replslot( + slot: *mut ReplicationSlot, + repSlotStat: *const PgStat_StatReplSlotEntry, + ); + pub fn pgstat_create_replslot(slot: *mut ReplicationSlot); + pub fn pgstat_acquire_replslot(slot: *mut ReplicationSlot); + pub fn pgstat_drop_replslot(slot: *mut ReplicationSlot); + pub fn pgstat_fetch_replslot(slotname: NameData) -> *mut PgStat_StatReplSlotEntry; + pub fn pgstat_reset_slru(arg1: *const ::core::ffi::c_char); + pub fn pgstat_count_slru_page_zeroed(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_hit(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_read(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_written(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_page_exists(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_flush(slru_idx: ::core::ffi::c_int); + pub fn pgstat_count_slru_truncate(slru_idx: ::core::ffi::c_int); + pub fn pgstat_get_slru_name(slru_idx: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pgstat_get_slru_index(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pgstat_fetch_slru() -> *mut PgStat_SLRUStats; + pub fn pgstat_report_subscription_error(subid: Oid, is_apply_error: bool); + pub fn pgstat_create_subscription(subid: Oid); + pub fn pgstat_drop_subscription(subid: Oid); + pub fn pgstat_fetch_stat_subscription(subid: Oid) -> *mut PgStat_StatSubEntry; + pub fn AtEOXact_PgStat(isCommit: bool, parallel: bool); + pub fn AtEOSubXact_PgStat(isCommit: bool, nestDepth: ::core::ffi::c_int); + pub fn AtPrepare_PgStat(); + pub fn PostPrepare_PgStat(); + pub fn pgstat_get_transactional_drops( + isCommit: bool, + items: *mut *mut xl_xact_stats_item, + ) -> ::core::ffi::c_int; + pub fn pgstat_execute_transactional_drops( + ndrops: ::core::ffi::c_int, + items: *mut xl_xact_stats_item, + is_redo: bool, + ); + pub fn pgstat_report_wal(force: bool); + pub fn pgstat_fetch_stat_wal() -> *mut PgStat_WalStats; + pub static mut pgstat_track_counts: bool; + pub static mut pgstat_track_functions: ::core::ffi::c_int; + pub static mut pgstat_fetch_consistency: ::core::ffi::c_int; + pub static mut PendingBgWriterStats: PgStat_BgWriterStats; + pub static mut PendingCheckpointerStats: PgStat_CheckpointerStats; + pub static mut pgStatBlockReadTime: PgStat_Counter; + pub static mut pgStatBlockWriteTime: PgStat_Counter; + pub static mut pgStatActiveTime: PgStat_Counter; + pub static mut pgStatTransactionIdleTime: PgStat_Counter; + pub static mut pgStatSessionEndCause: SessionEndType::Type; + pub static mut PendingWalStats: PgStat_PendingWalStats; + pub fn build_backup_content( + state: *mut BackupState, + ishistoryfile: bool, + ) -> *mut ::core::ffi::c_char; + pub static mut wal_sync_method: ::core::ffi::c_int; + pub static mut ProcLastRecPtr: XLogRecPtr; + pub static mut XactLastRecEnd: XLogRecPtr; + pub static mut XactLastCommitEnd: XLogRecPtr; + pub static mut wal_segment_size: ::core::ffi::c_int; + pub static mut min_wal_size_mb: ::core::ffi::c_int; + pub static mut max_wal_size_mb: ::core::ffi::c_int; + pub static mut wal_keep_size_mb: ::core::ffi::c_int; + pub static mut max_slot_wal_keep_size_mb: ::core::ffi::c_int; + pub static mut XLOGbuffers: ::core::ffi::c_int; + pub static mut XLogArchiveTimeout: ::core::ffi::c_int; + pub static mut wal_retrieve_retry_interval: ::core::ffi::c_int; + pub static mut XLogArchiveCommand: *mut ::core::ffi::c_char; + pub static mut EnableHotStandby: bool; + pub static mut fullPageWrites: bool; + pub static mut wal_log_hints: bool; + pub static mut wal_compression: ::core::ffi::c_int; + pub static mut wal_init_zero: bool; + pub static mut wal_recycle: bool; + pub static mut wal_consistency_checking: *mut bool; + pub static mut wal_consistency_checking_string: *mut ::core::ffi::c_char; + pub static mut log_checkpoints: bool; + pub static mut track_wal_io_timing: bool; + pub static mut wal_decode_buffer_size: ::core::ffi::c_int; + pub static mut CheckPointSegments: ::core::ffi::c_int; + pub static mut XLogArchiveMode: ::core::ffi::c_int; + pub static mut wal_level: ::core::ffi::c_int; + pub static mut CheckpointStats: CheckpointStatsData; + pub fn XLogInsertRecord( + rdata: *mut XLogRecData, + fpw_lsn: XLogRecPtr, + flags: uint8, + num_fpi: ::core::ffi::c_int, + topxid_included: bool, + ) -> XLogRecPtr; + pub fn XLogFlush(record: XLogRecPtr); + pub fn XLogBackgroundFlush() -> bool; + pub fn XLogNeedsFlush(record: XLogRecPtr) -> bool; + pub fn XLogFileInit(logsegno: XLogSegNo, logtli: TimeLineID) -> ::core::ffi::c_int; + pub fn XLogFileOpen(segno: XLogSegNo, tli: TimeLineID) -> ::core::ffi::c_int; + pub fn CheckXLogRemoved(segno: XLogSegNo, tli: TimeLineID); + pub fn XLogGetLastRemovedSegno() -> XLogSegNo; + pub fn XLogGetOldestSegno(tli: TimeLineID) -> XLogSegNo; + pub fn XLogSetAsyncXactLSN(asyncXactLSN: XLogRecPtr); + pub fn XLogSetReplicationSlotMinimumLSN(lsn: XLogRecPtr); + pub fn xlog_redo(record: *mut XLogReaderState); + pub fn xlog_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn xlog_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn issue_xlog_fsync(fd: ::core::ffi::c_int, segno: XLogSegNo, tli: TimeLineID); + pub fn RecoveryInProgress() -> bool; + pub fn GetRecoveryState() -> RecoveryState::Type; + pub fn XLogInsertAllowed() -> bool; + pub fn GetXLogInsertRecPtr() -> XLogRecPtr; + pub fn GetXLogWriteRecPtr() -> XLogRecPtr; + pub fn GetSystemIdentifier() -> uint64; + pub fn GetMockAuthenticationNonce() -> *mut ::core::ffi::c_char; + pub fn DataChecksumsEnabled() -> bool; + pub fn GetFakeLSNForUnloggedRel() -> XLogRecPtr; + pub fn XLOGShmemSize() -> Size; + pub fn XLOGShmemInit(); + pub fn BootStrapXLOG(); + pub fn InitializeWalConsistencyChecking(); + pub fn LocalProcessControlFile(reset: bool); + pub fn GetActiveWalLevelOnStandby() -> WalLevel::Type; + pub fn StartupXLOG(); + pub fn ShutdownXLOG(code: ::core::ffi::c_int, arg: Datum); + pub fn CreateCheckPoint(flags: ::core::ffi::c_int); + pub fn CreateRestartPoint(flags: ::core::ffi::c_int) -> bool; + pub fn GetWALAvailability(targetLSN: XLogRecPtr) -> WALAvailability::Type; + pub fn XLogPutNextOid(nextOid: Oid); + pub fn XLogRestorePoint(rpName: *const ::core::ffi::c_char) -> XLogRecPtr; + pub fn UpdateFullPageWrites(); + pub fn GetFullPageWriteInfo(RedoRecPtr_p: *mut XLogRecPtr, doPageWrites_p: *mut bool); + pub fn GetRedoRecPtr() -> XLogRecPtr; + pub fn GetInsertRecPtr() -> XLogRecPtr; + pub fn GetFlushRecPtr(insertTLI: *mut TimeLineID) -> XLogRecPtr; + pub fn GetWALInsertionTimeLine() -> TimeLineID; + pub fn GetWALInsertionTimeLineIfSet() -> TimeLineID; + pub fn GetLastImportantRecPtr() -> XLogRecPtr; + pub fn SetWalWriterSleeping(sleeping: bool); + pub fn WALReadFromBuffers( + dstbuf: *mut ::core::ffi::c_char, + startptr: XLogRecPtr, + count: Size, + tli: TimeLineID, + ) -> Size; + pub fn RemoveNonParentXlogFiles(switchpoint: XLogRecPtr, newTLI: TimeLineID); + pub fn XLogCheckpointNeeded(new_segno: XLogSegNo) -> bool; + pub fn SwitchIntoArchiveRecovery(EndRecPtr: XLogRecPtr, replayTLI: TimeLineID); + pub fn ReachedEndOfBackup(EndRecPtr: XLogRecPtr, tli: TimeLineID); + pub fn SetInstallXLogFileSegmentActive(); + pub fn IsInstallXLogFileSegmentActive() -> bool; + pub fn XLogShutdownWalRcv(); + pub fn do_pg_backup_start( + backupidstr: *const ::core::ffi::c_char, + fast: bool, + tablespaces: *mut *mut List, + state: *mut BackupState, + tblspcmapfile: StringInfo, + ); + pub fn do_pg_backup_stop(state: *mut BackupState, waitforarchive: bool); + pub fn do_pg_abort_backup(code: ::core::ffi::c_int, arg: Datum); + pub fn register_persistent_abort_backup_handler(); + pub fn get_backup_status() -> SessionBackupState::Type; + pub fn pg_comp_crc32c_sb8( + crc: pg_crc32c, + data: *const ::core::ffi::c_void, + len: usize, + ) -> pg_crc32c; + pub static mut pg_comp_crc32c: ::core::option::Option< + unsafe extern "C" fn( + crc: pg_crc32c, + data: *const ::core::ffi::c_void, + len: usize, + ) -> pg_crc32c, + >; + pub fn pg_comp_crc32c_sse42( + crc: pg_crc32c, + data: *const ::core::ffi::c_void, + len: usize, + ) -> pg_crc32c; + pub fn XLogReaderAllocate( + wal_segment_size: ::core::ffi::c_int, + waldir: *const ::core::ffi::c_char, + routine: *mut XLogReaderRoutine, + private_data: *mut ::core::ffi::c_void, + ) -> *mut XLogReaderState; + pub fn XLogReaderFree(state: *mut XLogReaderState); + pub fn XLogReaderSetDecodeBuffer( + state: *mut XLogReaderState, + buffer: *mut ::core::ffi::c_void, + size: usize, + ); + pub fn XLogBeginRead(state: *mut XLogReaderState, RecPtr: XLogRecPtr); + pub fn XLogFindNextRecord(state: *mut XLogReaderState, RecPtr: XLogRecPtr) -> XLogRecPtr; + pub fn XLogReadRecord( + state: *mut XLogReaderState, + errormsg: *mut *mut ::core::ffi::c_char, + ) -> *mut XLogRecord; + pub fn XLogNextRecord( + state: *mut XLogReaderState, + errormsg: *mut *mut ::core::ffi::c_char, + ) -> *mut DecodedXLogRecord; + pub fn XLogReleasePreviousRecord(state: *mut XLogReaderState) -> XLogRecPtr; + pub fn XLogReadAhead(state: *mut XLogReaderState, nonblocking: bool) -> *mut DecodedXLogRecord; + pub fn XLogReaderValidatePageHeader( + state: *mut XLogReaderState, + recptr: XLogRecPtr, + phdr: *mut ::core::ffi::c_char, + ) -> bool; + pub fn XLogReaderResetError(state: *mut XLogReaderState); + pub fn WALRead( + state: *mut XLogReaderState, + buf: *mut ::core::ffi::c_char, + startptr: XLogRecPtr, + count: Size, + tli: TimeLineID, + errinfo: *mut WALReadError, + ) -> bool; + pub fn DecodeXLogRecordRequiredSpace(xl_tot_len: usize) -> usize; + pub fn DecodeXLogRecord( + state: *mut XLogReaderState, + decoded: *mut DecodedXLogRecord, + record: *mut XLogRecord, + lsn: XLogRecPtr, + errormsg: *mut *mut ::core::ffi::c_char, + ) -> bool; + pub fn XLogRecGetFullXid(record: *mut XLogReaderState) -> FullTransactionId; + pub fn RestoreBlockImage( + record: *mut XLogReaderState, + block_id: uint8, + page: *mut ::core::ffi::c_char, + ) -> bool; + pub fn XLogRecGetBlockData( + record: *mut XLogReaderState, + block_id: uint8, + len: *mut Size, + ) -> *mut ::core::ffi::c_char; + pub fn XLogRecGetBlockTag( + record: *mut XLogReaderState, + block_id: uint8, + rlocator: *mut RelFileLocator, + forknum: *mut ForkNumber::Type, + blknum: *mut BlockNumber, + ); + pub fn XLogRecGetBlockTagExtended( + record: *mut XLogReaderState, + block_id: uint8, + rlocator: *mut RelFileLocator, + forknum: *mut ForkNumber::Type, + blknum: *mut BlockNumber, + prefetch_buffer: *mut Buffer, + ) -> bool; + pub fn XLogBeginInsert(); + pub fn XLogSetRecordFlags(flags: uint8); + pub fn XLogInsert(rmid: RmgrId, info: uint8) -> XLogRecPtr; + pub fn XLogEnsureRecordSpace(max_block_id: ::core::ffi::c_int, ndatas: ::core::ffi::c_int); + pub fn XLogRegisterData(data: *mut ::core::ffi::c_char, len: uint32); + pub fn XLogRegisterBuffer(block_id: uint8, buffer: Buffer, flags: uint8); + pub fn XLogRegisterBlock( + block_id: uint8, + rlocator: *mut RelFileLocator, + forknum: ForkNumber::Type, + blknum: BlockNumber, + page: *mut ::core::ffi::c_char, + flags: uint8, + ); + pub fn XLogRegisterBufData(block_id: uint8, data: *mut ::core::ffi::c_char, len: uint32); + pub fn XLogResetInsertion(); + pub fn XLogCheckBufferNeedsBackup(buffer: Buffer) -> bool; + pub fn log_newpage( + rlocator: *mut RelFileLocator, + forknum: ForkNumber::Type, + blkno: BlockNumber, + page: *mut ::core::ffi::c_char, + page_std: bool, + ) -> XLogRecPtr; + pub fn log_newpages( + rlocator: *mut RelFileLocator, + forknum: ForkNumber::Type, + num_pages: ::core::ffi::c_int, + blknos: *mut BlockNumber, + pages: *mut *mut ::core::ffi::c_char, + page_std: bool, + ); + pub fn log_newpage_buffer(buffer: Buffer, page_std: bool) -> XLogRecPtr; + pub fn log_newpage_range( + rel: Relation, + forknum: ForkNumber::Type, + startblk: BlockNumber, + endblk: BlockNumber, + page_std: bool, + ); + pub fn XLogSaveBufferForHint(buffer: Buffer, buffer_std: bool) -> XLogRecPtr; + pub fn InitXLogInsert(); + pub fn errdetail_relkind_not_supported(relkind: ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn IsSystemRelation(relation: Relation) -> bool; + pub fn IsToastRelation(relation: Relation) -> bool; + pub fn IsCatalogRelation(relation: Relation) -> bool; + pub fn IsInplaceUpdateRelation(relation: Relation) -> bool; + pub fn IsSystemClass(relid: Oid, reltuple: Form_pg_class) -> bool; + pub fn IsToastClass(reltuple: Form_pg_class) -> bool; + pub fn IsCatalogRelationOid(relid: Oid) -> bool; + pub fn IsInplaceUpdateOid(relid: Oid) -> bool; + pub fn IsCatalogNamespace(namespaceId: Oid) -> bool; + pub fn IsToastNamespace(namespaceId: Oid) -> bool; + pub fn IsReservedName(name: *const ::core::ffi::c_char) -> bool; + pub fn IsSharedRelation(relationId: Oid) -> bool; + pub fn IsPinnedObject(classId: Oid, objectId: Oid) -> bool; + pub fn GetNewOidWithIndex(relation: Relation, indexId: Oid, oidcolumn: AttrNumber) -> Oid; + pub fn GetNewRelFileNumber( + reltablespace: Oid, + pg_class: Relation, + relpersistence: ::core::ffi::c_char, + ) -> RelFileNumber; + pub static InvalidObjectAddress: ObjectAddress; + pub fn get_object_address( + objtype: ObjectType::Type, + object: *mut Node, + relp: *mut Relation, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> ObjectAddress; + pub fn get_object_address_rv( + objtype: ObjectType::Type, + rel: *mut RangeVar, + object: *mut List, + relp: *mut Relation, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> ObjectAddress; + pub fn check_object_ownership( + roleid: Oid, + objtype: ObjectType::Type, + address: ObjectAddress, + object: *mut Node, + relation: Relation, + ); + pub fn get_object_namespace(address: *const ObjectAddress) -> Oid; + pub fn is_objectclass_supported(class_id: Oid) -> bool; + pub fn get_object_class_descr(class_id: Oid) -> *const ::core::ffi::c_char; + pub fn get_object_oid_index(class_id: Oid) -> Oid; + pub fn get_object_catcache_oid(class_id: Oid) -> ::core::ffi::c_int; + pub fn get_object_catcache_name(class_id: Oid) -> ::core::ffi::c_int; + pub fn get_object_attnum_oid(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_name(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_namespace(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_owner(class_id: Oid) -> AttrNumber; + pub fn get_object_attnum_acl(class_id: Oid) -> AttrNumber; + pub fn get_object_type(class_id: Oid, object_id: Oid) -> ObjectType::Type; + pub fn get_object_namensp_unique(class_id: Oid) -> bool; + pub fn get_catalog_object_by_oid( + catalog: Relation, + oidcol: AttrNumber, + objectId: Oid, + ) -> HeapTuple; + pub fn getObjectDescription( + object: *const ObjectAddress, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn getObjectDescriptionOids(classid: Oid, objid: Oid) -> *mut ::core::ffi::c_char; + pub fn read_objtype_from_string(objtype: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn getObjectTypeDescription( + object: *const ObjectAddress, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn getObjectIdentity( + object: *const ObjectAddress, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn getObjectIdentityParts( + object: *const ObjectAddress, + objname: *mut *mut List, + objargs: *mut *mut List, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn strlist_to_textarray(list: *mut List) -> *mut ArrayType; + pub fn get_relkind_objtype(relkind: ::core::ffi::c_char) -> ObjectType::Type; + pub fn GetPublication(pubid: Oid) -> *mut Publication; + pub fn GetPublicationByName( + pubname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut Publication; + pub fn GetRelationPublications(relid: Oid) -> *mut List; + pub fn GetPublicationRelations(pubid: Oid, pub_partopt: PublicationPartOpt::Type) -> *mut List; + pub fn GetAllTablesPublications() -> *mut List; + pub fn GetAllTablesPublicationRelations(pubviaroot: bool) -> *mut List; + pub fn GetPublicationSchemas(pubid: Oid) -> *mut List; + pub fn GetSchemaPublications(schemaid: Oid) -> *mut List; + pub fn GetSchemaPublicationRelations( + schemaid: Oid, + pub_partopt: PublicationPartOpt::Type, + ) -> *mut List; + pub fn GetAllSchemaPublicationRelations( + pubid: Oid, + pub_partopt: PublicationPartOpt::Type, + ) -> *mut List; + pub fn GetPubPartitionOptionRelations( + result: *mut List, + pub_partopt: PublicationPartOpt::Type, + relid: Oid, + ) -> *mut List; + pub fn GetTopMostAncestorInPublication( + puboid: Oid, + ancestors: *mut List, + ancestor_level: *mut ::core::ffi::c_int, + ) -> Oid; + pub fn is_publishable_relation(rel: Relation) -> bool; + pub fn is_schema_publication(pubid: Oid) -> bool; + pub fn publication_add_relation( + pubid: Oid, + pri: *mut PublicationRelInfo, + if_not_exists: bool, + ) -> ObjectAddress; + pub fn publication_add_schema(pubid: Oid, schemaid: Oid, if_not_exists: bool) -> ObjectAddress; + pub fn pub_collist_to_bitmapset( + columns: *mut Bitmapset, + pubcols: Datum, + mcxt: MemoryContext, + ) -> *mut Bitmapset; + pub fn smgrinit(); + pub fn smgropen(rlocator: RelFileLocator, backend: ProcNumber) -> SMgrRelation; + pub fn smgrexists(reln: SMgrRelation, forknum: ForkNumber::Type) -> bool; + pub fn smgrpin(reln: SMgrRelation); + pub fn smgrunpin(reln: SMgrRelation); + pub fn smgrclose(reln: SMgrRelation); + pub fn smgrdestroyall(); + pub fn smgrrelease(reln: SMgrRelation); + pub fn smgrreleaseall(); + pub fn smgrreleaserellocator(rlocator: RelFileLocatorBackend); + pub fn smgrcreate(reln: SMgrRelation, forknum: ForkNumber::Type, isRedo: bool); + pub fn smgrdosyncall(rels: *mut SMgrRelation, nrels: ::core::ffi::c_int); + pub fn smgrdounlinkall(rels: *mut SMgrRelation, nrels: ::core::ffi::c_int, isRedo: bool); + pub fn smgrextend( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + buffer: *const ::core::ffi::c_void, + skipFsync: bool, + ); + pub fn smgrzeroextend( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + nblocks: ::core::ffi::c_int, + skipFsync: bool, + ); + pub fn smgrprefetch( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + nblocks: ::core::ffi::c_int, + ) -> bool; + pub fn smgrreadv( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + buffers: *mut *mut ::core::ffi::c_void, + nblocks: BlockNumber, + ); + pub fn smgrwritev( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + buffers: *mut *const ::core::ffi::c_void, + nblocks: BlockNumber, + skipFsync: bool, + ); + pub fn smgrwriteback( + reln: SMgrRelation, + forknum: ForkNumber::Type, + blocknum: BlockNumber, + nblocks: BlockNumber, + ); + pub fn smgrnblocks(reln: SMgrRelation, forknum: ForkNumber::Type) -> BlockNumber; + pub fn smgrnblocks_cached(reln: SMgrRelation, forknum: ForkNumber::Type) -> BlockNumber; + pub fn smgrtruncate( + reln: SMgrRelation, + forknum: *mut ForkNumber::Type, + nforks: ::core::ffi::c_int, + nblocks: *mut BlockNumber, + ); + pub fn smgrimmedsync(reln: SMgrRelation, forknum: ForkNumber::Type); + pub fn smgrregistersync(reln: SMgrRelation, forknum: ForkNumber::Type); + pub fn AtEOXact_SMgr(); + pub fn ProcessBarrierSmgrRelease() -> bool; + pub fn RelationIncrementReferenceCount(rel: Relation); + pub fn RelationDecrementReferenceCount(rel: Relation); + pub fn GenericXLogStart(relation: Relation) -> *mut GenericXLogState; + pub fn GenericXLogRegisterBuffer( + state: *mut GenericXLogState, + buffer: Buffer, + flags: ::core::ffi::c_int, + ) -> Page; + pub fn GenericXLogFinish(state: *mut GenericXLogState) -> XLogRecPtr; + pub fn GenericXLogAbort(state: *mut GenericXLogState); + pub fn generic_redo(record: *mut XLogReaderState); + pub fn generic_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn generic_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn generic_mask(page: *mut ::core::ffi::c_char, blkno: BlockNumber); + pub static mut GinFuzzySearchLimit: ::core::ffi::c_int; + pub static mut gin_pending_list_limit: ::core::ffi::c_int; + pub fn ginGetStats(index: Relation, stats: *mut GinStatsData); + pub fn ginUpdateStats(index: Relation, stats: *const GinStatsData, is_build: bool); + pub fn relation_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn try_relation_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn relation_openrv(relation: *const RangeVar, lockmode: LOCKMODE) -> Relation; + pub fn relation_openrv_extended( + relation: *const RangeVar, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> Relation; + pub fn relation_close(relation: Relation, lockmode: LOCKMODE); + pub fn table_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn table_openrv(relation: *const RangeVar, lockmode: LOCKMODE) -> Relation; + pub fn table_openrv_extended( + relation: *const RangeVar, + lockmode: LOCKMODE, + missing_ok: bool, + ) -> Relation; + pub fn try_table_open(relationId: Oid, lockmode: LOCKMODE) -> Relation; + pub fn table_close(relation: Relation, lockmode: LOCKMODE); + pub static mut SharedInvalidMessageCounter: uint64; + pub static mut catchupInterruptPending: sig_atomic_t; + pub fn SendSharedInvalidMessages(msgs: *const SharedInvalidationMessage, n: ::core::ffi::c_int); + pub fn ReceiveSharedInvalidMessages( + invalFunction: ::core::option::Option< + unsafe extern "C" fn(msg: *mut SharedInvalidationMessage), + >, + resetFunction: ::core::option::Option, + ); + pub fn HandleCatchupInterrupt(); + pub fn ProcessCatchupInterrupt(); + pub fn xactGetCommittedInvalidationMessages( + msgs: *mut *mut SharedInvalidationMessage, + RelcacheInitFileInval: *mut bool, + ) -> ::core::ffi::c_int; + pub fn ProcessCommittedInvalidationMessages( + msgs: *mut SharedInvalidationMessage, + nmsgs: ::core::ffi::c_int, + RelcacheInitFileInval: bool, + dbid: Oid, + tsid: Oid, + ); + pub fn LocalExecuteInvalidationMessage(msg: *mut SharedInvalidationMessage); + pub static mut DefaultXactIsoLevel: ::core::ffi::c_int; + pub static mut XactIsoLevel: ::core::ffi::c_int; + pub static mut DefaultXactReadOnly: bool; + pub static mut XactReadOnly: bool; + pub static mut xact_is_sampled: bool; + pub static mut DefaultXactDeferrable: bool; + pub static mut XactDeferrable: bool; + pub static mut synchronous_commit: ::core::ffi::c_int; + pub static mut CheckXidAlive: TransactionId; + pub static mut bsysscan: bool; + pub static mut MyXactFlags: ::core::ffi::c_int; + pub fn IsTransactionState() -> bool; + pub fn IsAbortedTransactionBlockState() -> bool; + pub fn GetTopTransactionId() -> TransactionId; + pub fn GetTopTransactionIdIfAny() -> TransactionId; + pub fn GetCurrentTransactionId() -> TransactionId; + pub fn GetCurrentTransactionIdIfAny() -> TransactionId; + pub fn GetStableLatestTransactionId() -> TransactionId; + pub fn GetCurrentSubTransactionId() -> SubTransactionId; + pub fn GetTopFullTransactionId() -> FullTransactionId; + pub fn GetTopFullTransactionIdIfAny() -> FullTransactionId; + pub fn GetCurrentFullTransactionId() -> FullTransactionId; + pub fn GetCurrentFullTransactionIdIfAny() -> FullTransactionId; + pub fn MarkCurrentTransactionIdLoggedIfAny(); + pub fn SubTransactionIsActive(subxid: SubTransactionId) -> bool; + pub fn GetCurrentCommandId(used: bool) -> CommandId; + pub fn SetParallelStartTimestamps(xact_ts: TimestampTz, stmt_ts: TimestampTz); + pub fn GetCurrentTransactionStartTimestamp() -> TimestampTz; + pub fn GetCurrentStatementStartTimestamp() -> TimestampTz; + pub fn GetCurrentTransactionStopTimestamp() -> TimestampTz; + pub fn SetCurrentStatementStartTimestamp(); + pub fn GetCurrentTransactionNestLevel() -> ::core::ffi::c_int; + pub fn TransactionIdIsCurrentTransactionId(xid: TransactionId) -> bool; + pub fn CommandCounterIncrement(); + pub fn ForceSyncCommit(); + pub fn StartTransactionCommand(); + pub fn SaveTransactionCharacteristics(s: *mut SavedTransactionCharacteristics); + pub fn RestoreTransactionCharacteristics(s: *const SavedTransactionCharacteristics); + pub fn CommitTransactionCommand(); + pub fn AbortCurrentTransaction(); + pub fn BeginTransactionBlock(); + pub fn EndTransactionBlock(chain: bool) -> bool; + pub fn PrepareTransactionBlock(gid: *const ::core::ffi::c_char) -> bool; + pub fn UserAbortTransactionBlock(chain: bool); + pub fn BeginImplicitTransactionBlock(); + pub fn EndImplicitTransactionBlock(); + pub fn ReleaseSavepoint(name: *const ::core::ffi::c_char); + pub fn DefineSavepoint(name: *const ::core::ffi::c_char); + pub fn RollbackToSavepoint(name: *const ::core::ffi::c_char); + pub fn BeginInternalSubTransaction(name: *const ::core::ffi::c_char); + pub fn ReleaseCurrentSubTransaction(); + pub fn RollbackAndReleaseCurrentSubTransaction(); + pub fn IsSubTransaction() -> bool; + pub fn EstimateTransactionStateSpace() -> Size; + pub fn SerializeTransactionState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn StartParallelWorkerTransaction(tstatespace: *mut ::core::ffi::c_char); + pub fn EndParallelWorkerTransaction(); + pub fn IsTransactionBlock() -> bool; + pub fn IsTransactionOrTransactionBlock() -> bool; + pub fn TransactionBlockStatusCode() -> ::core::ffi::c_char; + pub fn AbortOutOfAnyTransaction(); + pub fn PreventInTransactionBlock(isTopLevel: bool, stmtType: *const ::core::ffi::c_char); + pub fn RequireTransactionBlock(isTopLevel: bool, stmtType: *const ::core::ffi::c_char); + pub fn WarnNoTransactionBlock(isTopLevel: bool, stmtType: *const ::core::ffi::c_char); + pub fn IsInTransactionBlock(isTopLevel: bool) -> bool; + pub fn RegisterXactCallback(callback: XactCallback, arg: *mut ::core::ffi::c_void); + pub fn UnregisterXactCallback(callback: XactCallback, arg: *mut ::core::ffi::c_void); + pub fn RegisterSubXactCallback(callback: SubXactCallback, arg: *mut ::core::ffi::c_void); + pub fn UnregisterSubXactCallback(callback: SubXactCallback, arg: *mut ::core::ffi::c_void); + pub fn IsSubxactTopXidLogPending() -> bool; + pub fn MarkSubxactTopXidLogged(); + pub fn xactGetCommittedChildren(ptr: *mut *mut TransactionId) -> ::core::ffi::c_int; + pub fn XactLogCommitRecord( + commit_time: TimestampTz, + nsubxacts: ::core::ffi::c_int, + subxacts: *mut TransactionId, + nrels: ::core::ffi::c_int, + rels: *mut RelFileLocator, + ndroppedstats: ::core::ffi::c_int, + droppedstats: *mut xl_xact_stats_item, + nmsgs: ::core::ffi::c_int, + msgs: *mut SharedInvalidationMessage, + relcacheInval: bool, + xactflags: ::core::ffi::c_int, + twophase_xid: TransactionId, + twophase_gid: *const ::core::ffi::c_char, + ) -> XLogRecPtr; + pub fn XactLogAbortRecord( + abort_time: TimestampTz, + nsubxacts: ::core::ffi::c_int, + subxacts: *mut TransactionId, + nrels: ::core::ffi::c_int, + rels: *mut RelFileLocator, + ndroppedstats: ::core::ffi::c_int, + droppedstats: *mut xl_xact_stats_item, + xactflags: ::core::ffi::c_int, + twophase_xid: TransactionId, + twophase_gid: *const ::core::ffi::c_char, + ) -> XLogRecPtr; + pub fn xact_redo(record: *mut XLogReaderState); + pub fn xact_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn xact_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn ParseCommitRecord( + info: uint8, + xlrec: *mut xl_xact_commit, + parsed: *mut xl_xact_parsed_commit, + ); + pub fn ParseAbortRecord( + info: uint8, + xlrec: *mut xl_xact_abort, + parsed: *mut xl_xact_parsed_abort, + ); + pub fn ParsePrepareRecord( + info: uint8, + xlrec: *mut xl_xact_prepare, + parsed: *mut xl_xact_parsed_prepare, + ); + pub fn EnterParallelMode(); + pub fn ExitParallelMode(); + pub fn IsInParallelMode() -> bool; + pub static mut CurrentResourceOwner: ResourceOwner; + pub static mut CurTransactionResourceOwner: ResourceOwner; + pub static mut TopTransactionResourceOwner: ResourceOwner; + pub static mut AuxProcessResourceOwner: ResourceOwner; + pub fn ResourceOwnerCreate( + parent: ResourceOwner, + name: *const ::core::ffi::c_char, + ) -> ResourceOwner; + pub fn ResourceOwnerRelease( + owner: ResourceOwner, + phase: ResourceReleasePhase::Type, + isCommit: bool, + isTopLevel: bool, + ); + pub fn ResourceOwnerDelete(owner: ResourceOwner); + pub fn ResourceOwnerGetParent(owner: ResourceOwner) -> ResourceOwner; + pub fn ResourceOwnerNewParent(owner: ResourceOwner, newparent: ResourceOwner); + pub fn ResourceOwnerEnlarge(owner: ResourceOwner); + pub fn ResourceOwnerRemember( + owner: ResourceOwner, + value: Datum, + kind: *const ResourceOwnerDesc, + ); + pub fn ResourceOwnerForget(owner: ResourceOwner, value: Datum, kind: *const ResourceOwnerDesc); + pub fn ResourceOwnerReleaseAllOfKind(owner: ResourceOwner, kind: *const ResourceOwnerDesc); + pub fn RegisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::core::ffi::c_void, + ); + pub fn UnregisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::core::ffi::c_void, + ); + pub fn CreateAuxProcessResourceOwner(); + pub fn ReleaseAuxProcessResources(isCommit: bool); + pub fn ResourceOwnerRememberLock(owner: ResourceOwner, locallock: *mut LOCALLOCK); + pub fn ResourceOwnerForgetLock(owner: ResourceOwner, locallock: *mut LOCALLOCK); + pub static mut FirstSnapshotSet: bool; + pub static mut TransactionXmin: TransactionId; + pub static mut RecentXmin: TransactionId; + pub static mut SnapshotSelfData: SnapshotData; + pub static mut SnapshotAnyData: SnapshotData; + pub static mut CatalogSnapshotData: SnapshotData; + pub fn GetTransactionSnapshot() -> Snapshot; + pub fn GetLatestSnapshot() -> Snapshot; + pub fn SnapshotSetCommandId(curcid: CommandId); + pub fn GetOldestSnapshot() -> Snapshot; + pub fn GetCatalogSnapshot(relid: Oid) -> Snapshot; + pub fn GetNonHistoricCatalogSnapshot(relid: Oid) -> Snapshot; + pub fn InvalidateCatalogSnapshot(); + pub fn InvalidateCatalogSnapshotConditionally(); + pub fn PushActiveSnapshot(snapshot: Snapshot); + pub fn PushActiveSnapshotWithLevel(snapshot: Snapshot, snap_level: ::core::ffi::c_int); + pub fn PushCopiedSnapshot(snapshot: Snapshot); + pub fn UpdateActiveSnapshotCommandId(); + pub fn PopActiveSnapshot(); + pub fn GetActiveSnapshot() -> Snapshot; + pub fn ActiveSnapshotSet() -> bool; + pub fn RegisterSnapshot(snapshot: Snapshot) -> Snapshot; + pub fn UnregisterSnapshot(snapshot: Snapshot); + pub fn RegisterSnapshotOnOwner(snapshot: Snapshot, owner: ResourceOwner) -> Snapshot; + pub fn UnregisterSnapshotFromOwner(snapshot: Snapshot, owner: ResourceOwner); + pub fn AtSubCommit_Snapshot(level: ::core::ffi::c_int); + pub fn AtSubAbort_Snapshot(level: ::core::ffi::c_int); + pub fn AtEOXact_Snapshot(isCommit: bool, resetXmin: bool); + pub fn ImportSnapshot(idstr: *const ::core::ffi::c_char); + pub fn XactHasExportedSnapshots() -> bool; + pub fn DeleteAllExportedSnapshotFiles(); + pub fn WaitForOlderSnapshots(limitXmin: TransactionId, progress: bool); + pub fn ThereAreNoPriorRegisteredSnapshots() -> bool; + pub fn HaveRegisteredOrActiveSnapshot() -> bool; + pub fn ExportSnapshot(snapshot: Snapshot) -> *mut ::core::ffi::c_char; + pub fn GlobalVisTestFor(rel: Relation) -> *mut GlobalVisState; + pub fn GlobalVisTestIsRemovableXid(state: *mut GlobalVisState, xid: TransactionId) -> bool; + pub fn GlobalVisTestIsRemovableFullXid( + state: *mut GlobalVisState, + fxid: FullTransactionId, + ) -> bool; + pub fn GlobalVisCheckRemovableXid(rel: Relation, xid: TransactionId) -> bool; + pub fn GlobalVisCheckRemovableFullXid(rel: Relation, fxid: FullTransactionId) -> bool; + pub fn XidInMVCCSnapshot(xid: TransactionId, snapshot: Snapshot) -> bool; + pub fn HistoricSnapshotGetTupleCids() -> *mut HTAB; + pub fn SetupHistoricSnapshot(historic_snapshot: Snapshot, tuplecids: *mut HTAB); + pub fn TeardownHistoricSnapshot(is_error: bool); + pub fn HistoricSnapshotActive() -> bool; + pub fn EstimateSnapshotSpace(snapshot: Snapshot) -> Size; + pub fn SerializeSnapshot(snapshot: Snapshot, start_address: *mut ::core::ffi::c_char); + pub fn RestoreSnapshot(start_address: *mut ::core::ffi::c_char) -> Snapshot; + pub fn RestoreTransactionSnapshot(snapshot: Snapshot, source_pgproc: *mut ::core::ffi::c_void); + pub static mut zero_damaged_pages: bool; + pub static mut bgwriter_lru_maxpages: ::core::ffi::c_int; + pub static mut bgwriter_lru_multiplier: f64; + pub static mut track_io_timing: bool; + pub static mut effective_io_concurrency: ::core::ffi::c_int; + pub static mut maintenance_io_concurrency: ::core::ffi::c_int; + pub static mut io_combine_limit: ::core::ffi::c_int; + pub static mut checkpoint_flush_after: ::core::ffi::c_int; + pub static mut backend_flush_after: ::core::ffi::c_int; + pub static mut bgwriter_flush_after: ::core::ffi::c_int; + pub static mut BufferBlocks: *mut ::core::ffi::c_char; + pub static mut NLocBuffer: ::core::ffi::c_int; + pub static mut LocalBufferBlockPointers: *mut Block; + pub static mut LocalRefCount: *mut int32; + pub fn PrefetchSharedBuffer( + smgr_reln: *mut SMgrRelationData, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + ) -> PrefetchBufferResult; + pub fn PrefetchBuffer( + reln: Relation, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + ) -> PrefetchBufferResult; + pub fn ReadRecentBuffer( + rlocator: RelFileLocator, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + recent_buffer: Buffer, + ) -> bool; + pub fn ReadBuffer(reln: Relation, blockNum: BlockNumber) -> Buffer; + pub fn ReadBufferExtended( + reln: Relation, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + mode: ReadBufferMode::Type, + strategy: BufferAccessStrategy, + ) -> Buffer; + pub fn ReadBufferWithoutRelcache( + rlocator: RelFileLocator, + forkNum: ForkNumber::Type, + blockNum: BlockNumber, + mode: ReadBufferMode::Type, + strategy: BufferAccessStrategy, + permanent: bool, + ) -> Buffer; + pub fn StartReadBuffer( + operation: *mut ReadBuffersOperation, + buffer: *mut Buffer, + blocknum: BlockNumber, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn StartReadBuffers( + operation: *mut ReadBuffersOperation, + buffers: *mut Buffer, + blockNum: BlockNumber, + nblocks: *mut ::core::ffi::c_int, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn WaitReadBuffers(operation: *mut ReadBuffersOperation); + pub fn ReleaseBuffer(buffer: Buffer); + pub fn UnlockReleaseBuffer(buffer: Buffer); + pub fn BufferIsExclusiveLocked(buffer: Buffer) -> bool; + pub fn BufferIsDirty(buffer: Buffer) -> bool; + pub fn MarkBufferDirty(buffer: Buffer); + pub fn IncrBufferRefCount(buffer: Buffer); + pub fn CheckBufferIsPinnedOnce(buffer: Buffer); + pub fn ReleaseAndReadBuffer( + buffer: Buffer, + relation: Relation, + blockNum: BlockNumber, + ) -> Buffer; + pub fn ExtendBufferedRel( + bmr: BufferManagerRelation, + forkNum: ForkNumber::Type, + strategy: BufferAccessStrategy, + flags: uint32, + ) -> Buffer; + pub fn ExtendBufferedRelBy( + bmr: BufferManagerRelation, + fork: ForkNumber::Type, + strategy: BufferAccessStrategy, + flags: uint32, + extend_by: uint32, + buffers: *mut Buffer, + extended_by: *mut uint32, + ) -> BlockNumber; + pub fn ExtendBufferedRelTo( + bmr: BufferManagerRelation, + fork: ForkNumber::Type, + strategy: BufferAccessStrategy, + flags: uint32, + extend_to: BlockNumber, + mode: ReadBufferMode::Type, + ) -> Buffer; + pub fn InitBufferPoolAccess(); + pub fn AtEOXact_Buffers(isCommit: bool); + pub fn DebugPrintBufferRefcount(buffer: Buffer) -> *mut ::core::ffi::c_char; + pub fn CheckPointBuffers(flags: ::core::ffi::c_int); + pub fn BufferGetBlockNumber(buffer: Buffer) -> BlockNumber; + pub fn RelationGetNumberOfBlocksInFork( + relation: Relation, + forkNum: ForkNumber::Type, + ) -> BlockNumber; + pub fn FlushOneBuffer(buffer: Buffer); + pub fn FlushRelationBuffers(rel: Relation); + pub fn FlushRelationsAllBuffers(smgrs: *mut *mut SMgrRelationData, nrels: ::core::ffi::c_int); + pub fn CreateAndCopyRelationData( + src_rlocator: RelFileLocator, + dst_rlocator: RelFileLocator, + permanent: bool, + ); + pub fn FlushDatabaseBuffers(dbid: Oid); + pub fn DropRelationBuffers( + smgr_reln: *mut SMgrRelationData, + forkNum: *mut ForkNumber::Type, + nforks: ::core::ffi::c_int, + firstDelBlock: *mut BlockNumber, + ); + pub fn DropRelationsAllBuffers( + smgr_reln: *mut *mut SMgrRelationData, + nlocators: ::core::ffi::c_int, + ); + pub fn DropDatabaseBuffers(dbid: Oid); + pub fn BufferIsPermanent(buffer: Buffer) -> bool; + pub fn BufferGetLSNAtomic(buffer: Buffer) -> XLogRecPtr; + pub fn BufferGetTag( + buffer: Buffer, + rlocator: *mut RelFileLocator, + forknum: *mut ForkNumber::Type, + blknum: *mut BlockNumber, + ); + pub fn MarkBufferDirtyHint(buffer: Buffer, buffer_std: bool); + pub fn UnlockBuffers(); + pub fn LockBuffer(buffer: Buffer, mode: ::core::ffi::c_int); + pub fn ConditionalLockBuffer(buffer: Buffer) -> bool; + pub fn LockBufferForCleanup(buffer: Buffer); + pub fn ConditionalLockBufferForCleanup(buffer: Buffer) -> bool; + pub fn IsBufferCleanupOK(buffer: Buffer) -> bool; + pub fn HoldingBufferPinThatDelaysRecovery() -> bool; + pub fn BgBufferSync(wb_context: *mut WritebackContext) -> bool; + pub fn LimitAdditionalPins(additional_pins: *mut uint32); + pub fn LimitAdditionalLocalPins(additional_pins: *mut uint32); + pub fn EvictUnpinnedBuffer(buf: Buffer) -> bool; + pub fn InitBufferPool(); + pub fn BufferShmemSize() -> Size; + pub fn AtProcExit_LocalBuffers(); + pub fn GetAccessStrategy(btype: BufferAccessStrategyType::Type) -> BufferAccessStrategy; + pub fn GetAccessStrategyWithSize( + btype: BufferAccessStrategyType::Type, + ring_size_kb: ::core::ffi::c_int, + ) -> BufferAccessStrategy; + pub fn GetAccessStrategyBufferCount(strategy: BufferAccessStrategy) -> ::core::ffi::c_int; + pub fn GetAccessStrategyPinLimit(strategy: BufferAccessStrategy) -> ::core::ffi::c_int; + pub fn FreeAccessStrategy(strategy: BufferAccessStrategy); + pub fn read_stream_begin_relation( + flags: ::core::ffi::c_int, + strategy: BufferAccessStrategy, + rel: Relation, + forknum: ForkNumber::Type, + callback: ReadStreamBlockNumberCB, + callback_private_data: *mut ::core::ffi::c_void, + per_buffer_data_size: usize, + ) -> *mut ReadStream; + pub fn read_stream_next_buffer( + stream: *mut ReadStream, + per_buffer_data: *mut *mut ::core::ffi::c_void, + ) -> Buffer; + pub fn read_stream_next_block( + stream: *mut ReadStream, + strategy: *mut BufferAccessStrategy, + ) -> BlockNumber; + pub fn read_stream_reset(stream: *mut ReadStream); + pub fn read_stream_end(stream: *mut ReadStream); + pub static mut default_table_access_method: *mut ::core::ffi::c_char; + pub static mut synchronize_seqscans: bool; + pub fn table_slot_callbacks(relation: Relation) -> *const TupleTableSlotOps; + pub fn table_slot_create(relation: Relation, reglist: *mut *mut List) -> *mut TupleTableSlot; + pub fn table_beginscan_catalog( + relation: Relation, + nkeys: ::core::ffi::c_int, + key: *mut ScanKeyData, + ) -> TableScanDesc; + pub fn table_parallelscan_estimate(rel: Relation, snapshot: Snapshot) -> Size; + pub fn table_parallelscan_initialize( + rel: Relation, + pscan: ParallelTableScanDesc, + snapshot: Snapshot, + ); + pub fn table_beginscan_parallel( + relation: Relation, + pscan: ParallelTableScanDesc, + ) -> TableScanDesc; + pub fn table_index_fetch_tuple_check( + rel: Relation, + tid: ItemPointer, + snapshot: Snapshot, + all_dead: *mut bool, + ) -> bool; + pub fn table_tuple_get_latest_tid(scan: TableScanDesc, tid: ItemPointer); + pub fn simple_table_tuple_insert(rel: Relation, slot: *mut TupleTableSlot); + pub fn simple_table_tuple_delete(rel: Relation, tid: ItemPointer, snapshot: Snapshot); + pub fn simple_table_tuple_update( + rel: Relation, + otid: ItemPointer, + slot: *mut TupleTableSlot, + snapshot: Snapshot, + update_indexes: *mut TU_UpdateIndexes::Type, + ); + pub fn table_block_parallelscan_estimate(rel: Relation) -> Size; + pub fn table_block_parallelscan_initialize(rel: Relation, pscan: ParallelTableScanDesc) + -> Size; + pub fn table_block_parallelscan_reinitialize(rel: Relation, pscan: ParallelTableScanDesc); + pub fn table_block_parallelscan_nextpage( + rel: Relation, + pbscanwork: ParallelBlockTableScanWorker, + pbscan: ParallelBlockTableScanDesc, + ) -> BlockNumber; + pub fn table_block_parallelscan_startblock_init( + rel: Relation, + pbscanwork: ParallelBlockTableScanWorker, + pbscan: ParallelBlockTableScanDesc, + ); + pub fn table_block_relation_size(rel: Relation, forkNumber: ForkNumber::Type) -> uint64; + pub fn table_block_relation_estimate_size( + rel: Relation, + attr_widths: *mut int32, + pages: *mut BlockNumber, + tuples: *mut f64, + allvisfrac: *mut f64, + overhead_bytes_per_tuple: Size, + usable_bytes_per_page: Size, + ); + pub fn GetTableAmRoutine(amhandler: Oid) -> *const TableAmRoutine; + pub fn GetHeapamTableAmRoutine() -> *const TableAmRoutine; + pub fn InitShmemAccess(seghdr: *mut ::core::ffi::c_void); + pub fn InitShmemAllocation(); + pub fn ShmemAlloc(size: Size) -> *mut ::core::ffi::c_void; + pub fn ShmemAllocNoError(size: Size) -> *mut ::core::ffi::c_void; + pub fn ShmemAllocUnlocked(size: Size) -> *mut ::core::ffi::c_void; + pub fn ShmemAddrIsValid(addr: *const ::core::ffi::c_void) -> bool; + pub fn InitShmemIndex(); + pub fn ShmemInitHash( + name: *const ::core::ffi::c_char, + init_size: ::core::ffi::c_long, + max_size: ::core::ffi::c_long, + infoP: *mut HASHCTL, + hash_flags: ::core::ffi::c_int, + ) -> *mut HTAB; + pub fn ShmemInitStruct( + name: *const ::core::ffi::c_char, + size: Size, + foundPtr: *mut bool, + ) -> *mut ::core::ffi::c_void; + pub fn add_size(s1: Size, s2: Size) -> Size; + pub fn mul_size(s1: Size, s2: Size) -> Size; + pub fn RequestAddinShmemSpace(size: Size); + pub fn shm_toc_create( + magic: uint64, + address: *mut ::core::ffi::c_void, + nbytes: Size, + ) -> *mut shm_toc; + pub fn shm_toc_attach(magic: uint64, address: *mut ::core::ffi::c_void) -> *mut shm_toc; + pub fn shm_toc_allocate(toc: *mut shm_toc, nbytes: Size) -> *mut ::core::ffi::c_void; + pub fn shm_toc_freespace(toc: *mut shm_toc) -> Size; + pub fn shm_toc_insert(toc: *mut shm_toc, key: uint64, address: *mut ::core::ffi::c_void); + pub fn shm_toc_lookup( + toc: *mut shm_toc, + key: uint64, + noError: bool, + ) -> *mut ::core::ffi::c_void; + pub fn shm_toc_estimate(e: *mut shm_toc_estimator) -> Size; + pub fn heap_beginscan( + relation: Relation, + snapshot: Snapshot, + nkeys: ::core::ffi::c_int, + key: ScanKey, + parallel_scan: ParallelTableScanDesc, + flags: uint32, + ) -> TableScanDesc; + pub fn heap_setscanlimits(sscan: TableScanDesc, startBlk: BlockNumber, numBlks: BlockNumber); + pub fn heap_prepare_pagescan(sscan: TableScanDesc); + pub fn heap_rescan( + sscan: TableScanDesc, + key: ScanKey, + set_params: bool, + allow_strat: bool, + allow_sync: bool, + allow_pagemode: bool, + ); + pub fn heap_endscan(sscan: TableScanDesc); + pub fn heap_getnext(sscan: TableScanDesc, direction: ScanDirection::Type) -> HeapTuple; + pub fn heap_getnextslot( + sscan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn heap_set_tidrange(sscan: TableScanDesc, mintid: ItemPointer, maxtid: ItemPointer); + pub fn heap_getnextslot_tidrange( + sscan: TableScanDesc, + direction: ScanDirection::Type, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn heap_fetch( + relation: Relation, + snapshot: Snapshot, + tuple: HeapTuple, + userbuf: *mut Buffer, + keep_buf: bool, + ) -> bool; + pub fn heap_hot_search_buffer( + tid: ItemPointer, + relation: Relation, + buffer: Buffer, + snapshot: Snapshot, + heapTuple: HeapTuple, + all_dead: *mut bool, + first_call: bool, + ) -> bool; + pub fn heap_get_latest_tid(sscan: TableScanDesc, tid: ItemPointer); + pub fn GetBulkInsertState() -> BulkInsertState; + pub fn FreeBulkInsertState(arg1: BulkInsertState); + pub fn ReleaseBulkInsertStatePin(bistate: BulkInsertState); + pub fn heap_insert( + relation: Relation, + tup: HeapTuple, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: BulkInsertState, + ); + pub fn heap_multi_insert( + relation: Relation, + slots: *mut *mut TupleTableSlot, + ntuples: ::core::ffi::c_int, + cid: CommandId, + options: ::core::ffi::c_int, + bistate: BulkInsertState, + ); + pub fn heap_delete( + relation: Relation, + tid: ItemPointer, + cid: CommandId, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + changingPart: bool, + ) -> TM_Result::Type; + pub fn heap_finish_speculative(relation: Relation, tid: ItemPointer); + pub fn heap_abort_speculative(relation: Relation, tid: ItemPointer); + pub fn heap_update( + relation: Relation, + otid: ItemPointer, + newtup: HeapTuple, + cid: CommandId, + crosscheck: Snapshot, + wait: bool, + tmfd: *mut TM_FailureData, + lockmode: *mut LockTupleMode::Type, + update_indexes: *mut TU_UpdateIndexes::Type, + ) -> TM_Result::Type; + pub fn heap_lock_tuple( + relation: Relation, + tuple: HeapTuple, + cid: CommandId, + mode: LockTupleMode::Type, + wait_policy: LockWaitPolicy::Type, + follow_updates: bool, + buffer: *mut Buffer, + tmfd: *mut TM_FailureData, + ) -> TM_Result::Type; + pub fn heap_inplace_update(relation: Relation, tuple: HeapTuple); + pub fn heap_prepare_freeze_tuple( + tuple: HeapTupleHeader, + cutoffs: *const VacuumCutoffs, + pagefrz: *mut HeapPageFreeze, + frz: *mut HeapTupleFreeze, + totally_frozen: *mut bool, + ) -> bool; + pub fn heap_pre_freeze_checks( + buffer: Buffer, + tuples: *mut HeapTupleFreeze, + ntuples: ::core::ffi::c_int, + ); + pub fn heap_freeze_prepared_tuples( + buffer: Buffer, + tuples: *mut HeapTupleFreeze, + ntuples: ::core::ffi::c_int, + ); + pub fn heap_freeze_tuple( + tuple: HeapTupleHeader, + relfrozenxid: TransactionId, + relminmxid: TransactionId, + FreezeLimit: TransactionId, + MultiXactCutoff: TransactionId, + ) -> bool; + pub fn heap_tuple_should_freeze( + tuple: HeapTupleHeader, + cutoffs: *const VacuumCutoffs, + NoFreezePageRelfrozenXid: *mut TransactionId, + NoFreezePageRelminMxid: *mut MultiXactId, + ) -> bool; + pub fn heap_tuple_needs_eventual_freeze(tuple: HeapTupleHeader) -> bool; + pub fn simple_heap_insert(relation: Relation, tup: HeapTuple); + pub fn simple_heap_delete(relation: Relation, tid: ItemPointer); + pub fn simple_heap_update( + relation: Relation, + otid: ItemPointer, + tup: HeapTuple, + update_indexes: *mut TU_UpdateIndexes::Type, + ); + pub fn heap_index_delete_tuples( + rel: Relation, + delstate: *mut TM_IndexDeleteOp, + ) -> TransactionId; + pub fn heap_page_prune_opt(relation: Relation, buffer: Buffer); + pub fn heap_page_prune_and_freeze( + relation: Relation, + buffer: Buffer, + vistest: *mut GlobalVisState, + options: ::core::ffi::c_int, + cutoffs: *mut VacuumCutoffs, + presult: *mut PruneFreezeResult, + reason: PruneReason::Type, + off_loc: *mut OffsetNumber, + new_relfrozen_xid: *mut TransactionId, + new_relmin_mxid: *mut MultiXactId, + ); + pub fn heap_page_prune_execute( + buffer: Buffer, + lp_truncate_only: bool, + redirected: *mut OffsetNumber, + nredirected: ::core::ffi::c_int, + nowdead: *mut OffsetNumber, + ndead: ::core::ffi::c_int, + nowunused: *mut OffsetNumber, + nunused: ::core::ffi::c_int, + ); + pub fn heap_get_root_tuples(page: Page, root_offsets: *mut OffsetNumber); + pub fn log_heap_prune_and_freeze( + relation: Relation, + buffer: Buffer, + conflict_xid: TransactionId, + cleanup_lock: bool, + reason: PruneReason::Type, + frozen: *mut HeapTupleFreeze, + nfrozen: ::core::ffi::c_int, + redirected: *mut OffsetNumber, + nredirected: ::core::ffi::c_int, + dead: *mut OffsetNumber, + ndead: ::core::ffi::c_int, + unused: *mut OffsetNumber, + nunused: ::core::ffi::c_int, + ); + pub fn heap_vacuum_rel( + rel: Relation, + params: *mut VacuumParams, + bstrategy: BufferAccessStrategy, + ); + pub fn HeapTupleSatisfiesVisibility( + htup: HeapTuple, + snapshot: Snapshot, + buffer: Buffer, + ) -> bool; + pub fn HeapTupleSatisfiesUpdate( + htup: HeapTuple, + curcid: CommandId, + buffer: Buffer, + ) -> TM_Result::Type; + pub fn HeapTupleSatisfiesVacuum( + htup: HeapTuple, + OldestXmin: TransactionId, + buffer: Buffer, + ) -> HTSV_Result::Type; + pub fn HeapTupleSatisfiesVacuumHorizon( + htup: HeapTuple, + buffer: Buffer, + dead_after: *mut TransactionId, + ) -> HTSV_Result::Type; + pub fn HeapTupleSetHintBits( + tuple: HeapTupleHeader, + buffer: Buffer, + infomask: uint16, + xid: TransactionId, + ); + pub fn HeapTupleHeaderIsOnlyLocked(tuple: HeapTupleHeader) -> bool; + pub fn HeapTupleIsSurelyDead(htup: HeapTuple, vistest: *mut GlobalVisState) -> bool; + pub fn ResolveCminCmaxDuringDecoding( + tuplecid_data: *mut HTAB, + snapshot: Snapshot, + htup: HeapTuple, + buffer: Buffer, + cmin: *mut CommandId, + cmax: *mut CommandId, + ) -> bool; + pub fn HeapCheckForSerializableConflictOut( + visible: bool, + relation: Relation, + tuple: HeapTuple, + buffer: Buffer, + snapshot: Snapshot, + ); + pub fn InitSync(); + pub fn SyncPreCheckpoint(); + pub fn SyncPostCheckpoint(); + pub fn ProcessSyncRequests(); + pub fn RememberSyncRequest(ftag: *const FileTag, type_: SyncRequestType::Type); + pub fn RegisterSyncRequest( + ftag: *const FileTag, + type_: SyncRequestType::Type, + retryOnError: bool, + ) -> bool; + pub fn MultiXactIdCreate( + xid1: TransactionId, + status1: MultiXactStatus::Type, + xid2: TransactionId, + status2: MultiXactStatus::Type, + ) -> MultiXactId; + pub fn MultiXactIdExpand( + multi: MultiXactId, + xid: TransactionId, + status: MultiXactStatus::Type, + ) -> MultiXactId; + pub fn MultiXactIdCreateFromMembers( + nmembers: ::core::ffi::c_int, + members: *mut MultiXactMember, + ) -> MultiXactId; + pub fn ReadNextMultiXactId() -> MultiXactId; + pub fn ReadMultiXactIdRange(oldest: *mut MultiXactId, next: *mut MultiXactId); + pub fn MultiXactIdIsRunning(multi: MultiXactId, isLockOnly: bool) -> bool; + pub fn MultiXactIdSetOldestMember(); + pub fn GetMultiXactIdMembers( + multi: MultiXactId, + members: *mut *mut MultiXactMember, + from_pgupgrade: bool, + isLockOnly: bool, + ) -> ::core::ffi::c_int; + pub fn MultiXactIdPrecedes(multi1: MultiXactId, multi2: MultiXactId) -> bool; + pub fn MultiXactIdPrecedesOrEquals(multi1: MultiXactId, multi2: MultiXactId) -> bool; + pub fn multixactoffsetssyncfiletag( + ftag: *const FileTag, + path: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn multixactmemberssyncfiletag( + ftag: *const FileTag, + path: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn AtEOXact_MultiXact(); + pub fn AtPrepare_MultiXact(); + pub fn PostPrepare_MultiXact(xid: TransactionId); + pub fn MultiXactShmemSize() -> Size; + pub fn MultiXactShmemInit(); + pub fn BootStrapMultiXact(); + pub fn StartupMultiXact(); + pub fn TrimMultiXact(); + pub fn SetMultiXactIdLimit( + oldest_datminmxid: MultiXactId, + oldest_datoid: Oid, + is_startup: bool, + ); + pub fn MultiXactGetCheckptMulti( + is_shutdown: bool, + nextMulti: *mut MultiXactId, + nextMultiOffset: *mut MultiXactOffset, + oldestMulti: *mut MultiXactId, + oldestMultiDB: *mut Oid, + ); + pub fn CheckPointMultiXact(); + pub fn GetOldestMultiXactId() -> MultiXactId; + pub fn TruncateMultiXact(newOldestMulti: MultiXactId, newOldestMultiDB: Oid); + pub fn MultiXactSetNextMXact(nextMulti: MultiXactId, nextMultiOffset: MultiXactOffset); + pub fn MultiXactAdvanceNextMXact(minMulti: MultiXactId, minMultiOffset: MultiXactOffset); + pub fn MultiXactAdvanceOldest(oldestMulti: MultiXactId, oldestMultiDB: Oid); + pub fn MultiXactMemberFreezeThreshold() -> ::core::ffi::c_int; + pub fn multixact_twophase_recover( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn multixact_twophase_postcommit( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn multixact_twophase_postabort( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn multixact_redo(record: *mut XLogReaderState); + pub fn multixact_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn multixact_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn mxid_to_string( + multi: MultiXactId, + nmembers: ::core::ffi::c_int, + members: *mut MultiXactMember, + ) -> *mut ::core::ffi::c_char; + pub static mut MainLWLockArray: *mut LWLockPadded; + pub static mut NamedLWLockTrancheArray: *mut NamedLWLockTranche; + pub static mut NamedLWLockTrancheRequests: ::core::ffi::c_int; + pub fn LWLockAcquire(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockConditionalAcquire(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockAcquireOrWait(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockRelease(lock: *mut LWLock); + pub fn LWLockReleaseClearVar(lock: *mut LWLock, valptr: *mut pg_atomic_uint64, val: uint64); + pub fn LWLockReleaseAll(); + pub fn LWLockHeldByMe(lock: *mut LWLock) -> bool; + pub fn LWLockAnyHeldByMe(lock: *mut LWLock, nlocks: ::core::ffi::c_int, stride: usize) -> bool; + pub fn LWLockHeldByMeInMode(lock: *mut LWLock, mode: LWLockMode::Type) -> bool; + pub fn LWLockWaitForVar( + lock: *mut LWLock, + valptr: *mut pg_atomic_uint64, + oldval: uint64, + newval: *mut uint64, + ) -> bool; + pub fn LWLockUpdateVar(lock: *mut LWLock, valptr: *mut pg_atomic_uint64, val: uint64); + pub fn LWLockShmemSize() -> Size; + pub fn CreateLWLocks(); + pub fn InitLWLockAccess(); + pub fn GetLWLockIdentifier(classId: uint32, eventId: uint16) -> *const ::core::ffi::c_char; + pub fn RequestNamedLWLockTranche( + tranche_name: *const ::core::ffi::c_char, + num_lwlocks: ::core::ffi::c_int, + ); + pub fn GetNamedLWLockTranche(tranche_name: *const ::core::ffi::c_char) -> *mut LWLockPadded; + pub fn LWLockNewTrancheId() -> ::core::ffi::c_int; + pub fn LWLockRegisterTranche( + tranche_id: ::core::ffi::c_int, + tranche_name: *const ::core::ffi::c_char, + ); + pub fn LWLockInitialize(lock: *mut LWLock, tranche_id: ::core::ffi::c_int); + pub static mut PgStartTime: TimestampTz; + pub static mut PgReloadTime: TimestampTz; + pub fn anytimestamp_typmod_check(istz: bool, typmod: int32) -> int32; + pub fn GetCurrentTimestamp() -> TimestampTz; + pub fn GetSQLCurrentTimestamp(typmod: int32) -> TimestampTz; + pub fn GetSQLLocalTimestamp(typmod: int32) -> Timestamp; + pub fn TimestampDifference( + start_time: TimestampTz, + stop_time: TimestampTz, + secs: *mut ::core::ffi::c_long, + microsecs: *mut ::core::ffi::c_int, + ); + pub fn TimestampDifferenceMilliseconds( + start_time: TimestampTz, + stop_time: TimestampTz, + ) -> ::core::ffi::c_long; + pub fn TimestampDifferenceExceeds( + start_time: TimestampTz, + stop_time: TimestampTz, + msec: ::core::ffi::c_int, + ) -> bool; + pub fn time_t_to_timestamptz(tm: pg_time_t) -> TimestampTz; + pub fn timestamptz_to_time_t(t: TimestampTz) -> pg_time_t; + pub fn timestamptz_to_str(t: TimestampTz) -> *const ::core::ffi::c_char; + pub fn tm2timestamp( + tm: *mut pg_tm, + fsec: fsec_t, + tzp: *mut ::core::ffi::c_int, + result: *mut Timestamp, + ) -> ::core::ffi::c_int; + pub fn timestamp2tm( + dt: Timestamp, + tzp: *mut ::core::ffi::c_int, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzn: *mut *const ::core::ffi::c_char, + attimezone: *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn dt2time( + jd: Timestamp, + hour: *mut ::core::ffi::c_int, + min: *mut ::core::ffi::c_int, + sec: *mut ::core::ffi::c_int, + fsec: *mut fsec_t, + ); + pub fn interval2itm(span: Interval, itm: *mut pg_itm); + pub fn itm2interval(itm: *mut pg_itm, span: *mut Interval) -> ::core::ffi::c_int; + pub fn itmin2interval(itm_in: *mut pg_itm_in, span: *mut Interval) -> ::core::ffi::c_int; + pub fn SetEpochTimestamp() -> Timestamp; + pub fn GetEpochTime(tm: *mut pg_tm); + pub fn timestamp_cmp_internal(dt1: Timestamp, dt2: Timestamp) -> ::core::ffi::c_int; + pub fn timestamp2timestamptz_opt_overflow( + timestamp: Timestamp, + overflow: *mut ::core::ffi::c_int, + ) -> TimestampTz; + pub fn timestamp_cmp_timestamptz_internal(timestampVal: Timestamp, dt2: TimestampTz) -> int32; + pub fn isoweek2j(year: ::core::ffi::c_int, week: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn isoweek2date( + woy: ::core::ffi::c_int, + year: *mut ::core::ffi::c_int, + mon: *mut ::core::ffi::c_int, + mday: *mut ::core::ffi::c_int, + ); + pub fn isoweekdate2date( + isoweek: ::core::ffi::c_int, + wday: ::core::ffi::c_int, + year: *mut ::core::ffi::c_int, + mon: *mut ::core::ffi::c_int, + mday: *mut ::core::ffi::c_int, + ); + pub fn date2isoweek( + year: ::core::ffi::c_int, + mon: ::core::ffi::c_int, + mday: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn date2isoyear( + year: ::core::ffi::c_int, + mon: ::core::ffi::c_int, + mday: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn date2isoyearday( + year: ::core::ffi::c_int, + mon: ::core::ffi::c_int, + mday: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn TimestampTimestampTzRequiresRewrite() -> bool; + pub static mut max_locks_per_xact: ::core::ffi::c_int; + pub static LockTagTypeNames: [*const ::core::ffi::c_char; 0usize]; + pub fn InitLocks(); + pub fn GetLocksMethodTable(lock: *const LOCK) -> LockMethod; + pub fn GetLockTagsMethodTable(locktag: *const LOCKTAG) -> LockMethod; + pub fn LockTagHashCode(locktag: *const LOCKTAG) -> uint32; + pub fn DoLockModesConflict(mode1: LOCKMODE, mode2: LOCKMODE) -> bool; + pub fn LockAcquire( + locktag: *const LOCKTAG, + lockmode: LOCKMODE, + sessionLock: bool, + dontWait: bool, + ) -> LockAcquireResult::Type; + pub fn LockAcquireExtended( + locktag: *const LOCKTAG, + lockmode: LOCKMODE, + sessionLock: bool, + dontWait: bool, + reportMemoryError: bool, + locallockp: *mut *mut LOCALLOCK, + ) -> LockAcquireResult::Type; + pub fn AbortStrongLockAcquire(); + pub fn MarkLockClear(locallock: *mut LOCALLOCK); + pub fn LockRelease(locktag: *const LOCKTAG, lockmode: LOCKMODE, sessionLock: bool) -> bool; + pub fn LockReleaseAll(lockmethodid: LOCKMETHODID, allLocks: bool); + pub fn LockReleaseSession(lockmethodid: LOCKMETHODID); + pub fn LockReleaseCurrentOwner(locallocks: *mut *mut LOCALLOCK, nlocks: ::core::ffi::c_int); + pub fn LockReassignCurrentOwner(locallocks: *mut *mut LOCALLOCK, nlocks: ::core::ffi::c_int); + pub fn LockHeldByMe(locktag: *const LOCKTAG, lockmode: LOCKMODE, orstronger: bool) -> bool; + pub fn LockHasWaiters(locktag: *const LOCKTAG, lockmode: LOCKMODE, sessionLock: bool) -> bool; + pub fn GetLockConflicts( + locktag: *const LOCKTAG, + lockmode: LOCKMODE, + countp: *mut ::core::ffi::c_int, + ) -> *mut VirtualTransactionId; + pub fn AtPrepare_Locks(); + pub fn PostPrepare_Locks(xid: TransactionId); + pub fn LockCheckConflicts( + lockMethodTable: LockMethod, + lockmode: LOCKMODE, + lock: *mut LOCK, + proclock: *mut PROCLOCK, + ) -> bool; + pub fn GrantLock(lock: *mut LOCK, proclock: *mut PROCLOCK, lockmode: LOCKMODE); + pub fn GrantAwaitedLock(); + pub fn RemoveFromWaitQueue(proc_: *mut PGPROC, hashcode: uint32); + pub fn LockShmemSize() -> Size; + pub fn GetLockStatusData() -> *mut LockData; + pub fn GetBlockerStatusData(blocked_pid: ::core::ffi::c_int) -> *mut BlockedProcsData; + pub fn GetRunningTransactionLocks(nlocks: *mut ::core::ffi::c_int) -> *mut xl_standby_lock; + pub fn GetLockmodeName( + lockmethodid: LOCKMETHODID, + mode: LOCKMODE, + ) -> *const ::core::ffi::c_char; + pub fn lock_twophase_recover( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn lock_twophase_postcommit( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn lock_twophase_postabort( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn lock_twophase_standby_recover( + xid: TransactionId, + info: uint16, + recdata: *mut ::core::ffi::c_void, + len: uint32, + ); + pub fn DeadLockCheck(proc_: *mut PGPROC) -> DeadLockState::Type; + pub fn GetBlockingAutoVacuumPgproc() -> *mut PGPROC; + pub fn DeadLockReport() -> !; + pub fn RememberSimpleDeadLock( + proc1: *mut PGPROC, + lockmode: LOCKMODE, + lock: *mut LOCK, + proc2: *mut PGPROC, + ); + pub fn InitDeadLockChecking(); + pub fn LockWaiterCount(locktag: *const LOCKTAG) -> ::core::ffi::c_int; + pub fn VirtualXactLockTableInsert(vxid: VirtualTransactionId); + pub fn VirtualXactLockTableCleanup(); + pub fn VirtualXactLock(vxid: VirtualTransactionId, wait: bool) -> bool; + pub fn add_reloption_kind() -> relopt_kind::Type; + pub fn add_bool_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: bool, + lockmode: LOCKMODE, + ); + pub fn add_int_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: ::core::ffi::c_int, + min_val: ::core::ffi::c_int, + max_val: ::core::ffi::c_int, + lockmode: LOCKMODE, + ); + pub fn add_real_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: f64, + min_val: f64, + max_val: f64, + lockmode: LOCKMODE, + ); + pub fn add_enum_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + members: *mut relopt_enum_elt_def, + default_val: ::core::ffi::c_int, + detailmsg: *const ::core::ffi::c_char, + lockmode: LOCKMODE, + ); + pub fn add_string_reloption( + kinds: bits32, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: *const ::core::ffi::c_char, + validator: validate_string_relopt, + lockmode: LOCKMODE, + ); + pub fn init_local_reloptions(relopts: *mut local_relopts, relopt_struct_size: Size); + pub fn register_reloptions_validator(relopts: *mut local_relopts, validator: relopts_validator); + pub fn add_local_bool_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: bool, + offset: ::core::ffi::c_int, + ); + pub fn add_local_int_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: ::core::ffi::c_int, + min_val: ::core::ffi::c_int, + max_val: ::core::ffi::c_int, + offset: ::core::ffi::c_int, + ); + pub fn add_local_real_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: f64, + min_val: f64, + max_val: f64, + offset: ::core::ffi::c_int, + ); + pub fn add_local_enum_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + members: *mut relopt_enum_elt_def, + default_val: ::core::ffi::c_int, + detailmsg: *const ::core::ffi::c_char, + offset: ::core::ffi::c_int, + ); + pub fn add_local_string_reloption( + relopts: *mut local_relopts, + name: *const ::core::ffi::c_char, + desc: *const ::core::ffi::c_char, + default_val: *const ::core::ffi::c_char, + validator: validate_string_relopt, + filler: fill_string_relopt, + offset: ::core::ffi::c_int, + ); + pub fn transformRelOptions( + oldOptions: Datum, + defList: *mut List, + namspace: *const ::core::ffi::c_char, + validnsps: *mut *mut ::core::ffi::c_char, + acceptOidsOff: bool, + isReset: bool, + ) -> Datum; + pub fn untransformRelOptions(options: Datum) -> *mut List; + pub fn extractRelOptions( + tuple: HeapTuple, + tupdesc: TupleDesc, + amoptions: amoptions_function, + ) -> *mut bytea; + pub fn build_reloptions( + reloptions: Datum, + validate: bool, + kind: relopt_kind::Type, + relopt_struct_size: Size, + relopt_elems: *const relopt_parse_elt, + num_relopt_elems: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_void; + pub fn build_local_reloptions( + relopts: *mut local_relopts, + options: Datum, + validate: bool, + ) -> *mut ::core::ffi::c_void; + pub fn default_reloptions( + reloptions: Datum, + validate: bool, + kind: relopt_kind::Type, + ) -> *mut bytea; + pub fn heap_reloptions( + relkind: ::core::ffi::c_char, + reloptions: Datum, + validate: bool, + ) -> *mut bytea; + pub fn view_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn partitioned_table_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn index_reloptions( + amoptions: amoptions_function, + reloptions: Datum, + validate: bool, + ) -> *mut bytea; + pub fn attribute_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn tablespace_reloptions(reloptions: Datum, validate: bool) -> *mut bytea; + pub fn AlterTableGetRelOptionsLockLevel(defList: *mut List) -> LOCKMODE; + pub fn visibilitymap_clear( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: Buffer, + flags: uint8, + ) -> bool; + pub fn visibilitymap_pin(rel: Relation, heapBlk: BlockNumber, vmbuf: *mut Buffer); + pub fn visibilitymap_pin_ok(heapBlk: BlockNumber, vmbuf: Buffer) -> bool; + pub fn visibilitymap_set( + rel: Relation, + heapBlk: BlockNumber, + heapBuf: Buffer, + recptr: XLogRecPtr, + vmBuf: Buffer, + cutoff_xid: TransactionId, + flags: uint8, + ); + pub fn visibilitymap_get_status( + rel: Relation, + heapBlk: BlockNumber, + vmbuf: *mut Buffer, + ) -> uint8; + pub fn visibilitymap_count( + rel: Relation, + all_visible: *mut BlockNumber, + all_frozen: *mut BlockNumber, + ); + pub fn visibilitymap_prepare_truncate(rel: Relation, nheapblocks: BlockNumber) -> BlockNumber; + pub static mut RmgrTable: [RmgrData; 0usize]; + pub fn RmgrStartup(); + pub fn RmgrCleanup(); + pub fn RmgrNotFound(rmid: RmgrId); + pub fn RegisterCustomRmgr(rmid: RmgrId, rmgr: *const RmgrData); + pub fn GetLastSegSwitchData(lastSwitchLSN: *mut XLogRecPtr) -> pg_time_t; + pub fn RequestXLogSwitch(mark_unimportant: bool) -> XLogRecPtr; + pub fn GetOldestRestartPoint(oldrecptr: *mut XLogRecPtr, oldtli: *mut TimeLineID); + pub fn XLogRecGetBlockRefInfo( + record: *mut XLogReaderState, + pretty: bool, + detailed_format: bool, + buf: StringInfo, + fpi_len: *mut uint32, + ); + pub static mut ArchiveRecoveryRequested: bool; + pub static mut InArchiveRecovery: bool; + pub static mut StandbyMode: bool; + pub static mut recoveryRestoreCommand: *mut ::core::ffi::c_char; + pub static mut recoveryTargetInclusive: bool; + pub static mut recoveryTargetAction: ::core::ffi::c_int; + pub static mut recovery_min_apply_delay: ::core::ffi::c_int; + pub static mut PrimaryConnInfo: *mut ::core::ffi::c_char; + pub static mut PrimarySlotName: *mut ::core::ffi::c_char; + pub static mut recoveryEndCommand: *mut ::core::ffi::c_char; + pub static mut archiveCleanupCommand: *mut ::core::ffi::c_char; + pub static mut recoveryTargetXid: TransactionId; + pub static mut recovery_target_time_string: *mut ::core::ffi::c_char; + pub static mut recoveryTargetTime: TimestampTz; + pub static mut recoveryTargetName: *const ::core::ffi::c_char; + pub static mut recoveryTargetLSN: XLogRecPtr; + pub static mut recoveryTarget: RecoveryTargetType::Type; + pub static mut wal_receiver_create_temp_slot: bool; + pub static mut recoveryTargetTimeLineGoal: RecoveryTargetTimeLineGoal::Type; + pub static mut recoveryTargetTLIRequested: TimeLineID; + pub static mut recoveryTargetTLI: TimeLineID; + pub static mut reachedConsistency: bool; + pub fn XLogRecoveryShmemSize() -> Size; + pub fn XLogRecoveryShmemInit(); + pub fn InitWalRecovery( + ControlFile: *mut ControlFileData, + wasShutdown_ptr: *mut bool, + haveBackupLabel_ptr: *mut bool, + haveTblspcMap_ptr: *mut bool, + ); + pub fn PerformWalRecovery(); + pub fn FinishWalRecovery() -> *mut EndOfWalRecoveryInfo; + pub fn ShutdownWalRecovery(); + pub fn RemovePromoteSignalFiles(); + pub fn HotStandbyActive() -> bool; + pub fn GetXLogReplayRecPtr(replayTLI: *mut TimeLineID) -> XLogRecPtr; + pub fn GetRecoveryPauseState() -> RecoveryPauseState::Type; + pub fn SetRecoveryPause(recoveryPause: bool); + pub fn GetXLogReceiptTime(rtime: *mut TimestampTz, fromStream: *mut bool); + pub fn GetLatestXTime() -> TimestampTz; + pub fn GetCurrentChunkReplayStartTime() -> TimestampTz; + pub fn GetCurrentReplayRecPtr(replayEndTLI: *mut TimeLineID) -> XLogRecPtr; + pub fn PromoteIsTriggered() -> bool; + pub fn CheckPromoteSignal() -> bool; + pub fn WakeupRecovery(); + pub fn StartupRequestWalReceiverRestart(); + pub fn XLogRequestWalReceiverReply(); + pub fn RecoveryRequiresIntParameter( + param_name: *const ::core::ffi::c_char, + currValue: ::core::ffi::c_int, + minValue: ::core::ffi::c_int, + ); + pub fn xlog_outdesc(buf: StringInfo, record: *mut XLogReaderState); + pub static mut InRecovery: bool; + pub static mut standbyState: HotStandbyState::Type; + pub fn XLogHaveInvalidPages() -> bool; + pub fn XLogCheckInvalidPages(); + pub fn XLogDropRelation(rlocator: RelFileLocator, forknum: ForkNumber::Type); + pub fn XLogDropDatabase(dbid: Oid); + pub fn XLogTruncateRelation( + rlocator: RelFileLocator, + forkNum: ForkNumber::Type, + nblocks: BlockNumber, + ); + pub fn XLogReadBufferForRedo( + record: *mut XLogReaderState, + block_id: uint8, + buf: *mut Buffer, + ) -> XLogRedoAction::Type; + pub fn XLogInitBufferForRedo(record: *mut XLogReaderState, block_id: uint8) -> Buffer; + pub fn XLogReadBufferForRedoExtended( + record: *mut XLogReaderState, + block_id: uint8, + mode: ReadBufferMode::Type, + get_cleanup_lock: bool, + buf: *mut Buffer, + ) -> XLogRedoAction::Type; + pub fn XLogReadBufferExtended( + rlocator: RelFileLocator, + forknum: ForkNumber::Type, + blkno: BlockNumber, + mode: ReadBufferMode::Type, + recent_buffer: Buffer, + ) -> Buffer; + pub fn CreateFakeRelcacheEntry(rlocator: RelFileLocator) -> Relation; + pub fn FreeFakeRelcacheEntry(fakerel: Relation); + pub fn read_local_xlog_page( + state: *mut XLogReaderState, + targetPagePtr: XLogRecPtr, + reqLen: ::core::ffi::c_int, + targetRecPtr: XLogRecPtr, + cur_page: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn read_local_xlog_page_no_wait( + state: *mut XLogReaderState, + targetPagePtr: XLogRecPtr, + reqLen: ::core::ffi::c_int, + targetRecPtr: XLogRecPtr, + cur_page: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn wal_segment_open( + state: *mut XLogReaderState, + nextSegNo: XLogSegNo, + tli_p: *mut TimeLineID, + ); + pub fn wal_segment_close(state: *mut XLogReaderState); + pub fn XLogReadDetermineTimeline( + state: *mut XLogReaderState, + wantPage: XLogRecPtr, + wantLength: uint32, + currTLI: TimeLineID, + ); + pub fn WALReadRaiseError(errinfo: *mut WALReadError); + pub fn AcquireDeletionLock(object: *const ObjectAddress, flags: ::core::ffi::c_int); + pub fn ReleaseDeletionLock(object: *const ObjectAddress); + pub fn performDeletion( + object: *const ObjectAddress, + behavior: DropBehavior::Type, + flags: ::core::ffi::c_int, + ); + pub fn performMultipleDeletions( + objects: *const ObjectAddresses, + behavior: DropBehavior::Type, + flags: ::core::ffi::c_int, + ); + pub fn recordDependencyOnExpr( + depender: *const ObjectAddress, + expr: *mut Node, + rtable: *mut List, + behavior: DependencyType::Type, + ); + pub fn recordDependencyOnSingleRelExpr( + depender: *const ObjectAddress, + expr: *mut Node, + relId: Oid, + behavior: DependencyType::Type, + self_behavior: DependencyType::Type, + reverse_self: bool, + ); + pub fn new_object_addresses() -> *mut ObjectAddresses; + pub fn add_exact_object_address(object: *const ObjectAddress, addrs: *mut ObjectAddresses); + pub fn object_address_present( + object: *const ObjectAddress, + addrs: *const ObjectAddresses, + ) -> bool; + pub fn record_object_address_dependencies( + depender: *const ObjectAddress, + referenced: *mut ObjectAddresses, + behavior: DependencyType::Type, + ); + pub fn sort_object_addresses(addrs: *mut ObjectAddresses); + pub fn free_object_addresses(addrs: *mut ObjectAddresses); + pub fn recordDependencyOn( + depender: *const ObjectAddress, + referenced: *const ObjectAddress, + behavior: DependencyType::Type, + ); + pub fn recordMultipleDependencies( + depender: *const ObjectAddress, + referenced: *const ObjectAddress, + nreferenced: ::core::ffi::c_int, + behavior: DependencyType::Type, + ); + pub fn recordDependencyOnCurrentExtension(object: *const ObjectAddress, isReplace: bool); + pub fn checkMembershipInCurrentExtension(object: *const ObjectAddress); + pub fn deleteDependencyRecordsFor( + classId: Oid, + objectId: Oid, + skipExtensionDeps: bool, + ) -> ::core::ffi::c_long; + pub fn deleteDependencyRecordsForClass( + classId: Oid, + objectId: Oid, + refclassId: Oid, + deptype: ::core::ffi::c_char, + ) -> ::core::ffi::c_long; + pub fn deleteDependencyRecordsForSpecific( + classId: Oid, + objectId: Oid, + deptype: ::core::ffi::c_char, + refclassId: Oid, + refobjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn changeDependencyFor( + classId: Oid, + objectId: Oid, + refClassId: Oid, + oldRefObjectId: Oid, + newRefObjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn changeDependenciesOf( + classId: Oid, + oldObjectId: Oid, + newObjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn changeDependenciesOn( + refClassId: Oid, + oldRefObjectId: Oid, + newRefObjectId: Oid, + ) -> ::core::ffi::c_long; + pub fn getExtensionOfObject(classId: Oid, objectId: Oid) -> Oid; + pub fn getAutoExtensionsOfObject(classId: Oid, objectId: Oid) -> *mut List; + pub fn sequenceIsOwned( + seqId: Oid, + deptype: ::core::ffi::c_char, + tableId: *mut Oid, + colId: *mut int32, + ) -> bool; + pub fn getOwnedSequences(relid: Oid) -> *mut List; + pub fn getIdentitySequence(rel: Relation, attnum: AttrNumber, missing_ok: bool) -> Oid; + pub fn get_index_constraint(indexId: Oid) -> Oid; + pub fn get_index_ref_constraints(indexId: Oid) -> *mut List; + pub fn recordSharedDependencyOn( + depender: *mut ObjectAddress, + referenced: *mut ObjectAddress, + deptype: SharedDependencyType::Type, + ); + pub fn deleteSharedDependencyRecordsFor(classId: Oid, objectId: Oid, objectSubId: int32); + pub fn recordDependencyOnOwner(classId: Oid, objectId: Oid, owner: Oid); + pub fn changeDependencyOnOwner(classId: Oid, objectId: Oid, newOwnerId: Oid); + pub fn recordDependencyOnTablespace(classId: Oid, objectId: Oid, tablespace: Oid); + pub fn changeDependencyOnTablespace(classId: Oid, objectId: Oid, newTablespaceId: Oid); + pub fn updateAclDependencies( + classId: Oid, + objectId: Oid, + objsubId: int32, + ownerId: Oid, + noldmembers: ::core::ffi::c_int, + oldmembers: *mut Oid, + nnewmembers: ::core::ffi::c_int, + newmembers: *mut Oid, + ); + pub fn updateInitAclDependencies( + classId: Oid, + objectId: Oid, + objsubId: int32, + noldmembers: ::core::ffi::c_int, + oldmembers: *mut Oid, + nnewmembers: ::core::ffi::c_int, + newmembers: *mut Oid, + ); + pub fn checkSharedDependencies( + classId: Oid, + objectId: Oid, + detail_msg: *mut *mut ::core::ffi::c_char, + detail_log_msg: *mut *mut ::core::ffi::c_char, + ) -> bool; + pub fn shdepLockAndCheckObject(classId: Oid, objectId: Oid); + pub fn copyTemplateDependencies(templateDbId: Oid, newDbId: Oid); + pub fn dropDatabaseDependencies(databaseId: Oid); + pub fn shdepDropOwned(roleids: *mut List, behavior: DropBehavior::Type); + pub fn shdepReassignOwned(roleids: *mut List, newrole: Oid); + pub fn index_check_primary_key( + heapRel: Relation, + indexInfo: *const IndexInfo, + is_alter_table: bool, + stmt: *const IndexStmt, + ); + pub fn index_create( + heapRelation: Relation, + indexRelationName: *const ::core::ffi::c_char, + indexRelationId: Oid, + parentIndexRelid: Oid, + parentConstraintId: Oid, + relFileNumber: RelFileNumber, + indexInfo: *mut IndexInfo, + indexColNames: *const List, + accessMethodId: Oid, + tableSpaceId: Oid, + collationIds: *const Oid, + opclassIds: *const Oid, + opclassOptions: *const Datum, + coloptions: *const int16, + stattargets: *const NullableDatum, + reloptions: Datum, + flags: bits16, + constr_flags: bits16, + allow_system_table_mods: bool, + is_internal: bool, + constraintId: *mut Oid, + ) -> Oid; + pub fn index_concurrently_create_copy( + heapRelation: Relation, + oldIndexId: Oid, + tablespaceOid: Oid, + newName: *const ::core::ffi::c_char, + ) -> Oid; + pub fn index_concurrently_build(heapRelationId: Oid, indexRelationId: Oid); + pub fn index_concurrently_swap( + newIndexId: Oid, + oldIndexId: Oid, + oldName: *const ::core::ffi::c_char, + ); + pub fn index_concurrently_set_dead(heapId: Oid, indexId: Oid); + pub fn index_constraint_create( + heapRelation: Relation, + indexRelationId: Oid, + parentConstraintId: Oid, + indexInfo: *const IndexInfo, + constraintName: *const ::core::ffi::c_char, + constraintType: ::core::ffi::c_char, + constr_flags: bits16, + allow_system_table_mods: bool, + is_internal: bool, + ) -> ObjectAddress; + pub fn index_drop(indexId: Oid, concurrent: bool, concurrent_lock_mode: bool); + pub fn BuildIndexInfo(index: Relation) -> *mut IndexInfo; + pub fn BuildDummyIndexInfo(index: Relation) -> *mut IndexInfo; + pub fn CompareIndexInfo( + info1: *const IndexInfo, + info2: *const IndexInfo, + collations1: *const Oid, + collations2: *const Oid, + opfamilies1: *const Oid, + opfamilies2: *const Oid, + attmap: *const AttrMap, + ) -> bool; + pub fn BuildSpeculativeIndexInfo(index: Relation, ii: *mut IndexInfo); + pub fn FormIndexDatum( + indexInfo: *mut IndexInfo, + slot: *mut TupleTableSlot, + estate: *mut EState, + values: *mut Datum, + isnull: *mut bool, + ); + pub fn index_build( + heapRelation: Relation, + indexRelation: Relation, + indexInfo: *mut IndexInfo, + isreindex: bool, + parallel: bool, + ); + pub fn validate_index(heapId: Oid, indexId: Oid, snapshot: Snapshot); + pub fn index_set_state_flags(indexId: Oid, action: IndexStateFlagsAction::Type); + pub fn IndexGetRelation(indexId: Oid, missing_ok: bool) -> Oid; + pub fn reindex_index( + stmt: *const ReindexStmt, + indexId: Oid, + skip_constraint_checks: bool, + persistence: ::core::ffi::c_char, + params: *const ReindexParams, + ); + pub fn reindex_relation( + stmt: *const ReindexStmt, + relid: Oid, + flags: ::core::ffi::c_int, + params: *const ReindexParams, + ) -> bool; + pub fn ReindexIsProcessingHeap(heapOid: Oid) -> bool; + pub fn ReindexIsProcessingIndex(indexOid: Oid) -> bool; + pub fn ResetReindexState(nestLevel: ::core::ffi::c_int); + pub fn EstimateReindexStateSpace() -> Size; + pub fn SerializeReindexState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreReindexState(reindexstate: *const ::core::ffi::c_void); + pub fn IndexSetParentIndex(partitionIdx: Relation, parentOid: Oid); + pub fn CatalogOpenIndexes(heapRel: Relation) -> CatalogIndexState; + pub fn CatalogCloseIndexes(indstate: CatalogIndexState); + pub fn CatalogTupleInsert(heapRel: Relation, tup: HeapTuple); + pub fn CatalogTupleInsertWithInfo( + heapRel: Relation, + tup: HeapTuple, + indstate: CatalogIndexState, + ); + pub fn CatalogTuplesMultiInsertWithInfo( + heapRel: Relation, + slot: *mut *mut TupleTableSlot, + ntuples: ::core::ffi::c_int, + indstate: CatalogIndexState, + ); + pub fn CatalogTupleUpdate(heapRel: Relation, otid: ItemPointer, tup: HeapTuple); + pub fn CatalogTupleUpdateWithInfo( + heapRel: Relation, + otid: ItemPointer, + tup: HeapTuple, + indstate: CatalogIndexState, + ); + pub fn CatalogTupleDelete(heapRel: Relation, tid: ItemPointer); + pub fn RangeVarGetRelidExtended( + relation: *const RangeVar, + lockmode: LOCKMODE, + flags: uint32, + callback: RangeVarGetRelidCallback, + callback_arg: *mut ::core::ffi::c_void, + ) -> Oid; + pub fn RangeVarGetCreationNamespace(newRelation: *const RangeVar) -> Oid; + pub fn RangeVarGetAndCheckCreationNamespace( + relation: *mut RangeVar, + lockmode: LOCKMODE, + existing_relation_id: *mut Oid, + ) -> Oid; + pub fn RangeVarAdjustRelationPersistence(newRelation: *mut RangeVar, nspid: Oid); + pub fn RelnameGetRelid(relname: *const ::core::ffi::c_char) -> Oid; + pub fn RelationIsVisible(relid: Oid) -> bool; + pub fn TypenameGetTypid(typname: *const ::core::ffi::c_char) -> Oid; + pub fn TypenameGetTypidExtended(typname: *const ::core::ffi::c_char, temp_ok: bool) -> Oid; + pub fn TypeIsVisible(typid: Oid) -> bool; + pub fn FuncnameGetCandidates( + names: *mut List, + nargs: ::core::ffi::c_int, + argnames: *mut List, + expand_variadic: bool, + expand_defaults: bool, + include_out_arguments: bool, + missing_ok: bool, + ) -> FuncCandidateList; + pub fn FunctionIsVisible(funcid: Oid) -> bool; + pub fn OpernameGetOprid(names: *mut List, oprleft: Oid, oprright: Oid) -> Oid; + pub fn OpernameGetCandidates( + names: *mut List, + oprkind: ::core::ffi::c_char, + missing_schema_ok: bool, + ) -> FuncCandidateList; + pub fn OperatorIsVisible(oprid: Oid) -> bool; + pub fn OpclassnameGetOpcid(amid: Oid, opcname: *const ::core::ffi::c_char) -> Oid; + pub fn OpclassIsVisible(opcid: Oid) -> bool; + pub fn OpfamilynameGetOpfid(amid: Oid, opfname: *const ::core::ffi::c_char) -> Oid; + pub fn OpfamilyIsVisible(opfid: Oid) -> bool; + pub fn CollationGetCollid(collname: *const ::core::ffi::c_char) -> Oid; + pub fn CollationIsVisible(collid: Oid) -> bool; + pub fn ConversionGetConid(conname: *const ::core::ffi::c_char) -> Oid; + pub fn ConversionIsVisible(conid: Oid) -> bool; + pub fn get_statistics_object_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn StatisticsObjIsVisible(stxid: Oid) -> bool; + pub fn get_ts_parser_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSParserIsVisible(prsId: Oid) -> bool; + pub fn get_ts_dict_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSDictionaryIsVisible(dictId: Oid) -> bool; + pub fn get_ts_template_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSTemplateIsVisible(tmplId: Oid) -> bool; + pub fn get_ts_config_oid(names: *mut List, missing_ok: bool) -> Oid; + pub fn TSConfigIsVisible(cfgid: Oid) -> bool; + pub fn DeconstructQualifiedName( + names: *const List, + nspname_p: *mut *mut ::core::ffi::c_char, + objname_p: *mut *mut ::core::ffi::c_char, + ); + pub fn LookupNamespaceNoError(nspname: *const ::core::ffi::c_char) -> Oid; + pub fn LookupExplicitNamespace(nspname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_namespace_oid(nspname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn LookupCreationNamespace(nspname: *const ::core::ffi::c_char) -> Oid; + pub fn CheckSetNamespace(oldNspOid: Oid, nspOid: Oid); + pub fn QualifiedNameGetCreationNamespace( + names: *const List, + objname_p: *mut *mut ::core::ffi::c_char, + ) -> Oid; + pub fn makeRangeVarFromNameList(names: *const List) -> *mut RangeVar; + pub fn NameListToString(names: *const List) -> *mut ::core::ffi::c_char; + pub fn NameListToQuotedString(names: *const List) -> *mut ::core::ffi::c_char; + pub fn isTempNamespace(namespaceId: Oid) -> bool; + pub fn isTempToastNamespace(namespaceId: Oid) -> bool; + pub fn isTempOrTempToastNamespace(namespaceId: Oid) -> bool; + pub fn isAnyTempNamespace(namespaceId: Oid) -> bool; + pub fn isOtherTempNamespace(namespaceId: Oid) -> bool; + pub fn checkTempNamespaceStatus(namespaceId: Oid) -> TempNamespaceStatus::Type; + pub fn GetTempNamespaceProcNumber(namespaceId: Oid) -> ProcNumber; + pub fn GetTempToastNamespace() -> Oid; + pub fn GetTempNamespaceState(tempNamespaceId: *mut Oid, tempToastNamespaceId: *mut Oid); + pub fn SetTempNamespaceState(tempNamespaceId: Oid, tempToastNamespaceId: Oid); + pub fn ResetTempTableNamespace(); + pub fn GetSearchPathMatcher(context: MemoryContext) -> *mut SearchPathMatcher; + pub fn CopySearchPathMatcher(path: *mut SearchPathMatcher) -> *mut SearchPathMatcher; + pub fn SearchPathMatchesCurrentEnvironment(path: *mut SearchPathMatcher) -> bool; + pub fn get_collation_oid(collname: *mut List, missing_ok: bool) -> Oid; + pub fn get_conversion_oid(conname: *mut List, missing_ok: bool) -> Oid; + pub fn FindDefaultConversionProc(for_encoding: int32, to_encoding: int32) -> Oid; + pub fn InitializeSearchPath(); + pub fn AtEOXact_Namespace(isCommit: bool, parallel: bool); + pub fn AtEOSubXact_Namespace( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub static mut namespace_search_path: *mut ::core::ffi::c_char; + pub fn fetch_search_path(includeImplicit: bool) -> *mut List; + pub fn fetch_search_path_array( + sarray: *mut Oid, + sarray_len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub static mut object_access_hook: object_access_hook_type; + pub static mut object_access_hook_str: object_access_hook_type_str; + pub fn RunObjectPostCreateHook( + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + is_internal: bool, + ); + pub fn RunObjectDropHook( + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + dropflags: ::core::ffi::c_int, + ); + pub fn RunObjectTruncateHook(objectId: Oid); + pub fn RunObjectPostAlterHook( + classId: Oid, + objectId: Oid, + subId: ::core::ffi::c_int, + auxiliaryId: Oid, + is_internal: bool, + ); + pub fn RunNamespaceSearchHook(objectId: Oid, ereport_on_violation: bool) -> bool; + pub fn RunFunctionExecuteHook(objectId: Oid); + pub fn RunObjectPostCreateHookStr( + classId: Oid, + objectName: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + is_internal: bool, + ); + pub fn RunObjectDropHookStr( + classId: Oid, + objectName: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + dropflags: ::core::ffi::c_int, + ); + pub fn RunObjectTruncateHookStr(objectName: *const ::core::ffi::c_char); + pub fn RunObjectPostAlterHookStr( + classId: Oid, + objectName: *const ::core::ffi::c_char, + subId: ::core::ffi::c_int, + auxiliaryId: Oid, + is_internal: bool, + ); + pub fn RunNamespaceSearchHookStr( + objectName: *const ::core::ffi::c_char, + ereport_on_violation: bool, + ) -> bool; + pub fn RunFunctionExecuteHookStr(objectName: *const ::core::ffi::c_char); + pub fn CollationCreate( + collname: *const ::core::ffi::c_char, + collnamespace: Oid, + collowner: Oid, + collprovider: ::core::ffi::c_char, + collisdeterministic: bool, + collencoding: int32, + collcollate: *const ::core::ffi::c_char, + collctype: *const ::core::ffi::c_char, + colllocale: *const ::core::ffi::c_char, + collicurules: *const ::core::ffi::c_char, + collversion: *const ::core::ffi::c_char, + if_not_exists: bool, + quiet: bool, + ) -> Oid; + pub fn database_is_invalid_form(datform: Form_pg_database) -> bool; + pub fn database_is_invalid_oid(dboid: Oid) -> bool; + pub fn EnumValuesCreate(enumTypeOid: Oid, vals: *mut List); + pub fn EnumValuesDelete(enumTypeOid: Oid); + pub fn AddEnumLabel( + enumTypeOid: Oid, + newVal: *const ::core::ffi::c_char, + neighbor: *const ::core::ffi::c_char, + newValIsAfter: bool, + skipIfExists: bool, + ); + pub fn RenameEnumLabel( + enumTypeOid: Oid, + oldVal: *const ::core::ffi::c_char, + newVal: *const ::core::ffi::c_char, + ); + pub fn EnumUncommitted(enum_id: Oid) -> bool; + pub fn EstimateUncommittedEnumsSpace() -> Size; + pub fn SerializeUncommittedEnums(space: *mut ::core::ffi::c_void, size: Size); + pub fn RestoreUncommittedEnums(space: *mut ::core::ffi::c_void); + pub fn AtEOXact_Enum(); + pub fn OperatorLookup( + operatorName: *mut List, + leftObjectId: Oid, + rightObjectId: Oid, + defined: *mut bool, + ) -> Oid; + pub fn OperatorCreate( + operatorName: *const ::core::ffi::c_char, + operatorNamespace: Oid, + leftTypeId: Oid, + rightTypeId: Oid, + procedureId: Oid, + commutatorName: *mut List, + negatorName: *mut List, + restrictionId: Oid, + joinId: Oid, + canMerge: bool, + canHash: bool, + ) -> ObjectAddress; + pub fn makeOperatorDependencies( + tuple: HeapTuple, + makeExtensionDep: bool, + isUpdate: bool, + ) -> ObjectAddress; + pub fn OperatorValidateParams( + leftTypeId: Oid, + rightTypeId: Oid, + operResultType: Oid, + hasCommutator: bool, + hasNegator: bool, + hasRestrictionSelectivity: bool, + hasJoinSelectivity: bool, + canMerge: bool, + canHash: bool, + ); + pub fn OperatorUpd(baseId: Oid, commId: Oid, negId: Oid, isDelete: bool); + pub fn ProcedureCreate( + procedureName: *const ::core::ffi::c_char, + procNamespace: Oid, + replace: bool, + returnsSet: bool, + returnType: Oid, + proowner: Oid, + languageObjectId: Oid, + languageValidator: Oid, + prosrc: *const ::core::ffi::c_char, + probin: *const ::core::ffi::c_char, + prosqlbody: *mut Node, + prokind: ::core::ffi::c_char, + security_definer: bool, + isLeakProof: bool, + isStrict: bool, + volatility: ::core::ffi::c_char, + parallel: ::core::ffi::c_char, + parameterTypes: *mut oidvector, + allParameterTypes: Datum, + parameterModes: Datum, + parameterNames: Datum, + parameterDefaults: *mut List, + trftypes: Datum, + proconfig: Datum, + prosupport: Oid, + procost: float4, + prorows: float4, + ) -> ObjectAddress; + pub fn function_parse_error_transpose(prosrc: *const ::core::ffi::c_char) -> bool; + pub fn oid_array_to_list(datum: Datum) -> *mut List; + pub fn make_parsestate(parentParseState: *mut ParseState) -> *mut ParseState; + pub fn free_parsestate(pstate: *mut ParseState); + pub fn parser_errposition( + pstate: *mut ParseState, + location: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn setup_parser_errposition_callback( + pcbstate: *mut ParseCallbackState, + pstate: *mut ParseState, + location: ::core::ffi::c_int, + ); + pub fn cancel_parser_errposition_callback(pcbstate: *mut ParseCallbackState); + pub fn transformContainerType(containerType: *mut Oid, containerTypmod: *mut int32); + pub fn transformContainerSubscripts( + pstate: *mut ParseState, + containerBase: *mut Node, + containerType: Oid, + containerTypMod: int32, + indirection: *mut List, + isAssignment: bool, + ) -> *mut SubscriptingRef; + pub fn make_const(pstate: *mut ParseState, aconst: *mut A_Const) -> *mut Const; + pub fn acldefault(objtype: ObjectType::Type, ownerId: Oid) -> *mut Acl; + pub fn get_user_default_acl(objtype: ObjectType::Type, ownerId: Oid, nsp_oid: Oid) -> *mut Acl; + pub fn recordDependencyOnNewAcl( + classId: Oid, + objectId: Oid, + objsubId: int32, + ownerId: Oid, + acl: *mut Acl, + ); + pub fn aclupdate( + old_acl: *const Acl, + mod_aip: *const AclItem, + modechg: ::core::ffi::c_int, + ownerId: Oid, + behavior: DropBehavior::Type, + ) -> *mut Acl; + pub fn aclnewowner(old_acl: *const Acl, oldOwnerId: Oid, newOwnerId: Oid) -> *mut Acl; + pub fn make_empty_acl() -> *mut Acl; + pub fn aclcopy(orig_acl: *const Acl) -> *mut Acl; + pub fn aclconcat(left_acl: *const Acl, right_acl: *const Acl) -> *mut Acl; + pub fn aclmerge(left_acl: *const Acl, right_acl: *const Acl, ownerId: Oid) -> *mut Acl; + pub fn aclitemsort(acl: *mut Acl); + pub fn aclequal(left_acl: *const Acl, right_acl: *const Acl) -> bool; + pub fn aclmask( + acl: *const Acl, + roleid: Oid, + ownerId: Oid, + mask: AclMode, + how: AclMaskHow::Type, + ) -> AclMode; + pub fn aclmembers(acl: *const Acl, roleids: *mut *mut Oid) -> ::core::ffi::c_int; + pub fn has_privs_of_role(member: Oid, role: Oid) -> bool; + pub fn member_can_set_role(member: Oid, role: Oid) -> bool; + pub fn check_can_set_role(member: Oid, role: Oid); + pub fn is_member_of_role(member: Oid, role: Oid) -> bool; + pub fn is_member_of_role_nosuper(member: Oid, role: Oid) -> bool; + pub fn is_admin_of_role(member: Oid, role: Oid) -> bool; + pub fn select_best_admin(member: Oid, role: Oid) -> Oid; + pub fn get_role_oid(rolname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_role_oid_or_public(rolname: *const ::core::ffi::c_char) -> Oid; + pub fn get_rolespec_oid(role: *const RoleSpec, missing_ok: bool) -> Oid; + pub fn check_rolespec_name(role: *const RoleSpec, detail_msg: *const ::core::ffi::c_char); + pub fn get_rolespec_tuple(role: *const RoleSpec) -> HeapTuple; + pub fn get_rolespec_name(role: *const RoleSpec) -> *mut ::core::ffi::c_char; + pub fn select_best_grantor( + roleId: Oid, + privileges: AclMode, + acl: *const Acl, + ownerId: Oid, + grantorId: *mut Oid, + grantOptions: *mut AclMode, + ); + pub fn initialize_acl(); + pub fn ExecuteGrantStmt(stmt: *mut GrantStmt); + pub fn ExecAlterDefaultPrivilegesStmt( + pstate: *mut ParseState, + stmt: *mut AlterDefaultPrivilegesStmt, + ); + pub fn RemoveRoleFromObjectACL(roleid: Oid, classid: Oid, objid: Oid); + pub fn pg_class_aclmask( + table_oid: Oid, + roleid: Oid, + mask: AclMode, + how: AclMaskHow::Type, + ) -> AclMode; + pub fn object_aclcheck( + classid: Oid, + objectid: Oid, + roleid: Oid, + mode: AclMode, + ) -> AclResult::Type; + pub fn object_aclcheck_ext( + classid: Oid, + objectid: Oid, + roleid: Oid, + mode: AclMode, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck( + table_oid: Oid, + attnum: AttrNumber, + roleid: Oid, + mode: AclMode, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck_ext( + table_oid: Oid, + attnum: AttrNumber, + roleid: Oid, + mode: AclMode, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck_all( + table_oid: Oid, + roleid: Oid, + mode: AclMode, + how: AclMaskHow::Type, + ) -> AclResult::Type; + pub fn pg_attribute_aclcheck_all_ext( + table_oid: Oid, + roleid: Oid, + mode: AclMode, + how: AclMaskHow::Type, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_class_aclcheck(table_oid: Oid, roleid: Oid, mode: AclMode) -> AclResult::Type; + pub fn pg_class_aclcheck_ext( + table_oid: Oid, + roleid: Oid, + mode: AclMode, + is_missing: *mut bool, + ) -> AclResult::Type; + pub fn pg_parameter_aclcheck( + name: *const ::core::ffi::c_char, + roleid: Oid, + mode: AclMode, + ) -> AclResult::Type; + pub fn pg_largeobject_aclcheck_snapshot( + lobj_oid: Oid, + roleid: Oid, + mode: AclMode, + snapshot: Snapshot, + ) -> AclResult::Type; + pub fn aclcheck_error( + aclerr: AclResult::Type, + objtype: ObjectType::Type, + objectname: *const ::core::ffi::c_char, + ); + pub fn aclcheck_error_col( + aclerr: AclResult::Type, + objtype: ObjectType::Type, + objectname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + ); + pub fn aclcheck_error_type(aclerr: AclResult::Type, typeOid: Oid); + pub fn recordExtObjInitPriv(objoid: Oid, classoid: Oid); + pub fn removeExtObjInitPriv(objoid: Oid, classoid: Oid); + pub fn ReplaceRoleInInitPriv( + oldroleid: Oid, + newroleid: Oid, + classid: Oid, + objid: Oid, + objsubid: int32, + ); + pub fn RemoveRoleFromInitPriv(roleid: Oid, classid: Oid, objid: Oid, objsubid: int32); + pub fn object_ownercheck(classid: Oid, objectid: Oid, roleid: Oid) -> bool; + pub fn has_createrole_privilege(roleid: Oid) -> bool; + pub fn has_bypassrls_privilege(roleid: Oid) -> bool; + pub fn NamespaceCreate(nspName: *const ::core::ffi::c_char, ownerId: Oid, isTemp: bool) -> Oid; + pub fn TypeShellMake( + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ownerId: Oid, + ) -> ObjectAddress; + pub fn TypeCreate( + newTypeOid: Oid, + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + relationOid: Oid, + relationKind: ::core::ffi::c_char, + ownerId: Oid, + internalSize: int16, + typeType: ::core::ffi::c_char, + typeCategory: ::core::ffi::c_char, + typePreferred: bool, + typDelim: ::core::ffi::c_char, + inputProcedure: Oid, + outputProcedure: Oid, + receiveProcedure: Oid, + sendProcedure: Oid, + typmodinProcedure: Oid, + typmodoutProcedure: Oid, + analyzeProcedure: Oid, + subscriptProcedure: Oid, + elementType: Oid, + isImplicitArray: bool, + arrayType: Oid, + baseType: Oid, + defaultTypeValue: *const ::core::ffi::c_char, + defaultTypeBin: *mut ::core::ffi::c_char, + passedByValue: bool, + alignment: ::core::ffi::c_char, + storage: ::core::ffi::c_char, + typeMod: int32, + typNDims: int32, + typeNotNull: bool, + typeCollation: Oid, + ) -> ObjectAddress; + pub fn GenerateTypeDependencies( + typeTuple: HeapTuple, + typeCatalog: Relation, + defaultExpr: *mut Node, + typacl: *mut ::core::ffi::c_void, + relationKind: ::core::ffi::c_char, + isImplicitArray: bool, + isDependentType: bool, + makeExtensionDep: bool, + rebuild: bool, + ); + pub fn RenameTypeInternal( + typeOid: Oid, + newTypeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ); + pub fn makeArrayTypeName( + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ) -> *mut ::core::ffi::c_char; + pub fn moveArrayTypeName( + typeOid: Oid, + typeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ) -> bool; + pub fn makeMultirangeTypeName( + rangeTypeName: *const ::core::ffi::c_char, + typeNamespace: Oid, + ) -> *mut ::core::ffi::c_char; + pub static mut wal_skip_threshold: ::core::ffi::c_int; + pub fn RelationCreateStorage( + rlocator: RelFileLocator, + relpersistence: ::core::ffi::c_char, + register_delete: bool, + ) -> SMgrRelation; + pub fn RelationDropStorage(rel: Relation); + pub fn RelationPreserveStorage(rlocator: RelFileLocator, atCommit: bool); + pub fn RelationPreTruncate(rel: Relation); + pub fn RelationTruncate(rel: Relation, nblocks: BlockNumber); + pub fn RelationCopyStorage( + src: SMgrRelation, + dst: SMgrRelation, + forkNum: ForkNumber::Type, + relpersistence: ::core::ffi::c_char, + ); + pub fn RelFileLocatorSkippingWAL(rlocator: RelFileLocator) -> bool; + pub fn EstimatePendingSyncsSpace() -> Size; + pub fn SerializePendingSyncs(maxSize: Size, startAddress: *mut ::core::ffi::c_char); + pub fn RestorePendingSyncs(startAddress: *mut ::core::ffi::c_char); + pub fn smgrDoPendingDeletes(isCommit: bool); + pub fn smgrDoPendingSyncs(isCommit: bool, isParallelWorker: bool); + pub fn smgrGetPendingDeletes( + forCommit: bool, + ptr: *mut *mut RelFileLocator, + ) -> ::core::ffi::c_int; + pub fn AtSubCommit_smgr(); + pub fn AtSubAbort_smgr(); + pub fn PostPrepare_smgr(); + pub fn CommentObject(stmt: *mut CommentStmt) -> ObjectAddress; + pub fn DeleteComments(oid: Oid, classoid: Oid, subid: int32); + pub fn CreateComments( + oid: Oid, + classoid: Oid, + subid: int32, + comment: *const ::core::ffi::c_char, + ); + pub fn DeleteSharedComments(oid: Oid, classoid: Oid); + pub fn CreateSharedComments(oid: Oid, classoid: Oid, comment: *const ::core::ffi::c_char); + pub fn GetComment(oid: Oid, classoid: Oid, subid: int32) -> *mut ::core::ffi::c_char; + pub fn DoCopy( + pstate: *mut ParseState, + stmt: *const CopyStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + processed: *mut uint64, + ); + pub fn ProcessCopyOptions( + pstate: *mut ParseState, + opts_out: *mut CopyFormatOptions, + is_from: bool, + options: *mut List, + ); + pub fn BeginCopyFrom( + pstate: *mut ParseState, + rel: Relation, + whereClause: *mut Node, + filename: *const ::core::ffi::c_char, + is_program: bool, + data_source_cb: copy_data_source_cb, + attnamelist: *mut List, + options: *mut List, + ) -> CopyFromState; + pub fn EndCopyFrom(cstate: CopyFromState); + pub fn NextCopyFrom( + cstate: CopyFromState, + econtext: *mut ExprContext, + values: *mut Datum, + nulls: *mut bool, + ) -> bool; + pub fn NextCopyFromRawFields( + cstate: CopyFromState, + fields: *mut *mut *mut ::core::ffi::c_char, + nfields: *mut ::core::ffi::c_int, + ) -> bool; + pub fn CopyFromErrorCallback(arg: *mut ::core::ffi::c_void); + pub fn CopyLimitPrintoutLength(str_: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn CopyFrom(cstate: CopyFromState) -> uint64; + pub fn CreateCopyDestReceiver() -> *mut DestReceiver; + pub fn BeginCopyTo( + pstate: *mut ParseState, + rel: Relation, + raw_query: *mut RawStmt, + queryRelId: Oid, + filename: *const ::core::ffi::c_char, + is_program: bool, + data_dest_cb: copy_data_dest_cb, + attnamelist: *mut List, + options: *mut List, + ) -> CopyToState; + pub fn EndCopyTo(cstate: CopyToState); + pub fn DoCopyTo(cstate: CopyToState) -> uint64; + pub fn CopyGetAttnums(tupDesc: TupleDesc, rel: Relation, attnamelist: *mut List) -> *mut List; + pub fn createdb(pstate: *mut ParseState, stmt: *const CreatedbStmt) -> Oid; + pub fn dropdb(dbname: *const ::core::ffi::c_char, missing_ok: bool, force: bool); + pub fn DropDatabase(pstate: *mut ParseState, stmt: *mut DropdbStmt); + pub fn RenameDatabase( + oldname: *const ::core::ffi::c_char, + newname: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn AlterDatabase( + pstate: *mut ParseState, + stmt: *mut AlterDatabaseStmt, + isTopLevel: bool, + ) -> Oid; + pub fn AlterDatabaseRefreshColl(stmt: *mut AlterDatabaseRefreshCollStmt) -> ObjectAddress; + pub fn AlterDatabaseSet(stmt: *mut AlterDatabaseSetStmt) -> Oid; + pub fn AlterDatabaseOwner(dbname: *const ::core::ffi::c_char, newOwnerId: Oid) + -> ObjectAddress; + pub fn get_database_oid(dbname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_database_name(dbid: Oid) -> *mut ::core::ffi::c_char; + pub fn have_createdb_privilege() -> bool; + pub fn check_encoding_locale_matches( + encoding: ::core::ffi::c_int, + collate: *const ::core::ffi::c_char, + ctype: *const ::core::ffi::c_char, + ); + pub fn DatumGetEOHP(d: Datum) -> *mut ExpandedObjectHeader; + pub fn EOH_init_header( + eohptr: *mut ExpandedObjectHeader, + methods: *const ExpandedObjectMethods, + obj_context: MemoryContext, + ); + pub fn EOH_get_flat_size(eohptr: *mut ExpandedObjectHeader) -> Size; + pub fn EOH_flatten_into( + eohptr: *mut ExpandedObjectHeader, + result: *mut ::core::ffi::c_void, + allocated_size: Size, + ); + pub fn MakeExpandedObjectReadOnlyInternal(d: Datum) -> Datum; + pub fn TransferExpandedObject(d: Datum, new_parent: MemoryContext) -> Datum; + pub fn DeleteExpandedObject(d: Datum); + pub static mut Array_nulls: bool; + pub fn CopyArrayEls( + array: *mut ArrayType, + values: *mut Datum, + nulls: *mut bool, + nitems: ::core::ffi::c_int, + typlen: ::core::ffi::c_int, + typbyval: bool, + typalign: ::core::ffi::c_char, + freedata: bool, + ); + pub fn array_get_element( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + isNull: *mut bool, + ) -> Datum; + pub fn array_set_element( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + dataValue: Datum, + isNull: bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> Datum; + pub fn array_get_slice( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + upperIndx: *mut ::core::ffi::c_int, + lowerIndx: *mut ::core::ffi::c_int, + upperProvided: *mut bool, + lowerProvided: *mut bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> Datum; + pub fn array_set_slice( + arraydatum: Datum, + nSubscripts: ::core::ffi::c_int, + upperIndx: *mut ::core::ffi::c_int, + lowerIndx: *mut ::core::ffi::c_int, + upperProvided: *mut bool, + lowerProvided: *mut bool, + srcArrayDatum: Datum, + isNull: bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> Datum; + pub fn array_ref( + array: *mut ArrayType, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + isNull: *mut bool, + ) -> Datum; + pub fn array_set( + array: *mut ArrayType, + nSubscripts: ::core::ffi::c_int, + indx: *mut ::core::ffi::c_int, + dataValue: Datum, + isNull: bool, + arraytyplen: ::core::ffi::c_int, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn array_map( + arrayd: Datum, + exprstate: *mut ExprState, + econtext: *mut ExprContext, + retType: Oid, + amstate: *mut ArrayMapState, + ) -> Datum; + pub fn array_bitmap_copy( + destbitmap: *mut bits8, + destoffset: ::core::ffi::c_int, + srcbitmap: *const bits8, + srcoffset: ::core::ffi::c_int, + nitems: ::core::ffi::c_int, + ); + pub fn construct_array( + elems: *mut Datum, + nelems: ::core::ffi::c_int, + elmtype: Oid, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn construct_array_builtin( + elems: *mut Datum, + nelems: ::core::ffi::c_int, + elmtype: Oid, + ) -> *mut ArrayType; + pub fn construct_md_array( + elems: *mut Datum, + nulls: *mut bool, + ndims: ::core::ffi::c_int, + dims: *mut ::core::ffi::c_int, + lbs: *mut ::core::ffi::c_int, + elmtype: Oid, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn construct_empty_array(elmtype: Oid) -> *mut ArrayType; + pub fn construct_empty_expanded_array( + element_type: Oid, + parentcontext: MemoryContext, + metacache: *mut ArrayMetaState, + ) -> *mut ExpandedArrayHeader; + pub fn deconstruct_array( + array: *mut ArrayType, + elmtype: Oid, + elmlen: ::core::ffi::c_int, + elmbyval: bool, + elmalign: ::core::ffi::c_char, + elemsp: *mut *mut Datum, + nullsp: *mut *mut bool, + nelemsp: *mut ::core::ffi::c_int, + ); + pub fn deconstruct_array_builtin( + array: *mut ArrayType, + elmtype: Oid, + elemsp: *mut *mut Datum, + nullsp: *mut *mut bool, + nelemsp: *mut ::core::ffi::c_int, + ); + pub fn array_contains_nulls(array: *mut ArrayType) -> bool; + pub fn initArrayResult( + element_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + ) -> *mut ArrayBuildState; + pub fn initArrayResultWithSize( + element_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + initsize: ::core::ffi::c_int, + ) -> *mut ArrayBuildState; + pub fn accumArrayResult( + astate: *mut ArrayBuildState, + dvalue: Datum, + disnull: bool, + element_type: Oid, + rcontext: MemoryContext, + ) -> *mut ArrayBuildState; + pub fn makeArrayResult(astate: *mut ArrayBuildState, rcontext: MemoryContext) -> Datum; + pub fn makeMdArrayResult( + astate: *mut ArrayBuildState, + ndims: ::core::ffi::c_int, + dims: *mut ::core::ffi::c_int, + lbs: *mut ::core::ffi::c_int, + rcontext: MemoryContext, + release: bool, + ) -> Datum; + pub fn initArrayResultArr( + array_type: Oid, + element_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + ) -> *mut ArrayBuildStateArr; + pub fn accumArrayResultArr( + astate: *mut ArrayBuildStateArr, + dvalue: Datum, + disnull: bool, + array_type: Oid, + rcontext: MemoryContext, + ) -> *mut ArrayBuildStateArr; + pub fn makeArrayResultArr( + astate: *mut ArrayBuildStateArr, + rcontext: MemoryContext, + release: bool, + ) -> Datum; + pub fn initArrayResultAny( + input_type: Oid, + rcontext: MemoryContext, + subcontext: bool, + ) -> *mut ArrayBuildStateAny; + pub fn accumArrayResultAny( + astate: *mut ArrayBuildStateAny, + dvalue: Datum, + disnull: bool, + input_type: Oid, + rcontext: MemoryContext, + ) -> *mut ArrayBuildStateAny; + pub fn makeArrayResultAny( + astate: *mut ArrayBuildStateAny, + rcontext: MemoryContext, + release: bool, + ) -> Datum; + pub fn array_create_iterator( + arr: *mut ArrayType, + slice_ndim: ::core::ffi::c_int, + mstate: *mut ArrayMetaState, + ) -> ArrayIterator; + pub fn array_iterate(iterator: ArrayIterator, value: *mut Datum, isnull: *mut bool) -> bool; + pub fn array_free_iterator(iterator: ArrayIterator); + pub fn ArrayGetOffset( + n: ::core::ffi::c_int, + dim: *const ::core::ffi::c_int, + lb: *const ::core::ffi::c_int, + indx: *const ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ArrayGetNItems( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ArrayGetNItemsSafe( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + escontext: *mut Node, + ) -> ::core::ffi::c_int; + pub fn ArrayCheckBounds( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + lb: *const ::core::ffi::c_int, + ); + pub fn ArrayCheckBoundsSafe( + ndim: ::core::ffi::c_int, + dims: *const ::core::ffi::c_int, + lb: *const ::core::ffi::c_int, + escontext: *mut Node, + ) -> bool; + pub fn mda_get_range( + n: ::core::ffi::c_int, + span: *mut ::core::ffi::c_int, + st: *const ::core::ffi::c_int, + endp: *const ::core::ffi::c_int, + ); + pub fn mda_get_prod( + n: ::core::ffi::c_int, + range: *const ::core::ffi::c_int, + prod: *mut ::core::ffi::c_int, + ); + pub fn mda_get_offset_values( + n: ::core::ffi::c_int, + dist: *mut ::core::ffi::c_int, + prod: *const ::core::ffi::c_int, + span: *const ::core::ffi::c_int, + ); + pub fn mda_next_tuple( + n: ::core::ffi::c_int, + curr: *mut ::core::ffi::c_int, + span: *const ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ArrayGetIntegerTypmods(arr: *mut ArrayType, n: *mut ::core::ffi::c_int) -> *mut int32; + pub fn expand_array( + arraydatum: Datum, + parentcontext: MemoryContext, + metacache: *mut ArrayMetaState, + ) -> Datum; + pub fn DatumGetExpandedArray(d: Datum) -> *mut ExpandedArrayHeader; + pub fn DatumGetExpandedArrayX( + d: Datum, + metacache: *mut ArrayMetaState, + ) -> *mut ExpandedArrayHeader; + pub fn DatumGetAnyArrayP(d: Datum) -> *mut AnyArrayType; + pub fn deconstruct_expanded_array(eah: *mut ExpandedArrayHeader); + pub fn RemoveObjects(stmt: *mut DropStmt); + pub fn DefineIndex( + tableId: Oid, + stmt: *mut IndexStmt, + indexRelationId: Oid, + parentIndexId: Oid, + parentConstraintId: Oid, + total_parts: ::core::ffi::c_int, + is_alter_table: bool, + check_rights: bool, + check_not_in_use: bool, + skip_build: bool, + quiet: bool, + ) -> ObjectAddress; + pub fn ExecReindex(pstate: *mut ParseState, stmt: *const ReindexStmt, isTopLevel: bool); + pub fn makeObjectName( + name1: *const ::core::ffi::c_char, + name2: *const ::core::ffi::c_char, + label: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn ChooseRelationName( + name1: *const ::core::ffi::c_char, + name2: *const ::core::ffi::c_char, + label: *const ::core::ffi::c_char, + namespaceid: Oid, + isconstraint: bool, + ) -> *mut ::core::ffi::c_char; + pub fn CheckIndexCompatible( + oldId: Oid, + accessMethodName: *const ::core::ffi::c_char, + attributeList: *const List, + exclusionOpNames: *const List, + ) -> bool; + pub fn GetDefaultOpClass(type_id: Oid, am_id: Oid) -> Oid; + pub fn ResolveOpClass( + opclass: *const List, + attrType: Oid, + accessMethodName: *const ::core::ffi::c_char, + accessMethodId: Oid, + ) -> Oid; + pub fn CreateFunction(pstate: *mut ParseState, stmt: *mut CreateFunctionStmt) -> ObjectAddress; + pub fn RemoveFunctionById(funcOid: Oid); + pub fn AlterFunction(pstate: *mut ParseState, stmt: *mut AlterFunctionStmt) -> ObjectAddress; + pub fn CreateCast(stmt: *mut CreateCastStmt) -> ObjectAddress; + pub fn CreateTransform(stmt: *mut CreateTransformStmt) -> ObjectAddress; + pub fn IsThereFunctionInNamespace( + proname: *const ::core::ffi::c_char, + pronargs: ::core::ffi::c_int, + proargtypes: *mut oidvector, + nspOid: Oid, + ); + pub fn ExecuteDoStmt(pstate: *mut ParseState, stmt: *mut DoStmt, atomic: bool); + pub fn ExecuteCallStmt( + stmt: *mut CallStmt, + params: ParamListInfo, + atomic: bool, + dest: *mut DestReceiver, + ); + pub fn CallStmtResultDesc(stmt: *mut CallStmt) -> TupleDesc; + pub fn get_transform_oid(type_id: Oid, lang_id: Oid, missing_ok: bool) -> Oid; + pub fn interpret_function_parameter_list( + pstate: *mut ParseState, + parameters: *mut List, + languageOid: Oid, + objtype: ObjectType::Type, + parameterTypes: *mut *mut oidvector, + parameterTypes_list: *mut *mut List, + allParameterTypes: *mut *mut ArrayType, + parameterModes: *mut *mut ArrayType, + parameterNames: *mut *mut ArrayType, + inParameterNames_list: *mut *mut List, + parameterDefaults: *mut *mut List, + variadicArgType: *mut Oid, + requiredResultType: *mut Oid, + ); + pub fn DefineOperator(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn RemoveOperatorById(operOid: Oid); + pub fn AlterOperator(stmt: *mut AlterOperatorStmt) -> ObjectAddress; + pub fn CreateStatistics(stmt: *mut CreateStatsStmt) -> ObjectAddress; + pub fn AlterStatistics(stmt: *mut AlterStatsStmt) -> ObjectAddress; + pub fn RemoveStatisticsById(statsOid: Oid); + pub fn RemoveStatisticsDataById(statsOid: Oid, inh: bool); + pub fn StatisticsGetRelation(statId: Oid, missing_ok: bool) -> Oid; + pub fn DefineAggregate( + pstate: *mut ParseState, + name: *mut List, + args: *mut List, + oldstyle: bool, + parameters: *mut List, + replace: bool, + ) -> ObjectAddress; + pub fn DefineOpClass(stmt: *mut CreateOpClassStmt) -> ObjectAddress; + pub fn DefineOpFamily(stmt: *mut CreateOpFamilyStmt) -> ObjectAddress; + pub fn AlterOpFamily(stmt: *mut AlterOpFamilyStmt) -> Oid; + pub fn IsThereOpClassInNamespace( + opcname: *const ::core::ffi::c_char, + opcmethod: Oid, + opcnamespace: Oid, + ); + pub fn IsThereOpFamilyInNamespace( + opfname: *const ::core::ffi::c_char, + opfmethod: Oid, + opfnamespace: Oid, + ); + pub fn get_opclass_oid(amID: Oid, opclassname: *mut List, missing_ok: bool) -> Oid; + pub fn get_opfamily_oid(amID: Oid, opfamilyname: *mut List, missing_ok: bool) -> Oid; + pub fn DefineTSParser(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn DefineTSDictionary(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn AlterTSDictionary(stmt: *mut AlterTSDictionaryStmt) -> ObjectAddress; + pub fn DefineTSTemplate(names: *mut List, parameters: *mut List) -> ObjectAddress; + pub fn DefineTSConfiguration( + names: *mut List, + parameters: *mut List, + copied: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn RemoveTSConfigurationById(cfgId: Oid); + pub fn AlterTSConfiguration(stmt: *mut AlterTSConfigurationStmt) -> ObjectAddress; + pub fn serialize_deflist(deflist: *mut List) -> *mut text; + pub fn deserialize_deflist(txt: Datum) -> *mut List; + pub fn AlterForeignServerOwner( + name: *const ::core::ffi::c_char, + newOwnerId: Oid, + ) -> ObjectAddress; + pub fn AlterForeignServerOwner_oid(arg1: Oid, newOwnerId: Oid); + pub fn AlterForeignDataWrapperOwner( + name: *const ::core::ffi::c_char, + newOwnerId: Oid, + ) -> ObjectAddress; + pub fn AlterForeignDataWrapperOwner_oid(fwdId: Oid, newOwnerId: Oid); + pub fn CreateForeignDataWrapper( + pstate: *mut ParseState, + stmt: *mut CreateFdwStmt, + ) -> ObjectAddress; + pub fn AlterForeignDataWrapper( + pstate: *mut ParseState, + stmt: *mut AlterFdwStmt, + ) -> ObjectAddress; + pub fn CreateForeignServer(stmt: *mut CreateForeignServerStmt) -> ObjectAddress; + pub fn AlterForeignServer(stmt: *mut AlterForeignServerStmt) -> ObjectAddress; + pub fn CreateUserMapping(stmt: *mut CreateUserMappingStmt) -> ObjectAddress; + pub fn AlterUserMapping(stmt: *mut AlterUserMappingStmt) -> ObjectAddress; + pub fn RemoveUserMapping(stmt: *mut DropUserMappingStmt) -> Oid; + pub fn CreateForeignTable(stmt: *mut CreateForeignTableStmt, relid: Oid); + pub fn ImportForeignSchema(stmt: *mut ImportForeignSchemaStmt); + pub fn transformGenericOptions( + catalogId: Oid, + oldOptions: Datum, + options: *mut List, + fdwvalidator: Oid, + ) -> Datum; + pub fn CreateAccessMethod(stmt: *mut CreateAmStmt) -> ObjectAddress; + pub fn get_index_am_oid(amname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_table_am_oid(amname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_am_oid(amname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_am_name(amOid: Oid) -> *mut ::core::ffi::c_char; + pub fn defGetString(def: *mut DefElem) -> *mut ::core::ffi::c_char; + pub fn defGetNumeric(def: *mut DefElem) -> f64; + pub fn defGetBoolean(def: *mut DefElem) -> bool; + pub fn defGetInt32(def: *mut DefElem) -> int32; + pub fn defGetInt64(def: *mut DefElem) -> int64; + pub fn defGetObjectId(def: *mut DefElem) -> Oid; + pub fn defGetQualifiedName(def: *mut DefElem) -> *mut List; + pub fn defGetTypeName(def: *mut DefElem) -> *mut TypeName; + pub fn defGetTypeLength(def: *mut DefElem) -> ::core::ffi::c_int; + pub fn defGetStringList(def: *mut DefElem) -> *mut List; + pub fn errorConflictingDefElem(defel: *mut DefElem, pstate: *mut ParseState) -> !; + pub static mut event_triggers: bool; + pub fn CreateEventTrigger(stmt: *mut CreateEventTrigStmt) -> Oid; + pub fn get_event_trigger_oid(trigname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn AlterEventTrigger(stmt: *mut AlterEventTrigStmt) -> Oid; + pub fn AlterEventTriggerOwner( + name: *const ::core::ffi::c_char, + newOwnerId: Oid, + ) -> ObjectAddress; + pub fn AlterEventTriggerOwner_oid(arg1: Oid, newOwnerId: Oid); + pub fn EventTriggerSupportsObjectType(obtype: ObjectType::Type) -> bool; + pub fn EventTriggerSupportsObject(object: *const ObjectAddress) -> bool; + pub fn EventTriggerDDLCommandStart(parsetree: *mut Node); + pub fn EventTriggerDDLCommandEnd(parsetree: *mut Node); + pub fn EventTriggerSQLDrop(parsetree: *mut Node); + pub fn EventTriggerTableRewrite( + parsetree: *mut Node, + tableOid: Oid, + reason: ::core::ffi::c_int, + ); + pub fn EventTriggerOnLogin(); + pub fn EventTriggerBeginCompleteQuery() -> bool; + pub fn EventTriggerEndCompleteQuery(); + pub fn trackDroppedObjectsNeeded() -> bool; + pub fn EventTriggerSQLDropAddObject(object: *const ObjectAddress, original: bool, normal: bool); + pub fn EventTriggerInhibitCommandCollection(); + pub fn EventTriggerUndoInhibitCommandCollection(); + pub fn EventTriggerCollectSimpleCommand( + address: ObjectAddress, + secondaryObject: ObjectAddress, + parsetree: *mut Node, + ); + pub fn EventTriggerAlterTableStart(parsetree: *mut Node); + pub fn EventTriggerAlterTableRelid(objectId: Oid); + pub fn EventTriggerCollectAlterTableSubcmd(subcmd: *mut Node, address: ObjectAddress); + pub fn EventTriggerAlterTableEnd(); + pub fn EventTriggerCollectGrant(istmt: *mut InternalGrant); + pub fn EventTriggerCollectAlterOpFam( + stmt: *mut AlterOpFamilyStmt, + opfamoid: Oid, + operators: *mut List, + procedures: *mut List, + ); + pub fn EventTriggerCollectCreateOpClass( + stmt: *mut CreateOpClassStmt, + opcoid: Oid, + operators: *mut List, + procedures: *mut List, + ); + pub fn EventTriggerCollectAlterTSConfig( + stmt: *mut AlterTSConfigurationStmt, + cfgId: Oid, + dictIds: *mut Oid, + ndicts: ::core::ffi::c_int, + ); + pub fn EventTriggerCollectAlterDefPrivs(stmt: *mut AlterDefaultPrivilegesStmt); + pub static mut ExplainOneQuery_hook: ExplainOneQuery_hook_type; + pub static mut explain_get_index_name_hook: explain_get_index_name_hook_type; + pub fn ExplainQuery( + pstate: *mut ParseState, + stmt: *mut ExplainStmt, + params: ParamListInfo, + dest: *mut DestReceiver, + ); + pub fn standard_ExplainOneQuery( + query: *mut Query, + cursorOptions: ::core::ffi::c_int, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn NewExplainState() -> *mut ExplainState; + pub fn ExplainResultDesc(stmt: *mut ExplainStmt) -> TupleDesc; + pub fn ExplainOneUtility( + utilityStmt: *mut Node, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn ExplainOnePlan( + plannedstmt: *mut PlannedStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + planduration: *const instr_time, + bufusage: *const BufferUsage, + mem_counters: *const MemoryContextCounters, + ); + pub fn ExplainPrintPlan(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainPrintTriggers(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainPrintJITSummary(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainQueryText(es: *mut ExplainState, queryDesc: *mut QueryDesc); + pub fn ExplainQueryParameters( + es: *mut ExplainState, + params: ParamListInfo, + maxlen: ::core::ffi::c_int, + ); + pub fn ExplainBeginOutput(es: *mut ExplainState); + pub fn ExplainEndOutput(es: *mut ExplainState); + pub fn ExplainSeparatePlans(es: *mut ExplainState); + pub fn ExplainPropertyList( + qlabel: *const ::core::ffi::c_char, + data: *mut List, + es: *mut ExplainState, + ); + pub fn ExplainPropertyListNested( + qlabel: *const ::core::ffi::c_char, + data: *mut List, + es: *mut ExplainState, + ); + pub fn ExplainPropertyText( + qlabel: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + es: *mut ExplainState, + ); + pub fn ExplainPropertyInteger( + qlabel: *const ::core::ffi::c_char, + unit: *const ::core::ffi::c_char, + value: int64, + es: *mut ExplainState, + ); + pub fn ExplainPropertyUInteger( + qlabel: *const ::core::ffi::c_char, + unit: *const ::core::ffi::c_char, + value: uint64, + es: *mut ExplainState, + ); + pub fn ExplainPropertyFloat( + qlabel: *const ::core::ffi::c_char, + unit: *const ::core::ffi::c_char, + value: f64, + ndigits: ::core::ffi::c_int, + es: *mut ExplainState, + ); + pub fn ExplainPropertyBool( + qlabel: *const ::core::ffi::c_char, + value: bool, + es: *mut ExplainState, + ); + pub fn ExplainOpenGroup( + objtype: *const ::core::ffi::c_char, + labelname: *const ::core::ffi::c_char, + labeled: bool, + es: *mut ExplainState, + ); + pub fn ExplainCloseGroup( + objtype: *const ::core::ffi::c_char, + labelname: *const ::core::ffi::c_char, + labeled: bool, + es: *mut ExplainState, + ); + pub fn CreateExplainSerializeDestReceiver(es: *mut ExplainState) -> *mut DestReceiver; + pub static mut creating_extension: bool; + pub static mut CurrentExtensionObject: Oid; + pub fn CreateExtension( + pstate: *mut ParseState, + stmt: *mut CreateExtensionStmt, + ) -> ObjectAddress; + pub fn RemoveExtensionById(extId: Oid); + pub fn InsertExtensionTuple( + extName: *const ::core::ffi::c_char, + extOwner: Oid, + schemaOid: Oid, + relocatable: bool, + extVersion: *const ::core::ffi::c_char, + extConfig: Datum, + extCondition: Datum, + requiredExtensions: *mut List, + ) -> ObjectAddress; + pub fn ExecAlterExtensionStmt( + pstate: *mut ParseState, + stmt: *mut AlterExtensionStmt, + ) -> ObjectAddress; + pub fn ExecAlterExtensionContentsStmt( + stmt: *mut AlterExtensionContentsStmt, + objAddr: *mut ObjectAddress, + ) -> ObjectAddress; + pub fn get_extension_oid(extname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_extension_name(ext_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_extension_schema(ext_oid: Oid) -> Oid; + pub fn extension_file_exists(extensionName: *const ::core::ffi::c_char) -> bool; + pub fn AlterExtensionNamespace( + extensionName: *const ::core::ffi::c_char, + newschema: *const ::core::ffi::c_char, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub static mut plan_cache_mode: ::core::ffi::c_int; + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn ReleaseAllPlanCacheRefsInOwner(owner: ResourceOwner); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::core::ffi::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursor_options: ::core::ffi::c_int, + fixed_result: bool, + ); + pub fn SaveCachedPlan(plansource: *mut CachedPlanSource); + pub fn DropCachedPlan(plansource: *mut CachedPlanSource); + pub fn CachedPlanSetParentContext(plansource: *mut CachedPlanSource, newcontext: MemoryContext); + pub fn CopyCachedPlan(plansource: *mut CachedPlanSource) -> *mut CachedPlanSource; + pub fn CachedPlanIsValid(plansource: *mut CachedPlanSource) -> bool; + pub fn CachedPlanGetTargetList( + plansource: *mut CachedPlanSource, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn GetCachedPlan( + plansource: *mut CachedPlanSource, + boundParams: ParamListInfo, + owner: ResourceOwner, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, owner: ResourceOwner); + pub fn CachedPlanAllowsSimpleValidityCheck( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn CachedPlanIsSimplyValid( + plansource: *mut CachedPlanSource, + plan: *mut CachedPlan, + owner: ResourceOwner, + ) -> bool; + pub fn GetCachedExpression(expr: *mut Node) -> *mut CachedExpression; + pub fn FreeCachedExpression(cexpr: *mut CachedExpression); + pub fn PrepareQuery( + pstate: *mut ParseState, + stmt: *mut PrepareStmt, + stmt_location: ::core::ffi::c_int, + stmt_len: ::core::ffi::c_int, + ); + pub fn ExecuteQuery( + pstate: *mut ParseState, + stmt: *mut ExecuteStmt, + intoClause: *mut IntoClause, + params: ParamListInfo, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn DeallocateQuery(stmt: *mut DeallocateStmt); + pub fn ExplainExecuteQuery( + execstmt: *mut ExecuteStmt, + into: *mut IntoClause, + es: *mut ExplainState, + queryString: *const ::core::ffi::c_char, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + ); + pub fn StorePreparedStatement( + stmt_name: *const ::core::ffi::c_char, + plansource: *mut CachedPlanSource, + from_sql: bool, + ); + pub fn FetchPreparedStatement( + stmt_name: *const ::core::ffi::c_char, + throwError: bool, + ) -> *mut PreparedStatement; + pub fn DropPreparedStatement(stmt_name: *const ::core::ffi::c_char, showError: bool); + pub fn FetchPreparedStatementResultDesc(stmt: *mut PreparedStatement) -> TupleDesc; + pub fn FetchPreparedStatementTargetList(stmt: *mut PreparedStatement) -> *mut List; + pub fn DropAllPreparedStatements(); + pub fn CreateProceduralLanguage(stmt: *mut CreatePLangStmt) -> ObjectAddress; + pub fn get_language_oid(langname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn GetSecurityLabel( + object: *const ObjectAddress, + provider: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn SetSecurityLabel( + object: *const ObjectAddress, + provider: *const ::core::ffi::c_char, + label: *const ::core::ffi::c_char, + ); + pub fn DeleteSecurityLabel(object: *const ObjectAddress); + pub fn DeleteSharedSecurityLabel(objectId: Oid, classId: Oid); + pub fn ExecSecLabelStmt(stmt: *mut SecLabelStmt) -> ObjectAddress; + pub fn register_label_provider( + provider_name: *const ::core::ffi::c_char, + hook: check_object_relabel_type, + ); + pub static mut allow_in_place_tablespaces: bool; + pub fn CreateTableSpace(stmt: *mut CreateTableSpaceStmt) -> Oid; + pub fn DropTableSpace(stmt: *mut DropTableSpaceStmt); + pub fn RenameTableSpace( + oldname: *const ::core::ffi::c_char, + newname: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn AlterTableSpaceOptions(stmt: *mut AlterTableSpaceOptionsStmt) -> Oid; + pub fn TablespaceCreateDbspace(spcOid: Oid, dbOid: Oid, isRedo: bool); + pub fn GetDefaultTablespace(relpersistence: ::core::ffi::c_char, partitioned: bool) -> Oid; + pub fn PrepareTempTablespaces(); + pub fn get_tablespace_oid(tablespacename: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_tablespace_name(spc_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn directory_is_empty(path: *const ::core::ffi::c_char) -> bool; + pub fn remove_tablespace_symlink(linkloc: *const ::core::ffi::c_char); + pub fn tblspc_redo(record: *mut XLogReaderState); + pub fn tblspc_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn tblspc_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn DefineRelation( + stmt: *mut CreateStmt, + relkind: ::core::ffi::c_char, + ownerId: Oid, + typaddress: *mut ObjectAddress, + queryString: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn BuildDescForRelation(columns: *const List) -> TupleDesc; + pub fn RemoveRelations(drop: *mut DropStmt); + pub fn AlterTableLookupRelation(stmt: *mut AlterTableStmt, lockmode: LOCKMODE) -> Oid; + pub fn AlterTable( + stmt: *mut AlterTableStmt, + lockmode: LOCKMODE, + context: *mut AlterTableUtilityContext, + ); + pub fn AlterTableGetLockLevel(cmds: *mut List) -> LOCKMODE; + pub fn ATExecChangeOwner( + relationOid: Oid, + newOwnerId: Oid, + recursing: bool, + lockmode: LOCKMODE, + ); + pub fn AlterTableInternal(relid: Oid, cmds: *mut List, recurse: bool); + pub fn AlterTableMoveAll(stmt: *mut AlterTableMoveAllStmt) -> Oid; + pub fn AlterTableNamespace( + stmt: *mut AlterObjectSchemaStmt, + oldschema: *mut Oid, + ) -> ObjectAddress; + pub fn AlterTableNamespaceInternal( + rel: Relation, + oldNspOid: Oid, + nspOid: Oid, + objsMoved: *mut ObjectAddresses, + ); + pub fn AlterRelationNamespaceInternal( + classRel: Relation, + relOid: Oid, + oldNspOid: Oid, + newNspOid: Oid, + hasDependEntry: bool, + objsMoved: *mut ObjectAddresses, + ); + pub fn CheckTableNotInUse(rel: Relation, stmt: *const ::core::ffi::c_char); + pub fn ExecuteTruncate(stmt: *mut TruncateStmt); + pub fn ExecuteTruncateGuts( + explicit_rels: *mut List, + relids: *mut List, + relids_logged: *mut List, + behavior: DropBehavior::Type, + restart_seqs: bool, + run_as_table_owner: bool, + ); + pub fn SetRelationHasSubclass(relationId: Oid, relhassubclass: bool); + pub fn CheckRelationTableSpaceMove(rel: Relation, newTableSpaceId: Oid) -> bool; + pub fn SetRelationTableSpace( + rel: Relation, + newTableSpaceId: Oid, + newRelFilenumber: RelFileNumber, + ); + pub fn renameatt(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn RenameConstraint(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn RenameRelation(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn RenameRelationInternal( + myrelid: Oid, + newrelname: *const ::core::ffi::c_char, + is_internal: bool, + is_index: bool, + ); + pub fn ResetRelRewrite(myrelid: Oid); + pub fn find_composite_type_dependencies( + typeOid: Oid, + origRelation: Relation, + origTypeName: *const ::core::ffi::c_char, + ); + pub fn check_of_type(typetuple: HeapTuple); + pub fn register_on_commit_action(relid: Oid, action: OnCommitAction::Type); + pub fn remove_on_commit_action(relid: Oid); + pub fn PreCommit_on_commit_actions(); + pub fn AtEOXact_on_commit_actions(isCommit: bool); + pub fn AtEOSubXact_on_commit_actions( + isCommit: bool, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + ); + pub fn RangeVarCallbackMaintainsTable( + relation: *const RangeVar, + relId: Oid, + oldRelId: Oid, + arg: *mut ::core::ffi::c_void, + ); + pub fn RangeVarCallbackOwnsRelation( + relation: *const RangeVar, + relId: Oid, + oldRelId: Oid, + arg: *mut ::core::ffi::c_void, + ); + pub fn PartConstraintImpliedByRelConstraint( + scanrel: Relation, + partConstraint: *mut List, + ) -> bool; + pub static mut SessionReplicationRole: ::core::ffi::c_int; + pub fn CreateTrigger( + stmt: *mut CreateTrigStmt, + queryString: *const ::core::ffi::c_char, + relOid: Oid, + refRelOid: Oid, + constraintOid: Oid, + indexOid: Oid, + funcoid: Oid, + parentTriggerOid: Oid, + whenClause: *mut Node, + isInternal: bool, + in_partition: bool, + ) -> ObjectAddress; + pub fn CreateTriggerFiringOn( + stmt: *mut CreateTrigStmt, + queryString: *const ::core::ffi::c_char, + relOid: Oid, + refRelOid: Oid, + constraintOid: Oid, + indexOid: Oid, + funcoid: Oid, + parentTriggerOid: Oid, + whenClause: *mut Node, + isInternal: bool, + in_partition: bool, + trigger_fires_when: ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn TriggerSetParentTrigger( + trigRel: Relation, + childTrigId: Oid, + parentTrigId: Oid, + childTableId: Oid, + ); + pub fn RemoveTriggerById(trigOid: Oid); + pub fn get_trigger_oid( + relid: Oid, + trigname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> Oid; + pub fn renametrig(stmt: *mut RenameStmt) -> ObjectAddress; + pub fn EnableDisableTrigger( + rel: Relation, + tgname: *const ::core::ffi::c_char, + tgparent: Oid, + fires_when: ::core::ffi::c_char, + skip_system: bool, + recurse: bool, + lockmode: LOCKMODE, + ); + pub fn RelationBuildTriggers(relation: Relation); + pub fn CopyTriggerDesc(trigdesc: *mut TriggerDesc) -> *mut TriggerDesc; + pub fn FindTriggerIncompatibleWithInheritance( + trigdesc: *mut TriggerDesc, + ) -> *const ::core::ffi::c_char; + pub fn MakeTransitionCaptureState( + trigdesc: *mut TriggerDesc, + relid: Oid, + cmdType: CmdType::Type, + ) -> *mut TransitionCaptureState; + pub fn FreeTriggerDesc(trigdesc: *mut TriggerDesc); + pub fn ExecBSInsertTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecBRInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecARInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + recheckIndexes: *mut List, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecIRInsertTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + slot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecBSDeleteTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASDeleteTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecBRDeleteTriggers( + estate: *mut EState, + epqstate: *mut EPQState, + relinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + epqslot: *mut *mut TupleTableSlot, + tmresult: *mut TM_Result::Type, + tmfd: *mut TM_FailureData, + ) -> bool; + pub fn ExecARDeleteTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + transition_capture: *mut TransitionCaptureState, + is_crosspart_update: bool, + ); + pub fn ExecIRDeleteTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + trigtuple: HeapTuple, + ) -> bool; + pub fn ExecBSUpdateTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASUpdateTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + transition_capture: *mut TransitionCaptureState, + ); + pub fn ExecBRUpdateTriggers( + estate: *mut EState, + epqstate: *mut EPQState, + relinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + newslot: *mut TupleTableSlot, + tmresult: *mut TM_Result::Type, + tmfd: *mut TM_FailureData, + ) -> bool; + pub fn ExecARUpdateTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + src_partinfo: *mut ResultRelInfo, + dst_partinfo: *mut ResultRelInfo, + tupleid: ItemPointer, + fdw_trigtuple: HeapTuple, + newslot: *mut TupleTableSlot, + recheckIndexes: *mut List, + transition_capture: *mut TransitionCaptureState, + is_crosspart_update: bool, + ); + pub fn ExecIRUpdateTriggers( + estate: *mut EState, + relinfo: *mut ResultRelInfo, + trigtuple: HeapTuple, + newslot: *mut TupleTableSlot, + ) -> bool; + pub fn ExecBSTruncateTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn ExecASTruncateTriggers(estate: *mut EState, relinfo: *mut ResultRelInfo); + pub fn AfterTriggerBeginXact(); + pub fn AfterTriggerBeginQuery(); + pub fn AfterTriggerEndQuery(estate: *mut EState); + pub fn AfterTriggerFireDeferred(); + pub fn AfterTriggerEndXact(isCommit: bool); + pub fn AfterTriggerBeginSubXact(); + pub fn AfterTriggerEndSubXact(isCommit: bool); + pub fn AfterTriggerSetState(stmt: *mut ConstraintsSetStmt); + pub fn AfterTriggerPendingOnRel(relid: Oid) -> bool; + pub fn RI_FKey_pk_upd_check_required( + trigger: *mut Trigger, + pk_rel: Relation, + oldslot: *mut TupleTableSlot, + newslot: *mut TupleTableSlot, + ) -> bool; + pub fn RI_FKey_fk_upd_check_required( + trigger: *mut Trigger, + fk_rel: Relation, + oldslot: *mut TupleTableSlot, + newslot: *mut TupleTableSlot, + ) -> bool; + pub fn RI_Initial_Check(trigger: *mut Trigger, fk_rel: Relation, pk_rel: Relation) -> bool; + pub fn RI_PartitionRemove_Check(trigger: *mut Trigger, fk_rel: Relation, pk_rel: Relation); + pub fn RI_FKey_trigger_type(tgfoid: Oid) -> ::core::ffi::c_int; + pub fn get_password_type(shadow_pass: *const ::core::ffi::c_char) -> PasswordType::Type; + pub fn encrypt_password( + target_type: PasswordType::Type, + role: *const ::core::ffi::c_char, + password: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn get_role_password( + role: *const ::core::ffi::c_char, + logdetail: *mut *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn md5_crypt_verify( + role: *const ::core::ffi::c_char, + shadow_pass: *const ::core::ffi::c_char, + client_pass: *const ::core::ffi::c_char, + md5_salt: *const ::core::ffi::c_char, + md5_salt_len: ::core::ffi::c_int, + logdetail: *mut *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn plain_crypt_verify( + role: *const ::core::ffi::c_char, + shadow_pass: *const ::core::ffi::c_char, + client_pass: *const ::core::ffi::c_char, + logdetail: *mut *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn ParseConfigFile( + config_file: *const ::core::ffi::c_char, + strict: bool, + calling_file: *const ::core::ffi::c_char, + calling_lineno: ::core::ffi::c_int, + depth: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + head_p: *mut *mut ConfigVariable, + tail_p: *mut *mut ConfigVariable, + ) -> bool; + pub fn ParseConfigFp( + fp: *mut FILE, + config_file: *const ::core::ffi::c_char, + depth: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + head_p: *mut *mut ConfigVariable, + tail_p: *mut *mut ConfigVariable, + ) -> bool; + pub fn ParseConfigDirectory( + includedir: *const ::core::ffi::c_char, + calling_file: *const ::core::ffi::c_char, + calling_lineno: ::core::ffi::c_int, + depth: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + head_p: *mut *mut ConfigVariable, + tail_p: *mut *mut ConfigVariable, + ) -> bool; + pub fn FreeConfigVariables(list: *mut ConfigVariable); + pub fn DeescapeQuotedString(s: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub static mut Debug_print_plan: bool; + pub static mut Debug_print_parse: bool; + pub static mut Debug_print_rewritten: bool; + pub static mut Debug_pretty_print: bool; + pub static mut log_parser_stats: bool; + pub static mut log_planner_stats: bool; + pub static mut log_executor_stats: bool; + pub static mut log_statement_stats: bool; + pub static mut log_btree_build_stats: bool; + pub static mut check_function_bodies: bool; + pub static mut current_role_is_superuser: bool; + pub static mut AllowAlterSystem: bool; + pub static mut log_duration: bool; + pub static mut log_parameter_max_length: ::core::ffi::c_int; + pub static mut log_parameter_max_length_on_error: ::core::ffi::c_int; + pub static mut log_min_error_statement: ::core::ffi::c_int; + pub static mut log_min_messages: ::core::ffi::c_int; + pub static mut client_min_messages: ::core::ffi::c_int; + pub static mut log_min_duration_sample: ::core::ffi::c_int; + pub static mut log_min_duration_statement: ::core::ffi::c_int; + pub static mut log_temp_files: ::core::ffi::c_int; + pub static mut log_statement_sample_rate: f64; + pub static mut log_xact_sample_rate: f64; + pub static mut backtrace_functions: *mut ::core::ffi::c_char; + pub static mut temp_file_limit: ::core::ffi::c_int; + pub static mut num_temp_buffers: ::core::ffi::c_int; + pub static mut cluster_name: *mut ::core::ffi::c_char; + pub static mut ConfigFileName: *mut ::core::ffi::c_char; + pub static mut HbaFileName: *mut ::core::ffi::c_char; + pub static mut IdentFileName: *mut ::core::ffi::c_char; + pub static mut external_pid_file: *mut ::core::ffi::c_char; + pub static mut extension_destdir: *mut ::core::ffi::c_char; + pub static mut application_name: *mut ::core::ffi::c_char; + pub static mut tcp_keepalives_idle: ::core::ffi::c_int; + pub static mut tcp_keepalives_interval: ::core::ffi::c_int; + pub static mut tcp_keepalives_count: ::core::ffi::c_int; + pub static mut tcp_user_timeout: ::core::ffi::c_int; + pub static mut trace_sort: bool; + pub fn SetConfigOption( + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + ); + pub fn DefineCustomBoolVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut bool, + bootValue: bool, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucBoolCheckHook, + assign_hook: GucBoolAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomIntVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut ::core::ffi::c_int, + bootValue: ::core::ffi::c_int, + minValue: ::core::ffi::c_int, + maxValue: ::core::ffi::c_int, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucIntCheckHook, + assign_hook: GucIntAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomRealVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut f64, + bootValue: f64, + minValue: f64, + maxValue: f64, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucRealCheckHook, + assign_hook: GucRealAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomStringVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut *mut ::core::ffi::c_char, + bootValue: *const ::core::ffi::c_char, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucStringCheckHook, + assign_hook: GucStringAssignHook, + show_hook: GucShowHook, + ); + pub fn DefineCustomEnumVariable( + name: *const ::core::ffi::c_char, + short_desc: *const ::core::ffi::c_char, + long_desc: *const ::core::ffi::c_char, + valueAddr: *mut ::core::ffi::c_int, + bootValue: ::core::ffi::c_int, + options: *const config_enum_entry, + context: GucContext::Type, + flags: ::core::ffi::c_int, + check_hook: GucEnumCheckHook, + assign_hook: GucEnumAssignHook, + show_hook: GucShowHook, + ); + pub fn MarkGUCPrefixReserved(className: *const ::core::ffi::c_char); + pub fn GetConfigOption( + name: *const ::core::ffi::c_char, + missing_ok: bool, + restrict_privileged: bool, + ) -> *const ::core::ffi::c_char; + pub fn GetConfigOptionResetString( + name: *const ::core::ffi::c_char, + ) -> *const ::core::ffi::c_char; + pub fn GetConfigOptionFlags( + name: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> ::core::ffi::c_int; + pub fn ProcessConfigFile(context: GucContext::Type); + pub fn convert_GUC_name_for_parameter_acl( + name: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn check_GUC_name_for_parameter_acl(name: *const ::core::ffi::c_char); + pub fn InitializeGUCOptions(); + pub fn SelectConfigFiles( + userDoption: *const ::core::ffi::c_char, + progname: *const ::core::ffi::c_char, + ) -> bool; + pub fn ResetAllOptions(); + pub fn AtStart_GUC(); + pub fn NewGUCNestLevel() -> ::core::ffi::c_int; + pub fn RestrictSearchPath(); + pub fn AtEOXact_GUC(isCommit: bool, nestLevel: ::core::ffi::c_int); + pub fn BeginReportingGUCOptions(); + pub fn ReportChangedGUCOptions(); + pub fn ParseLongOption( + string: *const ::core::ffi::c_char, + name: *mut *mut ::core::ffi::c_char, + value: *mut *mut ::core::ffi::c_char, + ); + pub fn get_config_unit_name(flags: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn parse_int( + value: *const ::core::ffi::c_char, + result: *mut ::core::ffi::c_int, + flags: ::core::ffi::c_int, + hintmsg: *mut *const ::core::ffi::c_char, + ) -> bool; + pub fn parse_real( + value: *const ::core::ffi::c_char, + result: *mut f64, + flags: ::core::ffi::c_int, + hintmsg: *mut *const ::core::ffi::c_char, + ) -> bool; + pub fn set_config_option( + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + action: GucAction::Type, + changeVal: bool, + elevel: ::core::ffi::c_int, + is_reload: bool, + ) -> ::core::ffi::c_int; + pub fn set_config_option_ext( + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + srole: Oid, + action: GucAction::Type, + changeVal: bool, + elevel: ::core::ffi::c_int, + is_reload: bool, + ) -> ::core::ffi::c_int; + pub fn set_config_with_handle( + name: *const ::core::ffi::c_char, + handle: *mut config_handle, + value: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + srole: Oid, + action: GucAction::Type, + changeVal: bool, + elevel: ::core::ffi::c_int, + is_reload: bool, + ) -> ::core::ffi::c_int; + pub fn get_config_handle(name: *const ::core::ffi::c_char) -> *mut config_handle; + pub fn AlterSystemSetConfigFile(altersysstmt: *mut AlterSystemStmt); + pub fn GetConfigOptionByName( + name: *const ::core::ffi::c_char, + varname: *mut *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn TransformGUCArray(array: *mut ArrayType, names: *mut *mut List, values: *mut *mut List); + pub fn ProcessGUCArray( + array: *mut ArrayType, + context: GucContext::Type, + source: GucSource::Type, + action: GucAction::Type, + ); + pub fn GUCArrayAdd( + array: *mut ArrayType, + name: *const ::core::ffi::c_char, + value: *const ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn GUCArrayDelete( + array: *mut ArrayType, + name: *const ::core::ffi::c_char, + ) -> *mut ArrayType; + pub fn GUCArrayReset(array: *mut ArrayType) -> *mut ArrayType; + pub fn guc_malloc(elevel: ::core::ffi::c_int, size: usize) -> *mut ::core::ffi::c_void; + pub fn guc_realloc( + elevel: ::core::ffi::c_int, + old: *mut ::core::ffi::c_void, + size: usize, + ) -> *mut ::core::ffi::c_void; + pub fn guc_strdup( + elevel: ::core::ffi::c_int, + src: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn guc_free(ptr: *mut ::core::ffi::c_void); + pub fn EstimateGUCStateSpace() -> Size; + pub fn SerializeGUCState(maxsize: Size, start_address: *mut ::core::ffi::c_char); + pub fn RestoreGUCState(gucstate: *mut ::core::ffi::c_void); + pub fn ExecSetVariableStmt(stmt: *mut VariableSetStmt, isTopLevel: bool); + pub fn ExtractSetVariableArgs(stmt: *mut VariableSetStmt) -> *mut ::core::ffi::c_char; + pub fn SetPGVariable(name: *const ::core::ffi::c_char, args: *mut List, is_local: bool); + pub fn GetPGVariable(name: *const ::core::ffi::c_char, dest: *mut DestReceiver); + pub fn GetPGVariableResultDesc(name: *const ::core::ffi::c_char) -> TupleDesc; + pub static mut GUC_check_errmsg_string: *mut ::core::ffi::c_char; + pub static mut GUC_check_errdetail_string: *mut ::core::ffi::c_char; + pub static mut GUC_check_errhint_string: *mut ::core::ffi::c_char; + pub fn GUC_check_errcode(sqlerrcode: ::core::ffi::c_int); + pub static mut Password_encryption: ::core::ffi::c_int; + pub static mut createrole_self_grant: *mut ::core::ffi::c_char; + pub static mut check_password_hook: check_password_hook_type; + pub fn CreateRole(pstate: *mut ParseState, stmt: *mut CreateRoleStmt) -> Oid; + pub fn AlterRole(pstate: *mut ParseState, stmt: *mut AlterRoleStmt) -> Oid; + pub fn AlterRoleSet(stmt: *mut AlterRoleSetStmt) -> Oid; + pub fn DropRole(stmt: *mut DropRoleStmt); + pub fn GrantRole(pstate: *mut ParseState, stmt: *mut GrantRoleStmt); + pub fn RenameRole( + oldname: *const ::core::ffi::c_char, + newname: *const ::core::ffi::c_char, + ) -> ObjectAddress; + pub fn DropOwnedObjects(stmt: *mut DropOwnedStmt); + pub fn ReassignOwnedObjects(stmt: *mut ReassignOwnedStmt); + pub fn roleSpecsToIds(memberNames: *mut List) -> *mut List; + pub fn check_createrole_self_grant( + newval: *mut *mut ::core::ffi::c_char, + extra: *mut *mut ::core::ffi::c_void, + source: GucSource::Type, + ) -> bool; + pub fn assign_createrole_self_grant( + newval: *const ::core::ffi::c_char, + extra: *mut ::core::ffi::c_void, + ); + pub fn RegisterBackgroundWorker(worker: *mut BackgroundWorker); + pub fn RegisterDynamicBackgroundWorker( + worker: *mut BackgroundWorker, + handle: *mut *mut BackgroundWorkerHandle, + ) -> bool; + pub fn GetBackgroundWorkerPid( + handle: *mut BackgroundWorkerHandle, + pidp: *mut pid_t, + ) -> BgwHandleStatus::Type; + pub fn WaitForBackgroundWorkerStartup( + handle: *mut BackgroundWorkerHandle, + pidp: *mut pid_t, + ) -> BgwHandleStatus::Type; + pub fn WaitForBackgroundWorkerShutdown( + arg1: *mut BackgroundWorkerHandle, + ) -> BgwHandleStatus::Type; + pub fn GetBackgroundWorkerTypeByPid(pid: pid_t) -> *const ::core::ffi::c_char; + pub fn TerminateBackgroundWorker(handle: *mut BackgroundWorkerHandle); + pub static mut MyBgworkerEntry: *mut BackgroundWorker; + pub fn BackgroundWorkerInitializeConnection( + dbname: *const ::core::ffi::c_char, + username: *const ::core::ffi::c_char, + flags: uint32, + ); + pub fn BackgroundWorkerInitializeConnectionByOid(dboid: Oid, useroid: Oid, flags: uint32); + pub fn BackgroundWorkerBlockSignals(); + pub fn BackgroundWorkerUnblockSignals(); + pub fn TransactionIdSetTreeStatus( + xid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + status: XidStatus, + lsn: XLogRecPtr, + ); + pub fn TransactionIdGetStatus(xid: TransactionId, lsn: *mut XLogRecPtr) -> XidStatus; + pub fn CLOGShmemSize() -> Size; + pub fn CLOGShmemInit(); + pub fn BootStrapCLOG(); + pub fn StartupCLOG(); + pub fn TrimCLOG(); + pub fn CheckPointCLOG(); + pub fn ExtendCLOG(newestXact: TransactionId); + pub fn TruncateCLOG(oldestXact: TransactionId, oldestxid_datoid: Oid); + pub fn clogsyncfiletag( + ftag: *const FileTag, + path: *mut ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn clog_redo(record: *mut XLogReaderState); + pub fn clog_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn clog_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn InitializeLatchSupport(); + pub fn InitLatch(latch: *mut Latch); + pub fn InitSharedLatch(latch: *mut Latch); + pub fn OwnLatch(latch: *mut Latch); + pub fn DisownLatch(latch: *mut Latch); + pub fn SetLatch(latch: *mut Latch); + pub fn ResetLatch(latch: *mut Latch); + pub fn ShutdownLatchSupport(); + pub fn CreateWaitEventSet( + resowner: ResourceOwner, + nevents: ::core::ffi::c_int, + ) -> *mut WaitEventSet; + pub fn FreeWaitEventSet(set: *mut WaitEventSet); + pub fn FreeWaitEventSetAfterFork(set: *mut WaitEventSet); + pub fn AddWaitEventToSet( + set: *mut WaitEventSet, + events: uint32, + fd: pgsocket, + latch: *mut Latch, + user_data: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn ModifyWaitEvent( + set: *mut WaitEventSet, + pos: ::core::ffi::c_int, + events: uint32, + latch: *mut Latch, + ); + pub fn WaitEventSetWait( + set: *mut WaitEventSet, + timeout: ::core::ffi::c_long, + occurred_events: *mut WaitEvent, + nevents: ::core::ffi::c_int, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn WaitLatch( + latch: *mut Latch, + wakeEvents: ::core::ffi::c_int, + timeout: ::core::ffi::c_long, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn WaitLatchOrSocket( + latch: *mut Latch, + wakeEvents: ::core::ffi::c_int, + sock: pgsocket, + timeout: ::core::ffi::c_long, + wait_event_info: uint32, + ) -> ::core::ffi::c_int; + pub fn InitializeLatchWaitSet(); + pub fn GetNumRegisteredWaitEvents(set: *mut WaitEventSet) -> ::core::ffi::c_int; + pub fn WaitEventSetCanReportClosed() -> bool; + pub fn PGSemaphoreShmemSize(maxSemas: ::core::ffi::c_int) -> Size; + pub fn PGReserveSemaphores(maxSemas: ::core::ffi::c_int); + pub fn PGSemaphoreCreate() -> PGSemaphore; + pub fn PGSemaphoreReset(sema: PGSemaphore); + pub fn PGSemaphoreLock(sema: PGSemaphore); + pub fn PGSemaphoreUnlock(sema: PGSemaphore); + pub fn PGSemaphoreTryLock(sema: PGSemaphore) -> bool; + pub static mut MyProc: *mut PGPROC; + pub static mut ProcGlobal: *mut PROC_HDR; + pub static mut PreparedXactProcs: *mut PGPROC; + pub static mut DeadlockTimeout: ::core::ffi::c_int; + pub static mut StatementTimeout: ::core::ffi::c_int; + pub static mut LockTimeout: ::core::ffi::c_int; + pub static mut IdleInTransactionSessionTimeout: ::core::ffi::c_int; + pub static mut TransactionTimeout: ::core::ffi::c_int; + pub static mut IdleSessionTimeout: ::core::ffi::c_int; + pub static mut log_lock_waits: bool; + pub fn ProcGlobalSemas() -> ::core::ffi::c_int; + pub fn ProcGlobalShmemSize() -> Size; + pub fn InitProcGlobal(); + pub fn InitProcess(); + pub fn InitProcessPhase2(); + pub fn InitAuxiliaryProcess(); + pub fn SetStartupBufferPinWaitBufId(bufid: ::core::ffi::c_int); + pub fn GetStartupBufferPinWaitBufId() -> ::core::ffi::c_int; + pub fn HaveNFreeProcs(n: ::core::ffi::c_int, nfree: *mut ::core::ffi::c_int) -> bool; + pub fn ProcReleaseLocks(isCommit: bool); + pub fn ProcSleep( + locallock: *mut LOCALLOCK, + lockMethodTable: LockMethod, + dontWait: bool, + ) -> ProcWaitStatus::Type; + pub fn ProcWakeup(proc_: *mut PGPROC, waitStatus: ProcWaitStatus::Type); + pub fn ProcLockWakeup(lockMethodTable: LockMethod, lock: *mut LOCK); + pub fn CheckDeadLockAlert(); + pub fn IsWaitingForLock() -> bool; + pub fn LockErrorCleanup(); + pub fn ProcWaitForSignal(wait_event_info: uint32); + pub fn ProcSendSignal(procNumber: ProcNumber); + pub fn AuxiliaryPidGetProc(pid: ::core::ffi::c_int) -> *mut PGPROC; + pub fn BecomeLockGroupLeader(); + pub fn BecomeLockGroupMember(leader: *mut PGPROC, pid: ::core::ffi::c_int) -> bool; + pub fn shm_mq_create(address: *mut ::core::ffi::c_void, size: Size) -> *mut shm_mq; + pub fn shm_mq_set_receiver(mq: *mut shm_mq, arg1: *mut PGPROC); + pub fn shm_mq_set_sender(mq: *mut shm_mq, arg1: *mut PGPROC); + pub fn shm_mq_get_receiver(arg1: *mut shm_mq) -> *mut PGPROC; + pub fn shm_mq_get_sender(arg1: *mut shm_mq) -> *mut PGPROC; + pub fn shm_mq_attach( + mq: *mut shm_mq, + seg: *mut dsm_segment, + handle: *mut BackgroundWorkerHandle, + ) -> *mut shm_mq_handle; + pub fn shm_mq_set_handle(arg1: *mut shm_mq_handle, arg2: *mut BackgroundWorkerHandle); + pub fn shm_mq_detach(mqh: *mut shm_mq_handle); + pub fn shm_mq_get_queue(mqh: *mut shm_mq_handle) -> *mut shm_mq; + pub fn shm_mq_send( + mqh: *mut shm_mq_handle, + nbytes: Size, + data: *const ::core::ffi::c_void, + nowait: bool, + force_flush: bool, + ) -> shm_mq_result::Type; + pub fn shm_mq_sendv( + mqh: *mut shm_mq_handle, + iov: *mut shm_mq_iovec, + iovcnt: ::core::ffi::c_int, + nowait: bool, + force_flush: bool, + ) -> shm_mq_result::Type; + pub fn shm_mq_receive( + mqh: *mut shm_mq_handle, + nbytesp: *mut Size, + datap: *mut *mut ::core::ffi::c_void, + nowait: bool, + ) -> shm_mq_result::Type; + pub fn shm_mq_wait_for_attach(mqh: *mut shm_mq_handle) -> shm_mq_result::Type; + pub static shm_mq_minimum_size: Size; + pub static mut ParallelMessagePending: sig_atomic_t; + pub static mut ParallelWorkerNumber: ::core::ffi::c_int; + pub static mut InitializingParallelWorker: bool; + pub fn CreateParallelContext( + library_name: *const ::core::ffi::c_char, + function_name: *const ::core::ffi::c_char, + nworkers: ::core::ffi::c_int, + ) -> *mut ParallelContext; + pub fn InitializeParallelDSM(pcxt: *mut ParallelContext); + pub fn ReinitializeParallelDSM(pcxt: *mut ParallelContext); + pub fn ReinitializeParallelWorkers( + pcxt: *mut ParallelContext, + nworkers_to_launch: ::core::ffi::c_int, + ); + pub fn LaunchParallelWorkers(pcxt: *mut ParallelContext); + pub fn WaitForParallelWorkersToAttach(pcxt: *mut ParallelContext); + pub fn WaitForParallelWorkersToFinish(pcxt: *mut ParallelContext); + pub fn DestroyParallelContext(pcxt: *mut ParallelContext); + pub fn ParallelContextActive() -> bool; + pub fn HandleParallelMessageInterrupt(); + pub fn HandleParallelMessages(); + pub fn AtEOXact_Parallel(isCommit: bool); + pub fn AtEOSubXact_Parallel(isCommit: bool, mySubId: SubTransactionId); + pub fn ParallelWorkerReportLastRecEnd(last_xlog_end: XLogRecPtr); + pub fn ParallelWorkerMain(main_arg: Datum); + pub fn TidStoreCreateLocal(max_bytes: usize, insert_only: bool) -> *mut TidStore; + pub fn TidStoreCreateShared(max_bytes: usize, tranche_id: ::core::ffi::c_int) -> *mut TidStore; + pub fn TidStoreAttach(area_handle: dsa_handle, handle: dsa_pointer) -> *mut TidStore; + pub fn TidStoreDetach(ts: *mut TidStore); + pub fn TidStoreLockExclusive(ts: *mut TidStore); + pub fn TidStoreLockShare(ts: *mut TidStore); + pub fn TidStoreUnlock(ts: *mut TidStore); + pub fn TidStoreDestroy(ts: *mut TidStore); + pub fn TidStoreSetBlockOffsets( + ts: *mut TidStore, + blkno: BlockNumber, + offsets: *mut OffsetNumber, + num_offsets: ::core::ffi::c_int, + ); + pub fn TidStoreIsMember(ts: *mut TidStore, tid: ItemPointer) -> bool; + pub fn TidStoreBeginIterate(ts: *mut TidStore) -> *mut TidStoreIter; + pub fn TidStoreIterateNext(iter: *mut TidStoreIter) -> *mut TidStoreIterResult; + pub fn TidStoreEndIterate(iter: *mut TidStoreIter); + pub fn TidStoreMemoryUsage(ts: *mut TidStore) -> usize; + pub fn TidStoreGetHandle(ts: *mut TidStore) -> dsa_pointer; + pub fn TidStoreGetDSA(ts: *mut TidStore) -> *mut dsa_area; + pub static mut default_statistics_target: ::core::ffi::c_int; + pub static mut vacuum_freeze_min_age: ::core::ffi::c_int; + pub static mut vacuum_freeze_table_age: ::core::ffi::c_int; + pub static mut vacuum_multixact_freeze_min_age: ::core::ffi::c_int; + pub static mut vacuum_multixact_freeze_table_age: ::core::ffi::c_int; + pub static mut vacuum_failsafe_age: ::core::ffi::c_int; + pub static mut vacuum_multixact_failsafe_age: ::core::ffi::c_int; + pub static mut VacuumSharedCostBalance: *mut pg_atomic_uint32; + pub static mut VacuumActiveNWorkers: *mut pg_atomic_uint32; + pub static mut VacuumCostBalanceLocal: ::core::ffi::c_int; + pub static mut VacuumFailsafeActive: bool; + pub static mut vacuum_cost_delay: f64; + pub static mut vacuum_cost_limit: ::core::ffi::c_int; + pub fn ExecVacuum(pstate: *mut ParseState, vacstmt: *mut VacuumStmt, isTopLevel: bool); + pub fn vacuum( + relations: *mut List, + params: *mut VacuumParams, + bstrategy: BufferAccessStrategy, + vac_context: MemoryContext, + isTopLevel: bool, + ); + pub fn vac_open_indexes( + relation: Relation, + lockmode: LOCKMODE, + nindexes: *mut ::core::ffi::c_int, + Irel: *mut *mut Relation, + ); + pub fn vac_close_indexes(nindexes: ::core::ffi::c_int, Irel: *mut Relation, lockmode: LOCKMODE); + pub fn vac_estimate_reltuples( + relation: Relation, + total_pages: BlockNumber, + scanned_pages: BlockNumber, + scanned_tuples: f64, + ) -> f64; + pub fn vac_update_relstats( + relation: Relation, + num_pages: BlockNumber, + num_tuples: f64, + num_all_visible_pages: BlockNumber, + hasindex: bool, + frozenxid: TransactionId, + minmulti: MultiXactId, + frozenxid_updated: *mut bool, + minmulti_updated: *mut bool, + in_outer_xact: bool, + ); + pub fn vacuum_get_cutoffs( + rel: Relation, + params: *const VacuumParams, + cutoffs: *mut VacuumCutoffs, + ) -> bool; + pub fn vacuum_xid_failsafe_check(cutoffs: *const VacuumCutoffs) -> bool; + pub fn vac_update_datfrozenxid(); + pub fn vacuum_delay_point(); + pub fn vacuum_is_permitted_for_relation( + relid: Oid, + reltuple: Form_pg_class, + options: bits32, + ) -> bool; + pub fn vacuum_open_relation( + relid: Oid, + relation: *mut RangeVar, + options: bits32, + verbose: bool, + lmode: LOCKMODE, + ) -> Relation; + pub fn vac_bulkdel_one_index( + ivinfo: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + dead_items: *mut TidStore, + dead_items_info: *mut VacDeadItemsInfo, + ) -> *mut IndexBulkDeleteResult; + pub fn vac_cleanup_one_index( + ivinfo: *mut IndexVacuumInfo, + istat: *mut IndexBulkDeleteResult, + ) -> *mut IndexBulkDeleteResult; + pub fn AutoVacuumUpdateCostLimit(); + pub fn VacuumUpdateCosts(); + pub fn parallel_vacuum_init( + rel: Relation, + indrels: *mut Relation, + nindexes: ::core::ffi::c_int, + nrequested_workers: ::core::ffi::c_int, + vac_work_mem: ::core::ffi::c_int, + elevel: ::core::ffi::c_int, + bstrategy: BufferAccessStrategy, + ) -> *mut ParallelVacuumState; + pub fn parallel_vacuum_end( + pvs: *mut ParallelVacuumState, + istats: *mut *mut IndexBulkDeleteResult, + ); + pub fn parallel_vacuum_get_dead_items( + pvs: *mut ParallelVacuumState, + dead_items_info_p: *mut *mut VacDeadItemsInfo, + ) -> *mut TidStore; + pub fn parallel_vacuum_reset_dead_items(pvs: *mut ParallelVacuumState); + pub fn parallel_vacuum_bulkdel_all_indexes( + pvs: *mut ParallelVacuumState, + num_table_tuples: ::core::ffi::c_long, + num_index_scans: ::core::ffi::c_int, + ); + pub fn parallel_vacuum_cleanup_all_indexes( + pvs: *mut ParallelVacuumState, + num_table_tuples: ::core::ffi::c_long, + num_index_scans: ::core::ffi::c_int, + estimated_count: bool, + ); + pub fn parallel_vacuum_main(seg: *mut dsm_segment, toc: *mut shm_toc); + pub fn analyze_rel( + relid: Oid, + relation: *mut RangeVar, + params: *mut VacuumParams, + va_cols: *mut List, + in_outer_xact: bool, + bstrategy: BufferAccessStrategy, + ); + pub fn std_typanalyze(stats: *mut VacAttrStats) -> bool; + pub fn anl_random_fract() -> f64; + pub fn anl_init_selection_state(n: ::core::ffi::c_int) -> f64; + pub fn anl_get_next_S(t: f64, n: ::core::ffi::c_int, stateptr: *mut f64) -> f64; + pub fn get_configdata( + my_exec_path: *const ::core::ffi::c_char, + configdata_len: *mut usize, + ) -> *mut ConfigData; + pub fn get_controlfile( + DataDir: *const ::core::ffi::c_char, + crc_ok_p: *mut bool, + ) -> *mut ControlFileData; + pub fn get_controlfile_by_exact_path( + ControlFilePath: *const ::core::ffi::c_char, + crc_ok_p: *mut bool, + ) -> *mut ControlFileData; + pub fn update_controlfile( + DataDir: *const ::core::ffi::c_char, + ControlFile: *mut ControlFileData, + do_sync: bool, + ); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::core::ffi::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size( + numTrans: ::core::ffi::c_int, + tupleWidth: Size, + transitionSpace: Size, + ) -> Size; + pub fn hash_agg_set_limits( + hashentrysize: f64, + input_groups: f64, + used_bits: ::core::ffi::c_int, + mem_limit: *mut Size, + ngroups_limit: *mut uint64, + num_partitions: *mut ::core::ffi::c_int, + ); + pub fn ExecAggEstimate(node: *mut AggState, pcxt: *mut ParallelContext); + pub fn ExecAggInitializeDSM(node: *mut AggState, pcxt: *mut ParallelContext); + pub fn ExecAggInitializeWorker(node: *mut AggState, pwcxt: *mut ParallelWorkerContext); + pub fn ExecAggRetrieveInstrumentation(node: *mut AggState); + pub fn ExprEvalPushStep(es: *mut ExprState, s: *const ExprEvalStep); + pub fn ExecReadyInterpretedExpr(state: *mut ExprState); + pub fn ExecEvalStepOp(state: *mut ExprState, op: *mut ExprEvalStep) -> ExprEvalOp::Type; + pub fn ExecInterpExprStillValid( + state: *mut ExprState, + econtext: *mut ExprContext, + isNull: *mut bool, + ) -> Datum; + pub fn CheckExprStillValid(state: *mut ExprState, econtext: *mut ExprContext); + pub fn ExecEvalFuncExprFusage( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalFuncExprStrictFusage( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalParamExec( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalParamExtern( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalCoerceViaIOSafe(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSQLValueFunction(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalCurrentOfExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalNextValueExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalRowNull( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalRowNotNull( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalArrayExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalArrayCoerce( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalRow(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalMinMax(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalFieldSelect( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalFieldStoreDeForm( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalFieldStoreForm( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalConvertRowtype( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalScalarArrayOp(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalHashedScalarArrayOp( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalConstraintNotNull(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalConstraintCheck(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalXmlExpr(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalJsonConstructor( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalJsonIsPredicate(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalJsonExprPath( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ) -> ::core::ffi::c_int; + pub fn ExecEvalJsonCoercion( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalJsonCoercionFinish(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalMergeSupportFunc( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalSubPlan( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalWholeRowVar( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalSysVar( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + slot: *mut TupleTableSlot, + ); + pub fn ExecAggInitGroup( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + pergroup: AggStatePerGroup, + aggcontext: *mut ExprContext, + ); + pub fn ExecAggCopyTransValue( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + newValue: Datum, + newValueIsNull: bool, + oldValue: Datum, + oldValueIsNull: bool, + ) -> Datum; + pub fn ExecEvalPreOrderedDistinctSingle( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + ) -> bool; + pub fn ExecEvalPreOrderedDistinctMulti( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + ) -> bool; + pub fn ExecEvalAggOrderedTransDatum( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalAggOrderedTransTuple( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub static mut backslash_quote: ::core::ffi::c_int; + pub static mut escape_string_warning: bool; + pub static mut standard_conforming_strings: bool; + pub fn raw_parser(str_: *const ::core::ffi::c_char, mode: RawParseMode::Type) -> *mut List; + pub fn SystemFuncName(name: *mut ::core::ffi::c_char) -> *mut List; + pub fn SystemTypeName(name: *mut ::core::ffi::c_char) -> *mut TypeName; + pub fn EnablePortalManager(); + pub fn PreCommit_Portals(isPrepare: bool) -> bool; + pub fn AtAbort_Portals(); + pub fn AtCleanup_Portals(); + pub fn PortalErrorCleanup(); + pub fn AtSubCommit_Portals( + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + parentLevel: ::core::ffi::c_int, + parentXactOwner: ResourceOwner, + ); + pub fn AtSubAbort_Portals( + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + myXactOwner: ResourceOwner, + parentXactOwner: ResourceOwner, + ); + pub fn AtSubCleanup_Portals(mySubid: SubTransactionId); + pub fn CreatePortal( + name: *const ::core::ffi::c_char, + allowDup: bool, + dupSilent: bool, + ) -> Portal; + pub fn CreateNewPortal() -> Portal; + pub fn PinPortal(portal: Portal); + pub fn UnpinPortal(portal: Portal); + pub fn MarkPortalActive(portal: Portal); + pub fn MarkPortalDone(portal: Portal); + pub fn MarkPortalFailed(portal: Portal); + pub fn PortalDrop(portal: Portal, isTopCommit: bool); + pub fn GetPortalByName(name: *const ::core::ffi::c_char) -> Portal; + pub fn PortalDefineQuery( + portal: Portal, + prepStmtName: *const ::core::ffi::c_char, + sourceText: *const ::core::ffi::c_char, + commandTag: CommandTag::Type, + stmts: *mut List, + cplan: *mut CachedPlan, + ); + pub fn PortalGetPrimaryStmt(portal: Portal) -> *mut PlannedStmt; + pub fn PortalCreateHoldStore(portal: Portal); + pub fn PortalHashTableDeleteAll(); + pub fn ThereAreNoReadyPortals() -> bool; + pub fn HoldPinnedPortals(); + pub fn ForgetPortalSnapshots(); + pub static mut SPI_processed: uint64; + pub static mut SPI_tuptable: *mut SPITupleTable; + pub static mut SPI_result: ::core::ffi::c_int; + pub fn SPI_connect() -> ::core::ffi::c_int; + pub fn SPI_connect_ext(options: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn SPI_finish() -> ::core::ffi::c_int; + pub fn SPI_execute( + src: *const ::core::ffi::c_char, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_extended( + src: *const ::core::ffi::c_char, + options: *const SPIExecuteOptions, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_plan( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_plan_extended( + plan: SPIPlanPtr, + options: *const SPIExecuteOptions, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_plan_with_paramlist( + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_exec( + src: *const ::core::ffi::c_char, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execp( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_snapshot( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + snapshot: Snapshot, + crosscheck_snapshot: Snapshot, + read_only: bool, + fire_triggers: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_execute_with_args( + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + tcount: ::core::ffi::c_long, + ) -> ::core::ffi::c_int; + pub fn SPI_prepare( + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + ) -> SPIPlanPtr; + pub fn SPI_prepare_cursor( + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + cursorOptions: ::core::ffi::c_int, + ) -> SPIPlanPtr; + pub fn SPI_prepare_extended( + src: *const ::core::ffi::c_char, + options: *const SPIPrepareOptions, + ) -> SPIPlanPtr; + pub fn SPI_prepare_params( + src: *const ::core::ffi::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + cursorOptions: ::core::ffi::c_int, + ) -> SPIPlanPtr; + pub fn SPI_keepplan(plan: SPIPlanPtr) -> ::core::ffi::c_int; + pub fn SPI_saveplan(plan: SPIPlanPtr) -> SPIPlanPtr; + pub fn SPI_freeplan(plan: SPIPlanPtr) -> ::core::ffi::c_int; + pub fn SPI_getargtypeid(plan: SPIPlanPtr, argIndex: ::core::ffi::c_int) -> Oid; + pub fn SPI_getargcount(plan: SPIPlanPtr) -> ::core::ffi::c_int; + pub fn SPI_is_cursor_plan(plan: SPIPlanPtr) -> bool; + pub fn SPI_plan_is_valid(plan: SPIPlanPtr) -> bool; + pub fn SPI_result_code_string(code: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn SPI_plan_get_plan_sources(plan: SPIPlanPtr) -> *mut List; + pub fn SPI_plan_get_cached_plan(plan: SPIPlanPtr) -> *mut CachedPlan; + pub fn SPI_copytuple(tuple: HeapTuple) -> HeapTuple; + pub fn SPI_returntuple(tuple: HeapTuple, tupdesc: TupleDesc) -> HeapTupleHeader; + pub fn SPI_modifytuple( + rel: Relation, + tuple: HeapTuple, + natts: ::core::ffi::c_int, + attnum: *mut ::core::ffi::c_int, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + ) -> HeapTuple; + pub fn SPI_fnumber(tupdesc: TupleDesc, fname: *const ::core::ffi::c_char) + -> ::core::ffi::c_int; + pub fn SPI_fname(tupdesc: TupleDesc, fnumber: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn SPI_getvalue( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn SPI_getbinval( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn SPI_gettype(tupdesc: TupleDesc, fnumber: ::core::ffi::c_int) + -> *mut ::core::ffi::c_char; + pub fn SPI_gettypeid(tupdesc: TupleDesc, fnumber: ::core::ffi::c_int) -> Oid; + pub fn SPI_getrelname(rel: Relation) -> *mut ::core::ffi::c_char; + pub fn SPI_getnspname(rel: Relation) -> *mut ::core::ffi::c_char; + pub fn SPI_palloc(size: Size) -> *mut ::core::ffi::c_void; + pub fn SPI_repalloc(pointer: *mut ::core::ffi::c_void, size: Size) -> *mut ::core::ffi::c_void; + pub fn SPI_pfree(pointer: *mut ::core::ffi::c_void); + pub fn SPI_datumTransfer(value: Datum, typByVal: bool, typLen: ::core::ffi::c_int) -> Datum; + pub fn SPI_freetuple(tuple: HeapTuple); + pub fn SPI_freetuptable(tuptable: *mut SPITupleTable); + pub fn SPI_cursor_open( + name: *const ::core::ffi::c_char, + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_open_with_args( + name: *const ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::core::ffi::c_char, + read_only: bool, + cursorOptions: ::core::ffi::c_int, + ) -> Portal; + pub fn SPI_cursor_open_with_paramlist( + name: *const ::core::ffi::c_char, + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_parse_open( + name: *const ::core::ffi::c_char, + src: *const ::core::ffi::c_char, + options: *const SPIParseOpenOptions, + ) -> Portal; + pub fn SPI_cursor_find(name: *const ::core::ffi::c_char) -> Portal; + pub fn SPI_cursor_fetch(portal: Portal, forward: bool, count: ::core::ffi::c_long); + pub fn SPI_cursor_move(portal: Portal, forward: bool, count: ::core::ffi::c_long); + pub fn SPI_scroll_cursor_fetch( + arg1: Portal, + direction: FetchDirection::Type, + count: ::core::ffi::c_long, + ); + pub fn SPI_scroll_cursor_move( + arg1: Portal, + direction: FetchDirection::Type, + count: ::core::ffi::c_long, + ); + pub fn SPI_cursor_close(portal: Portal); + pub fn SPI_register_relation(enr: EphemeralNamedRelation) -> ::core::ffi::c_int; + pub fn SPI_unregister_relation(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn SPI_register_trigger_data(tdata: *mut TriggerData) -> ::core::ffi::c_int; + pub fn SPI_start_transaction(); + pub fn SPI_commit(); + pub fn SPI_commit_and_chain(); + pub fn SPI_rollback(); + pub fn SPI_rollback_and_chain(); + pub fn AtEOXact_SPI(isCommit: bool); + pub fn AtEOSubXact_SPI(isCommit: bool, mySubid: SubTransactionId); + pub fn SPI_inside_nonatomic_context() -> bool; + pub fn is_dummy_rel(rel: *mut RelOptInfo) -> bool; + pub fn GetFdwRoutine(fdwhandler: Oid) -> *mut FdwRoutine; + pub fn GetForeignServerIdByRelId(relid: Oid) -> Oid; + pub fn GetFdwRoutineByServerId(serverid: Oid) -> *mut FdwRoutine; + pub fn GetFdwRoutineByRelId(relid: Oid) -> *mut FdwRoutine; + pub fn GetFdwRoutineForRelation(relation: Relation, makecopy: bool) -> *mut FdwRoutine; + pub fn IsImportableForeignTable( + tablename: *const ::core::ffi::c_char, + stmt: *mut ImportForeignSchemaStmt, + ) -> bool; + pub fn GetExistingLocalJoinPath(joinrel: *mut RelOptInfo) -> *mut Path; + pub fn GetForeignServer(serverid: Oid) -> *mut ForeignServer; + pub fn GetForeignServerExtended(serverid: Oid, flags: bits16) -> *mut ForeignServer; + pub fn GetForeignServerByName( + srvname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut ForeignServer; + pub fn GetUserMapping(userid: Oid, serverid: Oid) -> *mut UserMapping; + pub fn GetForeignDataWrapper(fdwid: Oid) -> *mut ForeignDataWrapper; + pub fn GetForeignDataWrapperExtended(fdwid: Oid, flags: bits16) -> *mut ForeignDataWrapper; + pub fn GetForeignDataWrapperByName( + fdwname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *mut ForeignDataWrapper; + pub fn GetForeignTable(relid: Oid) -> *mut ForeignTable; + pub fn GetForeignColumnOptions(relid: Oid, attnum: AttrNumber) -> *mut List; + pub fn get_foreign_data_wrapper_oid( + fdwname: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> Oid; + pub fn get_foreign_server_oid(servername: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn _PG_jit_provider_init(cb: *mut JitProviderCallbacks); + pub static mut jit_enabled: bool; + pub static mut jit_provider: *mut ::core::ffi::c_char; + pub static mut jit_debugging_support: bool; + pub static mut jit_dump_bitcode: bool; + pub static mut jit_expressions: bool; + pub static mut jit_profiling_support: bool; + pub static mut jit_tuple_deforming: bool; + pub static mut jit_above_cost: f64; + pub static mut jit_inline_above_cost: f64; + pub static mut jit_optimize_above_cost: f64; + pub fn jit_reset_after_error(); + pub fn jit_release_context(context: *mut JitContext); + pub fn jit_compile_expr(state: *mut ExprState) -> bool; + pub fn InstrJitAgg(dst: *mut JitInstrumentation, add: *mut JitInstrumentation); + pub static pg_enc2name_tbl: [pg_enc2name; 0usize]; + pub static mut pg_enc2gettext_tbl: [*const ::core::ffi::c_char; 0usize]; + pub static pg_wchar_table: [pg_wchar_tbl; 0usize]; + pub fn pg_char_to_encoding_private(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_encoding_to_char_private(encoding: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pg_valid_server_encoding_id_private(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_encoding_mblen( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_mblen_bounded( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_dsplen( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_verifymbchar( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_verifymbstr( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_max_length(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn pg_valid_client_encoding(name: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_valid_server_encoding_private(name: *const ::core::ffi::c_char) + -> ::core::ffi::c_int; + pub fn is_encoding_supported_by_icu(encoding: ::core::ffi::c_int) -> bool; + pub fn get_encoding_name_for_icu(encoding: ::core::ffi::c_int) -> *const ::core::ffi::c_char; + pub fn pg_utf8_islegal(source: *const ::core::ffi::c_uchar, length: ::core::ffi::c_int) + -> bool; + pub fn pg_utf_mblen_private(s: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int; + pub fn pg_mule_mblen(s: *const ::core::ffi::c_uchar) -> ::core::ffi::c_int; + pub fn pg_mb2wchar(from: *const ::core::ffi::c_char, to: *mut pg_wchar) -> ::core::ffi::c_int; + pub fn pg_mb2wchar_with_len( + from: *const ::core::ffi::c_char, + to: *mut pg_wchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_mb2wchar_with_len( + encoding: ::core::ffi::c_int, + from: *const ::core::ffi::c_char, + to: *mut pg_wchar, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_wchar2mb(from: *const pg_wchar, to: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_wchar2mb_with_len( + from: *const pg_wchar, + to: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_wchar2mb_with_len( + encoding: ::core::ffi::c_int, + from: *const pg_wchar, + to: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_char_and_wchar_strcmp( + s1: *const ::core::ffi::c_char, + s2: *const pg_wchar, + ) -> ::core::ffi::c_int; + pub fn pg_wchar_strncmp( + s1: *const pg_wchar, + s2: *const pg_wchar, + n: usize, + ) -> ::core::ffi::c_int; + pub fn pg_char_and_wchar_strncmp( + s1: *const ::core::ffi::c_char, + s2: *const pg_wchar, + n: usize, + ) -> ::core::ffi::c_int; + pub fn pg_wchar_strlen(str_: *const pg_wchar) -> usize; + pub fn pg_mblen(mbstr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_dsplen(mbstr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_mbstrlen(mbstr: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_mbstrlen_with_len( + mbstr: *const ::core::ffi::c_char, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_mbcliplen( + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_encoding_mbcliplen( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_mbcharcliplen( + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + limit: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn pg_database_encoding_max_length() -> ::core::ffi::c_int; + pub fn pg_database_encoding_character_incrementer() -> mbcharacter_incrementer; + pub fn PrepareClientEncoding(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn SetClientEncoding(encoding: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn InitializeClientEncoding(); + pub fn pg_get_client_encoding() -> ::core::ffi::c_int; + pub fn pg_get_client_encoding_name() -> *const ::core::ffi::c_char; + pub fn SetDatabaseEncoding(encoding: ::core::ffi::c_int); + pub fn GetDatabaseEncoding() -> ::core::ffi::c_int; + pub fn GetDatabaseEncodingName() -> *const ::core::ffi::c_char; + pub fn SetMessageEncoding(encoding: ::core::ffi::c_int); + pub fn GetMessageEncoding() -> ::core::ffi::c_int; + pub fn pg_bind_textdomain_codeset(domainname: *const ::core::ffi::c_char) + -> ::core::ffi::c_int; + pub fn pg_do_encoding_conversion( + src: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_uchar; + pub fn pg_do_encoding_conversion_buf( + proc_: Oid, + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + src: *mut ::core::ffi::c_uchar, + srclen: ::core::ffi::c_int, + dest: *mut ::core::ffi::c_uchar, + destlen: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn pg_client_to_server( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_server_to_client( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_any_to_server( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_server_to_any( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pg_unicode_to_server(c: pg_wchar, s: *mut ::core::ffi::c_uchar); + pub fn pg_unicode_to_server_noerror(c: pg_wchar, s: *mut ::core::ffi::c_uchar) -> bool; + pub fn BIG5toCNS( + big5: ::core::ffi::c_ushort, + lc: *mut ::core::ffi::c_uchar, + ) -> ::core::ffi::c_ushort; + pub fn CNStoBIG5(cns: ::core::ffi::c_ushort, lc: ::core::ffi::c_uchar) + -> ::core::ffi::c_ushort; + pub fn UtfToLocal( + utf: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + iso: *mut ::core::ffi::c_uchar, + map: *const pg_mb_radix_tree, + cmap: *const pg_utf_to_local_combined, + cmapsize: ::core::ffi::c_int, + conv_func: utf_local_conversion_func, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn LocalToUtf( + iso: *const ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + utf: *mut ::core::ffi::c_uchar, + map: *const pg_mb_radix_tree, + cmap: *const pg_local_to_utf_combined, + cmapsize: ::core::ffi::c_int, + conv_func: utf_local_conversion_func, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn pg_verifymbstr( + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + noError: bool, + ) -> bool; + pub fn pg_verify_mbstr( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + noError: bool, + ) -> bool; + pub fn pg_verify_mbstr_len( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn check_encoding_conversion_args( + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + len: ::core::ffi::c_int, + expected_src_encoding: ::core::ffi::c_int, + expected_dest_encoding: ::core::ffi::c_int, + ); + pub fn report_invalid_encoding( + encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> !; + pub fn report_untranslatable_char( + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + mbstr: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> !; + pub fn local2local( + l: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + src_encoding: ::core::ffi::c_int, + dest_encoding: ::core::ffi::c_int, + tab: *const ::core::ffi::c_uchar, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn latin2mic( + l: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn mic2latin( + mic: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn latin2mic_with_table( + l: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + tab: *const ::core::ffi::c_uchar, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn mic2latin_with_table( + mic: *const ::core::ffi::c_uchar, + p: *mut ::core::ffi::c_uchar, + len: ::core::ffi::c_int, + lc: ::core::ffi::c_int, + encoding: ::core::ffi::c_int, + tab: *const ::core::ffi::c_uchar, + noError: bool, + ) -> ::core::ffi::c_int; + pub fn pq_beginmessage(buf: StringInfo, msgtype: ::core::ffi::c_char); + pub fn pq_beginmessage_reuse(buf: StringInfo, msgtype: ::core::ffi::c_char); + pub fn pq_endmessage(buf: StringInfo); + pub fn pq_endmessage_reuse(buf: StringInfo); + pub fn pq_sendbytes( + buf: StringInfo, + data: *const ::core::ffi::c_void, + datalen: ::core::ffi::c_int, + ); + pub fn pq_sendcountedtext( + buf: StringInfo, + str_: *const ::core::ffi::c_char, + slen: ::core::ffi::c_int, + ); + pub fn pq_sendtext(buf: StringInfo, str_: *const ::core::ffi::c_char, slen: ::core::ffi::c_int); + pub fn pq_sendstring(buf: StringInfo, str_: *const ::core::ffi::c_char); + pub fn pq_send_ascii_string(buf: StringInfo, str_: *const ::core::ffi::c_char); + pub fn pq_sendfloat4(buf: StringInfo, f: float4); + pub fn pq_sendfloat8(buf: StringInfo, f: float8); + pub fn pq_begintypsend(buf: StringInfo); + pub fn pq_endtypsend(buf: StringInfo) -> *mut bytea; + pub fn pq_puttextmessage(msgtype: ::core::ffi::c_char, str_: *const ::core::ffi::c_char); + pub fn pq_putemptymessage(msgtype: ::core::ffi::c_char); + pub fn pq_getmsgbyte(msg: StringInfo) -> ::core::ffi::c_int; + pub fn pq_getmsgint(msg: StringInfo, b: ::core::ffi::c_int) -> ::core::ffi::c_uint; + pub fn pq_getmsgint64(msg: StringInfo) -> int64; + pub fn pq_getmsgfloat4(msg: StringInfo) -> float4; + pub fn pq_getmsgfloat8(msg: StringInfo) -> float8; + pub fn pq_getmsgbytes( + msg: StringInfo, + datalen: ::core::ffi::c_int, + ) -> *const ::core::ffi::c_char; + pub fn pq_copymsgbytes( + msg: StringInfo, + buf: *mut ::core::ffi::c_char, + datalen: ::core::ffi::c_int, + ); + pub fn pq_getmsgtext( + msg: StringInfo, + rawbytes: ::core::ffi::c_int, + nbytes: *mut ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn pq_getmsgstring(msg: StringInfo) -> *const ::core::ffi::c_char; + pub fn pq_getmsgrawstring(msg: StringInfo) -> *const ::core::ffi::c_char; + pub fn pq_getmsgend(msg: StringInfo); + pub fn RegisterExtensibleNodeMethods(methods: *const ExtensibleNodeMethods); + pub fn GetExtensibleNodeMethods( + extnodename: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *const ExtensibleNodeMethods; + pub fn RegisterCustomScanMethods(methods: *const CustomScanMethods); + pub fn GetCustomScanMethods( + CustomName: *const ::core::ffi::c_char, + missing_ok: bool, + ) -> *const CustomScanMethods; + pub fn makeA_Expr( + kind: A_Expr_Kind::Type, + name: *mut List, + lexpr: *mut Node, + rexpr: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut A_Expr; + pub fn makeSimpleA_Expr( + kind: A_Expr_Kind::Type, + name: *mut ::core::ffi::c_char, + lexpr: *mut Node, + rexpr: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut A_Expr; + pub fn makeVar( + varno: ::core::ffi::c_int, + varattno: AttrNumber, + vartype: Oid, + vartypmod: int32, + varcollid: Oid, + varlevelsup: Index, + ) -> *mut Var; + pub fn makeVarFromTargetEntry(varno: ::core::ffi::c_int, tle: *mut TargetEntry) -> *mut Var; + pub fn makeWholeRowVar( + rte: *mut RangeTblEntry, + varno: ::core::ffi::c_int, + varlevelsup: Index, + allowScalar: bool, + ) -> *mut Var; + pub fn makeTargetEntry( + expr: *mut Expr, + resno: AttrNumber, + resname: *mut ::core::ffi::c_char, + resjunk: bool, + ) -> *mut TargetEntry; + pub fn flatCopyTargetEntry(src_tle: *mut TargetEntry) -> *mut TargetEntry; + pub fn makeFromExpr(fromlist: *mut List, quals: *mut Node) -> *mut FromExpr; + pub fn makeConst( + consttype: Oid, + consttypmod: int32, + constcollid: Oid, + constlen: ::core::ffi::c_int, + constvalue: Datum, + constisnull: bool, + constbyval: bool, + ) -> *mut Const; + pub fn makeNullConst(consttype: Oid, consttypmod: int32, constcollid: Oid) -> *mut Const; + pub fn makeBoolConst(value: bool, isnull: bool) -> *mut Node; + pub fn makeBoolExpr( + boolop: BoolExprType::Type, + args: *mut List, + location: ::core::ffi::c_int, + ) -> *mut Expr; + pub fn makeAlias(aliasname: *const ::core::ffi::c_char, colnames: *mut List) -> *mut Alias; + pub fn makeRelabelType( + arg: *mut Expr, + rtype: Oid, + rtypmod: int32, + rcollid: Oid, + rformat: CoercionForm::Type, + ) -> *mut RelabelType; + pub fn makeRangeVar( + schemaname: *mut ::core::ffi::c_char, + relname: *mut ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut RangeVar; + pub fn makeTypeName(typnam: *mut ::core::ffi::c_char) -> *mut TypeName; + pub fn makeTypeNameFromNameList(names: *mut List) -> *mut TypeName; + pub fn makeTypeNameFromOid(typeOid: Oid, typmod: int32) -> *mut TypeName; + pub fn makeColumnDef( + colname: *const ::core::ffi::c_char, + typeOid: Oid, + typmod: int32, + collOid: Oid, + ) -> *mut ColumnDef; + pub fn makeFuncExpr( + funcid: Oid, + rettype: Oid, + args: *mut List, + funccollid: Oid, + inputcollid: Oid, + fformat: CoercionForm::Type, + ) -> *mut FuncExpr; + pub fn makeFuncCall( + name: *mut List, + args: *mut List, + funcformat: CoercionForm::Type, + location: ::core::ffi::c_int, + ) -> *mut FuncCall; + pub fn make_opclause( + opno: Oid, + opresulttype: Oid, + opretset: bool, + leftop: *mut Expr, + rightop: *mut Expr, + opcollid: Oid, + inputcollid: Oid, + ) -> *mut Expr; + pub fn make_andclause(andclauses: *mut List) -> *mut Expr; + pub fn make_orclause(orclauses: *mut List) -> *mut Expr; + pub fn make_notclause(notclause: *mut Expr) -> *mut Expr; + pub fn make_and_qual(qual1: *mut Node, qual2: *mut Node) -> *mut Node; + pub fn make_ands_explicit(andclauses: *mut List) -> *mut Expr; + pub fn make_ands_implicit(clause: *mut Expr) -> *mut List; + pub fn makeIndexInfo( + numattrs: ::core::ffi::c_int, + numkeyattrs: ::core::ffi::c_int, + amoid: Oid, + expressions: *mut List, + predicates: *mut List, + unique: bool, + nulls_not_distinct: bool, + isready: bool, + concurrent: bool, + summarizing: bool, + ) -> *mut IndexInfo; + pub fn makeStringConst( + str_: *mut ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn makeDefElem( + name: *mut ::core::ffi::c_char, + arg: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut DefElem; + pub fn makeDefElemExtended( + nameSpace: *mut ::core::ffi::c_char, + name: *mut ::core::ffi::c_char, + arg: *mut Node, + defaction: DefElemAction::Type, + location: ::core::ffi::c_int, + ) -> *mut DefElem; + pub fn makeGroupingSet( + kind: GroupingSetKind::Type, + content: *mut List, + location: ::core::ffi::c_int, + ) -> *mut GroupingSet; + pub fn makeVacuumRelation( + relation: *mut RangeVar, + oid: Oid, + va_cols: *mut List, + ) -> *mut VacuumRelation; + pub fn makeJsonFormat( + type_: JsonFormatType::Type, + encoding: JsonEncoding::Type, + location: ::core::ffi::c_int, + ) -> *mut JsonFormat; + pub fn makeJsonValueExpr( + raw_expr: *mut Expr, + formatted_expr: *mut Expr, + format: *mut JsonFormat, + ) -> *mut JsonValueExpr; + pub fn makeJsonKeyValue(key: *mut Node, value: *mut Node) -> *mut Node; + pub fn makeJsonIsPredicate( + expr: *mut Node, + format: *mut JsonFormat, + item_type: JsonValueType::Type, + unique_keys: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn makeJsonBehavior( + btype: JsonBehaviorType::Type, + expr: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut JsonBehavior; + pub fn makeJsonTablePath( + pathvalue: *mut Const, + pathname: *mut ::core::ffi::c_char, + ) -> *mut JsonTablePath; + pub fn makeJsonTablePathSpec( + string: *mut ::core::ffi::c_char, + name: *mut ::core::ffi::c_char, + string_location: ::core::ffi::c_int, + name_location: ::core::ffi::c_int, + ) -> *mut JsonTablePathSpec; + pub fn exprType(expr: *const Node) -> Oid; + pub fn exprTypmod(expr: *const Node) -> int32; + pub fn exprIsLengthCoercion(expr: *const Node, coercedTypmod: *mut int32) -> bool; + pub fn applyRelabelType( + arg: *mut Node, + rtype: Oid, + rtypmod: int32, + rcollid: Oid, + rformat: CoercionForm::Type, + rlocation: ::core::ffi::c_int, + overwrite_ok: bool, + ) -> *mut Node; + pub fn relabel_to_typmod(expr: *mut Node, typmod: int32) -> *mut Node; + pub fn strip_implicit_coercions(node: *mut Node) -> *mut Node; + pub fn expression_returns_set(clause: *mut Node) -> bool; + pub fn exprCollation(expr: *const Node) -> Oid; + pub fn exprInputCollation(expr: *const Node) -> Oid; + pub fn exprSetCollation(expr: *mut Node, collation: Oid); + pub fn exprSetInputCollation(expr: *mut Node, inputcollation: Oid); + pub fn exprLocation(expr: *const Node) -> ::core::ffi::c_int; + pub fn fix_opfuncids(node: *mut Node); + pub fn set_opfuncid(opexpr: *mut OpExpr); + pub fn set_sa_opfuncid(opexpr: *mut ScalarArrayOpExpr); + pub fn check_functions_in_node( + node: *mut Node, + checker: check_function_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn expression_tree_walker_impl( + node: *mut Node, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn expression_tree_mutator_impl( + node: *mut Node, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + ) -> *mut Node; + pub fn query_tree_walker_impl( + query: *mut Query, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn query_tree_mutator_impl( + query: *mut Query, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> *mut Query; + pub fn range_table_walker_impl( + rtable: *mut List, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn range_table_mutator_impl( + rtable: *mut List, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> *mut List; + pub fn range_table_entry_walker_impl( + rte: *mut RangeTblEntry, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn query_or_expression_tree_walker_impl( + node: *mut Node, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn query_or_expression_tree_mutator_impl( + node: *mut Node, + mutator: tree_mutator_callback, + context: *mut ::core::ffi::c_void, + flags: ::core::ffi::c_int, + ) -> *mut Node; + pub fn raw_expression_tree_walker_impl( + node: *mut Node, + walker: tree_walker_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn planstate_tree_walker_impl( + planstate: *mut PlanState, + walker: planstate_tree_walker_callback, + context: *mut ::core::ffi::c_void, + ) -> bool; + pub fn print(obj: *const ::core::ffi::c_void); + pub fn pprint(obj: *const ::core::ffi::c_void); + pub fn elog_node_display( + lev: ::core::ffi::c_int, + title: *const ::core::ffi::c_char, + obj: *const ::core::ffi::c_void, + pretty: bool, + ); + pub fn format_node_dump(dump: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn pretty_format_node_dump(dump: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn print_rt(rtable: *const List); + pub fn print_expr(expr: *const Node, rtable: *const List); + pub fn print_pathkeys(pathkeys: *const List, rtable: *const List); + pub fn print_tl(tlist: *const List, rtable: *const List); + pub fn print_slot(slot: *mut TupleTableSlot); + pub fn make_append_rel_info( + parentrel: Relation, + childrel: Relation, + parentRTindex: Index, + childRTindex: Index, + ) -> *mut AppendRelInfo; + pub fn adjust_appendrel_attrs( + root: *mut PlannerInfo, + node: *mut Node, + nappinfos: ::core::ffi::c_int, + appinfos: *mut *mut AppendRelInfo, + ) -> *mut Node; + pub fn adjust_appendrel_attrs_multilevel( + root: *mut PlannerInfo, + node: *mut Node, + childrel: *mut RelOptInfo, + parentrel: *mut RelOptInfo, + ) -> *mut Node; + pub fn adjust_child_relids( + relids: Relids, + nappinfos: ::core::ffi::c_int, + appinfos: *mut *mut AppendRelInfo, + ) -> Relids; + pub fn adjust_child_relids_multilevel( + root: *mut PlannerInfo, + relids: Relids, + childrel: *mut RelOptInfo, + parentrel: *mut RelOptInfo, + ) -> Relids; + pub fn adjust_inherited_attnums(attnums: *mut List, context: *mut AppendRelInfo) -> *mut List; + pub fn adjust_inherited_attnums_multilevel( + root: *mut PlannerInfo, + attnums: *mut List, + child_relid: Index, + top_parent_relid: Index, + ) -> *mut List; + pub fn get_translated_update_targetlist( + root: *mut PlannerInfo, + relid: Index, + processed_tlist: *mut *mut List, + update_colnos: *mut *mut List, + ); + pub fn find_appinfos_by_relids( + root: *mut PlannerInfo, + relids: Relids, + nappinfos: *mut ::core::ffi::c_int, + ) -> *mut *mut AppendRelInfo; + pub fn add_row_identity_var( + root: *mut PlannerInfo, + orig_var: *mut Var, + rtindex: Index, + rowid_name: *const ::core::ffi::c_char, + ); + pub fn add_row_identity_columns( + root: *mut PlannerInfo, + rtindex: Index, + target_rte: *mut RangeTblEntry, + target_relation: Relation, + ); + pub fn distribute_row_identity_vars(root: *mut PlannerInfo); + pub fn contain_agg_clause(clause: *mut Node) -> bool; + pub fn contain_window_function(clause: *mut Node) -> bool; + pub fn find_window_functions(clause: *mut Node, maxWinRef: Index) -> *mut WindowFuncLists; + pub fn expression_returns_set_rows(root: *mut PlannerInfo, clause: *mut Node) -> f64; + pub fn contain_subplans(clause: *mut Node) -> bool; + pub fn max_parallel_hazard(parse: *mut Query) -> ::core::ffi::c_char; + pub fn is_parallel_safe(root: *mut PlannerInfo, node: *mut Node) -> bool; + pub fn contain_nonstrict_functions(clause: *mut Node) -> bool; + pub fn contain_exec_param(clause: *mut Node, param_ids: *mut List) -> bool; + pub fn contain_leaked_vars(clause: *mut Node) -> bool; + pub fn find_nonnullable_rels(clause: *mut Node) -> Relids; + pub fn find_nonnullable_vars(clause: *mut Node) -> *mut List; + pub fn find_forced_null_vars(node: *mut Node) -> *mut List; + pub fn find_forced_null_var(node: *mut Node) -> *mut Var; + pub fn is_pseudo_constant_clause(clause: *mut Node) -> bool; + pub fn is_pseudo_constant_clause_relids(clause: *mut Node, relids: Relids) -> bool; + pub fn NumRelids(root: *mut PlannerInfo, clause: *mut Node) -> ::core::ffi::c_int; + pub fn CommuteOpExpr(clause: *mut OpExpr); + pub fn inline_set_returning_function( + root: *mut PlannerInfo, + rte: *mut RangeTblEntry, + ) -> *mut Query; + pub fn pull_paramids(expr: *mut Expr) -> *mut Bitmapset; + pub static mut disable_cost: Cost; + pub static mut max_parallel_workers_per_gather: ::core::ffi::c_int; + pub static mut enable_seqscan: bool; + pub static mut enable_indexscan: bool; + pub static mut enable_indexonlyscan: bool; + pub static mut enable_bitmapscan: bool; + pub static mut enable_tidscan: bool; + pub static mut enable_sort: bool; + pub static mut enable_incremental_sort: bool; + pub static mut enable_hashagg: bool; + pub static mut enable_nestloop: bool; + pub static mut enable_material: bool; + pub static mut enable_memoize: bool; + pub static mut enable_mergejoin: bool; + pub static mut enable_hashjoin: bool; + pub static mut enable_gathermerge: bool; + pub static mut enable_partitionwise_join: bool; + pub static mut enable_partitionwise_aggregate: bool; + pub static mut enable_parallel_append: bool; + pub static mut enable_parallel_hash: bool; + pub static mut enable_partition_pruning: bool; + pub static mut enable_presorted_aggregate: bool; + pub static mut enable_async_append: bool; + pub static mut constraint_exclusion: ::core::ffi::c_int; + pub fn index_pages_fetched( + tuples_fetched: f64, + pages: BlockNumber, + index_pages: f64, + root: *mut PlannerInfo, + ) -> f64; + pub fn cost_seqscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_samplescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_index( + path: *mut IndexPath, + root: *mut PlannerInfo, + loop_count: f64, + partial_path: bool, + ); + pub fn cost_bitmap_heap_scan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + bitmapqual: *mut Path, + loop_count: f64, + ); + pub fn cost_bitmap_and_node(path: *mut BitmapAndPath, root: *mut PlannerInfo); + pub fn cost_bitmap_or_node(path: *mut BitmapOrPath, root: *mut PlannerInfo); + pub fn cost_bitmap_tree_node(path: *mut Path, cost: *mut Cost, selec: *mut Selectivity); + pub fn cost_tidscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + tidquals: *mut List, + param_info: *mut ParamPathInfo, + ); + pub fn cost_tidrangescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + tidrangequals: *mut List, + param_info: *mut ParamPathInfo, + ); + pub fn cost_subqueryscan( + path: *mut SubqueryScanPath, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + trivial_pathtarget: bool, + ); + pub fn cost_functionscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_valuesscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_tablefuncscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_ctescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_namedtuplestorescan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_resultscan( + path: *mut Path, + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + ); + pub fn cost_recursive_union(runion: *mut Path, nrterm: *mut Path, rterm: *mut Path); + pub fn cost_sort( + path: *mut Path, + root: *mut PlannerInfo, + pathkeys: *mut List, + input_cost: Cost, + tuples: f64, + width: ::core::ffi::c_int, + comparison_cost: Cost, + sort_mem: ::core::ffi::c_int, + limit_tuples: f64, + ); + pub fn cost_incremental_sort( + path: *mut Path, + root: *mut PlannerInfo, + pathkeys: *mut List, + presorted_keys: ::core::ffi::c_int, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + width: ::core::ffi::c_int, + comparison_cost: Cost, + sort_mem: ::core::ffi::c_int, + limit_tuples: f64, + ); + pub fn cost_append(apath: *mut AppendPath); + pub fn cost_merge_append( + path: *mut Path, + root: *mut PlannerInfo, + pathkeys: *mut List, + n_streams: ::core::ffi::c_int, + input_startup_cost: Cost, + input_total_cost: Cost, + tuples: f64, + ); + pub fn cost_material( + path: *mut Path, + input_startup_cost: Cost, + input_total_cost: Cost, + tuples: f64, + width: ::core::ffi::c_int, + ); + pub fn cost_agg( + path: *mut Path, + root: *mut PlannerInfo, + aggstrategy: AggStrategy::Type, + aggcosts: *const AggClauseCosts, + numGroupCols: ::core::ffi::c_int, + numGroups: f64, + quals: *mut List, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + input_width: f64, + ); + pub fn cost_windowagg( + path: *mut Path, + root: *mut PlannerInfo, + windowFuncs: *mut List, + winclause: *mut WindowClause, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + ); + pub fn cost_group( + path: *mut Path, + root: *mut PlannerInfo, + numGroupCols: ::core::ffi::c_int, + numGroups: f64, + quals: *mut List, + input_startup_cost: Cost, + input_total_cost: Cost, + input_tuples: f64, + ); + pub fn initial_cost_nestloop( + root: *mut PlannerInfo, + workspace: *mut JoinCostWorkspace, + jointype: JoinType::Type, + outer_path: *mut Path, + inner_path: *mut Path, + extra: *mut JoinPathExtraData, + ); + pub fn final_cost_nestloop( + root: *mut PlannerInfo, + path: *mut NestPath, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + ); + pub fn initial_cost_mergejoin( + root: *mut PlannerInfo, + workspace: *mut JoinCostWorkspace, + jointype: JoinType::Type, + mergeclauses: *mut List, + outer_path: *mut Path, + inner_path: *mut Path, + outersortkeys: *mut List, + innersortkeys: *mut List, + extra: *mut JoinPathExtraData, + ); + pub fn final_cost_mergejoin( + root: *mut PlannerInfo, + path: *mut MergePath, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + ); + pub fn initial_cost_hashjoin( + root: *mut PlannerInfo, + workspace: *mut JoinCostWorkspace, + jointype: JoinType::Type, + hashclauses: *mut List, + outer_path: *mut Path, + inner_path: *mut Path, + extra: *mut JoinPathExtraData, + parallel_hash: bool, + ); + pub fn final_cost_hashjoin( + root: *mut PlannerInfo, + path: *mut HashPath, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + ); + pub fn cost_gather( + path: *mut GatherPath, + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + rows: *mut f64, + ); + pub fn cost_gather_merge( + path: *mut GatherMergePath, + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + param_info: *mut ParamPathInfo, + input_startup_cost: Cost, + input_total_cost: Cost, + rows: *mut f64, + ); + pub fn cost_subplan(root: *mut PlannerInfo, subplan: *mut SubPlan, plan: *mut Plan); + pub fn cost_qual_eval(cost: *mut QualCost, quals: *mut List, root: *mut PlannerInfo); + pub fn cost_qual_eval_node(cost: *mut QualCost, qual: *mut Node, root: *mut PlannerInfo); + pub fn compute_semi_anti_join_factors( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + restrictlist: *mut List, + semifactors: *mut SemiAntiJoinFactors, + ); + pub fn set_baserel_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn get_parameterized_baserel_size( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + param_clauses: *mut List, + ) -> f64; + pub fn get_parameterized_joinrel_size( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + outer_path: *mut Path, + inner_path: *mut Path, + sjinfo: *mut SpecialJoinInfo, + restrict_clauses: *mut List, + ) -> f64; + pub fn set_joinrel_size_estimates( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + sjinfo: *mut SpecialJoinInfo, + restrictlist: *mut List, + ); + pub fn set_subquery_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_function_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_values_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_cte_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo, cte_rows: f64); + pub fn set_tablefunc_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_namedtuplestore_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_result_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_foreign_size_estimates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn set_pathtarget_cost_width( + root: *mut PlannerInfo, + target: *mut PathTarget, + ) -> *mut PathTarget; + pub fn compute_bitmap_pages( + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + bitmapqual: *mut Path, + loop_count: f64, + cost_p: *mut Cost, + tuples_p: *mut f64, + ) -> f64; + pub fn clause_selectivity( + root: *mut PlannerInfo, + clause: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn clause_selectivity_ext( + root: *mut PlannerInfo, + clause: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + use_extended_stats: bool, + ) -> Selectivity; + pub fn clauselist_selectivity( + root: *mut PlannerInfo, + clauses: *mut List, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn clauselist_selectivity_ext( + root: *mut PlannerInfo, + clauses: *mut List, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + use_extended_stats: bool, + ) -> Selectivity; + pub static mut seq_page_cost: f64; + pub static mut random_page_cost: f64; + pub static mut cpu_tuple_cost: f64; + pub static mut cpu_index_tuple_cost: f64; + pub static mut cpu_operator_cost: f64; + pub static mut parallel_tuple_cost: f64; + pub static mut parallel_setup_cost: f64; + pub static mut recursive_worktable_factor: f64; + pub static mut effective_cache_size: ::core::ffi::c_int; + pub fn clamp_row_est(nrows: f64) -> f64; + pub fn clamp_width_est(tuple_width: int64) -> int32; + pub fn clamp_cardinality_to_long(x: Cardinality) -> ::core::ffi::c_long; + pub fn is_pseudo_constant_for_index( + root: *mut PlannerInfo, + expr: *mut Node, + index: *mut IndexOptInfo, + ) -> bool; + pub static mut debug_parallel_query: ::core::ffi::c_int; + pub static mut parallel_leader_participation: bool; + pub fn planner( + parse: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: *mut ParamListInfoData, + ) -> *mut PlannedStmt; + pub fn expression_planner(expr: *mut Expr) -> *mut Expr; + pub fn expression_planner_with_deps( + expr: *mut Expr, + relationOids: *mut *mut List, + invalItems: *mut *mut List, + ) -> *mut Expr; + pub fn plan_cluster_use_sort(tableOid: Oid, indexOid: Oid) -> bool; + pub fn plan_create_index_workers(tableOid: Oid, indexOid: Oid) -> ::core::ffi::c_int; + pub fn extract_query_dependencies( + query: *mut Node, + relationOids: *mut *mut List, + invalItems: *mut *mut List, + hasRowSecurity: *mut bool, + ); + pub fn negate_clause(node: *mut Node) -> *mut Node; + pub fn canonicalize_qual(qual: *mut Expr, is_check: bool) -> *mut Expr; + pub fn contain_mutable_functions(clause: *mut Node) -> bool; + pub fn contain_mutable_functions_after_planning(expr: *mut Expr) -> bool; + pub fn contain_volatile_functions(clause: *mut Node) -> bool; + pub fn contain_volatile_functions_after_planning(expr: *mut Expr) -> bool; + pub fn contain_volatile_functions_not_nextval(clause: *mut Node) -> bool; + pub fn eval_const_expressions(root: *mut PlannerInfo, node: *mut Node) -> *mut Node; + pub fn convert_saop_to_hashed_saop(node: *mut Node); + pub fn estimate_expression_value(root: *mut PlannerInfo, node: *mut Node) -> *mut Node; + pub fn evaluate_expr( + expr: *mut Expr, + result_type: Oid, + result_typmod: int32, + result_collation: Oid, + ) -> *mut Expr; + pub fn expand_function_arguments( + args: *mut List, + include_out_arguments: bool, + result_type: Oid, + func_tuple: *mut HeapTupleData, + ) -> *mut List; + pub fn predicate_implied_by( + predicate_list: *mut List, + clause_list: *mut List, + weak: bool, + ) -> bool; + pub fn predicate_refuted_by( + predicate_list: *mut List, + clause_list: *mut List, + weak: bool, + ) -> bool; + pub fn count_nonjunk_tlist_entries(tlist: *mut List) -> ::core::ffi::c_int; + pub fn get_sortgroupref_tle(sortref: Index, targetList: *mut List) -> *mut TargetEntry; + pub fn get_sortgroupclause_tle( + sgClause: *mut SortGroupClause, + targetList: *mut List, + ) -> *mut TargetEntry; + pub fn get_sortgroupclause_expr( + sgClause: *mut SortGroupClause, + targetList: *mut List, + ) -> *mut Node; + pub fn get_sortgrouplist_exprs(sgClauses: *mut List, targetList: *mut List) -> *mut List; + pub fn get_sortgroupref_clause(sortref: Index, clauses: *mut List) -> *mut SortGroupClause; + pub fn get_sortgroupref_clause_noerr( + sortref: Index, + clauses: *mut List, + ) -> *mut SortGroupClause; + pub fn pull_varnos(root: *mut PlannerInfo, node: *mut Node) -> *mut Bitmapset; + pub fn pull_varnos_of_level( + root: *mut PlannerInfo, + node: *mut Node, + levelsup: ::core::ffi::c_int, + ) -> *mut Bitmapset; + pub fn pull_varattnos(node: *mut Node, varno: Index, varattnos: *mut *mut Bitmapset); + pub fn pull_vars_of_level(node: *mut Node, levelsup: ::core::ffi::c_int) -> *mut List; + pub fn contain_var_clause(node: *mut Node) -> bool; + pub fn contain_vars_of_level(node: *mut Node, levelsup: ::core::ffi::c_int) -> bool; + pub fn locate_var_of_level(node: *mut Node, levelsup: ::core::ffi::c_int) + -> ::core::ffi::c_int; + pub fn pull_var_clause(node: *mut Node, flags: ::core::ffi::c_int) -> *mut List; + pub fn flatten_join_alias_vars( + root: *mut PlannerInfo, + query: *mut Query, + node: *mut Node, + ) -> *mut Node; + pub fn compare_path_costs( + path1: *mut Path, + path2: *mut Path, + criterion: CostSelector::Type, + ) -> ::core::ffi::c_int; + pub fn compare_fractional_path_costs( + path1: *mut Path, + path2: *mut Path, + fraction: f64, + ) -> ::core::ffi::c_int; + pub fn set_cheapest(parent_rel: *mut RelOptInfo); + pub fn add_path(parent_rel: *mut RelOptInfo, new_path: *mut Path); + pub fn add_path_precheck( + parent_rel: *mut RelOptInfo, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + required_outer: Relids, + ) -> bool; + pub fn add_partial_path(parent_rel: *mut RelOptInfo, new_path: *mut Path); + pub fn add_partial_path_precheck( + parent_rel: *mut RelOptInfo, + total_cost: Cost, + pathkeys: *mut List, + ) -> bool; + pub fn create_seqscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + parallel_workers: ::core::ffi::c_int, + ) -> *mut Path; + pub fn create_samplescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_index_path( + root: *mut PlannerInfo, + index: *mut IndexOptInfo, + indexclauses: *mut List, + indexorderbys: *mut List, + indexorderbycols: *mut List, + pathkeys: *mut List, + indexscandir: ScanDirection::Type, + indexonly: bool, + required_outer: Relids, + loop_count: f64, + partial_path: bool, + ) -> *mut IndexPath; + pub fn create_bitmap_heap_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapqual: *mut Path, + required_outer: Relids, + loop_count: f64, + parallel_degree: ::core::ffi::c_int, + ) -> *mut BitmapHeapPath; + pub fn create_bitmap_and_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapquals: *mut List, + ) -> *mut BitmapAndPath; + pub fn create_bitmap_or_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapquals: *mut List, + ) -> *mut BitmapOrPath; + pub fn create_tidscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + tidquals: *mut List, + required_outer: Relids, + ) -> *mut TidPath; + pub fn create_tidrangescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + tidrangequals: *mut List, + required_outer: Relids, + ) -> *mut TidRangePath; + pub fn create_append_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpaths: *mut List, + partial_subpaths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + parallel_workers: ::core::ffi::c_int, + parallel_aware: bool, + rows: f64, + ) -> *mut AppendPath; + pub fn create_merge_append_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpaths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut MergeAppendPath; + pub fn create_group_result_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + havingqual: *mut List, + ) -> *mut GroupResultPath; + pub fn create_material_path(rel: *mut RelOptInfo, subpath: *mut Path) -> *mut MaterialPath; + pub fn create_memoize_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + param_exprs: *mut List, + hash_operators: *mut List, + singlerow: bool, + binary_mode: bool, + calls: f64, + ) -> *mut MemoizePath; + pub fn create_unique_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + sjinfo: *mut SpecialJoinInfo, + ) -> *mut UniquePath; + pub fn create_gather_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + required_outer: Relids, + rows: *mut f64, + ) -> *mut GatherPath; + pub fn create_gather_merge_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + pathkeys: *mut List, + required_outer: Relids, + rows: *mut f64, + ) -> *mut GatherMergePath; + pub fn create_subqueryscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + trivial_pathtarget: bool, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut SubqueryScanPath; + pub fn create_functionscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut Path; + pub fn create_valuesscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_tablefuncscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_ctescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut Path; + pub fn create_namedtuplestorescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_resultscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_worktablescan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut Path; + pub fn create_foreignscan_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + rows: f64, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + required_outer: Relids, + fdw_outerpath: *mut Path, + fdw_restrictinfo: *mut List, + fdw_private: *mut List, + ) -> *mut ForeignPath; + pub fn create_foreign_join_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + rows: f64, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + required_outer: Relids, + fdw_outerpath: *mut Path, + fdw_restrictinfo: *mut List, + fdw_private: *mut List, + ) -> *mut ForeignPath; + pub fn create_foreign_upper_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + rows: f64, + startup_cost: Cost, + total_cost: Cost, + pathkeys: *mut List, + fdw_outerpath: *mut Path, + fdw_restrictinfo: *mut List, + fdw_private: *mut List, + ) -> *mut ForeignPath; + pub fn calc_nestloop_required_outer( + outerrelids: Relids, + outer_paramrels: Relids, + innerrelids: Relids, + inner_paramrels: Relids, + ) -> Relids; + pub fn calc_non_nestloop_required_outer(outer_path: *mut Path, inner_path: *mut Path) + -> Relids; + pub fn create_nestloop_path( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + outer_path: *mut Path, + inner_path: *mut Path, + restrict_clauses: *mut List, + pathkeys: *mut List, + required_outer: Relids, + ) -> *mut NestPath; + pub fn create_mergejoin_path( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + outer_path: *mut Path, + inner_path: *mut Path, + restrict_clauses: *mut List, + pathkeys: *mut List, + required_outer: Relids, + mergeclauses: *mut List, + outersortkeys: *mut List, + innersortkeys: *mut List, + ) -> *mut MergePath; + pub fn create_hashjoin_path( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + workspace: *mut JoinCostWorkspace, + extra: *mut JoinPathExtraData, + outer_path: *mut Path, + inner_path: *mut Path, + parallel_hash: bool, + restrict_clauses: *mut List, + required_outer: Relids, + hashclauses: *mut List, + ) -> *mut HashPath; + pub fn create_projection_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + ) -> *mut ProjectionPath; + pub fn apply_projection_to_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + path: *mut Path, + target: *mut PathTarget, + ) -> *mut Path; + pub fn create_set_projection_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + ) -> *mut ProjectSetPath; + pub fn create_sort_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + pathkeys: *mut List, + limit_tuples: f64, + ) -> *mut SortPath; + pub fn create_incremental_sort_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + pathkeys: *mut List, + presorted_keys: ::core::ffi::c_int, + limit_tuples: f64, + ) -> *mut IncrementalSortPath; + pub fn create_group_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + groupClause: *mut List, + qual: *mut List, + numGroups: f64, + ) -> *mut GroupPath; + pub fn create_upper_unique_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + numCols: ::core::ffi::c_int, + numGroups: f64, + ) -> *mut UpperUniquePath; + pub fn create_agg_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + aggstrategy: AggStrategy::Type, + aggsplit: AggSplit::Type, + groupClause: *mut List, + qual: *mut List, + aggcosts: *const AggClauseCosts, + numGroups: f64, + ) -> *mut AggPath; + pub fn create_groupingsets_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + having_qual: *mut List, + aggstrategy: AggStrategy::Type, + rollups: *mut List, + agg_costs: *const AggClauseCosts, + ) -> *mut GroupingSetsPath; + pub fn create_minmaxagg_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + target: *mut PathTarget, + mmaggregates: *mut List, + quals: *mut List, + ) -> *mut MinMaxAggPath; + pub fn create_windowagg_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + target: *mut PathTarget, + windowFuncs: *mut List, + runCondition: *mut List, + winclause: *mut WindowClause, + qual: *mut List, + topwindow: bool, + ) -> *mut WindowAggPath; + pub fn create_setop_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + cmd: SetOpCmd::Type, + strategy: SetOpStrategy::Type, + distinctList: *mut List, + flagColIdx: AttrNumber, + firstFlag: ::core::ffi::c_int, + numGroups: f64, + outputRows: f64, + ) -> *mut SetOpPath; + pub fn create_recursiveunion_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + leftpath: *mut Path, + rightpath: *mut Path, + target: *mut PathTarget, + distinctList: *mut List, + wtParam: ::core::ffi::c_int, + numGroups: f64, + ) -> *mut RecursiveUnionPath; + pub fn create_lockrows_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + rowMarks: *mut List, + epqParam: ::core::ffi::c_int, + ) -> *mut LockRowsPath; + pub fn create_modifytable_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + operation: CmdType::Type, + canSetTag: bool, + nominalRelation: Index, + rootRelation: Index, + partColsUpdated: bool, + resultRelations: *mut List, + updateColnosLists: *mut List, + withCheckOptionLists: *mut List, + returningLists: *mut List, + rowMarks: *mut List, + onconflict: *mut OnConflictExpr, + mergeActionLists: *mut List, + mergeJoinConditions: *mut List, + epqParam: ::core::ffi::c_int, + ) -> *mut ModifyTablePath; + pub fn create_limit_path( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subpath: *mut Path, + limitOffset: *mut Node, + limitCount: *mut Node, + limitOption: LimitOption::Type, + offset_est: int64, + count_est: int64, + ) -> *mut LimitPath; + pub fn adjust_limit_rows_costs( + rows: *mut f64, + startup_cost: *mut Cost, + total_cost: *mut Cost, + offset_est: int64, + count_est: int64, + ); + pub fn reparameterize_path( + root: *mut PlannerInfo, + path: *mut Path, + required_outer: Relids, + loop_count: f64, + ) -> *mut Path; + pub fn reparameterize_path_by_child( + root: *mut PlannerInfo, + path: *mut Path, + child_rel: *mut RelOptInfo, + ) -> *mut Path; + pub fn path_is_reparameterizable_by_child(path: *mut Path, child_rel: *mut RelOptInfo) -> bool; + pub fn setup_simple_rel_arrays(root: *mut PlannerInfo); + pub fn expand_planner_arrays(root: *mut PlannerInfo, add_size: ::core::ffi::c_int); + pub fn build_simple_rel( + root: *mut PlannerInfo, + relid: ::core::ffi::c_int, + parent: *mut RelOptInfo, + ) -> *mut RelOptInfo; + pub fn find_base_rel(root: *mut PlannerInfo, relid: ::core::ffi::c_int) -> *mut RelOptInfo; + pub fn find_base_rel_noerr( + root: *mut PlannerInfo, + relid: ::core::ffi::c_int, + ) -> *mut RelOptInfo; + pub fn find_base_rel_ignore_join( + root: *mut PlannerInfo, + relid: ::core::ffi::c_int, + ) -> *mut RelOptInfo; + pub fn find_join_rel(root: *mut PlannerInfo, relids: Relids) -> *mut RelOptInfo; + pub fn build_join_rel( + root: *mut PlannerInfo, + joinrelids: Relids, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + sjinfo: *mut SpecialJoinInfo, + pushed_down_joins: *mut List, + restrictlist_ptr: *mut *mut List, + ) -> *mut RelOptInfo; + pub fn min_join_parameterization( + root: *mut PlannerInfo, + joinrelids: Relids, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + ) -> Relids; + pub fn fetch_upper_rel( + root: *mut PlannerInfo, + kind: UpperRelationKind::Type, + relids: Relids, + ) -> *mut RelOptInfo; + pub fn find_childrel_parents(root: *mut PlannerInfo, rel: *mut RelOptInfo) -> Relids; + pub fn get_baserel_parampathinfo( + root: *mut PlannerInfo, + baserel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut ParamPathInfo; + pub fn get_joinrel_parampathinfo( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outer_path: *mut Path, + inner_path: *mut Path, + sjinfo: *mut SpecialJoinInfo, + required_outer: Relids, + restrict_clauses: *mut *mut List, + ) -> *mut ParamPathInfo; + pub fn get_appendrel_parampathinfo( + appendrel: *mut RelOptInfo, + required_outer: Relids, + ) -> *mut ParamPathInfo; + pub fn find_param_path_info(rel: *mut RelOptInfo, required_outer: Relids) + -> *mut ParamPathInfo; + pub fn get_param_path_clause_serials(path: *mut Path) -> *mut Bitmapset; + pub fn build_child_join_rel( + root: *mut PlannerInfo, + outer_rel: *mut RelOptInfo, + inner_rel: *mut RelOptInfo, + parent_joinrel: *mut RelOptInfo, + restrictlist: *mut List, + sjinfo: *mut SpecialJoinInfo, + ) -> *mut RelOptInfo; + pub static mut enable_geqo: bool; + pub static mut geqo_threshold: ::core::ffi::c_int; + pub static mut min_parallel_table_scan_size: ::core::ffi::c_int; + pub static mut min_parallel_index_scan_size: ::core::ffi::c_int; + pub static mut enable_group_by_reordering: bool; + pub static mut set_rel_pathlist_hook: set_rel_pathlist_hook_type; + pub static mut set_join_pathlist_hook: set_join_pathlist_hook_type; + pub static mut join_search_hook: join_search_hook_type; + pub fn make_one_rel(root: *mut PlannerInfo, joinlist: *mut List) -> *mut RelOptInfo; + pub fn standard_join_search( + root: *mut PlannerInfo, + levels_needed: ::core::ffi::c_int, + initial_rels: *mut List, + ) -> *mut RelOptInfo; + pub fn generate_gather_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo, override_rows: bool); + pub fn generate_useful_gather_paths( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + override_rows: bool, + ); + pub fn compute_parallel_worker( + rel: *mut RelOptInfo, + heap_pages: f64, + index_pages: f64, + max_workers: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn create_partial_bitmap_paths( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + bitmapqual: *mut Path, + ); + pub fn generate_partitionwise_join_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn create_index_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn relation_has_unique_index_for( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + restrictlist: *mut List, + exprlist: *mut List, + oprlist: *mut List, + ) -> bool; + pub fn indexcol_is_bool_constant_for_query( + root: *mut PlannerInfo, + index: *mut IndexOptInfo, + indexcol: ::core::ffi::c_int, + ) -> bool; + pub fn match_index_to_operand( + operand: *mut Node, + indexcol: ::core::ffi::c_int, + index: *mut IndexOptInfo, + ) -> bool; + pub fn check_index_predicates(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn create_tidscan_paths(root: *mut PlannerInfo, rel: *mut RelOptInfo); + pub fn add_paths_to_joinrel( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + outerrel: *mut RelOptInfo, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + restrictlist: *mut List, + ); + pub fn join_search_one_level(root: *mut PlannerInfo, level: ::core::ffi::c_int); + pub fn make_join_rel( + root: *mut PlannerInfo, + rel1: *mut RelOptInfo, + rel2: *mut RelOptInfo, + ) -> *mut RelOptInfo; + pub fn add_outer_joins_to_relids( + root: *mut PlannerInfo, + input_relids: Relids, + sjinfo: *mut SpecialJoinInfo, + pushed_down_joins: *mut *mut List, + ) -> Relids; + pub fn have_join_order_restriction( + root: *mut PlannerInfo, + rel1: *mut RelOptInfo, + rel2: *mut RelOptInfo, + ) -> bool; + pub fn have_dangerous_phv( + root: *mut PlannerInfo, + outer_relids: Relids, + inner_params: Relids, + ) -> bool; + pub fn mark_dummy_rel(rel: *mut RelOptInfo); + pub fn init_dummy_sjinfo( + sjinfo: *mut SpecialJoinInfo, + left_relids: Relids, + right_relids: Relids, + ); + pub fn process_equivalence( + root: *mut PlannerInfo, + p_restrictinfo: *mut *mut RestrictInfo, + jdomain: *mut JoinDomain, + ) -> bool; + pub fn canonicalize_ec_expression( + expr: *mut Expr, + req_type: Oid, + req_collation: Oid, + ) -> *mut Expr; + pub fn reconsider_outer_join_clauses(root: *mut PlannerInfo); + pub fn get_eclass_for_sort_expr( + root: *mut PlannerInfo, + expr: *mut Expr, + opfamilies: *mut List, + opcintype: Oid, + collation: Oid, + sortref: Index, + rel: Relids, + create_it: bool, + ) -> *mut EquivalenceClass; + pub fn find_ec_member_matching_expr( + ec: *mut EquivalenceClass, + expr: *mut Expr, + relids: Relids, + ) -> *mut EquivalenceMember; + pub fn find_computable_ec_member( + root: *mut PlannerInfo, + ec: *mut EquivalenceClass, + exprs: *mut List, + relids: Relids, + require_parallel_safe: bool, + ) -> *mut EquivalenceMember; + pub fn relation_can_be_sorted_early( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + ec: *mut EquivalenceClass, + require_parallel_safe: bool, + ) -> bool; + pub fn generate_base_implied_equalities(root: *mut PlannerInfo); + pub fn generate_join_implied_equalities( + root: *mut PlannerInfo, + join_relids: Relids, + outer_relids: Relids, + inner_rel: *mut RelOptInfo, + sjinfo: *mut SpecialJoinInfo, + ) -> *mut List; + pub fn generate_join_implied_equalities_for_ecs( + root: *mut PlannerInfo, + eclasses: *mut List, + join_relids: Relids, + outer_relids: Relids, + inner_rel: *mut RelOptInfo, + ) -> *mut List; + pub fn exprs_known_equal(root: *mut PlannerInfo, item1: *mut Node, item2: *mut Node) -> bool; + pub fn match_eclasses_to_foreign_key_col( + root: *mut PlannerInfo, + fkinfo: *mut ForeignKeyOptInfo, + colno: ::core::ffi::c_int, + ) -> *mut EquivalenceClass; + pub fn find_derived_clause_for_ec_member( + ec: *mut EquivalenceClass, + em: *mut EquivalenceMember, + ) -> *mut RestrictInfo; + pub fn add_child_rel_equivalences( + root: *mut PlannerInfo, + appinfo: *mut AppendRelInfo, + parent_rel: *mut RelOptInfo, + child_rel: *mut RelOptInfo, + ); + pub fn add_child_join_rel_equivalences( + root: *mut PlannerInfo, + nappinfos: ::core::ffi::c_int, + appinfos: *mut *mut AppendRelInfo, + parent_joinrel: *mut RelOptInfo, + child_joinrel: *mut RelOptInfo, + ); + pub fn add_setop_child_rel_equivalences( + root: *mut PlannerInfo, + child_rel: *mut RelOptInfo, + child_tlist: *mut List, + setop_pathkeys: *mut List, + ); + pub fn generate_implied_equalities_for_column( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + callback: ec_matches_callback_type, + callback_arg: *mut ::core::ffi::c_void, + prohibited_rels: Relids, + ) -> *mut List; + pub fn have_relevant_eclass_joinclause( + root: *mut PlannerInfo, + rel1: *mut RelOptInfo, + rel2: *mut RelOptInfo, + ) -> bool; + pub fn has_relevant_eclass_joinclause(root: *mut PlannerInfo, rel1: *mut RelOptInfo) -> bool; + pub fn eclass_useful_for_merging( + root: *mut PlannerInfo, + eclass: *mut EquivalenceClass, + rel: *mut RelOptInfo, + ) -> bool; + pub fn is_redundant_derived_clause(rinfo: *mut RestrictInfo, clauselist: *mut List) -> bool; + pub fn is_redundant_with_indexclauses( + rinfo: *mut RestrictInfo, + indexclauses: *mut List, + ) -> bool; + pub fn compare_pathkeys(keys1: *mut List, keys2: *mut List) -> PathKeysComparison::Type; + pub fn pathkeys_contained_in(keys1: *mut List, keys2: *mut List) -> bool; + pub fn pathkeys_count_contained_in( + keys1: *mut List, + keys2: *mut List, + n_common: *mut ::core::ffi::c_int, + ) -> bool; + pub fn get_useful_group_keys_orderings(root: *mut PlannerInfo, path: *mut Path) -> *mut List; + pub fn get_cheapest_path_for_pathkeys( + paths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + cost_criterion: CostSelector::Type, + require_parallel_safe: bool, + ) -> *mut Path; + pub fn get_cheapest_fractional_path_for_pathkeys( + paths: *mut List, + pathkeys: *mut List, + required_outer: Relids, + fraction: f64, + ) -> *mut Path; + pub fn get_cheapest_parallel_safe_total_inner(paths: *mut List) -> *mut Path; + pub fn build_index_pathkeys( + root: *mut PlannerInfo, + index: *mut IndexOptInfo, + scandir: ScanDirection::Type, + ) -> *mut List; + pub fn build_partition_pathkeys( + root: *mut PlannerInfo, + partrel: *mut RelOptInfo, + scandir: ScanDirection::Type, + partialkeys: *mut bool, + ) -> *mut List; + pub fn build_expression_pathkey( + root: *mut PlannerInfo, + expr: *mut Expr, + opno: Oid, + rel: Relids, + create_it: bool, + ) -> *mut List; + pub fn convert_subquery_pathkeys( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + subquery_pathkeys: *mut List, + subquery_tlist: *mut List, + ) -> *mut List; + pub fn build_join_pathkeys( + root: *mut PlannerInfo, + joinrel: *mut RelOptInfo, + jointype: JoinType::Type, + outer_pathkeys: *mut List, + ) -> *mut List; + pub fn make_pathkeys_for_sortclauses( + root: *mut PlannerInfo, + sortclauses: *mut List, + tlist: *mut List, + ) -> *mut List; + pub fn make_pathkeys_for_sortclauses_extended( + root: *mut PlannerInfo, + sortclauses: *mut *mut List, + tlist: *mut List, + remove_redundant: bool, + sortable: *mut bool, + set_ec_sortref: bool, + ) -> *mut List; + pub fn initialize_mergeclause_eclasses(root: *mut PlannerInfo, restrictinfo: *mut RestrictInfo); + pub fn update_mergeclause_eclasses(root: *mut PlannerInfo, restrictinfo: *mut RestrictInfo); + pub fn find_mergeclauses_for_outer_pathkeys( + root: *mut PlannerInfo, + pathkeys: *mut List, + restrictinfos: *mut List, + ) -> *mut List; + pub fn select_outer_pathkeys_for_merge( + root: *mut PlannerInfo, + mergeclauses: *mut List, + joinrel: *mut RelOptInfo, + ) -> *mut List; + pub fn make_inner_pathkeys_for_merge( + root: *mut PlannerInfo, + mergeclauses: *mut List, + outer_pathkeys: *mut List, + ) -> *mut List; + pub fn trim_mergeclauses_for_inner_pathkeys( + root: *mut PlannerInfo, + mergeclauses: *mut List, + pathkeys: *mut List, + ) -> *mut List; + pub fn truncate_useless_pathkeys( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + pathkeys: *mut List, + ) -> *mut List; + pub fn has_useful_pathkeys(root: *mut PlannerInfo, rel: *mut RelOptInfo) -> bool; + pub fn append_pathkeys(target: *mut List, source: *mut List) -> *mut List; + pub fn make_canonical_pathkey( + root: *mut PlannerInfo, + eclass: *mut EquivalenceClass, + opfamily: Oid, + strategy: ::core::ffi::c_int, + nulls_first: bool, + ) -> *mut PathKey; + pub fn add_paths_to_append_rel( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + live_childrels: *mut List, + ); + pub static mut get_relation_info_hook: get_relation_info_hook_type; + pub fn get_relation_info( + root: *mut PlannerInfo, + relationObjectId: Oid, + inhparent: bool, + rel: *mut RelOptInfo, + ); + pub fn infer_arbiter_indexes(root: *mut PlannerInfo) -> *mut List; + pub fn estimate_rel_size( + rel: Relation, + attr_widths: *mut int32, + pages: *mut BlockNumber, + tuples: *mut f64, + allvisfrac: *mut f64, + ); + pub fn get_rel_data_width(rel: Relation, attr_widths: *mut int32) -> int32; + pub fn get_relation_data_width(relid: Oid, attr_widths: *mut int32) -> int32; + pub fn relation_excluded_by_constraints( + root: *mut PlannerInfo, + rel: *mut RelOptInfo, + rte: *mut RangeTblEntry, + ) -> bool; + pub fn build_physical_tlist(root: *mut PlannerInfo, rel: *mut RelOptInfo) -> *mut List; + pub fn has_unique_index(rel: *mut RelOptInfo, attno: AttrNumber) -> bool; + pub fn restriction_selectivity( + root: *mut PlannerInfo, + operatorid: Oid, + args: *mut List, + inputcollid: Oid, + varRelid: ::core::ffi::c_int, + ) -> Selectivity; + pub fn join_selectivity( + root: *mut PlannerInfo, + operatorid: Oid, + args: *mut List, + inputcollid: Oid, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn function_selectivity( + root: *mut PlannerInfo, + funcid: Oid, + args: *mut List, + inputcollid: Oid, + is_join: bool, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn add_function_cost( + root: *mut PlannerInfo, + funcid: Oid, + node: *mut Node, + cost: *mut QualCost, + ); + pub fn get_function_rows(root: *mut PlannerInfo, funcid: Oid, node: *mut Node) -> f64; + pub fn has_row_triggers(root: *mut PlannerInfo, rti: Index, event: CmdType::Type) -> bool; + pub fn has_stored_generated_columns(root: *mut PlannerInfo, rti: Index) -> bool; + pub fn get_dependent_generated_columns( + root: *mut PlannerInfo, + rti: Index, + target_cols: *mut Bitmapset, + ) -> *mut Bitmapset; + pub static mut cursor_tuple_fraction: f64; + pub fn query_planner( + root: *mut PlannerInfo, + qp_callback: query_pathkeys_callback, + qp_extra: *mut ::core::ffi::c_void, + ) -> *mut RelOptInfo; + pub fn preprocess_minmax_aggregates(root: *mut PlannerInfo); + pub fn create_plan(root: *mut PlannerInfo, best_path: *mut Path) -> *mut Plan; + pub fn make_foreignscan( + qptlist: *mut List, + qpqual: *mut List, + scanrelid: Index, + fdw_exprs: *mut List, + fdw_private: *mut List, + fdw_scan_tlist: *mut List, + fdw_recheck_quals: *mut List, + outer_plan: *mut Plan, + ) -> *mut ForeignScan; + pub fn change_plan_targetlist( + subplan: *mut Plan, + tlist: *mut List, + tlist_parallel_safe: bool, + ) -> *mut Plan; + pub fn materialize_finished_plan(subplan: *mut Plan) -> *mut Plan; + pub fn is_projection_capable_path(path: *mut Path) -> bool; + pub fn is_projection_capable_plan(plan: *mut Plan) -> bool; + pub fn make_sort_from_sortclauses(sortcls: *mut List, lefttree: *mut Plan) -> *mut Sort; + pub fn make_agg( + tlist: *mut List, + qual: *mut List, + aggstrategy: AggStrategy::Type, + aggsplit: AggSplit::Type, + numGroupCols: ::core::ffi::c_int, + grpColIdx: *mut AttrNumber, + grpOperators: *mut Oid, + grpCollations: *mut Oid, + groupingSets: *mut List, + chain: *mut List, + dNumGroups: f64, + transitionSpace: Size, + lefttree: *mut Plan, + ) -> *mut Agg; + pub fn make_limit( + lefttree: *mut Plan, + limitOffset: *mut Node, + limitCount: *mut Node, + limitOption: LimitOption::Type, + uniqNumCols: ::core::ffi::c_int, + uniqColIdx: *mut AttrNumber, + uniqOperators: *mut Oid, + uniqCollations: *mut Oid, + ) -> *mut Limit; + pub static mut from_collapse_limit: ::core::ffi::c_int; + pub static mut join_collapse_limit: ::core::ffi::c_int; + pub fn add_base_rels_to_query(root: *mut PlannerInfo, jtnode: *mut Node); + pub fn add_other_rels_to_query(root: *mut PlannerInfo); + pub fn build_base_rel_tlists(root: *mut PlannerInfo, final_tlist: *mut List); + pub fn add_vars_to_targetlist(root: *mut PlannerInfo, vars: *mut List, where_needed: Relids); + pub fn find_lateral_references(root: *mut PlannerInfo); + pub fn create_lateral_join_info(root: *mut PlannerInfo); + pub fn deconstruct_jointree(root: *mut PlannerInfo) -> *mut List; + pub fn restriction_is_always_true( + root: *mut PlannerInfo, + restrictinfo: *mut RestrictInfo, + ) -> bool; + pub fn restriction_is_always_false( + root: *mut PlannerInfo, + restrictinfo: *mut RestrictInfo, + ) -> bool; + pub fn distribute_restrictinfo_to_rels(root: *mut PlannerInfo, restrictinfo: *mut RestrictInfo); + pub fn process_implied_equality( + root: *mut PlannerInfo, + opno: Oid, + collation: Oid, + item1: *mut Expr, + item2: *mut Expr, + qualscope: Relids, + security_level: Index, + both_const: bool, + ) -> *mut RestrictInfo; + pub fn build_implied_join_equality( + root: *mut PlannerInfo, + opno: Oid, + collation: Oid, + item1: *mut Expr, + item2: *mut Expr, + qualscope: Relids, + security_level: Index, + ) -> *mut RestrictInfo; + pub fn match_foreign_keys_to_quals(root: *mut PlannerInfo); + pub fn remove_useless_joins(root: *mut PlannerInfo, joinlist: *mut List) -> *mut List; + pub fn reduce_unique_semijoins(root: *mut PlannerInfo); + pub fn query_supports_distinctness(query: *mut Query) -> bool; + pub fn query_is_distinct_for(query: *mut Query, colnos: *mut List, opids: *mut List) -> bool; + pub fn innerrel_is_unique( + root: *mut PlannerInfo, + joinrelids: Relids, + outerrelids: Relids, + innerrel: *mut RelOptInfo, + jointype: JoinType::Type, + restrictlist: *mut List, + force_cache: bool, + ) -> bool; + pub fn set_plan_references(root: *mut PlannerInfo, plan: *mut Plan) -> *mut Plan; + pub fn trivial_subqueryscan(plan: *mut SubqueryScan) -> bool; + pub fn find_minmax_agg_replacement_param( + root: *mut PlannerInfo, + aggref: *mut Aggref, + ) -> *mut Param; + pub fn record_plan_function_dependency(root: *mut PlannerInfo, funcid: Oid); + pub fn record_plan_type_dependency(root: *mut PlannerInfo, typid: Oid); + pub fn extract_query_dependencies_walker(node: *mut Node, context: *mut PlannerInfo) -> bool; + pub static mut planner_hook: planner_hook_type; + pub static mut create_upper_paths_hook: create_upper_paths_hook_type; + pub fn standard_planner( + parse: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut PlannedStmt; + pub fn subquery_planner( + glob: *mut PlannerGlobal, + parse: *mut Query, + parent_root: *mut PlannerInfo, + hasRecursion: bool, + tuple_fraction: f64, + setops: *mut SetOperationStmt, + ) -> *mut PlannerInfo; + pub fn select_rowmark_type( + rte: *mut RangeTblEntry, + strength: LockClauseStrength::Type, + ) -> RowMarkType::Type; + pub fn limit_needed(parse: *mut Query) -> bool; + pub fn mark_partial_aggref(agg: *mut Aggref, aggsplit: AggSplit::Type); + pub fn get_cheapest_fractional_path(rel: *mut RelOptInfo, tuple_fraction: f64) -> *mut Path; + pub fn preprocess_phv_expression(root: *mut PlannerInfo, expr: *mut Expr) -> *mut Expr; + pub fn make_restrictinfo( + root: *mut PlannerInfo, + clause: *mut Expr, + is_pushed_down: bool, + has_clone: bool, + is_clone: bool, + pseudoconstant: bool, + security_level: Index, + required_relids: Relids, + incompatible_relids: Relids, + outer_relids: Relids, + ) -> *mut RestrictInfo; + pub fn commute_restrictinfo(rinfo: *mut RestrictInfo, comm_op: Oid) -> *mut RestrictInfo; + pub fn restriction_is_or_clause(restrictinfo: *mut RestrictInfo) -> bool; + pub fn restriction_is_securely_promotable( + restrictinfo: *mut RestrictInfo, + rel: *mut RelOptInfo, + ) -> bool; + pub fn get_actual_clauses(restrictinfo_list: *mut List) -> *mut List; + pub fn extract_actual_clauses(restrictinfo_list: *mut List, pseudoconstant: bool) -> *mut List; + pub fn extract_actual_join_clauses( + restrictinfo_list: *mut List, + joinrelids: Relids, + joinquals: *mut *mut List, + otherquals: *mut *mut List, + ); + pub fn join_clause_is_movable_to(rinfo: *mut RestrictInfo, baserel: *mut RelOptInfo) -> bool; + pub fn join_clause_is_movable_into( + rinfo: *mut RestrictInfo, + currentrelids: Relids, + current_and_outer: Relids, + ) -> bool; + pub fn tlist_member(node: *mut Expr, targetlist: *mut List) -> *mut TargetEntry; + pub fn add_to_flat_tlist(tlist: *mut List, exprs: *mut List) -> *mut List; + pub fn get_tlist_exprs(tlist: *mut List, includeJunk: bool) -> *mut List; + pub fn tlist_same_exprs(tlist1: *mut List, tlist2: *mut List) -> bool; + pub fn tlist_same_datatypes(tlist: *mut List, colTypes: *mut List, junkOK: bool) -> bool; + pub fn tlist_same_collations(tlist: *mut List, colCollations: *mut List, junkOK: bool) -> bool; + pub fn apply_tlist_labeling(dest_tlist: *mut List, src_tlist: *mut List); + pub fn extract_grouping_ops(groupClause: *mut List) -> *mut Oid; + pub fn extract_grouping_collations(groupClause: *mut List, tlist: *mut List) -> *mut Oid; + pub fn extract_grouping_cols(groupClause: *mut List, tlist: *mut List) -> *mut AttrNumber; + pub fn grouping_is_sortable(groupClause: *mut List) -> bool; + pub fn grouping_is_hashable(groupClause: *mut List) -> bool; + pub fn make_pathtarget_from_tlist(tlist: *mut List) -> *mut PathTarget; + pub fn make_tlist_from_pathtarget(target: *mut PathTarget) -> *mut List; + pub fn copy_pathtarget(src: *mut PathTarget) -> *mut PathTarget; + pub fn create_empty_pathtarget() -> *mut PathTarget; + pub fn add_column_to_pathtarget(target: *mut PathTarget, expr: *mut Expr, sortgroupref: Index); + pub fn add_new_column_to_pathtarget(target: *mut PathTarget, expr: *mut Expr); + pub fn add_new_columns_to_pathtarget(target: *mut PathTarget, exprs: *mut List); + pub fn apply_pathtarget_labeling_to_tlist(tlist: *mut List, target: *mut PathTarget); + pub fn split_pathtarget_at_srfs( + root: *mut PlannerInfo, + target: *mut PathTarget, + input_target: *mut PathTarget, + targets: *mut *mut List, + targets_contain_srfs: *mut *mut List, + ); + pub static mut compute_query_id: ::core::ffi::c_int; + pub fn CleanQuerytext( + query: *const ::core::ffi::c_char, + location: *mut ::core::ffi::c_int, + len: *mut ::core::ffi::c_int, + ) -> *const ::core::ffi::c_char; + pub fn JumbleQuery(query: *mut Query) -> *mut JumbleState; + pub fn EnableQueryId(); + pub static mut query_id_enabled: bool; + pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub fn parse_analyze_fixedparams( + parseTree: *mut RawStmt, + sourceText: *const ::core::ffi::c_char, + paramTypes: *const Oid, + numParams: ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut Query; + pub fn parse_analyze_varparams( + parseTree: *mut RawStmt, + sourceText: *const ::core::ffi::c_char, + paramTypes: *mut *mut Oid, + numParams: *mut ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut Query; + pub fn parse_analyze_withcb( + parseTree: *mut RawStmt, + sourceText: *const ::core::ffi::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + queryEnv: *mut QueryEnvironment, + ) -> *mut Query; + pub fn parse_sub_analyze( + parseTree: *mut Node, + parentParseState: *mut ParseState, + parentCTE: *mut CommonTableExpr, + locked_from_parent: bool, + resolve_unknowns: bool, + ) -> *mut Query; + pub fn transformInsertRow( + pstate: *mut ParseState, + exprlist: *mut List, + stmtcols: *mut List, + icolumns: *mut List, + attrnos: *mut List, + strip_indirection: bool, + ) -> *mut List; + pub fn transformUpdateTargetList(pstate: *mut ParseState, origTlist: *mut List) -> *mut List; + pub fn transformReturningList( + pstate: *mut ParseState, + returningList: *mut List, + exprKind: ParseExprKind::Type, + ) -> *mut List; + pub fn transformTopLevelStmt(pstate: *mut ParseState, parseTree: *mut RawStmt) -> *mut Query; + pub fn transformStmt(pstate: *mut ParseState, parseTree: *mut Node) -> *mut Query; + pub fn stmt_requires_parse_analysis(parseTree: *mut RawStmt) -> bool; + pub fn analyze_requires_snapshot(parseTree: *mut RawStmt) -> bool; + pub fn LCS_asString(strength: LockClauseStrength::Type) -> *const ::core::ffi::c_char; + pub fn CheckSelectLocking(qry: *mut Query, strength: LockClauseStrength::Type); + pub fn applyLockingClause( + qry: *mut Query, + rtindex: Index, + strength: LockClauseStrength::Type, + waitPolicy: LockWaitPolicy::Type, + pushedDown: bool, + ); + pub fn BuildOnConflictExcludedTargetlist(targetrel: Relation, exclRelIndex: Index) + -> *mut List; + pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) + -> *mut SortGroupClause; + pub fn assign_query_collations(pstate: *mut ParseState, query: *mut Query); + pub fn assign_list_collations(pstate: *mut ParseState, exprs: *mut List); + pub fn assign_expr_collations(pstate: *mut ParseState, expr: *mut Node); + pub fn select_common_collation(pstate: *mut ParseState, exprs: *mut List, none_ok: bool) + -> Oid; + pub static mut Transform_null_equals: bool; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind::Type, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind::Type) -> *const ::core::ffi::c_char; + pub fn ParseFuncOrColumn( + pstate: *mut ParseState, + funcname: *mut List, + fargs: *mut List, + last_srf: *mut Node, + fn_: *mut FuncCall, + proc_call: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn func_get_detail( + funcname: *mut List, + fargs: *mut List, + fargnames: *mut List, + nargs: ::core::ffi::c_int, + argtypes: *mut Oid, + expand_variadic: bool, + expand_defaults: bool, + include_out_arguments: bool, + funcid: *mut Oid, + rettype: *mut Oid, + retset: *mut bool, + nvargs: *mut ::core::ffi::c_int, + vatype: *mut Oid, + true_typeids: *mut *mut Oid, + argdefaults: *mut *mut List, + ) -> FuncDetailCode::Type; + pub fn func_match_argtypes( + nargs: ::core::ffi::c_int, + input_typeids: *mut Oid, + raw_candidates: FuncCandidateList, + candidates: *mut FuncCandidateList, + ) -> ::core::ffi::c_int; + pub fn func_select_candidate( + nargs: ::core::ffi::c_int, + input_typeids: *mut Oid, + candidates: FuncCandidateList, + ) -> FuncCandidateList; + pub fn make_fn_arguments( + pstate: *mut ParseState, + fargs: *mut List, + actual_arg_types: *mut Oid, + declared_arg_types: *mut Oid, + ); + pub fn funcname_signature_string( + funcname: *const ::core::ffi::c_char, + nargs: ::core::ffi::c_int, + argnames: *mut List, + argtypes: *const Oid, + ) -> *const ::core::ffi::c_char; + pub fn func_signature_string( + funcname: *mut List, + nargs: ::core::ffi::c_int, + argnames: *mut List, + argtypes: *const Oid, + ) -> *const ::core::ffi::c_char; + pub fn LookupFuncName( + funcname: *mut List, + nargs: ::core::ffi::c_int, + argtypes: *const Oid, + missing_ok: bool, + ) -> Oid; + pub fn LookupFuncWithArgs( + objtype: ObjectType::Type, + func: *mut ObjectWithArgs, + missing_ok: bool, + ) -> Oid; + pub fn check_srf_call_placement( + pstate: *mut ParseState, + last_srf: *mut Node, + location: ::core::ffi::c_int, + ); + pub fn LookupOperName( + pstate: *mut ParseState, + opername: *mut List, + oprleft: Oid, + oprright: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Oid; + pub fn LookupOperWithArgs(oper: *mut ObjectWithArgs, noError: bool) -> Oid; + pub fn oper( + pstate: *mut ParseState, + opname: *mut List, + ltypeId: Oid, + rtypeId: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Operator; + pub fn left_oper( + pstate: *mut ParseState, + op: *mut List, + arg: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Operator; + pub fn compatible_oper( + pstate: *mut ParseState, + op: *mut List, + arg1: Oid, + arg2: Oid, + noError: bool, + location: ::core::ffi::c_int, + ) -> Operator; + pub fn op_signature_string(op: *mut List, arg1: Oid, arg2: Oid) -> *const ::core::ffi::c_char; + pub fn get_sort_group_operators( + argtype: Oid, + needLT: bool, + needEQ: bool, + needGT: bool, + ltOpr: *mut Oid, + eqOpr: *mut Oid, + gtOpr: *mut Oid, + isHashable: *mut bool, + ); + pub fn compatible_oper_opid(op: *mut List, arg1: Oid, arg2: Oid, noError: bool) -> Oid; + pub fn oprid(op: Operator) -> Oid; + pub fn oprfuncid(op: Operator) -> Oid; + pub fn make_op( + pstate: *mut ParseState, + opname: *mut List, + ltree: *mut Node, + rtree: *mut Node, + last_srf: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut Expr; + pub fn make_scalar_array_op( + pstate: *mut ParseState, + opname: *mut List, + useOr: bool, + ltree: *mut Node, + rtree: *mut Node, + location: ::core::ffi::c_int, + ) -> *mut Expr; + pub fn refnameNamespaceItem( + pstate: *mut ParseState, + schemaname: *const ::core::ffi::c_char, + refname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + sublevels_up: *mut ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn scanNameSpaceForCTE( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ctelevelsup: *mut Index, + ) -> *mut CommonTableExpr; + pub fn scanNameSpaceForENR( + pstate: *mut ParseState, + refname: *const ::core::ffi::c_char, + ) -> bool; + pub fn checkNameSpaceConflicts( + pstate: *mut ParseState, + namespace1: *mut List, + namespace2: *mut List, + ); + pub fn GetNSItemByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut ParseNamespaceItem; + pub fn GetRTEByRangeTablePosn( + pstate: *mut ParseState, + varno: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + ) -> *mut RangeTblEntry; + pub fn GetCTEForRTE( + pstate: *mut ParseState, + rte: *mut RangeTblEntry, + rtelevelsup: ::core::ffi::c_int, + ) -> *mut CommonTableExpr; + pub fn scanNSItemForColumn( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn colNameToVar( + pstate: *mut ParseState, + colname: *const ::core::ffi::c_char, + localonly: bool, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn markNullableIfNeeded(pstate: *mut ParseState, var: *mut Var); + pub fn markVarForSelectPriv(pstate: *mut ParseState, var: *mut Var); + pub fn parserOpenTable( + pstate: *mut ParseState, + relation: *const RangeVar, + lockmode: ::core::ffi::c_int, + ) -> Relation; + pub fn addRangeTableEntry( + pstate: *mut ParseState, + relation: *mut RangeVar, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForRelation( + pstate: *mut ParseState, + rel: Relation, + lockmode: ::core::ffi::c_int, + alias: *mut Alias, + inh: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForSubquery( + pstate: *mut ParseState, + subquery: *mut Query, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForFunction( + pstate: *mut ParseState, + funcnames: *mut List, + funcexprs: *mut List, + coldeflists: *mut List, + rangefunc: *mut RangeFunction, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForValues( + pstate: *mut ParseState, + exprs: *mut List, + coltypes: *mut List, + coltypmods: *mut List, + colcollations: *mut List, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForTableFunc( + pstate: *mut ParseState, + tf: *mut TableFunc, + alias: *mut Alias, + lateral: bool, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForJoin( + pstate: *mut ParseState, + colnames: *mut List, + nscolumns: *mut ParseNamespaceColumn, + jointype: JoinType::Type, + nummergedcols: ::core::ffi::c_int, + aliasvars: *mut List, + leftcols: *mut List, + rightcols: *mut List, + join_using_alias: *mut Alias, + alias: *mut Alias, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForCTE( + pstate: *mut ParseState, + cte: *mut CommonTableExpr, + levelsup: Index, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRangeTableEntryForENR( + pstate: *mut ParseState, + rv: *mut RangeVar, + inFromCl: bool, + ) -> *mut ParseNamespaceItem; + pub fn addRTEPermissionInfo( + rteperminfos: *mut *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn getRTEPermissionInfo( + rteperminfos: *mut List, + rte: *mut RangeTblEntry, + ) -> *mut RTEPermissionInfo; + pub fn isLockedRefname(pstate: *mut ParseState, refname: *const ::core::ffi::c_char) -> bool; + pub fn addNSItemToQuery( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + addToJoinList: bool, + addToRelNameSpace: bool, + addToVarNameSpace: bool, + ); + pub fn errorMissingRTE(pstate: *mut ParseState, relation: *mut RangeVar) -> !; + pub fn errorMissingColumn( + pstate: *mut ParseState, + relname: *const ::core::ffi::c_char, + colname: *const ::core::ffi::c_char, + location: ::core::ffi::c_int, + ) -> !; + pub fn expandRTE( + rte: *mut RangeTblEntry, + rtindex: ::core::ffi::c_int, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + include_dropped: bool, + colnames: *mut *mut List, + colvars: *mut *mut List, + ); + pub fn expandNSItemVars( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + location: ::core::ffi::c_int, + colnames: *mut *mut List, + ) -> *mut List; + pub fn expandNSItemAttrs( + pstate: *mut ParseState, + nsitem: *mut ParseNamespaceItem, + sublevels_up: ::core::ffi::c_int, + require_col_privs: bool, + location: ::core::ffi::c_int, + ) -> *mut List; + pub fn attnameAttNum( + rd: Relation, + attname: *const ::core::ffi::c_char, + sysColOK: bool, + ) -> ::core::ffi::c_int; + pub fn attnumAttName(rd: Relation, attid: ::core::ffi::c_int) -> *const NameData; + pub fn attnumTypeId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn attnumCollationId(rd: Relation, attid: ::core::ffi::c_int) -> Oid; + pub fn isQueryUsingTempRelation(query: *mut Query) -> bool; + pub fn LookupTypeName( + pstate: *mut ParseState, + typeName: *const TypeName, + typmod_p: *mut int32, + missing_ok: bool, + ) -> Type; + pub fn LookupTypeNameExtended( + pstate: *mut ParseState, + typeName: *const TypeName, + typmod_p: *mut int32, + temp_ok: bool, + missing_ok: bool, + ) -> Type; + pub fn LookupTypeNameOid( + pstate: *mut ParseState, + typeName: *const TypeName, + missing_ok: bool, + ) -> Oid; + pub fn typenameType( + pstate: *mut ParseState, + typeName: *const TypeName, + typmod_p: *mut int32, + ) -> Type; + pub fn typenameTypeId(pstate: *mut ParseState, typeName: *const TypeName) -> Oid; + pub fn typenameTypeIdAndMod( + pstate: *mut ParseState, + typeName: *const TypeName, + typeid_p: *mut Oid, + typmod_p: *mut int32, + ); + pub fn TypeNameToString(typeName: *const TypeName) -> *mut ::core::ffi::c_char; + pub fn TypeNameListToString(typenames: *mut List) -> *mut ::core::ffi::c_char; + pub fn LookupCollation( + pstate: *mut ParseState, + collnames: *mut List, + location: ::core::ffi::c_int, + ) -> Oid; + pub fn GetColumnDefCollation( + pstate: *mut ParseState, + coldef: *const ColumnDef, + typeOid: Oid, + ) -> Oid; + pub fn typeidType(id: Oid) -> Type; + pub fn typeTypeId(tp: Type) -> Oid; + pub fn typeLen(t: Type) -> int16; + pub fn typeByVal(t: Type) -> bool; + pub fn typeTypeName(t: Type) -> *mut ::core::ffi::c_char; + pub fn typeTypeRelid(typ: Type) -> Oid; + pub fn typeTypeCollation(typ: Type) -> Oid; + pub fn stringTypeDatum(tp: Type, string: *mut ::core::ffi::c_char, atttypmod: int32) -> Datum; + pub fn typeidTypeRelid(type_id: Oid) -> Oid; + pub fn typeOrDomainTypeRelid(type_id: Oid) -> Oid; + pub fn typeStringToTypeName( + str_: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> *mut TypeName; + pub fn parseTypeString( + str_: *const ::core::ffi::c_char, + typeid_p: *mut Oid, + typmod_p: *mut int32, + escontext: *mut Node, + ) -> bool; + pub fn IsBinaryCoercible(srctype: Oid, targettype: Oid) -> bool; + pub fn IsBinaryCoercibleWithCast(srctype: Oid, targettype: Oid, castoid: *mut Oid) -> bool; + pub fn IsPreferredType(category: TYPCATEGORY, type_: Oid) -> bool; + pub fn TypeCategory(type_: Oid) -> TYPCATEGORY; + pub fn coerce_to_target_type( + pstate: *mut ParseState, + expr: *mut Node, + exprtype: Oid, + targettype: Oid, + targettypmod: int32, + ccontext: CoercionContext::Type, + cformat: CoercionForm::Type, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn can_coerce_type( + nargs: ::core::ffi::c_int, + input_typeids: *const Oid, + target_typeids: *const Oid, + ccontext: CoercionContext::Type, + ) -> bool; + pub fn coerce_type( + pstate: *mut ParseState, + node: *mut Node, + inputTypeId: Oid, + targetTypeId: Oid, + targetTypeMod: int32, + ccontext: CoercionContext::Type, + cformat: CoercionForm::Type, + location: ::core::ffi::c_int, + ) -> *mut Node; + pub fn coerce_to_domain( + arg: *mut Node, + baseTypeId: Oid, + baseTypeMod: int32, + typeId: Oid, + ccontext: CoercionContext::Type, + cformat: CoercionForm::Type, + location: ::core::ffi::c_int, + hideInputCoercion: bool, + ) -> *mut Node; + pub fn coerce_to_boolean( + pstate: *mut ParseState, + node: *mut Node, + constructName: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn coerce_to_specific_type( + pstate: *mut ParseState, + node: *mut Node, + targetTypeId: Oid, + constructName: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn coerce_to_specific_type_typmod( + pstate: *mut ParseState, + node: *mut Node, + targetTypeId: Oid, + targetTypmod: int32, + constructName: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn parser_coercion_errposition( + pstate: *mut ParseState, + coerce_location: ::core::ffi::c_int, + input_expr: *mut Node, + ) -> ::core::ffi::c_int; + pub fn select_common_type( + pstate: *mut ParseState, + exprs: *mut List, + context: *const ::core::ffi::c_char, + which_expr: *mut *mut Node, + ) -> Oid; + pub fn coerce_to_common_type( + pstate: *mut ParseState, + node: *mut Node, + targetTypeId: Oid, + context: *const ::core::ffi::c_char, + ) -> *mut Node; + pub fn verify_common_type(common_type: Oid, exprs: *mut List) -> bool; + pub fn select_common_typmod( + pstate: *mut ParseState, + exprs: *mut List, + common_type: Oid, + ) -> int32; + pub fn check_generic_type_consistency( + actual_arg_types: *const Oid, + declared_arg_types: *const Oid, + nargs: ::core::ffi::c_int, + ) -> bool; + pub fn enforce_generic_type_consistency( + actual_arg_types: *const Oid, + declared_arg_types: *mut Oid, + nargs: ::core::ffi::c_int, + rettype: Oid, + allow_poly: bool, + ) -> Oid; + pub fn check_valid_polymorphic_signature( + ret_type: Oid, + declared_arg_types: *const Oid, + nargs: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn check_valid_internal_signature( + ret_type: Oid, + declared_arg_types: *const Oid, + nargs: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn find_coercion_pathway( + targetTypeId: Oid, + sourceTypeId: Oid, + ccontext: CoercionContext::Type, + funcid: *mut Oid, + ) -> CoercionPathType::Type; + pub fn find_typmod_coercion_function(typeId: Oid, funcid: *mut Oid) -> CoercionPathType::Type; + pub fn get_rte_attribute_name( + rte: *mut RangeTblEntry, + attnum: AttrNumber, + ) -> *mut ::core::ffi::c_char; + pub fn get_rte_attribute_is_dropped(rte: *mut RangeTblEntry, attnum: AttrNumber) -> bool; + pub fn get_tle_by_resno(tlist: *mut List, resno: AttrNumber) -> *mut TargetEntry; + pub fn get_parse_rowmark(qry: *mut Query, rtindex: Index) -> *mut RowMarkClause; + pub fn downcase_truncate_identifier( + ident: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + warn: bool, + ) -> *mut ::core::ffi::c_char; + pub fn downcase_identifier( + ident: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + warn: bool, + truncate: bool, + ) -> *mut ::core::ffi::c_char; + pub fn truncate_identifier( + ident: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + warn: bool, + ); + pub fn scanner_isspace(ch: ::core::ffi::c_char) -> bool; + pub fn make_expanded_record_from_typeid( + type_id: Oid, + typmod: int32, + parentcontext: MemoryContext, + ) -> *mut ExpandedRecordHeader; + pub fn make_expanded_record_from_tupdesc( + tupdesc: TupleDesc, + parentcontext: MemoryContext, + ) -> *mut ExpandedRecordHeader; + pub fn make_expanded_record_from_exprecord( + olderh: *mut ExpandedRecordHeader, + parentcontext: MemoryContext, + ) -> *mut ExpandedRecordHeader; + pub fn expanded_record_set_tuple( + erh: *mut ExpandedRecordHeader, + tuple: HeapTuple, + copy: bool, + expand_external: bool, + ); + pub fn make_expanded_record_from_datum( + recorddatum: Datum, + parentcontext: MemoryContext, + ) -> Datum; + pub fn expanded_record_fetch_tupdesc(erh: *mut ExpandedRecordHeader) -> TupleDesc; + pub fn expanded_record_get_tuple(erh: *mut ExpandedRecordHeader) -> HeapTuple; + pub fn DatumGetExpandedRecord(d: Datum) -> *mut ExpandedRecordHeader; + pub fn deconstruct_expanded_record(erh: *mut ExpandedRecordHeader); + pub fn expanded_record_lookup_field( + erh: *mut ExpandedRecordHeader, + fieldname: *const ::core::ffi::c_char, + finfo: *mut ExpandedRecordFieldInfo, + ) -> bool; + pub fn expanded_record_fetch_field( + erh: *mut ExpandedRecordHeader, + fnumber: ::core::ffi::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn expanded_record_set_field_internal( + erh: *mut ExpandedRecordHeader, + fnumber: ::core::ffi::c_int, + newValue: Datum, + isnull: bool, + expand_external: bool, + check_constraints: bool, + ); + pub fn expanded_record_set_fields( + erh: *mut ExpandedRecordHeader, + newValues: *const Datum, + isnulls: *const bool, + expand_external: bool, + ); + pub static mut plpgsql_IdentifierLookup: IdentifierLookup::Type; + pub static mut plpgsql_variable_conflict: ::core::ffi::c_int; + pub static mut plpgsql_print_strict_params: bool; + pub static mut plpgsql_check_asserts: bool; + pub static mut plpgsql_extra_warnings: ::core::ffi::c_int; + pub static mut plpgsql_extra_errors: ::core::ffi::c_int; + pub static mut plpgsql_check_syntax: bool; + pub static mut plpgsql_DumpExecTree: bool; + pub static mut plpgsql_parse_result: *mut PLpgSQL_stmt_block; + pub static mut plpgsql_nDatums: ::core::ffi::c_int; + pub static mut plpgsql_Datums: *mut *mut PLpgSQL_datum; + pub static mut plpgsql_error_funcname: *mut ::core::ffi::c_char; + pub static mut plpgsql_curr_compile: *mut PLpgSQL_function; + pub static mut plpgsql_compile_tmp_cxt: MemoryContext; + pub static mut plpgsql_plugin_ptr: *mut *mut PLpgSQL_plugin; + #[doc = " Function declarations"] + pub fn plpgsql_compile(fcinfo: FunctionCallInfo, forValidator: bool) -> *mut PLpgSQL_function; + pub fn plpgsql_compile_inline(proc_source: *mut ::core::ffi::c_char) -> *mut PLpgSQL_function; + pub fn plpgsql_parser_setup(pstate: *mut ParseState, expr: *mut PLpgSQL_expr); + pub fn plpgsql_parse_word( + word1: *mut ::core::ffi::c_char, + yytxt: *const ::core::ffi::c_char, + lookup: bool, + wdatum: *mut PLwdatum, + word: *mut PLword, + ) -> bool; + pub fn plpgsql_parse_dblword( + word1: *mut ::core::ffi::c_char, + word2: *mut ::core::ffi::c_char, + wdatum: *mut PLwdatum, + cword: *mut PLcword, + ) -> bool; + pub fn plpgsql_parse_tripword( + word1: *mut ::core::ffi::c_char, + word2: *mut ::core::ffi::c_char, + word3: *mut ::core::ffi::c_char, + wdatum: *mut PLwdatum, + cword: *mut PLcword, + ) -> bool; + pub fn plpgsql_parse_wordtype(ident: *mut ::core::ffi::c_char) -> *mut PLpgSQL_type; + pub fn plpgsql_parse_cwordtype(idents: *mut List) -> *mut PLpgSQL_type; + pub fn plpgsql_parse_wordrowtype(ident: *mut ::core::ffi::c_char) -> *mut PLpgSQL_type; + pub fn plpgsql_parse_cwordrowtype(idents: *mut List) -> *mut PLpgSQL_type; + pub fn plpgsql_build_datatype( + typeOid: Oid, + typmod: int32, + collation: Oid, + origtypname: *mut TypeName, + ) -> *mut PLpgSQL_type; + pub fn plpgsql_build_datatype_arrayof(dtype: *mut PLpgSQL_type) -> *mut PLpgSQL_type; + pub fn plpgsql_build_variable( + refname: *const ::core::ffi::c_char, + lineno: ::core::ffi::c_int, + dtype: *mut PLpgSQL_type, + add2namespace: bool, + ) -> *mut PLpgSQL_variable; + pub fn plpgsql_build_record( + refname: *const ::core::ffi::c_char, + lineno: ::core::ffi::c_int, + dtype: *mut PLpgSQL_type, + rectypeid: Oid, + add2namespace: bool, + ) -> *mut PLpgSQL_rec; + pub fn plpgsql_build_recfield( + rec: *mut PLpgSQL_rec, + fldname: *const ::core::ffi::c_char, + ) -> *mut PLpgSQL_recfield; + pub fn plpgsql_recognize_err_condition( + condname: *const ::core::ffi::c_char, + allow_sqlstate: bool, + ) -> ::core::ffi::c_int; + pub fn plpgsql_parse_err_condition( + condname: *mut ::core::ffi::c_char, + ) -> *mut PLpgSQL_condition; + pub fn plpgsql_adddatum(newdatum: *mut PLpgSQL_datum); + pub fn plpgsql_add_initdatums(varnos: *mut *mut ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn plpgsql_HashTableInit(); + pub fn plpgsql_exec_function( + func: *mut PLpgSQL_function, + fcinfo: FunctionCallInfo, + simple_eval_estate: *mut EState, + simple_eval_resowner: ResourceOwner, + procedure_resowner: ResourceOwner, + atomic: bool, + ) -> Datum; + pub fn plpgsql_exec_trigger( + func: *mut PLpgSQL_function, + trigdata: *mut TriggerData, + ) -> HeapTuple; + pub fn plpgsql_exec_event_trigger(func: *mut PLpgSQL_function, trigdata: *mut EventTriggerData); + pub fn plpgsql_xact_cb(event: XactEvent::Type, arg: *mut ::core::ffi::c_void); + pub fn plpgsql_subxact_cb( + event: SubXactEvent::Type, + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + arg: *mut ::core::ffi::c_void, + ); + pub fn plpgsql_exec_get_datum_type( + estate: *mut PLpgSQL_execstate, + datum: *mut PLpgSQL_datum, + ) -> Oid; + pub fn plpgsql_exec_get_datum_type_info( + estate: *mut PLpgSQL_execstate, + datum: *mut PLpgSQL_datum, + typeId: *mut Oid, + typMod: *mut int32, + collation: *mut Oid, + ); + pub fn plpgsql_ns_init(); + pub fn plpgsql_ns_push(label: *const ::core::ffi::c_char, label_type: PLpgSQL_label_type::Type); + pub fn plpgsql_ns_pop(); + pub fn plpgsql_ns_top() -> *mut PLpgSQL_nsitem; + pub fn plpgsql_ns_additem( + itemtype: PLpgSQL_nsitem_type::Type, + itemno: ::core::ffi::c_int, + name: *const ::core::ffi::c_char, + ); + pub fn plpgsql_ns_lookup( + ns_cur: *mut PLpgSQL_nsitem, + localmode: bool, + name1: *const ::core::ffi::c_char, + name2: *const ::core::ffi::c_char, + name3: *const ::core::ffi::c_char, + names_used: *mut ::core::ffi::c_int, + ) -> *mut PLpgSQL_nsitem; + pub fn plpgsql_ns_lookup_label( + ns_cur: *mut PLpgSQL_nsitem, + name: *const ::core::ffi::c_char, + ) -> *mut PLpgSQL_nsitem; + pub fn plpgsql_ns_find_nearest_loop(ns_cur: *mut PLpgSQL_nsitem) -> *mut PLpgSQL_nsitem; + pub fn plpgsql_stmt_typename(stmt: *mut PLpgSQL_stmt) -> *const ::core::ffi::c_char; + pub fn plpgsql_getdiag_kindname(kind: PLpgSQL_getdiag_kind::Type) + -> *const ::core::ffi::c_char; + pub fn plpgsql_free_function_memory(func: *mut PLpgSQL_function); + pub fn plpgsql_dumptree(func: *mut PLpgSQL_function); + pub fn plpgsql_base_yylex() -> ::core::ffi::c_int; + pub fn plpgsql_yylex() -> ::core::ffi::c_int; + pub fn plpgsql_token_length() -> ::core::ffi::c_int; + pub fn plpgsql_push_back_token(token: ::core::ffi::c_int); + pub fn plpgsql_token_is_unreserved_keyword(token: ::core::ffi::c_int) -> bool; + pub fn plpgsql_append_source_text( + buf: StringInfo, + startlocation: ::core::ffi::c_int, + endlocation: ::core::ffi::c_int, + ); + pub fn plpgsql_peek() -> ::core::ffi::c_int; + pub fn plpgsql_peek2( + tok1_p: *mut ::core::ffi::c_int, + tok2_p: *mut ::core::ffi::c_int, + tok1_loc: *mut ::core::ffi::c_int, + tok2_loc: *mut ::core::ffi::c_int, + ); + pub fn plpgsql_scanner_errposition(location: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn plpgsql_yyerror(message: *const ::core::ffi::c_char) -> !; + pub fn plpgsql_location_to_lineno(location: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn plpgsql_latest_lineno() -> ::core::ffi::c_int; + pub fn plpgsql_scanner_init(str_: *const ::core::ffi::c_char); + pub fn plpgsql_scanner_finish(); + pub fn plpgsql_yyparse() -> ::core::ffi::c_int; + pub static mut EnableSSL: bool; + pub static mut SuperuserReservedConnections: ::core::ffi::c_int; + pub static mut ReservedConnections: ::core::ffi::c_int; + pub static mut PostPortNumber: ::core::ffi::c_int; + pub static mut Unix_socket_permissions: ::core::ffi::c_int; + pub static mut Unix_socket_group: *mut ::core::ffi::c_char; + pub static mut Unix_socket_directories: *mut ::core::ffi::c_char; + pub static mut ListenAddresses: *mut ::core::ffi::c_char; + pub static mut ClientAuthInProgress: bool; + pub static mut PreAuthDelay: ::core::ffi::c_int; + pub static mut AuthenticationTimeout: ::core::ffi::c_int; + pub static mut Log_connections: bool; + pub static mut log_hostname: bool; + pub static mut enable_bonjour: bool; + pub static mut bonjour_name: *mut ::core::ffi::c_char; + pub static mut restart_after_crash: bool; + pub static mut remove_temp_files_after_crash: bool; + pub static mut send_abort_for_crash: bool; + pub static mut send_abort_for_kill: bool; + pub static mut postmaster_alive_fds: [::core::ffi::c_int; 2usize]; + pub static mut progname: *const ::core::ffi::c_char; + pub static mut LoadedSSL: bool; + pub fn PostmasterMain(argc: ::core::ffi::c_int, argv: *mut *mut ::core::ffi::c_char) -> !; + pub fn ClosePostmasterPorts(am_syslogger: bool); + pub fn InitProcessGlobals(); + pub fn MaxLivePostmasterChildren() -> ::core::ffi::c_int; + pub fn PostmasterMarkPIDForWorkerNotify(arg1: ::core::ffi::c_int) -> bool; + pub fn processCancelRequest(backendPID: ::core::ffi::c_int, cancelAuthCode: int32); + pub static mut MyClientSocket: *mut ClientSocket; + pub fn postmaster_child_launch( + child_type: BackendType::Type, + startup_data: *mut ::core::ffi::c_char, + startup_data_len: usize, + client_sock: *mut ClientSocket, + ) -> pid_t; + pub fn PostmasterChildName(child_type: BackendType::Type) -> *const ::core::ffi::c_char; + pub static mut Logging_collector: bool; + pub static mut Log_RotationAge: ::core::ffi::c_int; + pub static mut Log_RotationSize: ::core::ffi::c_int; + pub static mut Log_directory: *mut ::core::ffi::c_char; + pub static mut Log_filename: *mut ::core::ffi::c_char; + pub static mut Log_truncate_on_rotation: bool; + pub static mut Log_file_mode: ::core::ffi::c_int; + pub static mut syslogPipe: [::core::ffi::c_int; 2usize]; + pub fn SysLogger_Start() -> ::core::ffi::c_int; + pub fn write_syslogger_file( + buffer: *const ::core::ffi::c_char, + count: ::core::ffi::c_int, + destination: ::core::ffi::c_int, + ); + pub fn SysLoggerMain(startup_data: *mut ::core::ffi::c_char, startup_data_len: usize) -> !; + pub fn CheckLogrotateSignal() -> bool; + pub fn RemoveLogrotateSignalFiles(); + pub static mut logical_decoding_work_mem: ::core::ffi::c_int; + pub static mut debug_logical_replication_streaming: ::core::ffi::c_int; + pub fn ReorderBufferAllocate() -> *mut ReorderBuffer; + pub fn ReorderBufferFree(rb: *mut ReorderBuffer); + pub fn ReorderBufferGetTupleBuf(rb: *mut ReorderBuffer, tuple_len: Size) -> HeapTuple; + pub fn ReorderBufferReturnTupleBuf(tuple: HeapTuple); + pub fn ReorderBufferGetChange(rb: *mut ReorderBuffer) -> *mut ReorderBufferChange; + pub fn ReorderBufferReturnChange( + rb: *mut ReorderBuffer, + change: *mut ReorderBufferChange, + upd_mem: bool, + ); + pub fn ReorderBufferGetRelids(rb: *mut ReorderBuffer, nrelids: ::core::ffi::c_int) -> *mut Oid; + pub fn ReorderBufferReturnRelids(rb: *mut ReorderBuffer, relids: *mut Oid); + pub fn ReorderBufferQueueChange( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + change: *mut ReorderBufferChange, + toast_insert: bool, + ); + pub fn ReorderBufferQueueMessage( + rb: *mut ReorderBuffer, + xid: TransactionId, + snap: Snapshot, + lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + message_size: Size, + message: *const ::core::ffi::c_char, + ); + pub fn ReorderBufferCommit( + rb: *mut ReorderBuffer, + xid: TransactionId, + commit_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + commit_time: TimestampTz, + origin_id: RepOriginId, + origin_lsn: XLogRecPtr, + ); + pub fn ReorderBufferFinishPrepared( + rb: *mut ReorderBuffer, + xid: TransactionId, + commit_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + two_phase_at: XLogRecPtr, + commit_time: TimestampTz, + origin_id: RepOriginId, + origin_lsn: XLogRecPtr, + gid: *mut ::core::ffi::c_char, + is_commit: bool, + ); + pub fn ReorderBufferAssignChild( + rb: *mut ReorderBuffer, + xid: TransactionId, + subxid: TransactionId, + lsn: XLogRecPtr, + ); + pub fn ReorderBufferCommitChild( + rb: *mut ReorderBuffer, + xid: TransactionId, + subxid: TransactionId, + commit_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + ); + pub fn ReorderBufferAbort( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + abort_time: TimestampTz, + ); + pub fn ReorderBufferAbortOld(rb: *mut ReorderBuffer, oldestRunningXid: TransactionId); + pub fn ReorderBufferForget(rb: *mut ReorderBuffer, xid: TransactionId, lsn: XLogRecPtr); + pub fn ReorderBufferInvalidate(rb: *mut ReorderBuffer, xid: TransactionId, lsn: XLogRecPtr); + pub fn ReorderBufferSetBaseSnapshot( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + snap: Snapshot, + ); + pub fn ReorderBufferAddSnapshot( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + snap: Snapshot, + ); + pub fn ReorderBufferAddNewCommandId( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + cid: CommandId, + ); + pub fn ReorderBufferAddNewTupleCids( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + locator: RelFileLocator, + tid: ItemPointerData, + cmin: CommandId, + cmax: CommandId, + combocid: CommandId, + ); + pub fn ReorderBufferAddInvalidations( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + nmsgs: Size, + msgs: *mut SharedInvalidationMessage, + ); + pub fn ReorderBufferImmediateInvalidation( + rb: *mut ReorderBuffer, + ninvalidations: uint32, + invalidations: *mut SharedInvalidationMessage, + ); + pub fn ReorderBufferProcessXid(rb: *mut ReorderBuffer, xid: TransactionId, lsn: XLogRecPtr); + pub fn ReorderBufferXidSetCatalogChanges( + rb: *mut ReorderBuffer, + xid: TransactionId, + lsn: XLogRecPtr, + ); + pub fn ReorderBufferXidHasCatalogChanges(rb: *mut ReorderBuffer, xid: TransactionId) -> bool; + pub fn ReorderBufferXidHasBaseSnapshot(rb: *mut ReorderBuffer, xid: TransactionId) -> bool; + pub fn ReorderBufferRememberPrepareInfo( + rb: *mut ReorderBuffer, + xid: TransactionId, + prepare_lsn: XLogRecPtr, + end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + origin_id: RepOriginId, + origin_lsn: XLogRecPtr, + ) -> bool; + pub fn ReorderBufferSkipPrepare(rb: *mut ReorderBuffer, xid: TransactionId); + pub fn ReorderBufferPrepare( + rb: *mut ReorderBuffer, + xid: TransactionId, + gid: *mut ::core::ffi::c_char, + ); + pub fn ReorderBufferGetOldestTXN(rb: *mut ReorderBuffer) -> *mut ReorderBufferTXN; + pub fn ReorderBufferGetOldestXmin(rb: *mut ReorderBuffer) -> TransactionId; + pub fn ReorderBufferGetCatalogChangesXacts(rb: *mut ReorderBuffer) -> *mut TransactionId; + pub fn ReorderBufferSetRestartPoint(rb: *mut ReorderBuffer, ptr: XLogRecPtr); + pub fn StartupReorderBuffer(); + pub fn _PG_output_plugin_init(cb: *mut OutputPluginCallbacks); + pub fn OutputPluginPrepareWrite(ctx: *mut LogicalDecodingContext, last_write: bool); + pub fn OutputPluginWrite(ctx: *mut LogicalDecodingContext, last_write: bool); + pub fn OutputPluginUpdateProgress(ctx: *mut LogicalDecodingContext, skipped_xact: bool); + pub fn logicalrep_write_begin(out: StringInfo, txn: *mut ReorderBufferTXN); + pub fn logicalrep_read_begin(in_: StringInfo, begin_data: *mut LogicalRepBeginData); + pub fn logicalrep_write_commit( + out: StringInfo, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_commit(in_: StringInfo, commit_data: *mut LogicalRepCommitData); + pub fn logicalrep_write_begin_prepare(out: StringInfo, txn: *mut ReorderBufferTXN); + pub fn logicalrep_read_begin_prepare( + in_: StringInfo, + begin_data: *mut LogicalRepPreparedTxnData, + ); + pub fn logicalrep_write_prepare( + out: StringInfo, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_prepare(in_: StringInfo, prepare_data: *mut LogicalRepPreparedTxnData); + pub fn logicalrep_write_commit_prepared( + out: StringInfo, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_commit_prepared( + in_: StringInfo, + prepare_data: *mut LogicalRepCommitPreparedTxnData, + ); + pub fn logicalrep_write_rollback_prepared( + out: StringInfo, + txn: *mut ReorderBufferTXN, + prepare_end_lsn: XLogRecPtr, + prepare_time: TimestampTz, + ); + pub fn logicalrep_read_rollback_prepared( + in_: StringInfo, + rollback_data: *mut LogicalRepRollbackPreparedTxnData, + ); + pub fn logicalrep_write_stream_prepare( + out: StringInfo, + txn: *mut ReorderBufferTXN, + prepare_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_stream_prepare( + in_: StringInfo, + prepare_data: *mut LogicalRepPreparedTxnData, + ); + pub fn logicalrep_write_origin( + out: StringInfo, + origin: *const ::core::ffi::c_char, + origin_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_origin( + in_: StringInfo, + origin_lsn: *mut XLogRecPtr, + ) -> *mut ::core::ffi::c_char; + pub fn logicalrep_write_insert( + out: StringInfo, + xid: TransactionId, + rel: Relation, + newslot: *mut TupleTableSlot, + binary: bool, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_insert( + in_: StringInfo, + newtup: *mut LogicalRepTupleData, + ) -> LogicalRepRelId; + pub fn logicalrep_write_update( + out: StringInfo, + xid: TransactionId, + rel: Relation, + oldslot: *mut TupleTableSlot, + newslot: *mut TupleTableSlot, + binary: bool, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_update( + in_: StringInfo, + has_oldtuple: *mut bool, + oldtup: *mut LogicalRepTupleData, + newtup: *mut LogicalRepTupleData, + ) -> LogicalRepRelId; + pub fn logicalrep_write_delete( + out: StringInfo, + xid: TransactionId, + rel: Relation, + oldslot: *mut TupleTableSlot, + binary: bool, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_delete( + in_: StringInfo, + oldtup: *mut LogicalRepTupleData, + ) -> LogicalRepRelId; + pub fn logicalrep_write_truncate( + out: StringInfo, + xid: TransactionId, + nrelids: ::core::ffi::c_int, + relids: *mut Oid, + cascade: bool, + restart_seqs: bool, + ); + pub fn logicalrep_read_truncate( + in_: StringInfo, + cascade: *mut bool, + restart_seqs: *mut bool, + ) -> *mut List; + pub fn logicalrep_write_message( + out: StringInfo, + xid: TransactionId, + lsn: XLogRecPtr, + transactional: bool, + prefix: *const ::core::ffi::c_char, + sz: Size, + message: *const ::core::ffi::c_char, + ); + pub fn logicalrep_write_rel( + out: StringInfo, + xid: TransactionId, + rel: Relation, + columns: *mut Bitmapset, + ); + pub fn logicalrep_read_rel(in_: StringInfo) -> *mut LogicalRepRelation; + pub fn logicalrep_write_typ(out: StringInfo, xid: TransactionId, typoid: Oid); + pub fn logicalrep_read_typ(in_: StringInfo, ltyp: *mut LogicalRepTyp); + pub fn logicalrep_write_stream_start(out: StringInfo, xid: TransactionId, first_segment: bool); + pub fn logicalrep_read_stream_start(in_: StringInfo, first_segment: *mut bool) + -> TransactionId; + pub fn logicalrep_write_stream_stop(out: StringInfo); + pub fn logicalrep_write_stream_commit( + out: StringInfo, + txn: *mut ReorderBufferTXN, + commit_lsn: XLogRecPtr, + ); + pub fn logicalrep_read_stream_commit( + in_: StringInfo, + commit_data: *mut LogicalRepCommitData, + ) -> TransactionId; + pub fn logicalrep_write_stream_abort( + out: StringInfo, + xid: TransactionId, + subxid: TransactionId, + abort_lsn: XLogRecPtr, + abort_time: TimestampTz, + write_abort_info: bool, + ); + pub fn logicalrep_read_stream_abort( + in_: StringInfo, + abort_data: *mut LogicalRepStreamAbortData, + read_abort_info: bool, + ); + pub fn logicalrep_message_type(action: LogicalRepMsgType::Type) -> *const ::core::ffi::c_char; + pub static mut am_walsender: bool; + pub static mut am_cascading_walsender: bool; + pub static mut am_db_walsender: bool; + pub static mut wake_wal_senders: bool; + pub static mut max_wal_senders: ::core::ffi::c_int; + pub static mut wal_sender_timeout: ::core::ffi::c_int; + pub static mut log_replication_commands: bool; + pub fn InitWalSender(); + pub fn exec_replication_command(cmd_string: *const ::core::ffi::c_char) -> bool; + pub fn WalSndErrorCleanup(); + pub fn WalSndResourceCleanup(isCommit: bool); + pub fn PhysicalWakeupLogicalWalSnd(); + pub fn GetStandbyFlushRecPtr(tli: *mut TimeLineID) -> XLogRecPtr; + pub fn WalSndSignals(); + pub fn WalSndShmemSize() -> Size; + pub fn WalSndShmemInit(); + pub fn WalSndWakeup(physical: bool, logical: bool); + pub fn WalSndInitStopping(); + pub fn WalSndWaitStopping(); + pub fn HandleWalSndInitStopping(); + pub fn WalSndRqstFileReload(); + pub static mut wal_receiver_status_interval: ::core::ffi::c_int; + pub static mut wal_receiver_timeout: ::core::ffi::c_int; + pub static mut hot_standby_feedback: bool; + pub static mut WalRcv: *mut WalRcvData; + pub static mut WalReceiverFunctions: *mut WalReceiverFunctionsType; + pub fn WalReceiverMain(startup_data: *mut ::core::ffi::c_char, startup_data_len: usize) -> !; + pub fn ProcessWalRcvInterrupts(); + pub fn WalRcvForceReply(); + pub fn WalRcvShmemSize() -> Size; + pub fn WalRcvShmemInit(); + pub fn ShutdownWalRcv(); + pub fn WalRcvStreaming() -> bool; + pub fn WalRcvRunning() -> bool; + pub fn RequestXLogStreaming( + tli: TimeLineID, + recptr: XLogRecPtr, + conninfo: *const ::core::ffi::c_char, + slotname: *const ::core::ffi::c_char, + create_temp_slot: bool, + ); + pub fn GetWalRcvFlushRecPtr( + latestChunkStart: *mut XLogRecPtr, + receiveTLI: *mut TimeLineID, + ) -> XLogRecPtr; + pub fn GetWalRcvWriteRecPtr() -> XLogRecPtr; + pub fn GetReplicationApplyDelay() -> ::core::ffi::c_int; + pub fn GetReplicationTransferLatency() -> ::core::ffi::c_int; + pub static SlotInvalidationCauses: [*const ::core::ffi::c_char; 0usize]; + pub static mut ReplicationSlotCtl: *mut ReplicationSlotCtlData; + pub static mut MyReplicationSlot: *mut ReplicationSlot; + pub static mut max_replication_slots: ::core::ffi::c_int; + pub static mut synchronized_standby_slots: *mut ::core::ffi::c_char; + pub fn ReplicationSlotsShmemSize() -> Size; + pub fn ReplicationSlotsShmemInit(); + pub fn ReplicationSlotCreate( + name: *const ::core::ffi::c_char, + db_specific: bool, + persistency: ReplicationSlotPersistency::Type, + two_phase: bool, + failover: bool, + synced: bool, + ); + pub fn ReplicationSlotPersist(); + pub fn ReplicationSlotDrop(name: *const ::core::ffi::c_char, nowait: bool); + pub fn ReplicationSlotDropAcquired(); + pub fn ReplicationSlotAlter(name: *const ::core::ffi::c_char, failover: bool); + pub fn ReplicationSlotAcquire(name: *const ::core::ffi::c_char, nowait: bool); + pub fn ReplicationSlotRelease(); + pub fn ReplicationSlotCleanup(synced_only: bool); + pub fn ReplicationSlotSave(); + pub fn ReplicationSlotMarkDirty(); + pub fn ReplicationSlotInitialize(); + pub fn ReplicationSlotValidateName( + name: *const ::core::ffi::c_char, + elevel: ::core::ffi::c_int, + ) -> bool; + pub fn ReplicationSlotReserveWal(); + pub fn ReplicationSlotsComputeRequiredXmin(already_locked: bool); + pub fn ReplicationSlotsComputeRequiredLSN(); + pub fn ReplicationSlotsComputeLogicalRestartLSN() -> XLogRecPtr; + pub fn ReplicationSlotsCountDBSlots( + dboid: Oid, + nslots: *mut ::core::ffi::c_int, + nactive: *mut ::core::ffi::c_int, + ) -> bool; + pub fn ReplicationSlotsDropDBSlots(dboid: Oid); + pub fn InvalidateObsoleteReplicationSlots( + cause: ReplicationSlotInvalidationCause::Type, + oldestSegno: XLogSegNo, + dboid: Oid, + snapshotConflictHorizon: TransactionId, + ) -> bool; + pub fn SearchNamedReplicationSlot( + name: *const ::core::ffi::c_char, + need_lock: bool, + ) -> *mut ReplicationSlot; + pub fn ReplicationSlotIndex(slot: *mut ReplicationSlot) -> ::core::ffi::c_int; + pub fn ReplicationSlotName(index: ::core::ffi::c_int, name: Name) -> bool; + pub fn ReplicationSlotNameForTablesync( + suboid: Oid, + relid: Oid, + syncslotname: *mut ::core::ffi::c_char, + szslot: Size, + ); + pub fn ReplicationSlotDropAtPubNode( + wrconn: *mut WalReceiverConn, + slotname: *mut ::core::ffi::c_char, + missing_ok: bool, + ); + pub fn StartupReplicationSlots(); + pub fn CheckPointReplicationSlots(is_shutdown: bool); + pub fn CheckSlotRequirements(); + pub fn CheckSlotPermissions(); + pub fn GetSlotInvalidationCause( + invalidation_reason: *const ::core::ffi::c_char, + ) -> ReplicationSlotInvalidationCause::Type; + pub fn SlotExistsInSyncStandbySlots(slot_name: *const ::core::ffi::c_char) -> bool; + pub fn StandbySlotsHaveCaughtup(wait_for_lsn: XLogRecPtr, elevel: ::core::ffi::c_int) -> bool; + pub fn WaitForStandbyConfirmation(wait_for_lsn: XLogRecPtr); + pub fn CheckLogicalDecodingRequirements(); + pub fn CreateInitDecodingContext( + plugin: *const ::core::ffi::c_char, + output_plugin_options: *mut List, + need_full_snapshot: bool, + restart_lsn: XLogRecPtr, + xl_routine: *mut XLogReaderRoutine, + prepare_write: LogicalOutputPluginWriterPrepareWrite, + do_write: LogicalOutputPluginWriterWrite, + update_progress: LogicalOutputPluginWriterUpdateProgress, + ) -> *mut LogicalDecodingContext; + pub fn CreateDecodingContext( + start_lsn: XLogRecPtr, + output_plugin_options: *mut List, + fast_forward: bool, + xl_routine: *mut XLogReaderRoutine, + prepare_write: LogicalOutputPluginWriterPrepareWrite, + do_write: LogicalOutputPluginWriterWrite, + update_progress: LogicalOutputPluginWriterUpdateProgress, + ) -> *mut LogicalDecodingContext; + pub fn DecodingContextFindStartpoint(ctx: *mut LogicalDecodingContext); + pub fn DecodingContextReady(ctx: *mut LogicalDecodingContext) -> bool; + pub fn FreeDecodingContext(ctx: *mut LogicalDecodingContext); + pub fn LogicalIncreaseXminForSlot(current_lsn: XLogRecPtr, xmin: TransactionId); + pub fn LogicalIncreaseRestartDecodingForSlot(current_lsn: XLogRecPtr, restart_lsn: XLogRecPtr); + pub fn LogicalConfirmReceivedLocation(lsn: XLogRecPtr); + pub fn filter_prepare_cb_wrapper( + ctx: *mut LogicalDecodingContext, + xid: TransactionId, + gid: *const ::core::ffi::c_char, + ) -> bool; + pub fn filter_by_origin_cb_wrapper( + ctx: *mut LogicalDecodingContext, + origin_id: RepOriginId, + ) -> bool; + pub fn ResetLogicalStreamingState(); + pub fn UpdateDecodingStats(ctx: *mut LogicalDecodingContext); + pub fn LogicalReplicationSlotHasPendingWal(end_of_wal: XLogRecPtr) -> bool; + pub fn LogicalSlotAdvanceAndCheckSnapState( + moveto: XLogRecPtr, + found_consistent_snapshot: *mut bool, + ) -> XLogRecPtr; + pub fn QueryRewrite(parsetree: *mut Query) -> *mut List; + pub fn AcquireRewriteLocks(parsetree: *mut Query, forExecute: bool, forUpdatePushedDown: bool); + pub fn build_column_default(rel: Relation, attrno: ::core::ffi::c_int) -> *mut Node; + pub fn get_view_query(view: Relation) -> *mut Query; + pub fn view_has_instead_trigger( + view: Relation, + event: CmdType::Type, + mergeActionList: *mut List, + ) -> bool; + pub fn view_query_is_auto_updatable( + viewquery: *mut Query, + check_cols: bool, + ) -> *const ::core::ffi::c_char; + pub fn relation_is_updatable( + reloid: Oid, + outer_reloids: *mut List, + include_triggers: bool, + include_cols: *mut Bitmapset, + ) -> ::core::ffi::c_int; + pub fn error_view_not_updatable( + view: Relation, + command: CmdType::Type, + mergeActionList: *mut List, + detail: *const ::core::ffi::c_char, + ); + pub static mut row_security_policy_hook_permissive: row_security_policy_hook_type; + pub static mut row_security_policy_hook_restrictive: row_security_policy_hook_type; + pub fn get_row_security_policies( + root: *mut Query, + rte: *mut RangeTblEntry, + rt_index: ::core::ffi::c_int, + securityQuals: *mut *mut List, + withCheckOptions: *mut *mut List, + hasRowSecurity: *mut bool, + hasSubLinks: *mut bool, + ); + pub fn BufFileCreateTemp(interXact: bool) -> *mut BufFile; + pub fn BufFileClose(file: *mut BufFile); + pub fn BufFileRead(file: *mut BufFile, ptr: *mut ::core::ffi::c_void, size: usize) -> usize; + pub fn BufFileReadExact(file: *mut BufFile, ptr: *mut ::core::ffi::c_void, size: usize); + pub fn BufFileReadMaybeEOF( + file: *mut BufFile, + ptr: *mut ::core::ffi::c_void, + size: usize, + eofOK: bool, + ) -> usize; + pub fn BufFileWrite(file: *mut BufFile, ptr: *const ::core::ffi::c_void, size: usize); + pub fn BufFileSeek( + file: *mut BufFile, + fileno: ::core::ffi::c_int, + offset: off_t, + whence: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn BufFileTell(file: *mut BufFile, fileno: *mut ::core::ffi::c_int, offset: *mut off_t); + pub fn BufFileSeekBlock(file: *mut BufFile, blknum: int64) -> ::core::ffi::c_int; + pub fn BufFileSize(file: *mut BufFile) -> int64; + pub fn BufFileAppend(target: *mut BufFile, source: *mut BufFile) -> int64; + pub fn BufFileCreateFileSet( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + ) -> *mut BufFile; + pub fn BufFileExportFileSet(file: *mut BufFile); + pub fn BufFileOpenFileSet( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + mode: ::core::ffi::c_int, + missing_ok: bool, + ) -> *mut BufFile; + pub fn BufFileDeleteFileSet( + fileset: *mut FileSet, + name: *const ::core::ffi::c_char, + missing_ok: bool, + ); + pub fn BufFileTruncateFileSet(file: *mut BufFile, fileno: ::core::ffi::c_int, offset: off_t); + pub static mut proc_exit_inprogress: bool; + pub static mut shmem_exit_inprogress: bool; + pub fn proc_exit(code: ::core::ffi::c_int) -> !; + pub fn shmem_exit(code: ::core::ffi::c_int); + pub fn on_proc_exit(function: pg_on_exit_callback, arg: Datum); + pub fn on_shmem_exit(function: pg_on_exit_callback, arg: Datum); + pub fn before_shmem_exit(function: pg_on_exit_callback, arg: Datum); + pub fn cancel_before_shmem_exit(function: pg_on_exit_callback, arg: Datum); + pub fn on_exit_reset(); + pub fn check_on_shmem_exit_lists_are_empty(); + pub static mut shmem_startup_hook: shmem_startup_hook_type; + pub fn CalculateShmemSize(num_semaphores: *mut ::core::ffi::c_int) -> Size; + pub fn CreateSharedMemoryAndSemaphores(); + pub fn InitializeShmemGUCs(); + pub fn RelationInitLockInfo(relation: Relation); + pub fn LockRelationOid(relid: Oid, lockmode: LOCKMODE); + pub fn LockRelationId(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn ConditionalLockRelationOid(relid: Oid, lockmode: LOCKMODE) -> bool; + pub fn UnlockRelationId(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn UnlockRelationOid(relid: Oid, lockmode: LOCKMODE); + pub fn LockRelation(relation: Relation, lockmode: LOCKMODE); + pub fn ConditionalLockRelation(relation: Relation, lockmode: LOCKMODE) -> bool; + pub fn UnlockRelation(relation: Relation, lockmode: LOCKMODE); + pub fn CheckRelationLockedByMe( + relation: Relation, + lockmode: LOCKMODE, + orstronger: bool, + ) -> bool; + pub fn CheckRelationOidLockedByMe(relid: Oid, lockmode: LOCKMODE, orstronger: bool) -> bool; + pub fn LockHasWaitersRelation(relation: Relation, lockmode: LOCKMODE) -> bool; + pub fn LockRelationIdForSession(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn UnlockRelationIdForSession(relid: *mut LockRelId, lockmode: LOCKMODE); + pub fn LockRelationForExtension(relation: Relation, lockmode: LOCKMODE); + pub fn UnlockRelationForExtension(relation: Relation, lockmode: LOCKMODE); + pub fn ConditionalLockRelationForExtension(relation: Relation, lockmode: LOCKMODE) -> bool; + pub fn RelationExtensionLockWaiterCount(relation: Relation) -> ::core::ffi::c_int; + pub fn LockDatabaseFrozenIds(lockmode: LOCKMODE); + pub fn LockPage(relation: Relation, blkno: BlockNumber, lockmode: LOCKMODE); + pub fn ConditionalLockPage(relation: Relation, blkno: BlockNumber, lockmode: LOCKMODE) -> bool; + pub fn UnlockPage(relation: Relation, blkno: BlockNumber, lockmode: LOCKMODE); + pub fn LockTuple(relation: Relation, tid: ItemPointer, lockmode: LOCKMODE); + pub fn ConditionalLockTuple(relation: Relation, tid: ItemPointer, lockmode: LOCKMODE) -> bool; + pub fn UnlockTuple(relation: Relation, tid: ItemPointer, lockmode: LOCKMODE); + pub fn XactLockTableInsert(xid: TransactionId); + pub fn XactLockTableDelete(xid: TransactionId); + pub fn XactLockTableWait( + xid: TransactionId, + rel: Relation, + ctid: ItemPointer, + oper: XLTW_Oper::Type, + ); + pub fn ConditionalXactLockTableWait(xid: TransactionId) -> bool; + pub fn WaitForLockers(heaplocktag: LOCKTAG, lockmode: LOCKMODE, progress: bool); + pub fn WaitForLockersMultiple(locktags: *mut List, lockmode: LOCKMODE, progress: bool); + pub fn SpeculativeInsertionLockAcquire(xid: TransactionId) -> uint32; + pub fn SpeculativeInsertionLockRelease(xid: TransactionId); + pub fn SpeculativeInsertionWait(xid: TransactionId, token: uint32); + pub fn LockDatabaseObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn ConditionalLockDatabaseObject( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ) -> bool; + pub fn UnlockDatabaseObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn LockSharedObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn ConditionalLockSharedObject( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ) -> bool; + pub fn UnlockSharedObject(classid: Oid, objid: Oid, objsubid: uint16, lockmode: LOCKMODE); + pub fn LockSharedObjectForSession( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ); + pub fn UnlockSharedObjectForSession( + classid: Oid, + objid: Oid, + objsubid: uint16, + lockmode: LOCKMODE, + ); + pub fn LockApplyTransactionForSession( + suboid: Oid, + xid: TransactionId, + objid: uint16, + lockmode: LOCKMODE, + ); + pub fn UnlockApplyTransactionForSession( + suboid: Oid, + xid: TransactionId, + objid: uint16, + lockmode: LOCKMODE, + ); + pub fn DescribeLockTag(buf: StringInfo, tag: *const LOCKTAG); + pub fn GetLockNameFromTagType(locktag_type: uint16) -> *const ::core::ffi::c_char; + pub fn ProcSignalShmemSize() -> Size; + pub fn ProcSignalShmemInit(); + pub fn ProcSignalInit(); + pub fn SendProcSignal( + pid: pid_t, + reason: ProcSignalReason::Type, + procNumber: ProcNumber, + ) -> ::core::ffi::c_int; + pub fn EmitProcSignalBarrier(type_: ProcSignalBarrierType::Type) -> uint64; + pub fn WaitForProcSignalBarrier(generation: uint64); + pub fn ProcessProcSignalBarrier(); + pub fn procsignal_sigusr1_handler(postgres_signal_arg: ::core::ffi::c_int); + pub fn standby_redo(record: *mut XLogReaderState); + pub fn standby_desc(buf: StringInfo, record: *mut XLogReaderState); + pub fn standby_identify(info: uint8) -> *const ::core::ffi::c_char; + pub fn standby_desc_invalidations( + buf: StringInfo, + nmsgs: ::core::ffi::c_int, + msgs: *mut SharedInvalidationMessage, + dbId: Oid, + tsId: Oid, + relcacheInitFileInval: bool, + ); + pub static mut max_standby_archive_delay: ::core::ffi::c_int; + pub static mut max_standby_streaming_delay: ::core::ffi::c_int; + pub static mut log_recovery_conflict_waits: bool; + pub fn InitRecoveryTransactionEnvironment(); + pub fn ShutdownRecoveryTransactionEnvironment(); + pub fn ResolveRecoveryConflictWithSnapshot( + snapshotConflictHorizon: TransactionId, + isCatalogRel: bool, + locator: RelFileLocator, + ); + pub fn ResolveRecoveryConflictWithSnapshotFullXid( + snapshotConflictHorizon: FullTransactionId, + isCatalogRel: bool, + locator: RelFileLocator, + ); + pub fn ResolveRecoveryConflictWithTablespace(tsid: Oid); + pub fn ResolveRecoveryConflictWithDatabase(dbid: Oid); + pub fn ResolveRecoveryConflictWithLock(locktag: LOCKTAG, logging_conflict: bool); + pub fn ResolveRecoveryConflictWithBufferPin(); + pub fn CheckRecoveryConflictDeadlock(); + pub fn StandbyDeadLockHandler(); + pub fn StandbyTimeoutHandler(); + pub fn StandbyLockTimeoutHandler(); + pub fn LogRecoveryConflict( + reason: ProcSignalReason::Type, + wait_start: TimestampTz, + now: TimestampTz, + wait_list: *mut VirtualTransactionId, + still_waiting: bool, + ); + pub fn StandbyAcquireAccessExclusiveLock(xid: TransactionId, dbOid: Oid, relOid: Oid); + pub fn StandbyReleaseLockTree( + xid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + ); + pub fn StandbyReleaseAllLocks(); + pub fn StandbyReleaseOldLocks(oldxid: TransactionId); + pub fn LogAccessExclusiveLock(dbOid: Oid, relOid: Oid); + pub fn LogAccessExclusiveLockPrepare(); + pub fn LogStandbySnapshot() -> XLogRecPtr; + pub fn LogStandbyInvalidations( + nmsgs: ::core::ffi::c_int, + msgs: *mut SharedInvalidationMessage, + relcacheInitFileInval: bool, + ); + pub fn ProcArrayShmemSize() -> Size; + pub fn CreateSharedProcArray(); + pub fn ProcArrayAdd(proc_: *mut PGPROC); + pub fn ProcArrayRemove(proc_: *mut PGPROC, latestXid: TransactionId); + pub fn ProcArrayEndTransaction(proc_: *mut PGPROC, latestXid: TransactionId); + pub fn ProcArrayClearTransaction(proc_: *mut PGPROC); + pub fn ProcArrayInitRecovery(initializedUptoXID: TransactionId); + pub fn ProcArrayApplyRecoveryInfo(running: RunningTransactions); + pub fn ProcArrayApplyXidAssignment( + topxid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + ); + pub fn RecordKnownAssignedTransactionIds(xid: TransactionId); + pub fn ExpireTreeKnownAssignedTransactionIds( + xid: TransactionId, + nsubxids: ::core::ffi::c_int, + subxids: *mut TransactionId, + max_xid: TransactionId, + ); + pub fn ExpireAllKnownAssignedTransactionIds(); + pub fn ExpireOldKnownAssignedTransactionIds(xid: TransactionId); + pub fn KnownAssignedTransactionIdsIdleMaintenance(); + pub fn GetMaxSnapshotXidCount() -> ::core::ffi::c_int; + pub fn GetMaxSnapshotSubxidCount() -> ::core::ffi::c_int; + pub fn GetSnapshotData(snapshot: Snapshot) -> Snapshot; + pub fn ProcArrayInstallImportedXmin( + xmin: TransactionId, + sourcevxid: *mut VirtualTransactionId, + ) -> bool; + pub fn ProcArrayInstallRestoredXmin(xmin: TransactionId, proc_: *mut PGPROC) -> bool; + pub fn GetRunningTransactionData() -> RunningTransactions; + pub fn TransactionIdIsInProgress(xid: TransactionId) -> bool; + pub fn TransactionIdIsActive(xid: TransactionId) -> bool; + pub fn GetOldestNonRemovableTransactionId(rel: Relation) -> TransactionId; + pub fn GetOldestTransactionIdConsideredRunning() -> TransactionId; + pub fn GetOldestActiveTransactionId() -> TransactionId; + pub fn GetOldestSafeDecodingTransactionId(catalogOnly: bool) -> TransactionId; + pub fn GetReplicationHorizons(xmin: *mut TransactionId, catalog_xmin: *mut TransactionId); + pub fn GetVirtualXIDsDelayingChkpt( + nvxids: *mut ::core::ffi::c_int, + type_: ::core::ffi::c_int, + ) -> *mut VirtualTransactionId; + pub fn HaveVirtualXIDsDelayingChkpt( + vxids: *mut VirtualTransactionId, + nvxids: ::core::ffi::c_int, + type_: ::core::ffi::c_int, + ) -> bool; + pub fn ProcNumberGetProc(procNumber: ::core::ffi::c_int) -> *mut PGPROC; + pub fn ProcNumberGetTransactionIds( + procNumber: ::core::ffi::c_int, + xid: *mut TransactionId, + xmin: *mut TransactionId, + nsubxid: *mut ::core::ffi::c_int, + overflowed: *mut bool, + ); + pub fn BackendPidGetProc(pid: ::core::ffi::c_int) -> *mut PGPROC; + pub fn BackendPidGetProcWithLock(pid: ::core::ffi::c_int) -> *mut PGPROC; + pub fn BackendXidGetPid(xid: TransactionId) -> ::core::ffi::c_int; + pub fn IsBackendPid(pid: ::core::ffi::c_int) -> bool; + pub fn GetCurrentVirtualXIDs( + limitXmin: TransactionId, + excludeXmin0: bool, + allDbs: bool, + excludeVacuum: ::core::ffi::c_int, + nvxids: *mut ::core::ffi::c_int, + ) -> *mut VirtualTransactionId; + pub fn GetConflictingVirtualXIDs( + limitXmin: TransactionId, + dbOid: Oid, + ) -> *mut VirtualTransactionId; + pub fn CancelVirtualTransaction( + vxid: VirtualTransactionId, + sigmode: ProcSignalReason::Type, + ) -> pid_t; + pub fn SignalVirtualTransaction( + vxid: VirtualTransactionId, + sigmode: ProcSignalReason::Type, + conflictPending: bool, + ) -> pid_t; + pub fn MinimumActiveBackends(min: ::core::ffi::c_int) -> bool; + pub fn CountDBBackends(databaseid: Oid) -> ::core::ffi::c_int; + pub fn CountDBConnections(databaseid: Oid) -> ::core::ffi::c_int; + pub fn CancelDBBackends( + databaseid: Oid, + sigmode: ProcSignalReason::Type, + conflictPending: bool, + ); + pub fn CountUserBackends(roleid: Oid) -> ::core::ffi::c_int; + pub fn CountOtherDBBackends( + databaseId: Oid, + nbackends: *mut ::core::ffi::c_int, + nprepared: *mut ::core::ffi::c_int, + ) -> bool; + pub fn TerminateOtherDBBackends(databaseId: Oid); + pub fn XidCacheRemoveRunningXids( + xid: TransactionId, + nxids: ::core::ffi::c_int, + xids: *const TransactionId, + latestXid: TransactionId, + ); + pub fn ProcArraySetReplicationSlotXmin( + xmin: TransactionId, + catalog_xmin: TransactionId, + already_locked: bool, + ); + pub fn ProcArrayGetReplicationSlotXmin( + xmin: *mut TransactionId, + catalog_xmin: *mut TransactionId, + ); + pub static mut ActivePortal: Portal; + pub fn ChoosePortalStrategy(stmts: *mut List) -> PortalStrategy::Type; + pub fn FetchPortalTargetList(portal: Portal) -> *mut List; + pub fn FetchStatementTargetList(stmt: *mut Node) -> *mut List; + pub fn PortalStart( + portal: Portal, + params: ParamListInfo, + eflags: ::core::ffi::c_int, + snapshot: Snapshot, + ); + pub fn PortalSetResultFormat(portal: Portal, nFormats: ::core::ffi::c_int, formats: *mut int16); + pub fn PortalRun( + portal: Portal, + count: ::core::ffi::c_long, + isTopLevel: bool, + run_once: bool, + dest: *mut DestReceiver, + altdest: *mut DestReceiver, + qc: *mut QueryCompletion, + ) -> bool; + pub fn PortalRunFetch( + portal: Portal, + fdirection: FetchDirection::Type, + count: ::core::ffi::c_long, + dest: *mut DestReceiver, + ) -> uint64; + pub fn PlannedStmtRequiresSnapshot(pstmt: *mut PlannedStmt) -> bool; + pub fn EnsurePortalSnapshotExists(); + pub static mut whereToSendOutput: CommandDest::Type; + pub static mut debug_query_string: *const ::core::ffi::c_char; + pub static mut max_stack_depth: ::core::ffi::c_int; + pub static mut PostAuthDelay: ::core::ffi::c_int; + pub static mut client_connection_check_interval: ::core::ffi::c_int; + pub static mut log_statement: ::core::ffi::c_int; + pub static mut restrict_nonsystem_relation_kind: ::core::ffi::c_int; + pub fn pg_parse_query(query_string: *const ::core::ffi::c_char) -> *mut List; + pub fn pg_rewrite_query(query: *mut Query) -> *mut List; + pub fn pg_analyze_and_rewrite_fixedparams( + parsetree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + paramTypes: *const Oid, + numParams: ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn pg_analyze_and_rewrite_varparams( + parsetree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + paramTypes: *mut *mut Oid, + numParams: *mut ::core::ffi::c_int, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn pg_analyze_and_rewrite_withcb( + parsetree: *mut RawStmt, + query_string: *const ::core::ffi::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::core::ffi::c_void, + queryEnv: *mut QueryEnvironment, + ) -> *mut List; + pub fn pg_plan_query( + querytree: *mut Query, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut PlannedStmt; + pub fn pg_plan_queries( + querytrees: *mut List, + query_string: *const ::core::ffi::c_char, + cursorOptions: ::core::ffi::c_int, + boundParams: ParamListInfo, + ) -> *mut List; + pub fn die(postgres_signal_arg: ::core::ffi::c_int); + pub fn quickdie(postgres_signal_arg: ::core::ffi::c_int) -> !; + pub fn StatementCancelHandler(postgres_signal_arg: ::core::ffi::c_int); + pub fn FloatExceptionHandler(postgres_signal_arg: ::core::ffi::c_int) -> !; + pub fn HandleRecoveryConflictInterrupt(reason: ProcSignalReason::Type); + pub fn ProcessClientReadInterrupt(blocked: bool); + pub fn ProcessClientWriteInterrupt(blocked: bool); + pub fn process_postgres_switches( + argc: ::core::ffi::c_int, + argv: *mut *mut ::core::ffi::c_char, + ctx: GucContext::Type, + dbname: *mut *const ::core::ffi::c_char, + ); + pub fn PostgresSingleUserMain( + argc: ::core::ffi::c_int, + argv: *mut *mut ::core::ffi::c_char, + username: *const ::core::ffi::c_char, + ) -> !; + pub fn PostgresMain( + dbname: *const ::core::ffi::c_char, + username: *const ::core::ffi::c_char, + ) -> !; + pub fn get_stack_depth_rlimit() -> ::core::ffi::c_long; + pub fn ResetUsage(); + pub fn ShowUsage(title: *const ::core::ffi::c_char); + pub fn check_log_duration( + msec_str: *mut ::core::ffi::c_char, + was_logged: bool, + ) -> ::core::ffi::c_int; + pub fn set_debug_options( + debug_flag: ::core::ffi::c_int, + context: GucContext::Type, + source: GucSource::Type, + ); + pub fn set_plan_disabling_options( + arg: *const ::core::ffi::c_char, + context: GucContext::Type, + source: GucSource::Type, + ) -> bool; + pub fn get_stats_option_name(arg: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char; + pub static mut ProcessUtility_hook: ProcessUtility_hook_type; + pub fn ProcessUtility( + pstmt: *mut PlannedStmt, + queryString: *const ::core::ffi::c_char, + readOnlyTree: bool, + context: ProcessUtilityContext::Type, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn standard_ProcessUtility( + pstmt: *mut PlannedStmt, + queryString: *const ::core::ffi::c_char, + readOnlyTree: bool, + context: ProcessUtilityContext::Type, + params: ParamListInfo, + queryEnv: *mut QueryEnvironment, + dest: *mut DestReceiver, + qc: *mut QueryCompletion, + ); + pub fn ProcessUtilityForAlterTable(stmt: *mut Node, context: *mut AlterTableUtilityContext); + pub fn UtilityReturnsTuples(parsetree: *mut Node) -> bool; + pub fn UtilityTupleDescriptor(parsetree: *mut Node) -> TupleDesc; + pub fn UtilityContainsQuery(parsetree: *mut Node) -> *mut Query; + pub fn CreateCommandTag(parsetree: *mut Node) -> CommandTag::Type; + pub fn GetCommandLogLevel(parsetree: *mut Node) -> LogStmtLevel::Type; + pub fn CommandIsReadOnly(pstmt: *mut PlannedStmt) -> bool; + pub fn compareWordEntryPos( + a: *const ::core::ffi::c_void, + b: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub static tsearch_op_priority: [::core::ffi::c_int; 4usize]; + pub fn get_tsearch_config_filename( + basename: *const ::core::ffi::c_char, + extension: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn readstoplist( + fname: *const ::core::ffi::c_char, + s: *mut StopList, + wordop: ::core::option::Option< + unsafe extern "C" fn(arg1: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char, + >, + ); + pub fn searchstoplist(s: *mut StopList, key: *mut ::core::ffi::c_char) -> bool; + pub fn init_tsvector_parser( + input: *mut ::core::ffi::c_char, + flags: ::core::ffi::c_int, + escontext: *mut Node, + ) -> TSVectorParseState; + pub fn reset_tsvector_parser(state: TSVectorParseState, input: *mut ::core::ffi::c_char); + pub fn gettoken_tsvector( + state: TSVectorParseState, + strval: *mut *mut ::core::ffi::c_char, + lenval: *mut ::core::ffi::c_int, + pos_ptr: *mut *mut WordEntryPos, + poslen: *mut ::core::ffi::c_int, + endptr: *mut *mut ::core::ffi::c_char, + ) -> bool; + pub fn close_tsvector_parser(state: TSVectorParseState); + pub fn parse_tsquery( + buf: *mut ::core::ffi::c_char, + pushval: PushFunction, + opaque: Datum, + flags: ::core::ffi::c_int, + escontext: *mut Node, + ) -> TSQuery; + pub fn pushValue( + state: TSQueryParserState, + strval: *mut ::core::ffi::c_char, + lenval: ::core::ffi::c_int, + weight: int16, + prefix: bool, + ); + pub fn pushStop(state: TSQueryParserState); + pub fn pushOperator(state: TSQueryParserState, oper: int8, distance: int16); + pub fn parsetext( + cfgId: Oid, + prs: *mut ParsedText, + buf: *mut ::core::ffi::c_char, + buflen: int32, + ); + pub fn hlparsetext( + cfgId: Oid, + prs: *mut HeadlineParsedText, + query: TSQuery, + buf: *mut ::core::ffi::c_char, + buflen: int32, + ); + pub fn generateHeadline(prs: *mut HeadlineParsedText) -> *mut text; + pub fn TS_execute( + curitem: *mut QueryItem, + arg: *mut ::core::ffi::c_void, + flags: uint32, + chkcond: TSExecuteCallback, + ) -> bool; + pub fn TS_execute_ternary( + curitem: *mut QueryItem, + arg: *mut ::core::ffi::c_void, + flags: uint32, + chkcond: TSExecuteCallback, + ) -> TSTernaryValue::Type; + pub fn TS_execute_locations( + curitem: *mut QueryItem, + arg: *mut ::core::ffi::c_void, + flags: uint32, + chkcond: TSExecuteCallback, + ) -> *mut List; + pub fn tsquery_requires_match(curitem: *mut QueryItem) -> bool; + pub fn make_tsvector(prs: *mut ParsedText) -> TSVector; + pub fn tsCompareString( + a: *mut ::core::ffi::c_char, + lena: ::core::ffi::c_int, + b: *mut ::core::ffi::c_char, + lenb: ::core::ffi::c_int, + prefix: bool, + ) -> int32; + pub fn clean_NOT(ptr: *mut QueryItem, len: *mut int32) -> *mut QueryItem; + pub fn cleanup_tsquery_stopwords(in_: TSQuery, noisy: bool) -> TSQuery; + pub fn QT2QTN(in_: *mut QueryItem, operand: *mut ::core::ffi::c_char) -> *mut QTNode; + pub fn QTN2QT(in_: *mut QTNode) -> TSQuery; + pub fn QTNFree(in_: *mut QTNode); + pub fn QTNSort(in_: *mut QTNode); + pub fn QTNTernary(in_: *mut QTNode); + pub fn QTNBinary(in_: *mut QTNode); + pub fn QTNodeCompare(an: *mut QTNode, bn: *mut QTNode) -> ::core::ffi::c_int; + pub fn QTNCopy(in_: *mut QTNode) -> *mut QTNode; + pub fn QTNClearFlags(in_: *mut QTNode, flags: uint32); + pub fn QTNEq(a: *mut QTNode, b: *mut QTNode) -> bool; + pub fn makeTSQuerySign(a: TSQuery) -> TSQuerySign; + pub fn findsubquery( + root: *mut QTNode, + ex: *mut QTNode, + subs: *mut QTNode, + isfind: *mut bool, + ) -> *mut QTNode; + pub fn heap_tableam_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaout(fcinfo: FunctionCallInfo) -> Datum; + pub fn charout(fcinfo: FunctionCallInfo) -> Datum; + pub fn namein(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameout(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2in(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2out(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4in(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4out(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocout(fcinfo: FunctionCallInfo) -> Datum; + pub fn textin(fcinfo: FunctionCallInfo) -> Datum; + pub fn textout(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn boollt(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn booleq(fcinfo: FunctionCallInfo) -> Datum; + pub fn chareq(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn texteq(fcinfo: FunctionCallInfo) -> Datum; + pub fn xideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn cideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn charne(fcinfo: FunctionCallInfo) -> Datum; + pub fn charle(fcinfo: FunctionCallInfo) -> Datum; + pub fn chargt(fcinfo: FunctionCallInfo) -> Datum; + pub fn charge(fcinfo: FunctionCallInfo) -> Datum; + pub fn chartoi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4tochar(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolne(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pgsql_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ddl_command_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn eqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn neqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarltsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargtsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn eqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn neqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarltjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargtjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownin(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownout(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_above_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_below_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_pb(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_ppath(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn areasel(fcinfo: FunctionCallInfo) -> Datum; + pub fn areajoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn textne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int24mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int42mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn oideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidne(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_contain(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_contain_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_node_tree_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4in(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4out(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4um(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4um(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2um(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8in(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8out(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8um(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn dround(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtrunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsqrt(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcbrt(fcinfo: FunctionCallInfo) -> Datum; + pub fn dpow(fcinfo: FunctionCallInfo) -> Datum; + pub fn dexp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dlog1(fcinfo: FunctionCallInfo) -> Datum; + pub fn i2tod(fcinfo: FunctionCallInfo) -> Datum; + pub fn i2tof(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtoi2(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftoi2(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameeqtext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namelttext(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameletext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namegetext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namegttext(fcinfo: FunctionCallInfo) -> Datum; + pub fn namenetext(fcinfo: FunctionCallInfo) -> Datum; + pub fn btnametextcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn texteqname(fcinfo: FunctionCallInfo) -> Datum; + pub fn textltname(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlename(fcinfo: FunctionCallInfo) -> Datum; + pub fn textgename(fcinfo: FunctionCallInfo) -> Datum; + pub fn textgtname(fcinfo: FunctionCallInfo) -> Datum; + pub fn textnename(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttextnamecmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameconcatoid(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_am_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_am_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timeofday(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_nextoid(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn inter_sl(fcinfo: FunctionCallInfo) -> Datum; + pub fn inter_lb(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84div(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float48ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84le(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float84ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftod(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtof(fcinfo: FunctionCallInfo) -> Datum; + pub fn i2toi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4toi2(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_jit_available(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4tod(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtoi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn i4tof(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftoi4(fcinfo: FunctionCallInfo) -> Datum; + pub fn width_bucket_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn index_am_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn index_am_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddr8(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_aclitem(fcinfo: FunctionCallInfo) -> Datum; + pub fn bthandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashhandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn gisthandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginhandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn spghandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn brinhandler(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarlesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn amvalidate(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_contain(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint2cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint4cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat4cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat8cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btoidcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_bp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btcharcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btnamecmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttextcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_interpt(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ps(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pb(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_ps(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_pb(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_ps(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ppath(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn inter_sb(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_array_null(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_append(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_prepend(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_sp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_bs(fcinfo: FunctionCallInfo) -> Datum; + pub fn btarraycmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_cat(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_text_null(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalarlejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn scalargejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddr(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtext(fcinfo: FunctionCallInfo) -> Datum; + pub fn rtrim1(fcinfo: FunctionCallInfo) -> Datum; + pub fn btoidvectorcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn name_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn name_bpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pathp(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashinet(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint4extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_num_nulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_num_nonnulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint2extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint8extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat4extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat8extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoidextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashcharextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashnameextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtextextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint2(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint4(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat4(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashfloat8(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoid(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashname(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashvarlena(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoidvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8in(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8out(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8um(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48(fcinfo: FunctionCallInfo) -> Datum; + pub fn i8tod(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtoi8(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_abbrev(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_abbrev(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_set_masklen(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorne(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_set_masklen(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_indexam_has_property(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_index_has_property(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_index_column_has_property(fcinfo: FunctionCallInfo) -> Datum; + pub fn i8tof(fcinfo: FunctionCallInfo) -> Datum; + pub fn ftoi8(fcinfo: FunctionCallInfo) -> Datum; + pub fn namelt(fcinfo: FunctionCallInfo) -> Datum; + pub fn namele(fcinfo: FunctionCallInfo) -> Datum; + pub fn namegt(fcinfo: FunctionCallInfo) -> Datum; + pub fn namege(fcinfo: FunctionCallInfo) -> Datum; + pub fn namene(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_indexam_progress_phasename(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorle(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectoreq(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorge(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_network(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_netmask(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_masklen(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_broadcast(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_host(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_lp(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ls(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_user(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_family(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_create(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidle(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaoctetlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaGetByte(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaSetByte(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaGetBit(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaSetBit(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_sl(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_cpoly(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_show(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn session_user(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_dims(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_ndims(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaoverlay(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaoverlay_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_import(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_export(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_import_with_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashvarlenaextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashoidvectorextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_aclitem_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddrextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashinetextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_numeric_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashmacaddr8extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_array_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_polyc(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_client_encoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint8cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_flt4(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_flt4(fcinfo: FunctionCallInfo) -> Datum; + pub fn flt4_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn textpos(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn textnlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn namelike(fcinfo: FunctionCallInfo) -> Datum; + pub fn namenlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn char_bpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_database(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn initcap(fcinfo: FunctionCallInfo) -> Datum; + pub fn lpad(fcinfo: FunctionCallInfo) -> Datum; + pub fn rpad(fcinfo: FunctionCallInfo) -> Datum; + pub fn ltrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn rtrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_substr(fcinfo: FunctionCallInfo) -> Datum; + pub fn translate(fcinfo: FunctionCallInfo) -> Datum; + pub fn ltrim1(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_substr_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrim1(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_flt8(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_flt8(fcinfo: FunctionCallInfo) -> Datum; + pub fn cashlarger(fcinfo: FunctionCallInfo) -> Datum; + pub fn cashsmaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn flt8_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_subeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_sup(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_supeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_words(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn char_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28div(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashint8(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_open(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_close(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_loread(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lowrite(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_lseek(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_creat(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_tell(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn on_sl(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_unlink(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashbpcharextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_inter(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_area(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_width(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_height(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_area(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_diagonal(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_n_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_vert(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_horiz(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_slope(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_construct(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_parallel(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_perp(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_vertical(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_horizontal(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_truncate(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlike_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticregexeq_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticlike_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_izone(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclitemin(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclitemout(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclinsert(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclremove(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclcontains(fcinfo: FunctionCallInfo) -> Datum; + pub fn getdatabaseencoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharin(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharout(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharin(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharout(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchareq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharle(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchargt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharge(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharne(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclitem_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_prepared_xact(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_step_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_step_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_regclass(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashbpchar(fcinfo: FunctionCallInfo) -> Datum; + pub fn format_type(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_wal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wal_replay_pause_state(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_pli(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_mii(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_add_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_sub_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_mul_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_div_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_um(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_subset_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_justify_hours(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_exists_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_array_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_subscripts(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_subscripts_nodir(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_fill(fcinfo: FunctionCallInfo) -> Datum; + pub fn dlog10(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameicregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameicregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolin(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolout(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteain(fcinfo: FunctionCallInfo) -> Datum; + pub fn charin(fcinfo: FunctionCallInfo) -> Datum; + pub fn charlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn unique_key_recheck(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexne(fcinfo: FunctionCallInfo) -> Datum; + pub fn textlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn textcat(fcinfo: FunctionCallInfo) -> Datum; + pub fn PG_char_to_encoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidne(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn parse_ident(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn overlaps_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn datetime_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int84div(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48pl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn int48div(fcinfo: FunctionCallInfo) -> Datum; + pub fn quote_ident(fcinfo: FunctionCallInfo) -> Datum; + pub fn quote_literal(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_trunc_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_fill_with_lower_bounds(fcinfo: FunctionCallInfo) -> Datum; + pub fn i8tooid(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidtoi8(fcinfo: FunctionCallInfo) -> Datum; + pub fn quote_nullable(fcinfo: FunctionCallInfo) -> Datum; + pub fn suppress_redundant_updates_trigger(fcinfo: FunctionCallInfo) -> Datum; + pub fn tideq(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_unnest(fcinfo: FunctionCallInfo) -> Datum; + pub fn currtid_byrelname(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_justify_days(fcinfo: FunctionCallInfo) -> Datum; + pub fn datetimetz_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn now(fcinfo: FunctionCallInfo) -> Datum; + pub fn positionsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn positionjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn contsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn contjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn overlaps_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn overlaps_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectortypes(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_hostmask(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexeq_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn makeaclitem(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lock_status(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_finite(fcinfo: FunctionCallInfo) -> Datum; + pub fn textoctetlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharoctetlen(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_fac(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_constraintdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_finite(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_finite(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_client_addr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_client_port(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_schema(fcinfo: FunctionCallInfo) -> Datum; + pub fn current_schemas(fcinfo: FunctionCallInfo) -> Datum; + pub fn textoverlay(fcinfo: FunctionCallInfo) -> Datum; + pub fn textoverlay_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_parallel(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_perp(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_vertical(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_horizontal(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_center(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn points_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_contain_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pt_contained_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_isclosed(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_isopen(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_npoints(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_close(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_open(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_add_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_sub_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_mul_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_div_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn construct_point(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_npoints(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_contain(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_area(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_diameter(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_radius(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn cr_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_poly(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_pc(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_contain_pt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pt_contained_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_circle(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_ls(fcinfo: FunctionCallInfo) -> Datum; + pub fn close_lseg(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_construct_pp(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_interpt(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_ruledef(fcinfo: FunctionCallInfo) -> Datum; + pub fn nextval_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn currval_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn setval_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn biteq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitne(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitge(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitle(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn PG_encoding_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn drandom(fcinfo: FunctionCallInfo) -> Datum; + pub fn setseed(fcinfo: FunctionCallInfo) -> Datum; + pub fn dasin(fcinfo: FunctionCallInfo) -> Datum; + pub fn dacos(fcinfo: FunctionCallInfo) -> Datum; + pub fn datan(fcinfo: FunctionCallInfo) -> Datum; + pub fn datan2(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsin(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcos(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtan(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcot(fcinfo: FunctionCallInfo) -> Datum; + pub fn degrees(fcinfo: FunctionCallInfo) -> Datum; + pub fn radians(fcinfo: FunctionCallInfo) -> Datum; + pub fn dpi(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_typeof(fcinfo: FunctionCallInfo) -> Datum; + pub fn ascii(fcinfo: FunctionCallInfo) -> Datum; + pub fn chr(fcinfo: FunctionCallInfo) -> Datum; + pub fn repeat(fcinfo: FunctionCallInfo) -> Datum; + pub fn similar_escape(fcinfo: FunctionCallInfo) -> Datum; + pub fn mul_d_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn texticnlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameiclike(fcinfo: FunctionCallInfo) -> Datum; + pub fn nameicnlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn like_escape(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidge(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_userbyid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_indexdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_check_ins(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_check_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_cascade_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_cascade_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_restrict_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_restrict_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setnull_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setnull_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setdefault_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_setdefault_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_noaction_del(fcinfo: FunctionCallInfo) -> Datum; + pub fn RI_FKey_noaction_upd(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_triggerdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_serial_sequence(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitxor(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitnot(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitshiftleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitshiftright(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitcat(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitsubstr(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitlength(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitoctetlength(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitfromint4(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittoint4(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_keywords(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn aclexplode(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_mi_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolle(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolge(fcinfo: FunctionCallInfo) -> Datum; + pub fn btboolcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitposition(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitsubstr_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_abs(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sign(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_round(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ceil(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_floor(fcinfo: FunctionCallInfo) -> Datum; + pub fn length_in_encoding(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_convert_from(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_to_cidr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_expr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_convert_to(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_add(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sub(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_mul(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_div(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_mod(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sqrt(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_exp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_ln(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_log(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_power(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_float4(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn setval3_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_uminus(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_to_number(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidin(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidout(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_convert(fcinfo: FunctionCallInfo) -> Datum; + pub fn iclikesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icnlikesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn iclikejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icnlikejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexeqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn likesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexeqsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexnesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn nlikesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexnesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexeqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn likejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexeqjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexnejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn nlikejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn icregexnejoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_var_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_stddev_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_var_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_stddev_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_ascii_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_ascii_enc(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_ascii_encname(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int28ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82le(fcinfo: FunctionCallInfo) -> Datum; + pub fn int82ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2and(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2or(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2xor(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2not(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2shl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2shr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4and(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4or(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4xor(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4not(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4shl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4shr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8and(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8or(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8xor(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8not(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8shl(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8shr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8up(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2up(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4up(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4up(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8up(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_uplus(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_table_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_numscans(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_returned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_inserted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_deleted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_blocks_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_blocks_hit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_idset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_pid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_dbid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_userid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_activity(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_numbackends(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_xact_commit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_xact_rollback(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blocks_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blocks_hit(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_encode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_decode(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteaeq(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytealt(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteale(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteagt(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteage(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteane(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteacmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidlarger(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidsmaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_hot_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_div_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn similar_to_escape_2(fcinfo: FunctionCallInfo) -> Datum; + pub fn similar_to_escape_1(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytealike(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteanlike(fcinfo: FunctionCallInfo) -> Datum; + pub fn like_escape_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteacat(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_substr(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_substr_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteapos(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteatrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_activity(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_first_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_backend_pid(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_match_tz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_conf_load_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_izone(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_to_char(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_izone(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_pl_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_mi_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexsubstr(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitfromint8(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittoint8(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_config_by_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn set_config_by_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_table_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_type_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_function_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_operator_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_opclass_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_all_settings(fcinfo: FunctionCallInfo) -> Datum; + pub fn replace_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn split_part(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_hex32(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_hex64(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_conversion_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_activity_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_terminate_backend(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_functiondef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_compression(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_force_next_flush(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_arguments(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_pattern_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_result(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttext_pattern_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_database_size_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn width_bucket_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_cancel_backend(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_backup_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_pattern_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn btbpchar_pattern_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_sequence_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint48cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint84cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint24cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint42cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint28cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint82cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat48cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat84cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_client_addr(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_client_port(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_server_addr(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_server_port(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocedurein(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocedureout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclassin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclassout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtypein(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtypeout(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_clear_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_identity_arguments(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtid(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashtidextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn fmgr_internal_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn fmgr_c_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn fmgr_sql_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_database_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_function_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_language_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_schema_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_backend_memory_contexts(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_noopt(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_total_relation_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_size_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_options_to_table(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn any_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn any_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn trigger_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn trigger_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn language_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn language_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn internal_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn internal_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_slru(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_slru(fcinfo: FunctionCallInfo) -> Datum; + pub fn dceil(fcinfo: FunctionCallInfo) -> Datum; + pub fn dfloor(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsign(fcinfo: FunctionCallInfo) -> Datum; + pub fn md5_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyelement_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyelement_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn postgresql_fdw_validator(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_encoding_max_length_sql(fcinfo: FunctionCallInfo) -> Datum; + pub fn md5_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_size_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_size_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_database_size_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_unnest(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_lt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_le_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_eq_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_gt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ge_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ne_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_cmp_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_lt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_le_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_eq_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_gt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ge_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_ne_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_cmp_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_lt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_le_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_eq_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_gt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ge_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ne_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_cmp_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_lt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_le_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_eq_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_gt_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ge_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ne_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_cmp_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_tablespace_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn shell_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn shell_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8send(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2vectorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytearecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteasend(fcinfo: FunctionCallInfo) -> Datum; + pub fn textrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn textsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn unknownsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn oidvectorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn namerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn namesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn float4send(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8send(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpcharsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn varcharsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn charrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn charsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regprocedurerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regproceduresend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regopersend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regoperatorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclassrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regclasssend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtyperecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regtypesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsinh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcosh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtanh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dasinh(fcinfo: FunctionCallInfo) -> Datum; + pub fn dacosh(fcinfo: FunctionCallInfo) -> Datum; + pub fn datanh(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn lseg_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn path_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn line_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cidr_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn cstring_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyarray_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_ruledef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_name_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_indexdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_constraintdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_expr_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_prepared_statement(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_cursor(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_var_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_stddev_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_var_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn booland_statefunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn boolor_statefunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_lt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_le_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_eq_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_gt_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ge_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_ne_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_cmp_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_lt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_le_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_eq_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_gt_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ge_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_ne_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_cmp_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_databases(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_bool(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn lastval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_postmaster_start_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_blocking_pids(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overbelow(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_overabove(fcinfo: FunctionCallInfo) -> Datum; + pub fn box_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_below(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overbelow(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_overabove(fcinfo: FunctionCallInfo) -> Datum; + pub fn poly_above(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_poly_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_poly_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overbelow(fcinfo: FunctionCallInfo) -> Datum; + pub fn circle_overabove(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_circle_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_circle_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_stddev_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn domain_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn domain_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_timezone_abbrevs(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlexists(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_reload_conf(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_rotate_logfile(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_file_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_off_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_dir_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sleep(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetnot(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetand(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetor(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetpl(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetmi_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn inetmi(fcinfo: FunctionCallInfo) -> Datum; + pub fn statement_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn clock_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_cmp_prefix(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_has_role_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_justify_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_triggerdef_ext(fcinfo: FunctionCallInfo) -> Datum; + pub fn dasind(fcinfo: FunctionCallInfo) -> Datum; + pub fn dacosd(fcinfo: FunctionCallInfo) -> Datum; + pub fn datand(fcinfo: FunctionCallInfo) -> Datum; + pub fn datan2d(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsind(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcosd(fcinfo: FunctionCallInfo) -> Datum; + pub fn dtand(fcinfo: FunctionCallInfo) -> Datum; + pub fn dcotd(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_backup_stop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarrayextract(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarrayconsistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn arrayoverlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontains(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontained(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_returned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_inserted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_tuples_deleted(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_matches_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_matches(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_table_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_table(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_array_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_split_to_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_num_timed(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_num_requested(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_buffers_written(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_bgwriter_buf_written_clean(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_bgwriter_maxwritten_clean(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginqueryarrayextract(fcinfo: FunctionCallInfo) -> Datum; + pub fn anynonarray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anynonarray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_vacuum_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_autovacuum_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_analyze_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_last_autoanalyze_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_wait_event_type(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidgt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidlt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidge(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidle(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttidcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidlarger(fcinfo: FunctionCallInfo) -> Datum; + pub fn tidsmaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc_any(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc_float8_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_sxx(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_syy(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_sxy(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_avgx(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_avgy(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_r2(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_slope(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_intercept(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_covar_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_covar_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_corr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blk_read_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_blk_write_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_switch_wal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_wal_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_walfile_name_offset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_walfile_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_wal_insert_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_wait_event(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_my_temp_schema(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_is_other_temp_schema(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_timezone_names(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_xact_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_buf_alloc(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_live_tuples(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_dead_tuples(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_unlock_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlcomment(fcinfo: FunctionCallInfo) -> Datum; + pub fn texttoxml(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlvalidate(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmlconcat2(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbittypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn intervaltypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn intervaltypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptztypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptztypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetztypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetztypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchartypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchartypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchartypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchartypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn numerictypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn numerictypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittypmodin(fcinfo: FunctionCallInfo) -> Datum; + pub fn bittypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbittypmodout(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmltotext(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn query_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn cursor_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn query_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn cursor_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn table_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn query_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn xpath(fcinfo: FunctionCallInfo) -> Datum; + pub fn schema_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn schema_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn schema_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn database_to_xml(fcinfo: FunctionCallInfo) -> Datum; + pub fn database_to_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn database_to_xml_and_xmlschema(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_xact_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_xmin(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_xmax(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_snapshot_xip(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_visible_in_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn booltext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_function_calls(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_function_total_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_function_self_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrecordcmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_table_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_indexes_size(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_filenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_foreign_data_wrapper_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_server_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_name_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_id_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_name_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_id_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_name_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_column_privilege_id_attnum(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_any_column_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitoverlay(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitoverlay_no_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitgetbit(fcinfo: FunctionCallInfo) -> Datum; + pub fn bitsetbit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_filepath(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_listening_channels(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_notify(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_numscans(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_returned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_inserted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_deleted(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_hot_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_blocks_fetched(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_blocks_hit(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_function_calls(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_function_total_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_function_self_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn xpath_exists(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_is_well_formed(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_is_well_formed_document(fcinfo: FunctionCallInfo) -> Datum; + pub fn xml_is_well_formed_content(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_vacuum_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_autovacuum_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_analyze_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_autoanalyze_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_concat(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_concat_ws(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_left(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_right(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_reverse(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_tablespace(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_lock(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_bufferpin(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_startup_deadlock(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_replay_pause(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_replay_resume(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_is_wal_replay_paused(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_stat_reset_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_bgwriter_stat_reset_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarrayextract_2args(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsvector_2args(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sequence_parameters(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_available_extensions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_available_extension_versions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_extension_update_paths(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_extension_config_dump(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsquery_5args(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_consistent_6args(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_shared_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_advisory_xact_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_try_advisory_xact_lock_shared_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn varchar_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_create_restore_point(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_wal_senders(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_row_number(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_rank(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_dense_rank(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_percent_rank(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_cume_dist(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_ntile(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lag(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lag_with_offset(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lag_with_offset_and_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lead(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lead_with_offset(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_lead_with_offset_and_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_first_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_last_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_nth_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn fdw_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn fdw_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn void_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint2sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint4sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btint8sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat4sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btfloat8sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btoidsortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btnamesortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn date_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_name_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_id_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_type_privilege_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_not(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_temp_files(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_temp_bytes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_deadlocks(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_json_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_to_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_to_json_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn varbit_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_viewdef_wrap(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_write_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_sync_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_collation_for(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_trigger_depth(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_lsn_diff(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_size_pretty_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_remove(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_replace(fcinfo: FunctionCallInfo) -> Datum; + pub fn rangesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_lseek64(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_tell64(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_truncate64(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_mod_since_analyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_cardinality(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn record_image_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn btrecordimagecmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_archiver(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_array_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_build_object_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_two_arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_each(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_populate_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_typeof(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_field_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_element(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_element_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_extract_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn width_bucket_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_elements(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_mi(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttextsortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_step_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_strip_nulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_strip_nulls(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_two_arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_array_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_build_object_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_ppoly(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_position(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_position_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_positions(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_circle_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_fetch(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_poly_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_cpoint(fcinfo: FunctionCallInfo) -> Datum; + pub fn dist_polyp(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_off_len_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_config_by_name_missing_ok(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_off_len_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_notification_queue_usage(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_dir(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_security_active(fcinfo: FunctionCallInfo) -> Datum; + pub fn row_security_active_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_concat(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete_idx(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_set(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_pretty(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_file(fcinfo: FunctionCallInfo) -> Datum; + pub fn xidneq(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_handler_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_handler_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_bernoulli_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsm_system_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_wal_receiver(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_progress_info(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_filter(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_setweight_by_filter(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_delete_str(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_unnest(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_delete_arr(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_to_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn bpchar_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn show_all_file_settings(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_wal_flush_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn bttext_pattern_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn btbpchar_pattern_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_size_bytes(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_avg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn float8_regr_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_delete_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_mul_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_xact_id_if_assigned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_partkeydef(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_logdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_waldir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ndistinct_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_xact_status(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_safe_snapshot_blocking_pids(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_isolation_test_session_is_blocked(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_identify_object_as_address(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_avg(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_var_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_var_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_stddev_pop(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_poly_stddev_samp(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_match_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_match(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_mul_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_hba_file_rules(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_statistics_obj_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_dependencies_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_partition_constraintdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashenumextended(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_statisticsobjdef(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_range_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_hash_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha224_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha256_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha384_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn sha512_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_partition_tree(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_partition_root(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_partition_ancestors(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_checksum_failures(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stats_ext_mcvlist_items(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_checksum_last_failure(fcinfo: FunctionCallInfo) -> Datum; + pub fn gen_random_uuid(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_options(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_point_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_promote(fcinfo: FunctionCallInfo) -> Datum; + pub fn prefixsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn prefixjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_system(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_checkpoint(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_recovery(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_control_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_import_system_collations(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_collation_actual_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_float4(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_filenode_relation(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_from_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_get(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_get_fragment(fcinfo: FunctionCallInfo) -> Datum; + pub fn be_lo_put(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_timestamptz_at_timezone(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_array_elements_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_range_quad_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_populate_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regoperator(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_field(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regprocedure(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_compare_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_consistent_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_jsonb_query_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_consistent_jsonb_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_triconsistent_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_triconsistent_jsonb_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regoper(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regtype(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regproc(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regclass(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_accum(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_alltrue(fcinfo: FunctionCallInfo) -> Datum; + pub fn bool_anytrue(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyenum_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyenum_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn hashenum(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_first(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_last(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_range_bounds(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_range_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn enum_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_describe_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_format(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_format_nv(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_string_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_string_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8dec(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8dec_any(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_overlap(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_bool(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn networksel(fcinfo: FunctionCallInfo) -> Datum; + pub fn networkjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_dropped_objects(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_avg_accum_inv(fcinfo: FunctionCallInfo) -> Datum; + pub fn int2int4_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_gist_fetch(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_emit_message_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_emit_message_bytea(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_insert(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_xact_commit_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_committed_xact(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_array_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_heap_pg_class_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_index_pg_class_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_toast_pg_class_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_enum_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_authid_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_create_empty_extension(fcinfo: FunctionCallInfo) -> Datum; + pub fn event_trigger_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn event_trigger_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsqueryin(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsqueryout(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_strip(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_setweight(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_concat(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_vq(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_qv(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvectorrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquerysend(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsqueryrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvectorin(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvectorout(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_decompress(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_not(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_numnode(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquerytree(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_rewrite(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_rewrite_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsmatchsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsmatchjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_stat1(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_stat2(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsq_mcontains(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsq_mcontained(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_starts_with(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_wttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_wtt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_ttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rank_tt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_wttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_wtt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_ttf(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_rankcd_tt(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_token_type_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_token_type_byname(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_parse_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_parse_byname(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_nexttoken(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_end(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_headline(fcinfo: FunctionCallInfo) -> Datum; + pub fn prsd_lextype(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_cmp_tslexeme(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsimple_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsimple_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsynonym_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn dsynonym_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn dispell_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn dispell_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regconfigsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn thesaurus_init(fcinfo: FunctionCallInfo) -> Datum; + pub fn thesaurus_lexize(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_byid_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn plainto_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn plainto_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_update_trigger_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsvector_update_trigger_bycolumn(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_parser_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_dict_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_config_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn get_current_ts_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_tt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_match_tq(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ts_template_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionaryin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionaryout(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionaryrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regdictionarysend(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_shared(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_single_table_counters(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_single_function_counters(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_tablespace_location(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_create_physical_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_drop_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_replication_slots(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_get_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_get_binary_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_peek_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_logical_slot_peek_binary_changes(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_create_logical_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_snapshot_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_clean_pending_list(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsvector_consistent_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_extract_tsquery_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_consistent_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn gtsquery_consistent_oldsig(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_spg_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_logfile(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_current_logfile_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_arg_default(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_export_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_is_in_recovery(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn xmltext(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_collation_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn arraycontjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_multixact_members(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_wal_receive_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_wal_replay_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_div_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn cash_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_cash(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_off_len(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_opfamily_is_visible(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_last_xact_replay_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyrange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anyrange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_identify_object(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_constructor2(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_constructor3(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_is_updatable(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_is_updatable(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn make_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_empty(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lower_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_upper_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lower_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_upper_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overlaps(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains_elem(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains(fcinfo: FunctionCallInfo) -> Datum; + pub fn elem_contained_by_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contained_by(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_adjacent(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_before(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_after(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overleft(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overright(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_minus(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_slot_advance(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_penalty(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_gist_same(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4range_canonical(fcinfo: FunctionCallInfo) -> Datum; + pub fn daterange_canonical(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn ginarraytriconsistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn gin_tsquery_triconsistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4range_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8range_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn numrange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn daterange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8range_canonical(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsrange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn tstzrange_subdiff(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_keys(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_each_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn mxid_age(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_extract_path_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn acldefault_sql(fcinfo: FunctionCallInfo) -> Datum; + pub fn time_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_field(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_field_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_element(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_element_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_extract_path(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_summarize_new_values(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_extract_path_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_object_address(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_elements(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_length(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_keys(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_each(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_each_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_populate_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_populate_recordset(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_typeof(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_array_elements_text(fcinfo: FunctionCallInfo) -> Datum; + pub fn ordered_set_transition(fcinfo: FunctionCallInfo) -> Datum; + pub fn ordered_set_transition_multi(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_disc_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_float8_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_interval_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_disc_multi_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_float8_multi_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn percentile_cont_interval_multi_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn mode_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_rank_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_percent_rank_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_cume_dist_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn hypothetical_dense_rank_final(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int4_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_int8_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_unnest_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn gist_box_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_summarize_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonpath_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_exists(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_query_first(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_match(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_exists_opr(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_path_match_opr(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_desummarize_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_quad_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_kd_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_text_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sequence_last_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_hash(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_contains(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_exists(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_exists_any(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_exists_all(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_contained(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_merge(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_merge(fcinfo: FunctionCallInfo) -> Datum; + pub fn boxes_bound_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn inet_same_family(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_record_init_privs(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespacein(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespaceout(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regnamespace(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespacerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regnamespacesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn point_box(fcinfo: FunctionCallInfo) -> Datum; + pub fn regroleout(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regrole(fcinfo: FunctionCallInfo) -> Datum; + pub fn regrolerecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regrolesend(fcinfo: FunctionCallInfo) -> Datum; + pub fn regrolein(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_missing_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_inclusion_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_trunc(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_not(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_and(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_or(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddrtomacaddr8(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8tomacaddr(fcinfo: FunctionCallInfo) -> Datum; + pub fn macaddr8_set7bit(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int8_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int4_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int4_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int4_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int2_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int2_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_int2_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_date_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_timestamp_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_timestamptz_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_interval_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_time_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_timetz_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_float8_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_float4_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn in_range_numeric_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationin(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationout(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regcollation(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationrecv(fcinfo: FunctionCallInfo) -> Datum; + pub fn regcollationsend(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb_byid_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_jsonb(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json_byid_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json_opt(fcinfo: FunctionCallInfo) -> Datum; + pub fn ts_headline_json(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_string_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_string_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_string_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_string_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_tsvector(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_to_tsvector_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_physical_replication_slot_a(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_physical_replication_slot_b(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_logical_replication_slot_a(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_logical_replication_slot_b(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_copy_logical_replication_slot_c(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblemultirange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblemultirange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_merge_from_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn anymultirange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anymultirange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lower(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_upper(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_empty(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lower_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_upper_inc(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lower_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_upper_inf(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_typanalyze(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirangesel(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overlaps_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overlaps_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overlaps_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contains_elem(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contains_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contains_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn elem_contained_by_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contained_by_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contained_by_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_adjacent_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_adjacent_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_adjacent_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_before_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_before_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_before_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_after_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_after_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_after_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overleft_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overleft_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overleft_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_overright_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overright_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_overright_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_minus(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_intersect(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_le(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_multirange_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_constructor0(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_constructor1(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_constructor2(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_agg_finalfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_normalize_func(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_is_normalized(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_intersect_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_multirange_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_multirange_array_pg_type_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_intersect_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains_multirange(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_contained_by_range(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_log_backend_memory_contexts(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_heap_relfilenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_index_relfilenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_toast_relfilenode(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_set_next_pg_tablespace_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_table_rewrite_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_table_rewrite_reason(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_event_trigger_ddl_commands(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_options(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_bloom_summary_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_opcinfo(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_add_value(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_union(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_options(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_int2(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_int4(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_int8(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_float4(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_float8(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_numeric(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_tid(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_uuid(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_pg_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_macaddr(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_macaddr8(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_inet(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_distance_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn brin_minmax_multi_summary_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn phraseto_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_phrase(fcinfo: FunctionCallInfo) -> Datum; + pub fn tsquery_phrase_distance(fcinfo: FunctionCallInfo) -> Datum; + pub fn phraseto_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn websearch_to_tsquery_byid(fcinfo: FunctionCallInfo) -> Datum; + pub fn websearch_to_tsquery(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_bbox_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_poly_quad_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_config(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_choose(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_picksplit(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_inner_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn spg_box_quad_leaf_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_mcv_list_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_pli(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_lsn_mii(fcinfo: FunctionCallInfo) -> Datum; + pub fn satisfies_hash_partition(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_tmpdir_noargs(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_tmpdir_1arg(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_archive_statusdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn network_sortsupport(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8lt(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8gt(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8le(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8ge(fcinfo: FunctionCallInfo) -> Datum; + pub fn matchingsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn matchingjoinsel(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_min_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_trim_scale(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4gcd(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8gcd(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4lcm(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8lcm(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_gcd(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_lcm(fcinfo: FunctionCallInfo) -> Datum; + pub fn btvarstrequalimage(fcinfo: FunctionCallInfo) -> Datum; + pub fn btequalimage(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_shmem_allocations(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_ins_since_vacuum(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_set_lax(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8in(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8toxid(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8out(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8send(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8eq(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8ne(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatible_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatible_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_recv(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblearray_send(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblenonarray_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblenonarray_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblerange_in(fcinfo: FunctionCallInfo) -> Datum; + pub fn anycompatiblerange_out(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8cmp(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8_larger(fcinfo: FunctionCallInfo) -> Datum; + pub fn xid8_smaller(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_create(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_drop(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_oid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_setup(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_reset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_is_setup(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_session_progress(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_xact_setup(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_xact_reset(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_advance(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_replication_origin_progress(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_show_replication_origin_status(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_subscript_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn icu_unicode_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_pg_lsn(fcinfo: FunctionCallInfo) -> Datum; + pub fn unicode_assigned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_backend_subxact(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_subscription(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_publication_tables(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_replica_identity_index(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_relation_is_publishable(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_gist_consistent(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_gist_compress(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_catalog_foreign_keys(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_table(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_to_table_null(fcinfo: FunctionCallInfo) -> Datum; + pub fn bit_bit_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytea_bit_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_xact_commit_timestamp_origin(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_replication_slot(fcinfo: FunctionCallInfo) -> Datum; + pub fn trim_array(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_statisticsobjdef_expressions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_statisticsobjdef_columns(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_bin(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_bin(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_subscript_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn raw_array_subscript_handler(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_session_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_active_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_idle_in_transaction_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions_abandoned(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions_fatal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_sessions_killed(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_record(fcinfo: FunctionCallInfo) -> Datum; + pub fn hash_record_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn bytealtrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn byteartrim(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_function_sqlbody(fcinfo: FunctionCallInfo) -> Datum; + pub fn unistr(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_date(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_timetz(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_timestamptz(fcinfo: FunctionCallInfo) -> Datum; + pub fn extract_interval(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_parameter_privilege_name_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_parameter_privilege_id_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn has_parameter_privilege_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_file_all_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_read_binary_file_all_missing(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_input_is_valid(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_input_error_info(fcinfo: FunctionCallInfo) -> Datum; + pub fn drandom_normal(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_split_walfile_name(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_io(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_shuffle(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_sample(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_tuples_newpage_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_xact_tuples_newpage_updated(fcinfo: FunctionCallInfo) -> Datum; + pub fn derf(fcinfo: FunctionCallInfo) -> Datum; + pub fn derfc(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_pl_interval_at_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wal_resource_managers(fcinfo: FunctionCallInfo) -> Datum; + pub fn multirange_agg_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_have_stats(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_subscription_stats(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_reset_subscription_stats(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_row_number_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_rank_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_dense_rank_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8inc_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_settings_get_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stop_making_pinned_objects(fcinfo: FunctionCallInfo) -> Datum; + pub fn text_starts_with_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_recovery_prefetch(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_database_collation_actual_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ident_file_mappings(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_extended(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_extended_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn textregexreplace_extended_no_n(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_count_no_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_count_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_count(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_n(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_endoption(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr_no_subexpr(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_instr(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_like_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_like(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_start(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_n(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_flags(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr_no_subexpr(fcinfo: FunctionCallInfo) -> Datum; + pub fn regexp_substr(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_logicalsnapdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_logicalmapdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_ls_replslotdir(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_mi_interval_at_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn generate_series_timestamptz_at_zone(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_unique_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn json_object_agg_unique_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_unique_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_object_agg_unique_strict_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn any_value_transfn(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn array_agg_array_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_combine(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn string_agg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_log_standby_snapshot(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_percent_rank_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_cume_dist_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn window_ntile_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_db_conflict_logicalslot(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_lastscan(fcinfo: FunctionCallInfo) -> Datum; + pub fn system_user(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_logical_slot_has_caught_up(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_stat_reset_time(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_basetype(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_column_toast_chunk_id(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_regtypemod(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wait_events(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_add_sub_rel_state(fcinfo: FunctionCallInfo) -> Datum; + pub fn binary_upgrade_replorigin_advance(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_available_wal_summaries(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_wal_summary_contents(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_get_wal_summarizer_state(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_serialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_avg_deserialize(fcinfo: FunctionCallInfo) -> Datum; + pub fn interval_sum(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_restartpoints_timed(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_restartpoints_requested(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_stat_get_checkpointer_restartpoints_performed(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_bin32(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_bin64(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_oct32(fcinfo: FunctionCallInfo) -> Datum; + pub fn to_oct64(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamptz_at_local(fcinfo: FunctionCallInfo) -> Datum; + pub fn timestamp_at_local(fcinfo: FunctionCallInfo) -> Datum; + pub fn timetz_at_local(fcinfo: FunctionCallInfo) -> Datum; + pub fn jsonb_populate_record_valid(fcinfo: FunctionCallInfo) -> Datum; + pub fn int4random(fcinfo: FunctionCallInfo) -> Datum; + pub fn int8random(fcinfo: FunctionCallInfo) -> Datum; + pub fn numeric_random(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_extract_timestamp(fcinfo: FunctionCallInfo) -> Datum; + pub fn uuid_extract_version(fcinfo: FunctionCallInfo) -> Datum; + pub fn pg_sync_replication_slots(fcinfo: FunctionCallInfo) -> Datum; + pub fn range_contains_elem_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn elem_contained_by_range_support(fcinfo: FunctionCallInfo) -> Datum; + pub fn parse_bool(value: *const ::core::ffi::c_char, result: *mut bool) -> bool; + pub fn parse_bool_with_len( + value: *const ::core::ffi::c_char, + len: usize, + result: *mut bool, + ) -> bool; + pub fn domain_check( + value: Datum, + isnull: bool, + domainType: Oid, + extra: *mut *mut ::core::ffi::c_void, + mcxt: MemoryContext, + ); + pub fn domain_check_safe( + value: Datum, + isnull: bool, + domainType: Oid, + extra: *mut *mut ::core::ffi::c_void, + mcxt: MemoryContext, + escontext: *mut Node, + ) -> bool; + pub fn errdatatype(datatypeOid: Oid) -> ::core::ffi::c_int; + pub fn errdomainconstraint( + datatypeOid: Oid, + conname: *const ::core::ffi::c_char, + ) -> ::core::ffi::c_int; + pub fn hex_encode( + src: *const ::core::ffi::c_char, + len: usize, + dst: *mut ::core::ffi::c_char, + ) -> uint64; + pub fn hex_decode( + src: *const ::core::ffi::c_char, + len: usize, + dst: *mut ::core::ffi::c_char, + ) -> uint64; + pub fn hex_decode_safe( + src: *const ::core::ffi::c_char, + len: usize, + dst: *mut ::core::ffi::c_char, + escontext: *mut Node, + ) -> uint64; + pub fn buildint2vector(int2s: *const int16, n: ::core::ffi::c_int) -> *mut int2vector; + pub fn namestrcpy(name: Name, str_: *const ::core::ffi::c_char); + pub fn namestrcmp(name: Name, str_: *const ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_strtoint16(s: *const ::core::ffi::c_char) -> int16; + pub fn pg_strtoint16_safe(s: *const ::core::ffi::c_char, escontext: *mut Node) -> int16; + pub fn pg_strtoint32(s: *const ::core::ffi::c_char) -> int32; + pub fn pg_strtoint32_safe(s: *const ::core::ffi::c_char, escontext: *mut Node) -> int32; + pub fn pg_strtoint64(s: *const ::core::ffi::c_char) -> int64; + pub fn pg_strtoint64_safe(s: *const ::core::ffi::c_char, escontext: *mut Node) -> int64; + pub fn uint32in_subr( + s: *const ::core::ffi::c_char, + endloc: *mut *mut ::core::ffi::c_char, + typname: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> uint32; + pub fn uint64in_subr( + s: *const ::core::ffi::c_char, + endloc: *mut *mut ::core::ffi::c_char, + typname: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> uint64; + pub fn pg_itoa(i: int16, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ultoa_n(value: uint32, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ulltoa_n(value: uint64, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ltoa(value: int32, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_lltoa(value: int64, a: *mut ::core::ffi::c_char) -> ::core::ffi::c_int; + pub fn pg_ultostr_zeropad( + str_: *mut ::core::ffi::c_char, + value: uint32, + minwidth: int32, + ) -> *mut ::core::ffi::c_char; + pub fn pg_ultostr(str_: *mut ::core::ffi::c_char, value: uint32) -> *mut ::core::ffi::c_char; + pub fn buildoidvector(oids: *const Oid, n: ::core::ffi::c_int) -> *mut oidvector; + pub fn oidparse(node: *mut Node) -> Oid; + pub fn oid_cmp( + p1: *const ::core::ffi::c_void, + p2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn regexp_fixed_prefix( + text_re: *mut text, + case_insensitive: bool, + collation: Oid, + exact: *mut bool, + ) -> *mut ::core::ffi::c_char; + pub static mut quote_all_identifiers: bool; + pub fn quote_identifier(ident: *const ::core::ffi::c_char) -> *const ::core::ffi::c_char; + pub fn quote_qualified_identifier( + qualifier: *const ::core::ffi::c_char, + ident: *const ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn generate_operator_clause( + buf: fmStringInfo, + leftop: *const ::core::ffi::c_char, + leftoptype: Oid, + opoid: Oid, + rightop: *const ::core::ffi::c_char, + rightoptype: Oid, + ); + pub fn bpchartruelen( + s: *mut ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn cstring_to_text(s: *const ::core::ffi::c_char) -> *mut text; + pub fn cstring_to_text_with_len( + s: *const ::core::ffi::c_char, + len: ::core::ffi::c_int, + ) -> *mut text; + pub fn text_to_cstring(t: *const text) -> *mut ::core::ffi::c_char; + pub fn text_to_cstring_buffer(src: *const text, dst: *mut ::core::ffi::c_char, dst_len: usize); + pub fn xidComparator( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn xidLogicalComparator( + arg1: *const ::core::ffi::c_void, + arg2: *const ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn pg_inet_cidr_ntop( + af: ::core::ffi::c_int, + src: *const ::core::ffi::c_void, + bits: ::core::ffi::c_int, + dst: *mut ::core::ffi::c_char, + size: usize, + ) -> *mut ::core::ffi::c_char; + pub fn pg_inet_net_pton( + af: ::core::ffi::c_int, + src: *const ::core::ffi::c_char, + dst: *mut ::core::ffi::c_void, + size: usize, + ) -> ::core::ffi::c_int; + pub fn convert_network_to_scalar(value: Datum, typid: Oid, failure: *mut bool) -> f64; + pub fn network_scan_first(in_: Datum) -> Datum; + pub fn network_scan_last(in_: Datum) -> Datum; + pub fn clean_ipv6_addr(addr_family: ::core::ffi::c_int, addr: *mut ::core::ffi::c_char); + pub fn numeric_float8_no_overflow(fcinfo: FunctionCallInfo) -> Datum; + pub fn format_type_extended( + type_oid: Oid, + typemod: int32, + flags: bits16, + ) -> *mut ::core::ffi::c_char; + pub fn format_type_be(type_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_type_be_qualified(type_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_type_with_typemod(type_oid: Oid, typemod: int32) -> *mut ::core::ffi::c_char; + pub fn type_maximum_size(type_oid: Oid, typemod: int32) -> int32; + pub fn quote_literal_cstr(rawstr: *const ::core::ffi::c_char) -> *mut ::core::ffi::c_char; + pub fn anytime_typmod_check(istz: bool, typmod: int32) -> int32; + pub fn date2timestamp_no_overflow(dateVal: DateADT) -> f64; + pub fn date2timestamp_opt_overflow( + dateVal: DateADT, + overflow: *mut ::core::ffi::c_int, + ) -> Timestamp; + pub fn date2timestamptz_opt_overflow( + dateVal: DateADT, + overflow: *mut ::core::ffi::c_int, + ) -> TimestampTz; + pub fn date_cmp_timestamp_internal(dateVal: DateADT, dt2: Timestamp) -> int32; + pub fn date_cmp_timestamptz_internal(dateVal: DateADT, dt2: TimestampTz) -> int32; + pub fn EncodeSpecialDate(dt: DateADT, str_: *mut ::core::ffi::c_char); + pub fn GetSQLCurrentDate() -> DateADT; + pub fn GetSQLCurrentTime(typmod: int32) -> *mut TimeTzADT; + pub fn GetSQLLocalTime(typmod: int32) -> TimeADT; + pub fn time2tm(time: TimeADT, tm: *mut pg_tm, fsec: *mut fsec_t) -> ::core::ffi::c_int; + pub fn timetz2tm( + time: *mut TimeTzADT, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzp: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn tm2time(tm: *mut pg_tm, fsec: fsec_t, result: *mut TimeADT) -> ::core::ffi::c_int; + pub fn tm2timetz( + tm: *mut pg_tm, + fsec: fsec_t, + tz: ::core::ffi::c_int, + result: *mut TimeTzADT, + ) -> ::core::ffi::c_int; + pub fn time_overflows( + hour: ::core::ffi::c_int, + min: ::core::ffi::c_int, + sec: ::core::ffi::c_int, + fsec: fsec_t, + ) -> bool; + pub fn float_time_overflows( + hour: ::core::ffi::c_int, + min: ::core::ffi::c_int, + sec: f64, + ) -> bool; + pub fn AdjustTimeForTypmod(time: *mut TimeADT, typmod: int32); + pub static months: [*const ::core::ffi::c_char; 0usize]; + pub static days: [*const ::core::ffi::c_char; 0usize]; + pub static mut day_tab: [[::core::ffi::c_int; 13usize]; 2usize]; + pub fn GetCurrentDateTime(tm: *mut pg_tm); + pub fn GetCurrentTimeUsec(tm: *mut pg_tm, fsec: *mut fsec_t, tzp: *mut ::core::ffi::c_int); + pub fn j2date( + jd: ::core::ffi::c_int, + year: *mut ::core::ffi::c_int, + month: *mut ::core::ffi::c_int, + day: *mut ::core::ffi::c_int, + ); + pub fn date2j( + year: ::core::ffi::c_int, + month: ::core::ffi::c_int, + day: ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn ParseDateTime( + timestr: *const ::core::ffi::c_char, + workbuf: *mut ::core::ffi::c_char, + buflen: usize, + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + maxfields: ::core::ffi::c_int, + numfields: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeDateTime( + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + nf: ::core::ffi::c_int, + dtype: *mut ::core::ffi::c_int, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzp: *mut ::core::ffi::c_int, + extra: *mut DateTimeErrorExtra, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezone( + str_: *const ::core::ffi::c_char, + tzp: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeTimeOnly( + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + nf: ::core::ffi::c_int, + dtype: *mut ::core::ffi::c_int, + tm: *mut pg_tm, + fsec: *mut fsec_t, + tzp: *mut ::core::ffi::c_int, + extra: *mut DateTimeErrorExtra, + ) -> ::core::ffi::c_int; + pub fn DecodeInterval( + field: *mut *mut ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + nf: ::core::ffi::c_int, + range: ::core::ffi::c_int, + dtype: *mut ::core::ffi::c_int, + itm_in: *mut pg_itm_in, + ) -> ::core::ffi::c_int; + pub fn DecodeISO8601Interval( + str_: *mut ::core::ffi::c_char, + dtype: *mut ::core::ffi::c_int, + itm_in: *mut pg_itm_in, + ) -> ::core::ffi::c_int; + pub fn DateTimeParseError( + dterr: ::core::ffi::c_int, + extra: *mut DateTimeErrorExtra, + str_: *const ::core::ffi::c_char, + datatype: *const ::core::ffi::c_char, + escontext: *mut Node, + ); + pub fn DetermineTimeZoneOffset(tm: *mut pg_tm, tzp: *mut pg_tz) -> ::core::ffi::c_int; + pub fn DetermineTimeZoneAbbrevOffset( + tm: *mut pg_tm, + abbr: *const ::core::ffi::c_char, + tzp: *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn DetermineTimeZoneAbbrevOffsetTS( + ts: TimestampTz, + abbr: *const ::core::ffi::c_char, + tzp: *mut pg_tz, + isdst: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn EncodeDateOnly( + tm: *mut pg_tm, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeTimeOnly( + tm: *mut pg_tm, + fsec: fsec_t, + print_tz: bool, + tz: ::core::ffi::c_int, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeDateTime( + tm: *mut pg_tm, + fsec: fsec_t, + print_tz: bool, + tz: ::core::ffi::c_int, + tzn: *const ::core::ffi::c_char, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeInterval( + itm: *mut pg_itm, + style: ::core::ffi::c_int, + str_: *mut ::core::ffi::c_char, + ); + pub fn EncodeSpecialTimestamp(dt: Timestamp, str_: *mut ::core::ffi::c_char); + pub fn ValidateDate( + fmask: ::core::ffi::c_int, + isjulian: bool, + is2digits: bool, + bc: bool, + tm: *mut pg_tm, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezoneAbbrev( + field: ::core::ffi::c_int, + lowtoken: *const ::core::ffi::c_char, + ftype: *mut ::core::ffi::c_int, + offset: *mut ::core::ffi::c_int, + tz: *mut *mut pg_tz, + extra: *mut DateTimeErrorExtra, + ) -> ::core::ffi::c_int; + pub fn DecodeSpecial( + field: ::core::ffi::c_int, + lowtoken: *const ::core::ffi::c_char, + val: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeUnits( + field: ::core::ffi::c_int, + lowtoken: *const ::core::ffi::c_char, + val: *mut ::core::ffi::c_int, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezoneName( + tzname: *const ::core::ffi::c_char, + offset: *mut ::core::ffi::c_int, + tz: *mut *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn DecodeTimezoneNameToTz(tzname: *const ::core::ffi::c_char) -> *mut pg_tz; + pub fn DecodeTimezoneAbbrevPrefix( + str_: *const ::core::ffi::c_char, + offset: *mut ::core::ffi::c_int, + tz: *mut *mut pg_tz, + ) -> ::core::ffi::c_int; + pub fn j2day(date: ::core::ffi::c_int) -> ::core::ffi::c_int; + pub fn TemporalSimplify(max_precis: int32, node: *mut Node) -> *mut Node; + pub fn CheckDateTokenTables() -> bool; + pub fn ConvertTimeZoneAbbrevs( + abbrevs: *mut tzEntry, + n: ::core::ffi::c_int, + ) -> *mut TimeZoneAbbrevTable; + pub fn InstallTimeZoneAbbrevs(tbl: *mut TimeZoneAbbrevTable); + pub fn AdjustTimestampForTypmod( + time: *mut Timestamp, + typmod: int32, + escontext: *mut Node, + ) -> bool; + pub static mut extra_float_digits: ::core::ffi::c_int; + pub fn float_overflow_error() -> !; + pub fn float_underflow_error() -> !; + pub fn float_zero_divide_error() -> !; + pub fn is_infinite(val: float8) -> ::core::ffi::c_int; + pub fn float8in_internal( + num: *mut ::core::ffi::c_char, + endptr_p: *mut *mut ::core::ffi::c_char, + type_name: *const ::core::ffi::c_char, + orig_string: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> float8; + pub fn float4in_internal( + num: *mut ::core::ffi::c_char, + endptr_p: *mut *mut ::core::ffi::c_char, + type_name: *const ::core::ffi::c_char, + orig_string: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> float4; + pub fn float8out_internal(num: float8) -> *mut ::core::ffi::c_char; + pub fn float4_cmp_internal(a: float4, b: float4) -> ::core::ffi::c_int; + pub fn float8_cmp_internal(a: float8, b: float8) -> ::core::ffi::c_int; + pub fn pg_hypot(x: float8, y: float8) -> float8; + pub fn escape_json(buf: StringInfo, str_: *const ::core::ffi::c_char); + pub fn JsonEncodeDateTime( + buf: *mut ::core::ffi::c_char, + value: Datum, + typid: Oid, + tzp: *const ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn to_json_is_immutable(typoid: Oid) -> bool; + pub fn json_build_object_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + unique_keys: bool, + ) -> Datum; + pub fn json_build_array_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + ) -> Datum; + pub fn json_validate(json: *mut text, check_unique_keys: bool, throw_error: bool) -> bool; + pub static mut pg_global_prng_state: pg_prng_state; + pub fn pg_prng_seed(state: *mut pg_prng_state, seed: uint64); + pub fn pg_prng_fseed(state: *mut pg_prng_state, fseed: f64); + pub fn pg_prng_seed_check(state: *mut pg_prng_state) -> bool; + pub fn pg_prng_uint64(state: *mut pg_prng_state) -> uint64; + pub fn pg_prng_uint64_range(state: *mut pg_prng_state, rmin: uint64, rmax: uint64) -> uint64; + pub fn pg_prng_int64(state: *mut pg_prng_state) -> int64; + pub fn pg_prng_int64p(state: *mut pg_prng_state) -> int64; + pub fn pg_prng_int64_range(state: *mut pg_prng_state, rmin: int64, rmax: int64) -> int64; + pub fn pg_prng_uint32(state: *mut pg_prng_state) -> uint32; + pub fn pg_prng_int32(state: *mut pg_prng_state) -> int32; + pub fn pg_prng_int32p(state: *mut pg_prng_state) -> int32; + pub fn pg_prng_double(state: *mut pg_prng_state) -> f64; + pub fn pg_prng_double_normal(state: *mut pg_prng_state) -> f64; + pub fn pg_prng_bool(state: *mut pg_prng_state) -> bool; + pub fn numeric_is_nan(num: Numeric) -> bool; + pub fn numeric_is_inf(num: Numeric) -> bool; + pub fn numeric_maximum_size(typmod: int32) -> int32; + pub fn numeric_out_sci(num: Numeric, scale: ::core::ffi::c_int) -> *mut ::core::ffi::c_char; + pub fn numeric_normalize(num: Numeric) -> *mut ::core::ffi::c_char; + pub fn int64_to_numeric(val: int64) -> Numeric; + pub fn int64_div_fast_to_numeric(val1: int64, log10val2: ::core::ffi::c_int) -> Numeric; + pub fn numeric_add_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_sub_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_mul_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_div_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_mod_opt_error(num1: Numeric, num2: Numeric, have_error: *mut bool) -> Numeric; + pub fn numeric_int4_opt_error(num: Numeric, have_error: *mut bool) -> int32; + pub fn numeric_int8_opt_error(num: Numeric, have_error: *mut bool) -> int64; + pub fn random_numeric(state: *mut pg_prng_state, rmin: Numeric, rmax: Numeric) -> Numeric; + pub fn getJsonbOffset(jc: *const JsonbContainer, index: ::core::ffi::c_int) -> uint32; + pub fn getJsonbLength(jc: *const JsonbContainer, index: ::core::ffi::c_int) -> uint32; + pub fn compareJsonbContainers( + a: *mut JsonbContainer, + b: *mut JsonbContainer, + ) -> ::core::ffi::c_int; + pub fn findJsonbValueFromContainer( + container: *mut JsonbContainer, + flags: uint32, + key: *mut JsonbValue, + ) -> *mut JsonbValue; + pub fn getKeyJsonValueFromContainer( + container: *mut JsonbContainer, + keyVal: *const ::core::ffi::c_char, + keyLen: ::core::ffi::c_int, + res: *mut JsonbValue, + ) -> *mut JsonbValue; + pub fn getIthJsonbValueFromContainer( + container: *mut JsonbContainer, + i: uint32, + ) -> *mut JsonbValue; + pub fn pushJsonbValue( + pstate: *mut *mut JsonbParseState, + seq: JsonbIteratorToken::Type, + jbval: *mut JsonbValue, + ) -> *mut JsonbValue; + pub fn JsonbIteratorInit(container: *mut JsonbContainer) -> *mut JsonbIterator; + pub fn JsonbIteratorNext( + it: *mut *mut JsonbIterator, + val: *mut JsonbValue, + skipNested: bool, + ) -> JsonbIteratorToken::Type; + pub fn JsonbToJsonbValue(jsonb: *mut Jsonb, val: *mut JsonbValue); + pub fn JsonbValueToJsonb(val: *mut JsonbValue) -> *mut Jsonb; + pub fn JsonbDeepContains( + val: *mut *mut JsonbIterator, + mContained: *mut *mut JsonbIterator, + ) -> bool; + pub fn JsonbHashScalarValue(scalarVal: *const JsonbValue, hash: *mut uint32); + pub fn JsonbHashScalarValueExtended( + scalarVal: *const JsonbValue, + hash: *mut uint64, + seed: uint64, + ); + pub fn JsonbToCString( + out: StringInfo, + in_: *mut JsonbContainer, + estimated_len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn JsonbToCStringIndent( + out: StringInfo, + in_: *mut JsonbContainer, + estimated_len: ::core::ffi::c_int, + ) -> *mut ::core::ffi::c_char; + pub fn JsonbUnquote(jb: *mut Jsonb) -> *mut ::core::ffi::c_char; + pub fn JsonbExtractScalar(jbc: *mut JsonbContainer, res: *mut JsonbValue) -> bool; + pub fn JsonbTypeName(val: *mut JsonbValue) -> *const ::core::ffi::c_char; + pub fn jsonb_set_element( + jb: *mut Jsonb, + path: *mut Datum, + path_len: ::core::ffi::c_int, + newval: *mut JsonbValue, + ) -> Datum; + pub fn jsonb_get_element( + jb: *mut Jsonb, + path: *mut Datum, + npath: ::core::ffi::c_int, + isnull: *mut bool, + as_text: bool, + ) -> Datum; + pub fn to_jsonb_is_immutable(typoid: Oid) -> bool; + pub fn jsonb_build_object_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + unique_keys: bool, + ) -> Datum; + pub fn jsonb_build_array_worker( + nargs: ::core::ffi::c_int, + args: *const Datum, + nulls: *const bool, + types: *const Oid, + absent_on_null: bool, + ) -> Datum; + pub static mut get_attavgwidth_hook: get_attavgwidth_hook_type; + pub fn op_in_opfamily(opno: Oid, opfamily: Oid) -> bool; + pub fn get_op_opfamily_strategy(opno: Oid, opfamily: Oid) -> ::core::ffi::c_int; + pub fn get_op_opfamily_sortfamily(opno: Oid, opfamily: Oid) -> Oid; + pub fn get_op_opfamily_properties( + opno: Oid, + opfamily: Oid, + ordering_op: bool, + strategy: *mut ::core::ffi::c_int, + lefttype: *mut Oid, + righttype: *mut Oid, + ); + pub fn get_opfamily_member( + opfamily: Oid, + lefttype: Oid, + righttype: Oid, + strategy: int16, + ) -> Oid; + pub fn get_ordering_op_properties( + opno: Oid, + opfamily: *mut Oid, + opcintype: *mut Oid, + strategy: *mut int16, + ) -> bool; + pub fn get_equality_op_for_ordering_op(opno: Oid, reverse: *mut bool) -> Oid; + pub fn get_ordering_op_for_equality_op(opno: Oid, use_lhs_type: bool) -> Oid; + pub fn get_mergejoin_opfamilies(opno: Oid) -> *mut List; + pub fn get_compatible_hash_operators(opno: Oid, lhs_opno: *mut Oid, rhs_opno: *mut Oid) + -> bool; + pub fn get_op_hash_functions( + opno: Oid, + lhs_procno: *mut RegProcedure, + rhs_procno: *mut RegProcedure, + ) -> bool; + pub fn get_op_btree_interpretation(opno: Oid) -> *mut List; + pub fn equality_ops_are_compatible(opno1: Oid, opno2: Oid) -> bool; + pub fn comparison_ops_are_compatible(opno1: Oid, opno2: Oid) -> bool; + pub fn get_opfamily_proc(opfamily: Oid, lefttype: Oid, righttype: Oid, procnum: int16) -> Oid; + pub fn get_attname( + relid: Oid, + attnum: AttrNumber, + missing_ok: bool, + ) -> *mut ::core::ffi::c_char; + pub fn get_attnum(relid: Oid, attname: *const ::core::ffi::c_char) -> AttrNumber; + pub fn get_attgenerated(relid: Oid, attnum: AttrNumber) -> ::core::ffi::c_char; + pub fn get_atttype(relid: Oid, attnum: AttrNumber) -> Oid; + pub fn get_atttypetypmodcoll( + relid: Oid, + attnum: AttrNumber, + typid: *mut Oid, + typmod: *mut int32, + collid: *mut Oid, + ); + pub fn get_attoptions(relid: Oid, attnum: int16) -> Datum; + pub fn get_cast_oid(sourcetypeid: Oid, targettypeid: Oid, missing_ok: bool) -> Oid; + pub fn get_collation_name(colloid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_collation_isdeterministic(colloid: Oid) -> bool; + pub fn get_constraint_name(conoid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_constraint_index(conoid: Oid) -> Oid; + pub fn get_constraint_type(conoid: Oid) -> ::core::ffi::c_char; + pub fn get_language_name(langoid: Oid, missing_ok: bool) -> *mut ::core::ffi::c_char; + pub fn get_opclass_family(opclass: Oid) -> Oid; + pub fn get_opclass_input_type(opclass: Oid) -> Oid; + pub fn get_opclass_opfamily_and_input_type( + opclass: Oid, + opfamily: *mut Oid, + opcintype: *mut Oid, + ) -> bool; + pub fn get_opclass_method(opclass: Oid) -> Oid; + pub fn get_opcode(opno: Oid) -> RegProcedure; + pub fn get_opname(opno: Oid) -> *mut ::core::ffi::c_char; + pub fn get_op_rettype(opno: Oid) -> Oid; + pub fn op_input_types(opno: Oid, lefttype: *mut Oid, righttype: *mut Oid); + pub fn op_mergejoinable(opno: Oid, inputtype: Oid) -> bool; + pub fn op_hashjoinable(opno: Oid, inputtype: Oid) -> bool; + pub fn op_strict(opno: Oid) -> bool; + pub fn op_volatile(opno: Oid) -> ::core::ffi::c_char; + pub fn get_commutator(opno: Oid) -> Oid; + pub fn get_negator(opno: Oid) -> Oid; + pub fn get_oprrest(opno: Oid) -> RegProcedure; + pub fn get_oprjoin(opno: Oid) -> RegProcedure; + pub fn get_func_name(funcid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_func_namespace(funcid: Oid) -> Oid; + pub fn get_func_rettype(funcid: Oid) -> Oid; + pub fn get_func_nargs(funcid: Oid) -> ::core::ffi::c_int; + pub fn get_func_signature( + funcid: Oid, + argtypes: *mut *mut Oid, + nargs: *mut ::core::ffi::c_int, + ) -> Oid; + pub fn get_func_variadictype(funcid: Oid) -> Oid; + pub fn get_func_retset(funcid: Oid) -> bool; + pub fn func_strict(funcid: Oid) -> bool; + pub fn func_volatile(funcid: Oid) -> ::core::ffi::c_char; + pub fn func_parallel(funcid: Oid) -> ::core::ffi::c_char; + pub fn get_func_prokind(funcid: Oid) -> ::core::ffi::c_char; + pub fn get_func_leakproof(funcid: Oid) -> bool; + pub fn get_func_support(funcid: Oid) -> RegProcedure; + pub fn get_relname_relid(relname: *const ::core::ffi::c_char, relnamespace: Oid) -> Oid; + pub fn get_rel_name(relid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_rel_namespace(relid: Oid) -> Oid; + pub fn get_rel_type_id(relid: Oid) -> Oid; + pub fn get_rel_relkind(relid: Oid) -> ::core::ffi::c_char; + pub fn get_rel_relispartition(relid: Oid) -> bool; + pub fn get_rel_tablespace(relid: Oid) -> Oid; + pub fn get_rel_persistence(relid: Oid) -> ::core::ffi::c_char; + pub fn get_rel_relam(relid: Oid) -> Oid; + pub fn get_transform_fromsql(typid: Oid, langid: Oid, trftypes: *mut List) -> Oid; + pub fn get_transform_tosql(typid: Oid, langid: Oid, trftypes: *mut List) -> Oid; + pub fn get_typisdefined(typid: Oid) -> bool; + pub fn get_typlen(typid: Oid) -> int16; + pub fn get_typbyval(typid: Oid) -> bool; + pub fn get_typlenbyval(typid: Oid, typlen: *mut int16, typbyval: *mut bool); + pub fn get_typlenbyvalalign( + typid: Oid, + typlen: *mut int16, + typbyval: *mut bool, + typalign: *mut ::core::ffi::c_char, + ); + pub fn getTypeIOParam(typeTuple: HeapTuple) -> Oid; + pub fn get_type_io_data( + typid: Oid, + which_func: IOFuncSelector::Type, + typlen: *mut int16, + typbyval: *mut bool, + typalign: *mut ::core::ffi::c_char, + typdelim: *mut ::core::ffi::c_char, + typioparam: *mut Oid, + func: *mut Oid, + ); + pub fn get_typstorage(typid: Oid) -> ::core::ffi::c_char; + pub fn get_typdefault(typid: Oid) -> *mut Node; + pub fn get_typtype(typid: Oid) -> ::core::ffi::c_char; + pub fn type_is_rowtype(typid: Oid) -> bool; + pub fn type_is_enum(typid: Oid) -> bool; + pub fn type_is_range(typid: Oid) -> bool; + pub fn type_is_multirange(typid: Oid) -> bool; + pub fn get_type_category_preferred( + typid: Oid, + typcategory: *mut ::core::ffi::c_char, + typispreferred: *mut bool, + ); + pub fn get_typ_typrelid(typid: Oid) -> Oid; + pub fn get_element_type(typid: Oid) -> Oid; + pub fn get_array_type(typid: Oid) -> Oid; + pub fn get_promoted_array_type(typid: Oid) -> Oid; + pub fn get_base_element_type(typid: Oid) -> Oid; + pub fn getTypeInputInfo(type_: Oid, typInput: *mut Oid, typIOParam: *mut Oid); + pub fn getTypeOutputInfo(type_: Oid, typOutput: *mut Oid, typIsVarlena: *mut bool); + pub fn getTypeBinaryInputInfo(type_: Oid, typReceive: *mut Oid, typIOParam: *mut Oid); + pub fn getTypeBinaryOutputInfo(type_: Oid, typSend: *mut Oid, typIsVarlena: *mut bool); + pub fn get_typmodin(typid: Oid) -> Oid; + pub fn get_typcollation(typid: Oid) -> Oid; + pub fn type_is_collatable(typid: Oid) -> bool; + pub fn get_typsubscript(typid: Oid, typelemp: *mut Oid) -> RegProcedure; + pub fn getSubscriptingRoutines(typid: Oid, typelemp: *mut Oid) -> *const SubscriptRoutines; + pub fn getBaseType(typid: Oid) -> Oid; + pub fn getBaseTypeAndTypmod(typid: Oid, typmod: *mut int32) -> Oid; + pub fn get_typavgwidth(typid: Oid, typmod: int32) -> int32; + pub fn get_attavgwidth(relid: Oid, attnum: AttrNumber) -> int32; + pub fn get_attstatsslot( + sslot: *mut AttStatsSlot, + statstuple: HeapTuple, + reqkind: ::core::ffi::c_int, + reqop: Oid, + flags: ::core::ffi::c_int, + ) -> bool; + pub fn free_attstatsslot(sslot: *mut AttStatsSlot); + pub fn get_namespace_name(nspid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_namespace_name_or_temp(nspid: Oid) -> *mut ::core::ffi::c_char; + pub fn get_range_subtype(rangeOid: Oid) -> Oid; + pub fn get_range_collation(rangeOid: Oid) -> Oid; + pub fn get_range_multirange(rangeOid: Oid) -> Oid; + pub fn get_multirange_range(multirangeOid: Oid) -> Oid; + pub fn get_index_column_opclass(index_oid: Oid, attno: ::core::ffi::c_int) -> Oid; + pub fn get_index_isreplident(index_oid: Oid) -> bool; + pub fn get_index_isvalid(index_oid: Oid) -> bool; + pub fn get_index_isclustered(index_oid: Oid) -> bool; + pub fn get_publication_oid(pubname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_publication_name(pubid: Oid, missing_ok: bool) -> *mut ::core::ffi::c_char; + pub fn get_subscription_oid(subname: *const ::core::ffi::c_char, missing_ok: bool) -> Oid; + pub fn get_subscription_name(subid: Oid, missing_ok: bool) -> *mut ::core::ffi::c_char; + pub fn format_procedure_extended(procedure_oid: Oid, flags: bits16) + -> *mut ::core::ffi::c_char; + pub fn format_operator_extended(operator_oid: Oid, flags: bits16) -> *mut ::core::ffi::c_char; + pub fn stringToQualifiedNameList( + string: *const ::core::ffi::c_char, + escontext: *mut Node, + ) -> *mut List; + pub fn format_procedure(procedure_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_procedure_qualified(procedure_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_procedure_parts( + procedure_oid: Oid, + objnames: *mut *mut List, + objargs: *mut *mut List, + missing_ok: bool, + ); + pub fn format_operator(operator_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_operator_qualified(operator_oid: Oid) -> *mut ::core::ffi::c_char; + pub fn format_operator_parts( + operator_oid: Oid, + objnames: *mut *mut List, + objargs: *mut *mut List, + missing_ok: bool, + ); + pub fn pg_get_indexdef_string(indexrelid: Oid) -> *mut ::core::ffi::c_char; + pub fn pg_get_indexdef_columns(indexrelid: Oid, pretty: bool) -> *mut ::core::ffi::c_char; + pub fn pg_get_indexdef_columns_extended( + indexrelid: Oid, + flags: bits16, + ) -> *mut ::core::ffi::c_char; + pub fn pg_get_querydef(query: *mut Query, pretty: bool) -> *mut ::core::ffi::c_char; + pub fn pg_get_partkeydef_columns(relid: Oid, pretty: bool) -> *mut ::core::ffi::c_char; + pub fn pg_get_partconstrdef_string( + partitionId: Oid, + aliasname: *mut ::core::ffi::c_char, + ) -> *mut ::core::ffi::c_char; + pub fn pg_get_constraintdef_command(constraintId: Oid) -> *mut ::core::ffi::c_char; + pub fn deparse_expression( + expr: *mut Node, + dpcontext: *mut List, + forceprefix: bool, + showimplicit: bool, + ) -> *mut ::core::ffi::c_char; + pub fn deparse_context_for(aliasname: *const ::core::ffi::c_char, relid: Oid) -> *mut List; + pub fn deparse_context_for_plan_tree( + pstmt: *mut PlannedStmt, + rtable_names: *mut List, + ) -> *mut List; + pub fn set_deparse_context_plan( + dpcontext: *mut List, + plan: *mut Plan, + ancestors: *mut List, + ) -> *mut List; + pub fn select_rtable_names_for_explain( + rtable: *mut List, + rels_used: *mut Bitmapset, + ) -> *mut List; + pub fn generate_collation_name(collid: Oid) -> *mut ::core::ffi::c_char; + pub fn generate_opclass_name(opclass: Oid) -> *mut ::core::ffi::c_char; + pub fn get_range_partbound_string(bound_datums: *mut List) -> *mut ::core::ffi::c_char; + pub fn pg_get_statisticsobjdef_string(statextid: Oid) -> *mut ::core::ffi::c_char; + pub fn sampler_random_init_state(seed: uint32, randstate: *mut pg_prng_state); + pub fn sampler_random_fract(randstate: *mut pg_prng_state) -> f64; + pub fn BlockSampler_Init( + bs: BlockSampler, + nblocks: BlockNumber, + samplesize: ::core::ffi::c_int, + randseed: uint32, + ) -> BlockNumber; + pub fn BlockSampler_HasMore(bs: BlockSampler) -> bool; + pub fn BlockSampler_Next(bs: BlockSampler) -> BlockNumber; + pub fn reservoir_init_selection_state(rs: ReservoirState, n: ::core::ffi::c_int); + pub fn reservoir_get_next_S(rs: ReservoirState, t: f64, n: ::core::ffi::c_int) -> f64; + pub static mut get_relation_stats_hook: get_relation_stats_hook_type; + pub static mut get_index_stats_hook: get_index_stats_hook_type; + pub fn examine_variable( + root: *mut PlannerInfo, + node: *mut Node, + varRelid: ::core::ffi::c_int, + vardata: *mut VariableStatData, + ); + pub fn statistic_proc_security_check(vardata: *mut VariableStatData, func_oid: Oid) -> bool; + pub fn get_restriction_variable( + root: *mut PlannerInfo, + args: *mut List, + varRelid: ::core::ffi::c_int, + vardata: *mut VariableStatData, + other: *mut *mut Node, + varonleft: *mut bool, + ) -> bool; + pub fn get_join_variables( + root: *mut PlannerInfo, + args: *mut List, + sjinfo: *mut SpecialJoinInfo, + vardata1: *mut VariableStatData, + vardata2: *mut VariableStatData, + join_is_reversed: *mut bool, + ); + pub fn get_variable_numdistinct(vardata: *mut VariableStatData, isdefault: *mut bool) -> f64; + pub fn mcv_selectivity( + vardata: *mut VariableStatData, + opproc: *mut FmgrInfo, + collation: Oid, + constval: Datum, + varonleft: bool, + sumcommonp: *mut f64, + ) -> f64; + pub fn histogram_selectivity( + vardata: *mut VariableStatData, + opproc: *mut FmgrInfo, + collation: Oid, + constval: Datum, + varonleft: bool, + min_hist_size: ::core::ffi::c_int, + n_skip: ::core::ffi::c_int, + hist_size: *mut ::core::ffi::c_int, + ) -> f64; + pub fn generic_restriction_selectivity( + root: *mut PlannerInfo, + oproid: Oid, + collation: Oid, + args: *mut List, + varRelid: ::core::ffi::c_int, + default_selectivity: f64, + ) -> f64; + pub fn ineq_histogram_selectivity( + root: *mut PlannerInfo, + vardata: *mut VariableStatData, + opoid: Oid, + opproc: *mut FmgrInfo, + isgt: bool, + iseq: bool, + collation: Oid, + constval: Datum, + consttype: Oid, + ) -> f64; + pub fn var_eq_const( + vardata: *mut VariableStatData, + oproid: Oid, + collation: Oid, + constval: Datum, + constisnull: bool, + varonleft: bool, + negate: bool, + ) -> f64; + pub fn var_eq_non_const( + vardata: *mut VariableStatData, + oproid: Oid, + collation: Oid, + other: *mut Node, + varonleft: bool, + negate: bool, + ) -> f64; + pub fn boolvarsel( + root: *mut PlannerInfo, + arg: *mut Node, + varRelid: ::core::ffi::c_int, + ) -> Selectivity; + pub fn booltestsel( + root: *mut PlannerInfo, + booltesttype: BoolTestType::Type, + arg: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn nulltestsel( + root: *mut PlannerInfo, + nulltesttype: NullTestType::Type, + arg: *mut Node, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn scalararraysel( + root: *mut PlannerInfo, + clause: *mut ScalarArrayOpExpr, + is_join_clause: bool, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn estimate_array_length(root: *mut PlannerInfo, arrayexpr: *mut Node) -> f64; + pub fn rowcomparesel( + root: *mut PlannerInfo, + clause: *mut RowCompareExpr, + varRelid: ::core::ffi::c_int, + jointype: JoinType::Type, + sjinfo: *mut SpecialJoinInfo, + ) -> Selectivity; + pub fn mergejoinscansel( + root: *mut PlannerInfo, + clause: *mut Node, + opfamily: Oid, + strategy: ::core::ffi::c_int, + nulls_first: bool, + leftstart: *mut Selectivity, + leftend: *mut Selectivity, + rightstart: *mut Selectivity, + rightend: *mut Selectivity, + ); + pub fn estimate_num_groups( + root: *mut PlannerInfo, + groupExprs: *mut List, + input_rows: f64, + pgset: *mut *mut List, + estinfo: *mut EstimationInfo, + ) -> f64; + pub fn estimate_hash_bucket_stats( + root: *mut PlannerInfo, + hashkey: *mut Node, + nbuckets: f64, + mcv_freq: *mut Selectivity, + bucketsize_frac: *mut Selectivity, + ); + pub fn estimate_hashagg_tablesize( + root: *mut PlannerInfo, + path: *mut Path, + agg_costs: *const AggClauseCosts, + dNumGroups: f64, + ) -> f64; + pub fn get_quals_from_indexclauses(indexclauses: *mut List) -> *mut List; + pub fn index_other_operands_eval_cost(root: *mut PlannerInfo, indexquals: *mut List) -> Cost; + pub fn add_predicate_to_index_quals( + index: *mut IndexOptInfo, + indexQuals: *mut List, + ) -> *mut List; + pub fn genericcostestimate( + root: *mut PlannerInfo, + path: *mut IndexPath, + loop_count: f64, + costs: *mut GenericCosts, + ); + pub fn scalararraysel_containment( + root: *mut PlannerInfo, + leftop: *mut Node, + rightop: *mut Node, + elemtype: Oid, + isEquality: bool, + useOr: bool, + varRelid: ::core::ffi::c_int, + ) -> Selectivity; + pub fn CreateCacheMemoryContext(); + pub fn InitCatCache( + id: ::core::ffi::c_int, + reloid: Oid, + indexoid: Oid, + nkeys: ::core::ffi::c_int, + key: *const ::core::ffi::c_int, + nbuckets: ::core::ffi::c_int, + ) -> *mut CatCache; + pub fn InitCatCachePhase2(cache: *mut CatCache, touch_index: bool); + pub fn SearchCatCache( + cache: *mut CatCache, + v1: Datum, + v2: Datum, + v3: Datum, + v4: Datum, + ) -> HeapTuple; + pub fn SearchCatCache1(cache: *mut CatCache, v1: Datum) -> HeapTuple; + pub fn SearchCatCache2(cache: *mut CatCache, v1: Datum, v2: Datum) -> HeapTuple; + pub fn SearchCatCache3(cache: *mut CatCache, v1: Datum, v2: Datum, v3: Datum) -> HeapTuple; + pub fn SearchCatCache4( + cache: *mut CatCache, + v1: Datum, + v2: Datum, + v3: Datum, + v4: Datum, + ) -> HeapTuple; + pub fn ReleaseCatCache(tuple: HeapTuple); + pub fn GetCatCacheHashValue( + cache: *mut CatCache, + v1: Datum, + v2: Datum, + v3: Datum, + v4: Datum, + ) -> uint32; + pub fn SearchCatCacheList( + cache: *mut CatCache, + nkeys: ::core::ffi::c_int, + v1: Datum, + v2: Datum, + v3: Datum, + ) -> *mut CatCList; + pub fn ReleaseCatCacheList(list: *mut CatCList); + pub fn ResetCatalogCaches(); + pub fn CatalogCacheFlushCatalog(catId: Oid); + pub fn CatCacheInvalidate(cache: *mut CatCache, hashValue: uint32); + pub fn PrepareToInvalidateCacheTuple( + relation: Relation, + tuple: HeapTuple, + newtuple: HeapTuple, + function: ::core::option::Option< + unsafe extern "C" fn(arg1: ::core::ffi::c_int, arg2: uint32, arg3: Oid), + >, + ); + pub fn InitCatalogCache(); + pub fn InitCatalogCachePhase2(); + pub fn SearchSysCache( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> HeapTuple; + pub fn SearchSysCache1(cacheId: ::core::ffi::c_int, key1: Datum) -> HeapTuple; + pub fn SearchSysCache2(cacheId: ::core::ffi::c_int, key1: Datum, key2: Datum) -> HeapTuple; + pub fn SearchSysCache3( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + ) -> HeapTuple; + pub fn SearchSysCache4( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> HeapTuple; + pub fn ReleaseSysCache(tuple: HeapTuple); + pub fn SearchSysCacheCopy( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> HeapTuple; + pub fn SearchSysCacheExists( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> bool; + pub fn GetSysCacheOid( + cacheId: ::core::ffi::c_int, + oidcol: AttrNumber, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> Oid; + pub fn SearchSysCacheAttName(relid: Oid, attname: *const ::core::ffi::c_char) -> HeapTuple; + pub fn SearchSysCacheCopyAttName(relid: Oid, attname: *const ::core::ffi::c_char) -> HeapTuple; + pub fn SearchSysCacheExistsAttName(relid: Oid, attname: *const ::core::ffi::c_char) -> bool; + pub fn SearchSysCacheAttNum(relid: Oid, attnum: int16) -> HeapTuple; + pub fn SearchSysCacheCopyAttNum(relid: Oid, attnum: int16) -> HeapTuple; + pub fn SysCacheGetAttr( + cacheId: ::core::ffi::c_int, + tup: HeapTuple, + attributeNumber: AttrNumber, + isNull: *mut bool, + ) -> Datum; + pub fn SysCacheGetAttrNotNull( + cacheId: ::core::ffi::c_int, + tup: HeapTuple, + attributeNumber: AttrNumber, + ) -> Datum; + pub fn GetSysCacheHashValue( + cacheId: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + key4: Datum, + ) -> uint32; + pub fn SearchSysCacheList( + cacheId: ::core::ffi::c_int, + nkeys: ::core::ffi::c_int, + key1: Datum, + key2: Datum, + key3: Datum, + ) -> *mut catclist; + pub fn SysCacheInvalidate(cacheId: ::core::ffi::c_int, hashValue: uint32); + pub fn RelationInvalidatesSnapshotsOnly(relid: Oid) -> bool; + pub fn RelationHasSysCache(relid: Oid) -> bool; + pub fn RelationSupportsSysCache(relid: Oid) -> bool; + pub fn range_contains_elem_internal( + typcache: *mut TypeCacheEntry, + r: *const RangeType, + val: Datum, + ) -> bool; + pub fn range_eq_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_ne_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_contains_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_contained_by_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_before_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_after_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_adjacent_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_overlaps_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_overleft_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_overright_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> bool; + pub fn range_union_internal( + typcache: *mut TypeCacheEntry, + r1: *mut RangeType, + r2: *mut RangeType, + strict: bool, + ) -> *mut RangeType; + pub fn range_minus_internal( + typcache: *mut TypeCacheEntry, + r1: *mut RangeType, + r2: *mut RangeType, + ) -> *mut RangeType; + pub fn range_intersect_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + ) -> *mut RangeType; + pub fn range_get_typcache(fcinfo: FunctionCallInfo, rngtypid: Oid) -> *mut TypeCacheEntry; + pub fn range_serialize( + typcache: *mut TypeCacheEntry, + lower: *mut RangeBound, + upper: *mut RangeBound, + empty: bool, + escontext: *mut Node, + ) -> *mut RangeType; + pub fn range_deserialize( + typcache: *mut TypeCacheEntry, + range: *const RangeType, + lower: *mut RangeBound, + upper: *mut RangeBound, + empty: *mut bool, + ); + pub fn range_get_flags(range: *const RangeType) -> ::core::ffi::c_char; + pub fn range_set_contain_empty(range: *mut RangeType); + pub fn make_range( + typcache: *mut TypeCacheEntry, + lower: *mut RangeBound, + upper: *mut RangeBound, + empty: bool, + escontext: *mut Node, + ) -> *mut RangeType; + pub fn range_cmp_bounds( + typcache: *mut TypeCacheEntry, + b1: *const RangeBound, + b2: *const RangeBound, + ) -> ::core::ffi::c_int; + pub fn range_cmp_bound_values( + typcache: *mut TypeCacheEntry, + b1: *const RangeBound, + b2: *const RangeBound, + ) -> ::core::ffi::c_int; + pub fn range_compare( + key1: *const ::core::ffi::c_void, + key2: *const ::core::ffi::c_void, + arg: *mut ::core::ffi::c_void, + ) -> ::core::ffi::c_int; + pub fn bounds_adjacent( + typcache: *mut TypeCacheEntry, + boundA: RangeBound, + boundB: RangeBound, + ) -> bool; + pub fn make_empty_range(typcache: *mut TypeCacheEntry) -> *mut RangeType; + pub fn range_split_internal( + typcache: *mut TypeCacheEntry, + r1: *const RangeType, + r2: *const RangeType, + output1: *mut *mut RangeType, + output2: *mut *mut RangeType, + ) -> bool; + pub fn varstr_cmp( + arg1: *const ::core::ffi::c_char, + len1: ::core::ffi::c_int, + arg2: *const ::core::ffi::c_char, + len2: ::core::ffi::c_int, + collid: Oid, + ) -> ::core::ffi::c_int; + pub fn varstr_sortsupport(ssup: SortSupport, typid: Oid, collid: Oid); + pub fn varstr_levenshtein( + source: *const ::core::ffi::c_char, + slen: ::core::ffi::c_int, + target: *const ::core::ffi::c_char, + tlen: ::core::ffi::c_int, + ins_c: ::core::ffi::c_int, + del_c: ::core::ffi::c_int, + sub_c: ::core::ffi::c_int, + trusted: bool, + ) -> ::core::ffi::c_int; + pub fn varstr_levenshtein_less_equal( + source: *const ::core::ffi::c_char, + slen: ::core::ffi::c_int, + target: *const ::core::ffi::c_char, + tlen: ::core::ffi::c_int, + ins_c: ::core::ffi::c_int, + del_c: ::core::ffi::c_int, + sub_c: ::core::ffi::c_int, + max_d: ::core::ffi::c_int, + trusted: bool, + ) -> ::core::ffi::c_int; + pub fn textToQualifiedNameList(textval: *mut text) -> *mut List; + pub fn SplitIdentifierString( + rawstring: *mut ::core::ffi::c_char, + separator: ::core::ffi::c_char, + namelist: *mut *mut List, + ) -> bool; + pub fn SplitDirectoriesString( + rawstring: *mut ::core::ffi::c_char, + separator: ::core::ffi::c_char, + namelist: *mut *mut List, + ) -> bool; + pub fn SplitGUCList( + rawstring: *mut ::core::ffi::c_char, + separator: ::core::ffi::c_char, + namelist: *mut *mut List, + ) -> bool; + pub fn replace_text_regexp( + src_text: *mut text, + pattern_text: *mut text, + replace_text: *mut text, + cflags: ::core::ffi::c_int, + collation: Oid, + search_start: ::core::ffi::c_int, + n: ::core::ffi::c_int, + ) -> *mut text; + pub fn initClosestMatch( + state: *mut ClosestMatchState, + source: *const ::core::ffi::c_char, + max_d: ::core::ffi::c_int, + ); + pub fn updateClosestMatch(state: *mut ClosestMatchState, candidate: *const ::core::ffi::c_char); + pub fn getClosestMatch(state: *mut ClosestMatchState) -> *const ::core::ffi::c_char; +} +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_OP")] +pub const A_Expr_Kind_AEXPR_OP: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_OP_ANY")] +pub const A_Expr_Kind_AEXPR_OP_ANY: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_OP_ALL")] +pub const A_Expr_Kind_AEXPR_OP_ALL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_DISTINCT" +)] +pub const A_Expr_Kind_AEXPR_DISTINCT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_NOT_DISTINCT" +)] +pub const A_Expr_Kind_AEXPR_NOT_DISTINCT: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_NULLIF")] +pub const A_Expr_Kind_AEXPR_NULLIF: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_IN")] +pub const A_Expr_Kind_AEXPR_IN: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_LIKE")] +pub const A_Expr_Kind_AEXPR_LIKE: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_ILIKE")] +pub const A_Expr_Kind_AEXPR_ILIKE: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_SIMILAR")] +pub const A_Expr_Kind_AEXPR_SIMILAR: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::A_Expr_Kind::AEXPR_BETWEEN")] +pub const A_Expr_Kind_AEXPR_BETWEEN: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_NOT_BETWEEN" +)] +pub const A_Expr_Kind_AEXPR_NOT_BETWEEN: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_BETWEEN_SYM" +)] +pub const A_Expr_Kind_AEXPR_BETWEEN_SYM: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::A_Expr_Kind::AEXPR_NOT_BETWEEN_SYM" +)] +pub const A_Expr_Kind_AEXPR_NOT_BETWEEN_SYM: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AclMaskHow::ACLMASK_ALL")] +pub const AclMaskHow_ACLMASK_ALL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AclMaskHow::ACLMASK_ANY")] +pub const AclMaskHow_ACLMASK_ANY: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AclResult::ACLCHECK_OK")] +pub const AclResult_ACLCHECK_OK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AclResult::ACLCHECK_NO_PRIV" +)] +pub const AclResult_ACLCHECK_NO_PRIV: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AclResult::ACLCHECK_NOT_OWNER" +)] +pub const AclResult_ACLCHECK_NOT_OWNER: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggSplit::AGGSPLIT_SIMPLE")] +pub const AggSplit_AGGSPLIT_SIMPLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AggSplit::AGGSPLIT_INITIAL_SERIAL" +)] +pub const AggSplit_AGGSPLIT_INITIAL_SERIAL: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AggSplit::AGGSPLIT_FINAL_DESERIAL" +)] +pub const AggSplit_AGGSPLIT_FINAL_DESERIAL: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_PLAIN")] +pub const AggStrategy_AGG_PLAIN: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_SORTED")] +pub const AggStrategy_AGG_SORTED: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_HASHED")] +pub const AggStrategy_AGG_HASHED: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AggStrategy::AGG_MIXED")] +pub const AggStrategy_AGG_MIXED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterPublicationAction::AP_AddObjects" +)] +pub const AlterPublicationAction_AP_AddObjects: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterPublicationAction::AP_DropObjects" +)] +pub const AlterPublicationAction_AP_DropObjects: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterPublicationAction::AP_SetObjects" +)] +pub const AlterPublicationAction_AP_SetObjects: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_OPTIONS" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_OPTIONS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_CONNECTION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_CONNECTION: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_SET_PUBLICATION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_SET_PUBLICATION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_ADD_PUBLICATION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_ADD_PUBLICATION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_DROP_PUBLICATION" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_DROP_PUBLICATION: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_REFRESH" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_REFRESH: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_ENABLED" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_ENABLED: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterSubscriptionType::ALTER_SUBSCRIPTION_SKIP" +)] +pub const AlterSubscriptionType_ALTER_SUBSCRIPTION_SKIP: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_ADD_MAPPING" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_ADD_MAPPING: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_REPLACE_DICT" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_REPLACE_DICT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTSConfigType::ALTER_TSCONFIG_DROP_MAPPING" +)] +pub const AlterTSConfigType_ALTER_TSCONFIG_DROP_MAPPING: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddColumn" +)] +pub const AlterTableType_AT_AddColumn: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddColumnToView" +)] +pub const AlterTableType_AT_AddColumnToView: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ColumnDefault" +)] +pub const AlterTableType_AT_ColumnDefault: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_CookedColumnDefault" +)] +pub const AlterTableType_AT_CookedColumnDefault: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropNotNull" +)] +pub const AlterTableType_AT_DropNotNull: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetNotNull" +)] +pub const AlterTableType_AT_SetNotNull: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetExpression" +)] +pub const AlterTableType_AT_SetExpression: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropExpression" +)] +pub const AlterTableType_AT_DropExpression: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_CheckNotNull" +)] +pub const AlterTableType_AT_CheckNotNull: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetStatistics" +)] +pub const AlterTableType_AT_SetStatistics: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetOptions" +)] +pub const AlterTableType_AT_SetOptions: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ResetOptions" +)] +pub const AlterTableType_AT_ResetOptions: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetStorage" +)] +pub const AlterTableType_AT_SetStorage: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetCompression" +)] +pub const AlterTableType_AT_SetCompression: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropColumn" +)] +pub const AlterTableType_AT_DropColumn: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddIndex" +)] +pub const AlterTableType_AT_AddIndex: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddIndex" +)] +pub const AlterTableType_AT_ReAddIndex: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddConstraint" +)] +pub const AlterTableType_AT_AddConstraint: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddConstraint" +)] +pub const AlterTableType_AT_ReAddConstraint: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddDomainConstraint" +)] +pub const AlterTableType_AT_ReAddDomainConstraint: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AlterConstraint" +)] +pub const AlterTableType_AT_AlterConstraint: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ValidateConstraint" +)] +pub const AlterTableType_AT_ValidateConstraint: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddIndexConstraint" +)] +pub const AlterTableType_AT_AddIndexConstraint: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropConstraint" +)] +pub const AlterTableType_AT_DropConstraint: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddComment" +)] +pub const AlterTableType_AT_ReAddComment: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AlterColumnType" +)] +pub const AlterTableType_AT_AlterColumnType: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AlterColumnGenericOptions" +)] +pub const AlterTableType_AT_AlterColumnGenericOptions: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ChangeOwner" +)] +pub const AlterTableType_AT_ChangeOwner: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ClusterOn" +)] +pub const AlterTableType_AT_ClusterOn: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropCluster" +)] +pub const AlterTableType_AT_DropCluster: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetLogged" +)] +pub const AlterTableType_AT_SetLogged: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetUnLogged" +)] +pub const AlterTableType_AT_SetUnLogged: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropOids" +)] +pub const AlterTableType_AT_DropOids: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetAccessMethod" +)] +pub const AlterTableType_AT_SetAccessMethod: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetTableSpace" +)] +pub const AlterTableType_AT_SetTableSpace: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetRelOptions" +)] +pub const AlterTableType_AT_SetRelOptions: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ResetRelOptions" +)] +pub const AlterTableType_AT_ResetRelOptions: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReplaceRelOptions" +)] +pub const AlterTableType_AT_ReplaceRelOptions: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableTrig" +)] +pub const AlterTableType_AT_EnableTrig: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableAlwaysTrig" +)] +pub const AlterTableType_AT_EnableAlwaysTrig: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableReplicaTrig" +)] +pub const AlterTableType_AT_EnableReplicaTrig: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableTrig" +)] +pub const AlterTableType_AT_DisableTrig: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableTrigAll" +)] +pub const AlterTableType_AT_EnableTrigAll: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableTrigAll" +)] +pub const AlterTableType_AT_DisableTrigAll: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableTrigUser" +)] +pub const AlterTableType_AT_EnableTrigUser: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableTrigUser" +)] +pub const AlterTableType_AT_DisableTrigUser: u32 = 45; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableRule" +)] +pub const AlterTableType_AT_EnableRule: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableAlwaysRule" +)] +pub const AlterTableType_AT_EnableAlwaysRule: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableReplicaRule" +)] +pub const AlterTableType_AT_EnableReplicaRule: u32 = 48; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableRule" +)] +pub const AlterTableType_AT_DisableRule: u32 = 49; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddInherit" +)] +pub const AlterTableType_AT_AddInherit: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropInherit" +)] +pub const AlterTableType_AT_DropInherit: u32 = 51; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AlterTableType::AT_AddOf")] +pub const AlterTableType_AT_AddOf: u32 = 52; +#[deprecated(since = "0.12.0", note = "you want pg_sys::AlterTableType::AT_DropOf")] +pub const AlterTableType_AT_DropOf: u32 = 53; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReplicaIdentity" +)] +pub const AlterTableType_AT_ReplicaIdentity: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_EnableRowSecurity" +)] +pub const AlterTableType_AT_EnableRowSecurity: u32 = 55; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DisableRowSecurity" +)] +pub const AlterTableType_AT_DisableRowSecurity: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ForceRowSecurity" +)] +pub const AlterTableType_AT_ForceRowSecurity: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_NoForceRowSecurity" +)] +pub const AlterTableType_AT_NoForceRowSecurity: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_GenericOptions" +)] +pub const AlterTableType_AT_GenericOptions: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AttachPartition" +)] +pub const AlterTableType_AT_AttachPartition: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DetachPartition" +)] +pub const AlterTableType_AT_DetachPartition: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DetachPartitionFinalize" +)] +pub const AlterTableType_AT_DetachPartitionFinalize: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_AddIdentity" +)] +pub const AlterTableType_AT_AddIdentity: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_SetIdentity" +)] +pub const AlterTableType_AT_SetIdentity: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_DropIdentity" +)] +pub const AlterTableType_AT_DropIdentity: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::AlterTableType::AT_ReAddStatistics" +)] +pub const AlterTableType_AT_ReAddStatistics: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ArchiveMode::ARCHIVE_MODE_OFF" +)] +pub const ArchiveMode_ARCHIVE_MODE_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ArchiveMode::ARCHIVE_MODE_ON" +)] +pub const ArchiveMode_ARCHIVE_MODE_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ArchiveMode::ARCHIVE_MODE_ALWAYS" +)] +pub const ArchiveMode_ARCHIVE_MODE_ALWAYS: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BMS_Comparison::BMS_EQUAL")] +pub const BMS_Comparison_BMS_EQUAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Comparison::BMS_SUBSET1" +)] +pub const BMS_Comparison_BMS_SUBSET1: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Comparison::BMS_SUBSET2" +)] +pub const BMS_Comparison_BMS_SUBSET2: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Comparison::BMS_DIFFERENT" +)] +pub const BMS_Comparison_BMS_DIFFERENT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Membership::BMS_EMPTY_SET" +)] +pub const BMS_Membership_BMS_EMPTY_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Membership::BMS_SINGLETON" +)] +pub const BMS_Membership_BMS_SINGLETON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BMS_Membership::BMS_MULTIPLE" +)] +pub const BMS_Membership_BMS_MULTIPLE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_UNDEFINED" +)] +pub const BackendState_STATE_UNDEFINED: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendState::STATE_IDLE")] +pub const BackendState_STATE_IDLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_RUNNING" +)] +pub const BackendState_STATE_RUNNING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_IDLEINTRANSACTION" +)] +pub const BackendState_STATE_IDLEINTRANSACTION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_FASTPATH" +)] +pub const BackendState_STATE_FASTPATH: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_IDLEINTRANSACTION_ABORTED" +)] +pub const BackendState_STATE_IDLEINTRANSACTION_ABORTED: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendState::STATE_DISABLED" +)] +pub const BackendState_STATE_DISABLED: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_INVALID")] +pub const BackendType_B_INVALID: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_BACKEND")] +pub const BackendType_B_BACKEND: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_AUTOVAC_LAUNCHER" +)] +pub const BackendType_B_AUTOVAC_LAUNCHER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_AUTOVAC_WORKER" +)] +pub const BackendType_B_AUTOVAC_WORKER: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_BG_WORKER")] +pub const BackendType_B_BG_WORKER: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_WAL_SENDER")] +pub const BackendType_B_WAL_SENDER: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_SLOTSYNC_WORKER" +)] +pub const BackendType_B_SLOTSYNC_WORKER: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_STANDALONE_BACKEND" +)] +pub const BackendType_B_STANDALONE_BACKEND: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_ARCHIVER")] +pub const BackendType_B_ARCHIVER: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_BG_WRITER")] +pub const BackendType_B_BG_WRITER: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_CHECKPOINTER" +)] +pub const BackendType_B_CHECKPOINTER: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_STARTUP")] +pub const BackendType_B_STARTUP: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_WAL_RECEIVER" +)] +pub const BackendType_B_WAL_RECEIVER: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackendType::B_WAL_SUMMARIZER" +)] +pub const BackendType_B_WAL_SUMMARIZER: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_WAL_WRITER")] +pub const BackendType_B_WAL_WRITER: u32 = 14; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BackendType::B_LOGGER")] +pub const BackendType_B_LOGGER: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackslashQuoteType::BACKSLASH_QUOTE_OFF" +)] +pub const BackslashQuoteType_BACKSLASH_QUOTE_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackslashQuoteType::BACKSLASH_QUOTE_ON" +)] +pub const BackslashQuoteType_BACKSLASH_QUOTE_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BackslashQuoteType::BACKSLASH_QUOTE_SAFE_ENCODING" +)] +pub const BackslashQuoteType_BACKSLASH_QUOTE_SAFE_ENCODING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgWorkerStartTime::BgWorkerStart_PostmasterStart" +)] +pub const BgWorkerStartTime_BgWorkerStart_PostmasterStart: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgWorkerStartTime::BgWorkerStart_ConsistentState" +)] +pub const BgWorkerStartTime_BgWorkerStart_ConsistentState: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgWorkerStartTime::BgWorkerStart_RecoveryFinished" +)] +pub const BgWorkerStartTime_BgWorkerStart_RecoveryFinished: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_STARTED" +)] +pub const BgwHandleStatus_BGWH_STARTED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_NOT_YET_STARTED" +)] +pub const BgwHandleStatus_BGWH_NOT_YET_STARTED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_STOPPED" +)] +pub const BgwHandleStatus_BGWH_STOPPED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BgwHandleStatus::BGWH_POSTMASTER_DIED" +)] +pub const BgwHandleStatus_BGWH_POSTMASTER_DIED: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolExprType::AND_EXPR")] +pub const BoolExprType_AND_EXPR: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolExprType::OR_EXPR")] +pub const BoolExprType_OR_EXPR: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolExprType::NOT_EXPR")] +pub const BoolExprType_NOT_EXPR: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_TRUE")] +pub const BoolTestType_IS_TRUE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_NOT_TRUE")] +pub const BoolTestType_IS_NOT_TRUE: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_FALSE")] +pub const BoolTestType_IS_FALSE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_NOT_FALSE")] +pub const BoolTestType_IS_NOT_FALSE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::BoolTestType::IS_UNKNOWN")] +pub const BoolTestType_IS_UNKNOWN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BoolTestType::IS_NOT_UNKNOWN" +)] +pub const BoolTestType_IS_NOT_UNKNOWN: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_NORMAL" +)] +pub const BufferAccessStrategyType_BAS_NORMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_BULKREAD" +)] +pub const BufferAccessStrategyType_BAS_BULKREAD: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_BULKWRITE" +)] +pub const BufferAccessStrategyType_BAS_BULKWRITE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BufferAccessStrategyType::BAS_VACUUM" +)] +pub const BufferAccessStrategyType_BAS_VACUUM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_XACT_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_XACT_BUFFER: u32 = 53; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_COMMITTS_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_COMMITTS_BUFFER: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SUBTRANS_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SUBTRANS_BUFFER: u32 = 55; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTOFFSET_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTOFFSET_BUFFER: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTMEMBER_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTMEMBER_BUFFER: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_NOTIFY_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_NOTIFY_BUFFER: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SERIAL_BUFFER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SERIAL_BUFFER: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_WAL_INSERT" +)] +pub const BuiltinTrancheIds_LWTRANCHE_WAL_INSERT: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_BUFFER_CONTENT" +)] +pub const BuiltinTrancheIds_LWTRANCHE_BUFFER_CONTENT: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_REPLICATION_ORIGIN_STATE" +)] +pub const BuiltinTrancheIds_LWTRANCHE_REPLICATION_ORIGIN_STATE: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_REPLICATION_SLOT_IO" +)] +pub const BuiltinTrancheIds_LWTRANCHE_REPLICATION_SLOT_IO: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LOCK_FASTPATH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LOCK_FASTPATH: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_BUFFER_MAPPING" +)] +pub const BuiltinTrancheIds_LWTRANCHE_BUFFER_MAPPING: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LOCK_MANAGER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LOCK_MANAGER: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PREDICATE_LOCK_MANAGER" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PREDICATE_LOCK_MANAGER: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_HASH_JOIN" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_HASH_JOIN: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_QUERY_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_QUERY_DSA: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_SESSION_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_SESSION_DSA: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_SESSION_RECORD_TYPE" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_SESSION_RECORD_TYPE: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_SESSION_RECORD_TYPMOD" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_SESSION_RECORD_TYPMOD: u32 = 72; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SHARED_TUPLESTORE" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SHARED_TUPLESTORE: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SHARED_TIDBITMAP" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SHARED_TIDBITMAP: u32 = 74; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_APPEND" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_APPEND: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PER_XACT_PREDICATE_LIST" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PER_XACT_PREDICATE_LIST: u32 = 76; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PGSTATS_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PGSTATS_DSA: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PGSTATS_HASH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PGSTATS_HASH: u32 = 78; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PGSTATS_DATA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PGSTATS_DATA: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LAUNCHER_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LAUNCHER_DSA: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_LAUNCHER_HASH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_LAUNCHER_HASH: u32 = 81; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_DSM_REGISTRY_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_DSM_REGISTRY_DSA: u32 = 82; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_DSM_REGISTRY_HASH" +)] +pub const BuiltinTrancheIds_LWTRANCHE_DSM_REGISTRY_HASH: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_COMMITTS_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_COMMITTS_SLRU: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTMEMBER_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTMEMBER_SLRU: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_MULTIXACTOFFSET_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_MULTIXACTOFFSET_SLRU: u32 = 86; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_NOTIFY_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_NOTIFY_SLRU: u32 = 87; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SERIAL_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SERIAL_SLRU: u32 = 88; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_SUBTRANS_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_SUBTRANS_SLRU: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_XACT_SLRU" +)] +pub const BuiltinTrancheIds_LWTRANCHE_XACT_SLRU: u32 = 90; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_PARALLEL_VACUUM_DSA" +)] +pub const BuiltinTrancheIds_LWTRANCHE_PARALLEL_VACUUM_DSA: u32 = 91; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::BuiltinTrancheIds::LWTRANCHE_FIRST_USER_DEFINED" +)] +pub const BuiltinTrancheIds_LWTRANCHE_FIRST_USER_DEFINED: u32 = 92; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CRSSnapshotAction::CRS_EXPORT_SNAPSHOT" +)] +pub const CRSSnapshotAction_CRS_EXPORT_SNAPSHOT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CRSSnapshotAction::CRS_NOEXPORT_SNAPSHOT" +)] +pub const CRSSnapshotAction_CRS_NOEXPORT_SNAPSHOT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CRSSnapshotAction::CRS_USE_SNAPSHOT" +)] +pub const CRSSnapshotAction_CRS_USE_SNAPSHOT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CTEMaterialize::CTEMaterializeDefault" +)] +pub const CTEMaterialize_CTEMaterializeDefault: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CTEMaterialize::CTEMaterializeAlways" +)] +pub const CTEMaterialize_CTEMaterializeAlways: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CTEMaterialize::CTEMaterializeNever" +)] +pub const CTEMaterialize_CTEMaterializeNever: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_UNKNOWN")] +pub const CmdType_CMD_UNKNOWN: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_SELECT")] +pub const CmdType_CMD_SELECT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_UPDATE")] +pub const CmdType_CMD_UPDATE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_INSERT")] +pub const CmdType_CMD_INSERT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_DELETE")] +pub const CmdType_CMD_DELETE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_MERGE")] +pub const CmdType_CMD_MERGE: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_UTILITY")] +pub const CmdType_CMD_UTILITY: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CmdType::CMD_NOTHING")] +pub const CmdType_CMD_NOTHING: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_IMPLICIT" +)] +pub const CoercionContext_COERCION_IMPLICIT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_ASSIGNMENT" +)] +pub const CoercionContext_COERCION_ASSIGNMENT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_PLPGSQL" +)] +pub const CoercionContext_COERCION_PLPGSQL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionContext::COERCION_EXPLICIT" +)] +pub const CoercionContext_COERCION_EXPLICIT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_EXPLICIT_CALL" +)] +pub const CoercionForm_COERCE_EXPLICIT_CALL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_EXPLICIT_CAST" +)] +pub const CoercionForm_COERCE_EXPLICIT_CAST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_IMPLICIT_CAST" +)] +pub const CoercionForm_COERCE_IMPLICIT_CAST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionForm::COERCE_SQL_SYNTAX" +)] +pub const CoercionForm_COERCE_SQL_SYNTAX: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_NONE" +)] +pub const CoercionPathType_COERCION_PATH_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_FUNC" +)] +pub const CoercionPathType_COERCION_PATH_FUNC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_RELABELTYPE" +)] +pub const CoercionPathType_COERCION_PATH_RELABELTYPE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_ARRAYCOERCE" +)] +pub const CoercionPathType_COERCION_PATH_ARRAYCOERCE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CoercionPathType::COERCION_PATH_COERCEVIAIO" +)] +pub const CoercionPathType_COERCION_PATH_COERCEVIAIO: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_Simple" +)] +pub const CollectedCommandType_SCT_Simple: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterTable" +)] +pub const CollectedCommandType_SCT_AlterTable: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_Grant" +)] +pub const CollectedCommandType_SCT_Grant: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterOpFamily" +)] +pub const CollectedCommandType_SCT_AlterOpFamily: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterDefaultPrivileges" +)] +pub const CollectedCommandType_SCT_AlterDefaultPrivileges: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_CreateOpClass" +)] +pub const CollectedCommandType_SCT_CreateOpClass: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CollectedCommandType::SCT_AlterTSConfig" +)] +pub const CollectedCommandType_SCT_AlterTSConfig: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestNone")] +pub const CommandDest_DestNone: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestDebug")] +pub const CommandDest_DestDebug: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestRemote")] +pub const CommandDest_DestRemote: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestRemoteExecute" +)] +pub const CommandDest_DestRemoteExecute: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestRemoteSimple" +)] +pub const CommandDest_DestRemoteSimple: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestSPI")] +pub const CommandDest_DestSPI: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestTuplestore" +)] +pub const CommandDest_DestTuplestore: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestIntoRel")] +pub const CommandDest_DestIntoRel: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandDest::DestCopyOut")] +pub const CommandDest_DestCopyOut: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestSQLFunction" +)] +pub const CommandDest_DestSQLFunction: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestTransientRel" +)] +pub const CommandDest_DestTransientRel: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestTupleQueue" +)] +pub const CommandDest_DestTupleQueue: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandDest::DestExplainSerialize" +)] +pub const CommandDest_DestExplainSerialize: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_UNKNOWN")] +pub const CommandTag_CMDTAG_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_ACCESS_METHOD" +)] +pub const CommandTag_CMDTAG_ALTER_ACCESS_METHOD: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_AGGREGATE" +)] +pub const CommandTag_CMDTAG_ALTER_AGGREGATE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_CAST" +)] +pub const CommandTag_CMDTAG_ALTER_CAST: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_COLLATION" +)] +pub const CommandTag_CMDTAG_ALTER_COLLATION: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_CONSTRAINT" +)] +pub const CommandTag_CMDTAG_ALTER_CONSTRAINT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_CONVERSION" +)] +pub const CommandTag_CMDTAG_ALTER_CONVERSION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_DATABASE" +)] +pub const CommandTag_CMDTAG_ALTER_DATABASE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_DEFAULT_PRIVILEGES" +)] +pub const CommandTag_CMDTAG_ALTER_DEFAULT_PRIVILEGES: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_DOMAIN" +)] +pub const CommandTag_CMDTAG_ALTER_DOMAIN: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_EVENT_TRIGGER" +)] +pub const CommandTag_CMDTAG_ALTER_EVENT_TRIGGER: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_EXTENSION" +)] +pub const CommandTag_CMDTAG_ALTER_EXTENSION: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_FOREIGN_DATA_WRAPPER" +)] +pub const CommandTag_CMDTAG_ALTER_FOREIGN_DATA_WRAPPER: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_FOREIGN_TABLE" +)] +pub const CommandTag_CMDTAG_ALTER_FOREIGN_TABLE: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_FUNCTION" +)] +pub const CommandTag_CMDTAG_ALTER_FUNCTION: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_INDEX" +)] +pub const CommandTag_CMDTAG_ALTER_INDEX: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_LANGUAGE" +)] +pub const CommandTag_CMDTAG_ALTER_LANGUAGE: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_LARGE_OBJECT" +)] +pub const CommandTag_CMDTAG_ALTER_LARGE_OBJECT: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_ALTER_MATERIALIZED_VIEW: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_OPERATOR" +)] +pub const CommandTag_CMDTAG_ALTER_OPERATOR: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_OPERATOR_CLASS" +)] +pub const CommandTag_CMDTAG_ALTER_OPERATOR_CLASS: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_OPERATOR_FAMILY" +)] +pub const CommandTag_CMDTAG_ALTER_OPERATOR_FAMILY: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_POLICY" +)] +pub const CommandTag_CMDTAG_ALTER_POLICY: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_PROCEDURE" +)] +pub const CommandTag_CMDTAG_ALTER_PROCEDURE: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_PUBLICATION" +)] +pub const CommandTag_CMDTAG_ALTER_PUBLICATION: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_ROLE" +)] +pub const CommandTag_CMDTAG_ALTER_ROLE: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_ROUTINE" +)] +pub const CommandTag_CMDTAG_ALTER_ROUTINE: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_RULE" +)] +pub const CommandTag_CMDTAG_ALTER_RULE: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SCHEMA" +)] +pub const CommandTag_CMDTAG_ALTER_SCHEMA: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SEQUENCE" +)] +pub const CommandTag_CMDTAG_ALTER_SEQUENCE: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SERVER" +)] +pub const CommandTag_CMDTAG_ALTER_SERVER: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_STATISTICS" +)] +pub const CommandTag_CMDTAG_ALTER_STATISTICS: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SUBSCRIPTION" +)] +pub const CommandTag_CMDTAG_ALTER_SUBSCRIPTION: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_SYSTEM" +)] +pub const CommandTag_CMDTAG_ALTER_SYSTEM: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TABLE" +)] +pub const CommandTag_CMDTAG_ALTER_TABLE: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TABLESPACE" +)] +pub const CommandTag_CMDTAG_ALTER_TABLESPACE: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_CONFIGURATION" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_CONFIGURATION: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_DICTIONARY" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_DICTIONARY: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_PARSER" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_PARSER: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TEXT_SEARCH_TEMPLATE" +)] +pub const CommandTag_CMDTAG_ALTER_TEXT_SEARCH_TEMPLATE: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TRANSFORM" +)] +pub const CommandTag_CMDTAG_ALTER_TRANSFORM: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TRIGGER" +)] +pub const CommandTag_CMDTAG_ALTER_TRIGGER: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_TYPE" +)] +pub const CommandTag_CMDTAG_ALTER_TYPE: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_USER_MAPPING" +)] +pub const CommandTag_CMDTAG_ALTER_USER_MAPPING: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ALTER_VIEW" +)] +pub const CommandTag_CMDTAG_ALTER_VIEW: u32 = 44; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_ANALYZE")] +pub const CommandTag_CMDTAG_ANALYZE: u32 = 45; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_BEGIN")] +pub const CommandTag_CMDTAG_BEGIN: u32 = 46; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_CALL")] +pub const CommandTag_CMDTAG_CALL: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CHECKPOINT" +)] +pub const CommandTag_CMDTAG_CHECKPOINT: u32 = 48; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_CLOSE")] +pub const CommandTag_CMDTAG_CLOSE: u32 = 49; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CLOSE_CURSOR" +)] +pub const CommandTag_CMDTAG_CLOSE_CURSOR: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CLOSE_CURSOR_ALL" +)] +pub const CommandTag_CMDTAG_CLOSE_CURSOR_ALL: u32 = 51; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_CLUSTER")] +pub const CommandTag_CMDTAG_CLUSTER: u32 = 52; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_COMMENT")] +pub const CommandTag_CMDTAG_COMMENT: u32 = 53; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_COMMIT")] +pub const CommandTag_CMDTAG_COMMIT: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_COMMIT_PREPARED" +)] +pub const CommandTag_CMDTAG_COMMIT_PREPARED: u32 = 55; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_COPY")] +pub const CommandTag_CMDTAG_COPY: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_COPY_FROM" +)] +pub const CommandTag_CMDTAG_COPY_FROM: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_ACCESS_METHOD" +)] +pub const CommandTag_CMDTAG_CREATE_ACCESS_METHOD: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_AGGREGATE" +)] +pub const CommandTag_CMDTAG_CREATE_AGGREGATE: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_CAST" +)] +pub const CommandTag_CMDTAG_CREATE_CAST: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_COLLATION" +)] +pub const CommandTag_CMDTAG_CREATE_COLLATION: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_CONSTRAINT" +)] +pub const CommandTag_CMDTAG_CREATE_CONSTRAINT: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_CONVERSION" +)] +pub const CommandTag_CMDTAG_CREATE_CONVERSION: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_DATABASE" +)] +pub const CommandTag_CMDTAG_CREATE_DATABASE: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_DOMAIN" +)] +pub const CommandTag_CMDTAG_CREATE_DOMAIN: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_EVENT_TRIGGER" +)] +pub const CommandTag_CMDTAG_CREATE_EVENT_TRIGGER: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_EXTENSION" +)] +pub const CommandTag_CMDTAG_CREATE_EXTENSION: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_FOREIGN_DATA_WRAPPER" +)] +pub const CommandTag_CMDTAG_CREATE_FOREIGN_DATA_WRAPPER: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_FOREIGN_TABLE" +)] +pub const CommandTag_CMDTAG_CREATE_FOREIGN_TABLE: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_FUNCTION" +)] +pub const CommandTag_CMDTAG_CREATE_FUNCTION: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_INDEX" +)] +pub const CommandTag_CMDTAG_CREATE_INDEX: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_LANGUAGE" +)] +pub const CommandTag_CMDTAG_CREATE_LANGUAGE: u32 = 72; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_CREATE_MATERIALIZED_VIEW: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_OPERATOR" +)] +pub const CommandTag_CMDTAG_CREATE_OPERATOR: u32 = 74; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_OPERATOR_CLASS" +)] +pub const CommandTag_CMDTAG_CREATE_OPERATOR_CLASS: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_OPERATOR_FAMILY" +)] +pub const CommandTag_CMDTAG_CREATE_OPERATOR_FAMILY: u32 = 76; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_POLICY" +)] +pub const CommandTag_CMDTAG_CREATE_POLICY: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_PROCEDURE" +)] +pub const CommandTag_CMDTAG_CREATE_PROCEDURE: u32 = 78; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_PUBLICATION" +)] +pub const CommandTag_CMDTAG_CREATE_PUBLICATION: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_ROLE" +)] +pub const CommandTag_CMDTAG_CREATE_ROLE: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_ROUTINE" +)] +pub const CommandTag_CMDTAG_CREATE_ROUTINE: u32 = 81; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_RULE" +)] +pub const CommandTag_CMDTAG_CREATE_RULE: u32 = 82; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SCHEMA" +)] +pub const CommandTag_CMDTAG_CREATE_SCHEMA: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SEQUENCE" +)] +pub const CommandTag_CMDTAG_CREATE_SEQUENCE: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SERVER" +)] +pub const CommandTag_CMDTAG_CREATE_SERVER: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_STATISTICS" +)] +pub const CommandTag_CMDTAG_CREATE_STATISTICS: u32 = 86; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_SUBSCRIPTION" +)] +pub const CommandTag_CMDTAG_CREATE_SUBSCRIPTION: u32 = 87; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TABLE" +)] +pub const CommandTag_CMDTAG_CREATE_TABLE: u32 = 88; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TABLE_AS" +)] +pub const CommandTag_CMDTAG_CREATE_TABLE_AS: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TABLESPACE" +)] +pub const CommandTag_CMDTAG_CREATE_TABLESPACE: u32 = 90; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_CONFIGURATION" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_CONFIGURATION: u32 = 91; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_DICTIONARY" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_DICTIONARY: u32 = 92; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_PARSER" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_PARSER: u32 = 93; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TEXT_SEARCH_TEMPLATE" +)] +pub const CommandTag_CMDTAG_CREATE_TEXT_SEARCH_TEMPLATE: u32 = 94; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TRANSFORM" +)] +pub const CommandTag_CMDTAG_CREATE_TRANSFORM: u32 = 95; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TRIGGER" +)] +pub const CommandTag_CMDTAG_CREATE_TRIGGER: u32 = 96; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_TYPE" +)] +pub const CommandTag_CMDTAG_CREATE_TYPE: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_USER_MAPPING" +)] +pub const CommandTag_CMDTAG_CREATE_USER_MAPPING: u32 = 98; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_CREATE_VIEW" +)] +pub const CommandTag_CMDTAG_CREATE_VIEW: u32 = 99; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DEALLOCATE" +)] +pub const CommandTag_CMDTAG_DEALLOCATE: u32 = 100; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DEALLOCATE_ALL" +)] +pub const CommandTag_CMDTAG_DEALLOCATE_ALL: u32 = 101; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DECLARE_CURSOR" +)] +pub const CommandTag_CMDTAG_DECLARE_CURSOR: u32 = 102; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_DELETE")] +pub const CommandTag_CMDTAG_DELETE: u32 = 103; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_DISCARD")] +pub const CommandTag_CMDTAG_DISCARD: u32 = 104; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_ALL" +)] +pub const CommandTag_CMDTAG_DISCARD_ALL: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_PLANS" +)] +pub const CommandTag_CMDTAG_DISCARD_PLANS: u32 = 106; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_SEQUENCES" +)] +pub const CommandTag_CMDTAG_DISCARD_SEQUENCES: u32 = 107; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DISCARD_TEMP" +)] +pub const CommandTag_CMDTAG_DISCARD_TEMP: u32 = 108; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_DO")] +pub const CommandTag_CMDTAG_DO: u32 = 109; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_ACCESS_METHOD" +)] +pub const CommandTag_CMDTAG_DROP_ACCESS_METHOD: u32 = 110; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_AGGREGATE" +)] +pub const CommandTag_CMDTAG_DROP_AGGREGATE: u32 = 111; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_CAST" +)] +pub const CommandTag_CMDTAG_DROP_CAST: u32 = 112; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_COLLATION" +)] +pub const CommandTag_CMDTAG_DROP_COLLATION: u32 = 113; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_CONSTRAINT" +)] +pub const CommandTag_CMDTAG_DROP_CONSTRAINT: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_CONVERSION" +)] +pub const CommandTag_CMDTAG_DROP_CONVERSION: u32 = 115; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_DATABASE" +)] +pub const CommandTag_CMDTAG_DROP_DATABASE: u32 = 116; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_DOMAIN" +)] +pub const CommandTag_CMDTAG_DROP_DOMAIN: u32 = 117; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_EVENT_TRIGGER" +)] +pub const CommandTag_CMDTAG_DROP_EVENT_TRIGGER: u32 = 118; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_EXTENSION" +)] +pub const CommandTag_CMDTAG_DROP_EXTENSION: u32 = 119; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_FOREIGN_DATA_WRAPPER" +)] +pub const CommandTag_CMDTAG_DROP_FOREIGN_DATA_WRAPPER: u32 = 120; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_FOREIGN_TABLE" +)] +pub const CommandTag_CMDTAG_DROP_FOREIGN_TABLE: u32 = 121; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_FUNCTION" +)] +pub const CommandTag_CMDTAG_DROP_FUNCTION: u32 = 122; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_INDEX" +)] +pub const CommandTag_CMDTAG_DROP_INDEX: u32 = 123; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_LANGUAGE" +)] +pub const CommandTag_CMDTAG_DROP_LANGUAGE: u32 = 124; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_DROP_MATERIALIZED_VIEW: u32 = 125; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OPERATOR" +)] +pub const CommandTag_CMDTAG_DROP_OPERATOR: u32 = 126; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OPERATOR_CLASS" +)] +pub const CommandTag_CMDTAG_DROP_OPERATOR_CLASS: u32 = 127; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OPERATOR_FAMILY" +)] +pub const CommandTag_CMDTAG_DROP_OPERATOR_FAMILY: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_OWNED" +)] +pub const CommandTag_CMDTAG_DROP_OWNED: u32 = 129; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_POLICY" +)] +pub const CommandTag_CMDTAG_DROP_POLICY: u32 = 130; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_PROCEDURE" +)] +pub const CommandTag_CMDTAG_DROP_PROCEDURE: u32 = 131; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_PUBLICATION" +)] +pub const CommandTag_CMDTAG_DROP_PUBLICATION: u32 = 132; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_ROLE" +)] +pub const CommandTag_CMDTAG_DROP_ROLE: u32 = 133; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_ROUTINE" +)] +pub const CommandTag_CMDTAG_DROP_ROUTINE: u32 = 134; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_RULE" +)] +pub const CommandTag_CMDTAG_DROP_RULE: u32 = 135; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SCHEMA" +)] +pub const CommandTag_CMDTAG_DROP_SCHEMA: u32 = 136; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SEQUENCE" +)] +pub const CommandTag_CMDTAG_DROP_SEQUENCE: u32 = 137; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SERVER" +)] +pub const CommandTag_CMDTAG_DROP_SERVER: u32 = 138; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_STATISTICS" +)] +pub const CommandTag_CMDTAG_DROP_STATISTICS: u32 = 139; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_SUBSCRIPTION" +)] +pub const CommandTag_CMDTAG_DROP_SUBSCRIPTION: u32 = 140; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TABLE" +)] +pub const CommandTag_CMDTAG_DROP_TABLE: u32 = 141; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TABLESPACE" +)] +pub const CommandTag_CMDTAG_DROP_TABLESPACE: u32 = 142; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_CONFIGURATION" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_CONFIGURATION: u32 = 143; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_DICTIONARY" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_DICTIONARY: u32 = 144; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_PARSER" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_PARSER: u32 = 145; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TEXT_SEARCH_TEMPLATE" +)] +pub const CommandTag_CMDTAG_DROP_TEXT_SEARCH_TEMPLATE: u32 = 146; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TRANSFORM" +)] +pub const CommandTag_CMDTAG_DROP_TRANSFORM: u32 = 147; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TRIGGER" +)] +pub const CommandTag_CMDTAG_DROP_TRIGGER: u32 = 148; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_TYPE" +)] +pub const CommandTag_CMDTAG_DROP_TYPE: u32 = 149; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_USER_MAPPING" +)] +pub const CommandTag_CMDTAG_DROP_USER_MAPPING: u32 = 150; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_DROP_VIEW" +)] +pub const CommandTag_CMDTAG_DROP_VIEW: u32 = 151; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_EXECUTE")] +pub const CommandTag_CMDTAG_EXECUTE: u32 = 152; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_EXPLAIN")] +pub const CommandTag_CMDTAG_EXPLAIN: u32 = 153; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_FETCH")] +pub const CommandTag_CMDTAG_FETCH: u32 = 154; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_GRANT")] +pub const CommandTag_CMDTAG_GRANT: u32 = 155; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_GRANT_ROLE" +)] +pub const CommandTag_CMDTAG_GRANT_ROLE: u32 = 156; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_IMPORT_FOREIGN_SCHEMA" +)] +pub const CommandTag_CMDTAG_IMPORT_FOREIGN_SCHEMA: u32 = 157; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_INSERT")] +pub const CommandTag_CMDTAG_INSERT: u32 = 158; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_LISTEN")] +pub const CommandTag_CMDTAG_LISTEN: u32 = 159; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_LOAD")] +pub const CommandTag_CMDTAG_LOAD: u32 = 160; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_LOCK_TABLE" +)] +pub const CommandTag_CMDTAG_LOCK_TABLE: u32 = 161; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_LOGIN")] +pub const CommandTag_CMDTAG_LOGIN: u32 = 162; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_MERGE")] +pub const CommandTag_CMDTAG_MERGE: u32 = 163; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_MOVE")] +pub const CommandTag_CMDTAG_MOVE: u32 = 164; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_NOTIFY")] +pub const CommandTag_CMDTAG_NOTIFY: u32 = 165; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_PREPARE")] +pub const CommandTag_CMDTAG_PREPARE: u32 = 166; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_PREPARE_TRANSACTION" +)] +pub const CommandTag_CMDTAG_PREPARE_TRANSACTION: u32 = 167; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_REASSIGN_OWNED" +)] +pub const CommandTag_CMDTAG_REASSIGN_OWNED: u32 = 168; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_REFRESH_MATERIALIZED_VIEW" +)] +pub const CommandTag_CMDTAG_REFRESH_MATERIALIZED_VIEW: u32 = 169; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_REINDEX")] +pub const CommandTag_CMDTAG_REINDEX: u32 = 170; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_RELEASE")] +pub const CommandTag_CMDTAG_RELEASE: u32 = 171; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_RESET")] +pub const CommandTag_CMDTAG_RESET: u32 = 172; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_REVOKE")] +pub const CommandTag_CMDTAG_REVOKE: u32 = 173; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_REVOKE_ROLE" +)] +pub const CommandTag_CMDTAG_REVOKE_ROLE: u32 = 174; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ROLLBACK" +)] +pub const CommandTag_CMDTAG_ROLLBACK: u32 = 175; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_ROLLBACK_PREPARED" +)] +pub const CommandTag_CMDTAG_ROLLBACK_PREPARED: u32 = 176; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SAVEPOINT" +)] +pub const CommandTag_CMDTAG_SAVEPOINT: u32 = 177; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SECURITY_LABEL" +)] +pub const CommandTag_CMDTAG_SECURITY_LABEL: u32 = 178; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_SELECT")] +pub const CommandTag_CMDTAG_SELECT: u32 = 179; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_KEY_SHARE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_KEY_SHARE: u32 = 180; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_NO_KEY_UPDATE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_NO_KEY_UPDATE: u32 = 181; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_SHARE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_SHARE: u32 = 182; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_FOR_UPDATE" +)] +pub const CommandTag_CMDTAG_SELECT_FOR_UPDATE: u32 = 183; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SELECT_INTO" +)] +pub const CommandTag_CMDTAG_SELECT_INTO: u32 = 184; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_SET")] +pub const CommandTag_CMDTAG_SET: u32 = 185; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_SET_CONSTRAINTS" +)] +pub const CommandTag_CMDTAG_SET_CONSTRAINTS: u32 = 186; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_SHOW")] +pub const CommandTag_CMDTAG_SHOW: u32 = 187; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_START_TRANSACTION" +)] +pub const CommandTag_CMDTAG_START_TRANSACTION: u32 = 188; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_TRUNCATE_TABLE" +)] +pub const CommandTag_CMDTAG_TRUNCATE_TABLE: u32 = 189; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CommandTag::CMDTAG_UNLISTEN" +)] +pub const CommandTag_CMDTAG_UNLISTEN: u32 = 190; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_UPDATE")] +pub const CommandTag_CMDTAG_UPDATE: u32 = 191; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CommandTag::CMDTAG_VACUUM")] +pub const CommandTag_CMDTAG_VACUUM: u32 = 192; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_OFF" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_ON" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_AUTO" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_AUTO: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ComputeQueryIdType::COMPUTE_QUERY_ID_REGRESS" +)] +pub const ComputeQueryIdType_COMPUTE_QUERY_ID_REGRESS: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_NULL")] +pub const ConstrType_CONSTR_NULL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_NOTNULL")] +pub const ConstrType_CONSTR_NOTNULL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_DEFAULT")] +pub const ConstrType_CONSTR_DEFAULT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_IDENTITY" +)] +pub const ConstrType_CONSTR_IDENTITY: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_GENERATED" +)] +pub const ConstrType_CONSTR_GENERATED: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_CHECK")] +pub const ConstrType_CONSTR_CHECK: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_PRIMARY")] +pub const ConstrType_CONSTR_PRIMARY: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_UNIQUE")] +pub const ConstrType_CONSTR_UNIQUE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_EXCLUSION" +)] +pub const ConstrType_CONSTR_EXCLUSION: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ConstrType::CONSTR_FOREIGN")] +pub const ConstrType_CONSTR_FOREIGN: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_DEFERRABLE" +)] +pub const ConstrType_CONSTR_ATTR_DEFERRABLE: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_NOT_DEFERRABLE" +)] +pub const ConstrType_CONSTR_ATTR_NOT_DEFERRABLE: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_DEFERRED" +)] +pub const ConstrType_CONSTR_ATTR_DEFERRED: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstrType::CONSTR_ATTR_IMMEDIATE" +)] +pub const ConstrType_CONSTR_ATTR_IMMEDIATE: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstraintExclusionType::CONSTRAINT_EXCLUSION_OFF" +)] +pub const ConstraintExclusionType_CONSTRAINT_EXCLUSION_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstraintExclusionType::CONSTRAINT_EXCLUSION_ON" +)] +pub const ConstraintExclusionType_CONSTRAINT_EXCLUSION_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ConstraintExclusionType::CONSTRAINT_EXCLUSION_PARTITION" +)] +pub const ConstraintExclusionType_CONSTRAINT_EXCLUSION_PARTITION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyHeaderChoice::COPY_HEADER_FALSE" +)] +pub const CopyHeaderChoice_COPY_HEADER_FALSE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyHeaderChoice::COPY_HEADER_TRUE" +)] +pub const CopyHeaderChoice_COPY_HEADER_TRUE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyHeaderChoice::COPY_HEADER_MATCH" +)] +pub const CopyHeaderChoice_COPY_HEADER_MATCH: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyLogVerbosityChoice::COPY_LOG_VERBOSITY_DEFAULT" +)] +pub const CopyLogVerbosityChoice_COPY_LOG_VERBOSITY_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyLogVerbosityChoice::COPY_LOG_VERBOSITY_VERBOSE" +)] +pub const CopyLogVerbosityChoice_COPY_LOG_VERBOSITY_VERBOSE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyOnErrorChoice::COPY_ON_ERROR_STOP" +)] +pub const CopyOnErrorChoice_COPY_ON_ERROR_STOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::CopyOnErrorChoice::COPY_ON_ERROR_IGNORE" +)] +pub const CopyOnErrorChoice_COPY_ON_ERROR_IGNORE: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CostSelector::STARTUP_COST")] +pub const CostSelector_STARTUP_COST: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::CostSelector::TOTAL_COST")] +pub const CostSelector_TOTAL_COST: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_STARTUP")] +pub const DBState_DB_STARTUP: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_SHUTDOWNED")] +pub const DBState_DB_SHUTDOWNED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DBState::DB_SHUTDOWNED_IN_RECOVERY" +)] +pub const DBState_DB_SHUTDOWNED_IN_RECOVERY: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_SHUTDOWNING")] +pub const DBState_DB_SHUTDOWNING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DBState::DB_IN_CRASH_RECOVERY" +)] +pub const DBState_DB_IN_CRASH_RECOVERY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DBState::DB_IN_ARCHIVE_RECOVERY" +)] +pub const DBState_DB_IN_ARCHIVE_RECOVERY: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DBState::DB_IN_PRODUCTION")] +pub const DBState_DB_IN_PRODUCTION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_NOT_YET_CHECKED" +)] +pub const DeadLockState_DS_NOT_YET_CHECKED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_NO_DEADLOCK" +)] +pub const DeadLockState_DS_NO_DEADLOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_SOFT_DEADLOCK" +)] +pub const DeadLockState_DS_SOFT_DEADLOCK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_HARD_DEADLOCK" +)] +pub const DeadLockState_DS_HARD_DEADLOCK: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DeadLockState::DS_BLOCKED_BY_AUTOVACUUM" +)] +pub const DeadLockState_DS_BLOCKED_BY_AUTOVACUUM: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugLogicalRepStreamingMode::DEBUG_LOGICAL_REP_STREAMING_BUFFERED" +)] +pub const DebugLogicalRepStreamingMode_DEBUG_LOGICAL_REP_STREAMING_BUFFERED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugLogicalRepStreamingMode::DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE" +)] +pub const DebugLogicalRepStreamingMode_DEBUG_LOGICAL_REP_STREAMING_IMMEDIATE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugParallelMode::DEBUG_PARALLEL_OFF" +)] +pub const DebugParallelMode_DEBUG_PARALLEL_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugParallelMode::DEBUG_PARALLEL_ON" +)] +pub const DebugParallelMode_DEBUG_PARALLEL_ON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DebugParallelMode::DEBUG_PARALLEL_REGRESS" +)] +pub const DebugParallelMode_DEBUG_PARALLEL_REGRESS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DefElemAction::DEFELEM_UNSPEC" +)] +pub const DefElemAction_DEFELEM_UNSPEC: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DefElemAction::DEFELEM_SET")] +pub const DefElemAction_DEFELEM_SET: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DefElemAction::DEFELEM_ADD")] +pub const DefElemAction_DEFELEM_ADD: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DefElemAction::DEFELEM_DROP" +)] +pub const DefElemAction_DEFELEM_DROP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_NORMAL" +)] +pub const DependencyType_DEPENDENCY_NORMAL: u32 = 110; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_AUTO" +)] +pub const DependencyType_DEPENDENCY_AUTO: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_INTERNAL" +)] +pub const DependencyType_DEPENDENCY_INTERNAL: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_PARTITION_PRI" +)] +pub const DependencyType_DEPENDENCY_PARTITION_PRI: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_PARTITION_SEC" +)] +pub const DependencyType_DEPENDENCY_PARTITION_SEC: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_EXTENSION" +)] +pub const DependencyType_DEPENDENCY_EXTENSION: u32 = 101; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DependencyType::DEPENDENCY_AUTO_EXTENSION" +)] +pub const DependencyType_DEPENDENCY_AUTO_EXTENSION: u32 = 120; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DiscardMode::DISCARD_ALL")] +pub const DiscardMode_DISCARD_ALL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DiscardMode::DISCARD_PLANS")] +pub const DiscardMode_DISCARD_PLANS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DiscardMode::DISCARD_SEQUENCES" +)] +pub const DiscardMode_DISCARD_SEQUENCES: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DiscardMode::DISCARD_TEMP")] +pub const DiscardMode_DISCARD_TEMP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DomainConstraintType::DOM_CONSTRAINT_NOTNULL" +)] +pub const DomainConstraintType_DOM_CONSTRAINT_NOTNULL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DomainConstraintType::DOM_CONSTRAINT_CHECK" +)] +pub const DomainConstraintType_DOM_CONSTRAINT_CHECK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::DropBehavior::DROP_RESTRICT" +)] +pub const DropBehavior_DROP_RESTRICT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::DropBehavior::DROP_CASCADE")] +pub const DropBehavior_DROP_CASCADE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::EphemeralNameRelationType::ENR_NAMED_TUPLESTORE" +)] +pub const EphemeralNameRelationType_ENR_NAMED_TUPLESTORE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_TEXT" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_TEXT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_XML" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_XML: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_JSON" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_JSON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainFormat::EXPLAIN_FORMAT_YAML" +)] +pub const ExplainFormat_EXPLAIN_FORMAT_YAML: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainSerializeOption::EXPLAIN_SERIALIZE_NONE" +)] +pub const ExplainSerializeOption_EXPLAIN_SERIALIZE_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainSerializeOption::EXPLAIN_SERIALIZE_TEXT" +)] +pub const ExplainSerializeOption_EXPLAIN_SERIALIZE_TEXT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExplainSerializeOption::EXPLAIN_SERIALIZE_BINARY" +)] +pub const ExplainSerializeOption_EXPLAIN_SERIALIZE_BINARY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprDoneCond::ExprSingleResult" +)] +pub const ExprDoneCond_ExprSingleResult: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprDoneCond::ExprMultipleResult" +)] +pub const ExprDoneCond_ExprMultipleResult: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprDoneCond::ExprEndResult" +)] +pub const ExprDoneCond_ExprEndResult: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_DONE")] +pub const ExprEvalOp_EEOP_DONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_INNER_FETCHSOME" +)] +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_OUTER_FETCHSOME" +)] +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SCAN_FETCHSOME" +)] +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_INNER_VAR")] +pub const ExprEvalOp_EEOP_INNER_VAR: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_OUTER_VAR")] +pub const ExprEvalOp_EEOP_OUTER_VAR: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_SCAN_VAR")] +pub const ExprEvalOp_EEOP_SCAN_VAR: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_INNER_SYSVAR" +)] +pub const ExprEvalOp_EEOP_INNER_SYSVAR: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_OUTER_SYSVAR" +)] +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SCAN_SYSVAR" +)] +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_WHOLEROW")] +pub const ExprEvalOp_EEOP_WHOLEROW: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_INNER_VAR" +)] +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_OUTER_VAR" +)] +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_SCAN_VAR" +)] +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_TMP" +)] +pub const ExprEvalOp_EEOP_ASSIGN_TMP: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ASSIGN_TMP_MAKE_RO" +)] +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_CONST")] +pub const ExprEvalOp_EEOP_CONST: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR")] +pub const ExprEvalOp_EEOP_FUNCEXPR: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR_STRICT" +)] +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR_FUSAGE" +)] +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FUNCEXPR_STRICT_FUSAGE" +)] +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_AND_STEP_FIRST" +)] +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_AND_STEP" +)] +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_AND_STEP_LAST" +)] +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_OR_STEP_FIRST" +)] +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_OR_STEP" +)] +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_OR_STEP_LAST" +)] +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOL_NOT_STEP" +)] +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: u32 = 27; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_QUAL")] +pub const ExprEvalOp_EEOP_QUAL: u32 = 28; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_JUMP")] +pub const ExprEvalOp_EEOP_JUMP: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JUMP_IF_NULL" +)] +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JUMP_IF_NOT_NULL" +)] +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JUMP_IF_NOT_TRUE" +)] +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ISNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ISNOTNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ROWISNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NULLTEST_ROWISNOTNULL" +)] +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_TRUE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_NOT_TRUE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_FALSE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_BOOLTEST_IS_NOT_FALSE" +)] +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_PARAM_EXEC" +)] +pub const ExprEvalOp_EEOP_PARAM_EXEC: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_PARAM_EXTERN" +)] +pub const ExprEvalOp_EEOP_PARAM_EXTERN: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_PARAM_CALLBACK" +)] +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_CASE_TESTVAL" +)] +pub const ExprEvalOp_EEOP_CASE_TESTVAL: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_MAKE_READONLY" +)] +pub const ExprEvalOp_EEOP_MAKE_READONLY: u32 = 45; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_IOCOERCE")] +pub const ExprEvalOp_EEOP_IOCOERCE: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_IOCOERCE_SAFE" +)] +pub const ExprEvalOp_EEOP_IOCOERCE_SAFE: u32 = 47; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_DISTINCT")] +pub const ExprEvalOp_EEOP_DISTINCT: u32 = 48; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NOT_DISTINCT" +)] +pub const ExprEvalOp_EEOP_NOT_DISTINCT: u32 = 49; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_NULLIF")] +pub const ExprEvalOp_EEOP_NULLIF: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SQLVALUEFUNCTION" +)] +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: u32 = 51; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_CURRENTOFEXPR" +)] +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: u32 = 52; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_NEXTVALUEEXPR" +)] +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: u32 = 53; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_ARRAYEXPR")] +pub const ExprEvalOp_EEOP_ARRAYEXPR: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ARRAYCOERCE" +)] +pub const ExprEvalOp_EEOP_ARRAYCOERCE: u32 = 55; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_ROW")] +pub const ExprEvalOp_EEOP_ROW: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ROWCOMPARE_STEP" +)] +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_ROWCOMPARE_FINAL" +)] +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: u32 = 58; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_MINMAX")] +pub const ExprEvalOp_EEOP_MINMAX: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FIELDSELECT" +)] +pub const ExprEvalOp_EEOP_FIELDSELECT: u32 = 60; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FIELDSTORE_DEFORM" +)] +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_FIELDSTORE_FORM" +)] +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: u32 = 62; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_SUBSCRIPTS" +)] +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPTS: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_OLD" +)] +pub const ExprEvalOp_EEOP_SBSREF_OLD: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_ASSIGN" +)] +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SBSREF_FETCH" +)] +pub const ExprEvalOp_EEOP_SBSREF_FETCH: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_DOMAIN_TESTVAL" +)] +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_DOMAIN_NOTNULL" +)] +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_DOMAIN_CHECK" +)] +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_CONVERT_ROWTYPE" +)] +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_SCALARARRAYOP" +)] +pub const ExprEvalOp_EEOP_SCALARARRAYOP: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_HASHED_SCALARARRAYOP" +)] +pub const ExprEvalOp_EEOP_HASHED_SCALARARRAYOP: u32 = 72; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_XMLEXPR")] +pub const ExprEvalOp_EEOP_XMLEXPR: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSON_CONSTRUCTOR" +)] +pub const ExprEvalOp_EEOP_JSON_CONSTRUCTOR: u32 = 74; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_IS_JSON")] +pub const ExprEvalOp_EEOP_IS_JSON: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSONEXPR_PATH" +)] +pub const ExprEvalOp_EEOP_JSONEXPR_PATH: u32 = 76; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSONEXPR_COERCION" +)] +pub const ExprEvalOp_EEOP_JSONEXPR_COERCION: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_JSONEXPR_COERCION_FINISH" +)] +pub const ExprEvalOp_EEOP_JSONEXPR_COERCION_FINISH: u32 = 78; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_AGGREF")] +pub const ExprEvalOp_EEOP_AGGREF: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_GROUPING_FUNC" +)] +pub const ExprEvalOp_EEOP_GROUPING_FUNC: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_WINDOW_FUNC" +)] +pub const ExprEvalOp_EEOP_WINDOW_FUNC: u32 = 81; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_MERGE_SUPPORT_FUNC" +)] +pub const ExprEvalOp_EEOP_MERGE_SUPPORT_FUNC: u32 = 82; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_SUBPLAN")] +pub const ExprEvalOp_EEOP_SUBPLAN: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_STRICT_DESERIALIZE" +)] +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_DESERIALIZE" +)] +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_STRICT_INPUT_CHECK_ARGS" +)] +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: u32 = 86; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_STRICT_INPUT_CHECK_NULLS" +)] +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: u32 = 87; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_PERGROUP_NULLCHECK" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: u32 = 88; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: u32 = 90; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_BYVAL" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: u32 = 91; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: u32 = 92; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_STRICT_BYREF" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: u32 = 93; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PLAIN_TRANS_BYREF" +)] +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYREF: u32 = 94; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PRESORTED_DISTINCT_SINGLE" +)] +pub const ExprEvalOp_EEOP_AGG_PRESORTED_DISTINCT_SINGLE: u32 = 95; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_PRESORTED_DISTINCT_MULTI" +)] +pub const ExprEvalOp_EEOP_AGG_PRESORTED_DISTINCT_MULTI: u32 = 96; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_ORDERED_TRANS_DATUM" +)] +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExprEvalOp::EEOP_AGG_ORDERED_TRANS_TUPLE" +)] +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: u32 = 98; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ExprEvalOp::EEOP_LAST")] +pub const ExprEvalOp_EEOP_LAST: u32 = 99; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_SKIP_EXTENSION_LOCK" +)] +pub const ExtendBufferedFlags_EB_SKIP_EXTENSION_LOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_PERFORMING_RECOVERY" +)] +pub const ExtendBufferedFlags_EB_PERFORMING_RECOVERY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_CREATE_FORK_IF_NEEDED" +)] +pub const ExtendBufferedFlags_EB_CREATE_FORK_IF_NEEDED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_LOCK_FIRST" +)] +pub const ExtendBufferedFlags_EB_LOCK_FIRST: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_CLEAR_SIZE_CACHE" +)] +pub const ExtendBufferedFlags_EB_CLEAR_SIZE_CACHE: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ExtendBufferedFlags::EB_LOCK_TARGET" +)] +pub const ExtendBufferedFlags_EB_LOCK_TARGET: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_FORWARD" +)] +pub const FetchDirection_FETCH_FORWARD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_BACKWARD" +)] +pub const FetchDirection_FETCH_BACKWARD: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_ABSOLUTE" +)] +pub const FetchDirection_FETCH_ABSOLUTE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FetchDirection::FETCH_RELATIVE" +)] +pub const FetchDirection_FETCH_RELATIVE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FmgrHookEventType::FHET_START" +)] +pub const FmgrHookEventType_FHET_START: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FmgrHookEventType::FHET_END" +)] +pub const FmgrHookEventType_FHET_END: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FmgrHookEventType::FHET_ABORT" +)] +pub const FmgrHookEventType_FHET_ABORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ForkNumber::InvalidForkNumber" +)] +pub const ForkNumber_InvalidForkNumber: i32 = -1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ForkNumber::MAIN_FORKNUM")] +pub const ForkNumber_MAIN_FORKNUM: i32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ForkNumber::FSM_FORKNUM")] +pub const ForkNumber_FSM_FORKNUM: i32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ForkNumber::VISIBILITYMAP_FORKNUM" +)] +pub const ForkNumber_VISIBILITYMAP_FORKNUM: i32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ForkNumber::INIT_FORKNUM")] +pub const ForkNumber_INIT_FORKNUM: i32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_NOTFOUND" +)] +pub const FuncDetailCode_FUNCDETAIL_NOTFOUND: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_MULTIPLE" +)] +pub const FuncDetailCode_FUNCDETAIL_MULTIPLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_NORMAL" +)] +pub const FuncDetailCode_FUNCDETAIL_NORMAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_PROCEDURE" +)] +pub const FuncDetailCode_FUNCDETAIL_PROCEDURE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_AGGREGATE" +)] +pub const FuncDetailCode_FUNCDETAIL_AGGREGATE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_WINDOWFUNC" +)] +pub const FuncDetailCode_FUNCDETAIL_WINDOWFUNC: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FuncDetailCode::FUNCDETAIL_COERCION" +)] +pub const FuncDetailCode_FUNCDETAIL_COERCION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_IN" +)] +pub const FunctionParameterMode_FUNC_PARAM_IN: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_OUT" +)] +pub const FunctionParameterMode_FUNC_PARAM_OUT: u32 = 111; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_INOUT" +)] +pub const FunctionParameterMode_FUNC_PARAM_INOUT: u32 = 98; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_VARIADIC" +)] +pub const FunctionParameterMode_FUNC_PARAM_VARIADIC: u32 = 118; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_TABLE" +)] +pub const FunctionParameterMode_FUNC_PARAM_TABLE: u32 = 116; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::FunctionParameterMode::FUNC_PARAM_DEFAULT" +)] +pub const FunctionParameterMode_FUNC_PARAM_DEFAULT: u32 = 100; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GrantTargetType::ACL_TARGET_OBJECT" +)] +pub const GrantTargetType_ACL_TARGET_OBJECT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GrantTargetType::ACL_TARGET_ALL_IN_SCHEMA" +)] +pub const GrantTargetType_ACL_TARGET_ALL_IN_SCHEMA: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GrantTargetType::ACL_TARGET_DEFAULTS" +)] +pub const GrantTargetType_ACL_TARGET_DEFAULTS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_EMPTY" +)] +pub const GroupingSetKind_GROUPING_SET_EMPTY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_SIMPLE" +)] +pub const GroupingSetKind_GROUPING_SET_SIMPLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_ROLLUP" +)] +pub const GroupingSetKind_GROUPING_SET_ROLLUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_CUBE" +)] +pub const GroupingSetKind_GROUPING_SET_CUBE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GroupingSetKind::GROUPING_SET_SETS" +)] +pub const GroupingSetKind_GROUPING_SET_SETS: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucAction::GUC_ACTION_SET")] +pub const GucAction_GUC_ACTION_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucAction::GUC_ACTION_LOCAL" +)] +pub const GucAction_GUC_ACTION_LOCAL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucAction::GUC_ACTION_SAVE")] +pub const GucAction_GUC_ACTION_SAVE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_INTERNAL")] +pub const GucContext_PGC_INTERNAL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_POSTMASTER")] +pub const GucContext_PGC_POSTMASTER: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_SIGHUP")] +pub const GucContext_PGC_SIGHUP: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_SU_BACKEND")] +pub const GucContext_PGC_SU_BACKEND: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_BACKEND")] +pub const GucContext_PGC_BACKEND: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_SUSET")] +pub const GucContext_PGC_SUSET: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucContext::PGC_USERSET")] +pub const GucContext_PGC_USERSET: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_DEFAULT")] +pub const GucSource_PGC_S_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucSource::PGC_S_DYNAMIC_DEFAULT" +)] +pub const GucSource_PGC_S_DYNAMIC_DEFAULT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_ENV_VAR")] +pub const GucSource_PGC_S_ENV_VAR: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_FILE")] +pub const GucSource_PGC_S_FILE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_ARGV")] +pub const GucSource_PGC_S_ARGV: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_GLOBAL")] +pub const GucSource_PGC_S_GLOBAL: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_DATABASE")] +pub const GucSource_PGC_S_DATABASE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_USER")] +pub const GucSource_PGC_S_USER: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucSource::PGC_S_DATABASE_USER" +)] +pub const GucSource_PGC_S_DATABASE_USER: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_CLIENT")] +pub const GucSource_PGC_S_CLIENT: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_OVERRIDE")] +pub const GucSource_PGC_S_OVERRIDE: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::GucSource::PGC_S_INTERACTIVE" +)] +pub const GucSource_PGC_S_INTERACTIVE: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_TEST")] +pub const GucSource_PGC_S_TEST: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::GucSource::PGC_S_SESSION")] +pub const GucSource_PGC_S_SESSION: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::HASHACTION::HASH_FIND")] +pub const HASHACTION_HASH_FIND: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::HASHACTION::HASH_ENTER")] +pub const HASHACTION_HASH_ENTER: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::HASHACTION::HASH_REMOVE")] +pub const HASHACTION_HASH_REMOVE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HASHACTION::HASH_ENTER_NULL" +)] +pub const HASHACTION_HASH_ENTER_NULL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_DEAD" +)] +pub const HTSV_Result_HEAPTUPLE_DEAD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_LIVE" +)] +pub const HTSV_Result_HEAPTUPLE_LIVE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_RECENTLY_DEAD" +)] +pub const HTSV_Result_HEAPTUPLE_RECENTLY_DEAD: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_INSERT_IN_PROGRESS" +)] +pub const HTSV_Result_HEAPTUPLE_INSERT_IN_PROGRESS: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HTSV_Result::HEAPTUPLE_DELETE_IN_PROGRESS" +)] +pub const HTSV_Result_HEAPTUPLE_DELETE_IN_PROGRESS: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_DISABLED" +)] +pub const HotStandbyState_STANDBY_DISABLED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_INITIALIZED" +)] +pub const HotStandbyState_STANDBY_INITIALIZED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_SNAPSHOT_PENDING" +)] +pub const HotStandbyState_STANDBY_SNAPSHOT_PENDING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::HotStandbyState::STANDBY_SNAPSHOT_READY" +)] +pub const HotStandbyState_STANDBY_SNAPSHOT_READY: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_BULKREAD" +)] +pub const IOContext_IOCONTEXT_BULKREAD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_BULKWRITE" +)] +pub const IOContext_IOCONTEXT_BULKWRITE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_NORMAL" +)] +pub const IOContext_IOCONTEXT_NORMAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOContext::IOCONTEXT_VACUUM" +)] +pub const IOContext_IOCONTEXT_VACUUM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_input" +)] +pub const IOFuncSelector_IOFunc_input: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_output" +)] +pub const IOFuncSelector_IOFunc_output: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_receive" +)] +pub const IOFuncSelector_IOFunc_receive: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOFuncSelector::IOFunc_send" +)] +pub const IOFuncSelector_IOFunc_send: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOObject::IOOBJECT_RELATION" +)] +pub const IOObject_IOOBJECT_RELATION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IOObject::IOOBJECT_TEMP_RELATION" +)] +pub const IOObject_IOOBJECT_TEMP_RELATION: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_EVICT")] +pub const IOOp_IOOP_EVICT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_EXTEND")] +pub const IOOp_IOOP_EXTEND: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_FSYNC")] +pub const IOOp_IOOP_FSYNC: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_HIT")] +pub const IOOp_IOOP_HIT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_READ")] +pub const IOOp_IOOP_READ: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_REUSE")] +pub const IOOp_IOOP_REUSE: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_WRITE")] +pub const IOOp_IOOP_WRITE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::IOOp::IOOP_WRITEBACK")] +pub const IOOp_IOOP_WRITEBACK: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IdentifierLookup::IDENTIFIER_LOOKUP_NORMAL" +)] +pub const IdentifierLookup_IDENTIFIER_LOOKUP_NORMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IdentifierLookup::IDENTIFIER_LOOKUP_DECLARE" +)] +pub const IdentifierLookup_IDENTIFIER_LOOKUP_DECLARE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IdentifierLookup::IDENTIFIER_LOOKUP_EXPR" +)] +pub const IdentifierLookup_IDENTIFIER_LOOKUP_EXPR: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ImportForeignSchemaType::FDW_IMPORT_SCHEMA_ALL" +)] +pub const ImportForeignSchemaType_FDW_IMPORT_SCHEMA_ALL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ImportForeignSchemaType::FDW_IMPORT_SCHEMA_LIMIT_TO" +)] +pub const ImportForeignSchemaType_FDW_IMPORT_SCHEMA_LIMIT_TO: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ImportForeignSchemaType::FDW_IMPORT_SCHEMA_EXCEPT" +)] +pub const ImportForeignSchemaType_FDW_IMPORT_SCHEMA_EXCEPT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_LOADFULLSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_LOADFULLSORT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_LOADPREFIXSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_LOADPREFIXSORT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_READFULLSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_READFULLSORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IncrementalSortExecutionStatus::INCSORT_READPREFIXSORT" +)] +pub const IncrementalSortExecutionStatus_INCSORT_READPREFIXSORT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_UNKNOWN" +)] +pub const IndexAMProperty_AMPROP_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_ASC" +)] +pub const IndexAMProperty_AMPROP_ASC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_DESC" +)] +pub const IndexAMProperty_AMPROP_DESC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_NULLS_FIRST" +)] +pub const IndexAMProperty_AMPROP_NULLS_FIRST: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_NULLS_LAST" +)] +pub const IndexAMProperty_AMPROP_NULLS_LAST: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_ORDERABLE" +)] +pub const IndexAMProperty_AMPROP_ORDERABLE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_DISTANCE_ORDERABLE" +)] +pub const IndexAMProperty_AMPROP_DISTANCE_ORDERABLE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_RETURNABLE" +)] +pub const IndexAMProperty_AMPROP_RETURNABLE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_SEARCH_ARRAY" +)] +pub const IndexAMProperty_AMPROP_SEARCH_ARRAY: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_SEARCH_NULLS" +)] +pub const IndexAMProperty_AMPROP_SEARCH_NULLS: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CLUSTERABLE" +)] +pub const IndexAMProperty_AMPROP_CLUSTERABLE: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_INDEX_SCAN" +)] +pub const IndexAMProperty_AMPROP_INDEX_SCAN: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_BITMAP_SCAN" +)] +pub const IndexAMProperty_AMPROP_BITMAP_SCAN: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_BACKWARD_SCAN" +)] +pub const IndexAMProperty_AMPROP_BACKWARD_SCAN: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_ORDER" +)] +pub const IndexAMProperty_AMPROP_CAN_ORDER: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_UNIQUE" +)] +pub const IndexAMProperty_AMPROP_CAN_UNIQUE: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_MULTI_COL" +)] +pub const IndexAMProperty_AMPROP_CAN_MULTI_COL: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_EXCLUDE" +)] +pub const IndexAMProperty_AMPROP_CAN_EXCLUDE: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAMProperty::AMPROP_CAN_INCLUDE" +)] +pub const IndexAMProperty_AMPROP_CAN_INCLUDE: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_KEY" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_KEY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_PRIMARY_KEY" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_PRIMARY_KEY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_IDENTITY_KEY" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_IDENTITY_KEY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_HOT_BLOCKING" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_HOT_BLOCKING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexAttrBitmapKind::INDEX_ATTR_BITMAP_SUMMARIZED" +)] +pub const IndexAttrBitmapKind_INDEX_ATTR_BITMAP_SUMMARIZED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_CREATE_SET_READY" +)] +pub const IndexStateFlagsAction_INDEX_CREATE_SET_READY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_CREATE_SET_VALID" +)] +pub const IndexStateFlagsAction_INDEX_CREATE_SET_VALID: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_DROP_CLEAR_VALID" +)] +pub const IndexStateFlagsAction_INDEX_DROP_CLEAR_VALID: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexStateFlagsAction::INDEX_DROP_SET_DEAD" +)] +pub const IndexStateFlagsAction_INDEX_DROP_SET_DEAD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_NO" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_NO: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_YES" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_YES: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_PARTIAL" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_PARTIAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::IndexUniqueCheck::UNIQUE_CHECK_EXISTING" +)] +pub const IndexUniqueCheck_UNIQUE_CHECK_EXISTING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_TIMER" +)] +pub const InstrumentOption_INSTRUMENT_TIMER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_BUFFERS" +)] +pub const InstrumentOption_INSTRUMENT_BUFFERS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_ROWS" +)] +pub const InstrumentOption_INSTRUMENT_ROWS: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_WAL" +)] +pub const InstrumentOption_INSTRUMENT_WAL: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::InstrumentOption::INSTRUMENT_ALL" +)] +pub const InstrumentOption_INSTRUMENT_ALL: u32 = 2147483647; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_INNER")] +pub const JoinType_JOIN_INNER: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_LEFT")] +pub const JoinType_JOIN_LEFT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_FULL")] +pub const JoinType_JOIN_FULL: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_RIGHT")] +pub const JoinType_JOIN_RIGHT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_SEMI")] +pub const JoinType_JOIN_SEMI: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_ANTI")] +pub const JoinType_JOIN_ANTI: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JoinType::JOIN_RIGHT_ANTI")] +pub const JoinType_JOIN_RIGHT_ANTI: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JoinType::JOIN_UNIQUE_OUTER" +)] +pub const JoinType_JOIN_UNIQUE_OUTER: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JoinType::JOIN_UNIQUE_INNER" +)] +pub const JoinType_JOIN_UNIQUE_INNER: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_NULL" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_NULL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_ERROR" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_ERROR: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_EMPTY" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_EMPTY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_TRUE" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_TRUE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_FALSE" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_FALSE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_UNKNOWN" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_UNKNOWN: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_EMPTY_ARRAY" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_EMPTY_ARRAY: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_EMPTY_OBJECT" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_EMPTY_OBJECT: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonBehaviorType::JSON_BEHAVIOR_DEFAULT" +)] +pub const JsonBehaviorType_JSON_BEHAVIOR_DEFAULT: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_OBJECT" +)] +pub const JsonConstructorType_JSCTOR_JSON_OBJECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_ARRAY" +)] +pub const JsonConstructorType_JSCTOR_JSON_ARRAY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_OBJECTAGG" +)] +pub const JsonConstructorType_JSCTOR_JSON_OBJECTAGG: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_ARRAYAGG" +)] +pub const JsonConstructorType_JSCTOR_JSON_ARRAYAGG: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_PARSE" +)] +pub const JsonConstructorType_JSCTOR_JSON_PARSE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_SCALAR" +)] +pub const JsonConstructorType_JSCTOR_JSON_SCALAR: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonConstructorType::JSCTOR_JSON_SERIALIZE" +)] +pub const JsonConstructorType_JSCTOR_JSON_SERIALIZE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonEncoding::JS_ENC_DEFAULT" +)] +pub const JsonEncoding_JS_ENC_DEFAULT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonEncoding::JS_ENC_UTF8")] +pub const JsonEncoding_JS_ENC_UTF8: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonEncoding::JS_ENC_UTF16")] +pub const JsonEncoding_JS_ENC_UTF16: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonEncoding::JS_ENC_UTF32")] +pub const JsonEncoding_JS_ENC_UTF32: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_EXISTS_OP")] +pub const JsonExprOp_JSON_EXISTS_OP: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_QUERY_OP")] +pub const JsonExprOp_JSON_QUERY_OP: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_VALUE_OP")] +pub const JsonExprOp_JSON_VALUE_OP: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonExprOp::JSON_TABLE_OP")] +pub const JsonExprOp_JSON_TABLE_OP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonFormatType::JS_FORMAT_DEFAULT" +)] +pub const JsonFormatType_JS_FORMAT_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonFormatType::JS_FORMAT_JSON" +)] +pub const JsonFormatType_JS_FORMAT_JSON: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonFormatType::JS_FORMAT_JSONB" +)] +pub const JsonFormatType_JS_FORMAT_JSONB: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonQuotes::JS_QUOTES_UNSPEC" +)] +pub const JsonQuotes_JS_QUOTES_UNSPEC: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonQuotes::JS_QUOTES_KEEP")] +pub const JsonQuotes_JS_QUOTES_KEEP: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonQuotes::JS_QUOTES_OMIT")] +pub const JsonQuotes_JS_QUOTES_OMIT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_FOR_ORDINALITY" +)] +pub const JsonTableColumnType_JTC_FOR_ORDINALITY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_REGULAR" +)] +pub const JsonTableColumnType_JTC_REGULAR: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_EXISTS" +)] +pub const JsonTableColumnType_JTC_EXISTS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_FORMATTED" +)] +pub const JsonTableColumnType_JTC_FORMATTED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonTableColumnType::JTC_NESTED" +)] +pub const JsonTableColumnType_JTC_NESTED: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonValueType::JS_TYPE_ANY")] +pub const JsonValueType_JS_TYPE_ANY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonValueType::JS_TYPE_OBJECT" +)] +pub const JsonValueType_JS_TYPE_OBJECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonValueType::JS_TYPE_ARRAY" +)] +pub const JsonValueType_JS_TYPE_ARRAY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonValueType::JS_TYPE_SCALAR" +)] +pub const JsonValueType_JS_TYPE_SCALAR: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonWrapper::JSW_UNSPEC")] +pub const JsonWrapper_JSW_UNSPEC: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::JsonWrapper::JSW_NONE")] +pub const JsonWrapper_JSW_NONE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonWrapper::JSW_CONDITIONAL" +)] +pub const JsonWrapper_JSW_CONDITIONAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonWrapper::JSW_UNCONDITIONAL" +)] +pub const JsonWrapper_JSW_UNCONDITIONAL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_ARRAY_START" +)] +pub const JsonbIterState_JBI_ARRAY_START: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_ARRAY_ELEM" +)] +pub const JsonbIterState_JBI_ARRAY_ELEM: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_OBJECT_START" +)] +pub const JsonbIterState_JBI_OBJECT_START: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_OBJECT_KEY" +)] +pub const JsonbIterState_JBI_OBJECT_KEY: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIterState::JBI_OBJECT_VALUE" +)] +pub const JsonbIterState_JBI_OBJECT_VALUE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_DONE" +)] +pub const JsonbIteratorToken_WJB_DONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_KEY" +)] +pub const JsonbIteratorToken_WJB_KEY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_VALUE" +)] +pub const JsonbIteratorToken_WJB_VALUE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_ELEM" +)] +pub const JsonbIteratorToken_WJB_ELEM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_BEGIN_ARRAY" +)] +pub const JsonbIteratorToken_WJB_BEGIN_ARRAY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_END_ARRAY" +)] +pub const JsonbIteratorToken_WJB_END_ARRAY: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_BEGIN_OBJECT" +)] +pub const JsonbIteratorToken_WJB_BEGIN_OBJECT: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::JsonbIteratorToken::WJB_END_OBJECT" +)] +pub const JsonbIteratorToken_WJB_END_OBJECT: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LWLockMode::LW_EXCLUSIVE")] +pub const LWLockMode_LW_EXCLUSIVE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LWLockMode::LW_SHARED")] +pub const LWLockMode_LW_SHARED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockMode::LW_WAIT_UNTIL_FREE" +)] +pub const LWLockMode_LW_WAIT_UNTIL_FREE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockWaitState::LW_WS_NOT_WAITING" +)] +pub const LWLockWaitState_LW_WS_NOT_WAITING: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockWaitState::LW_WS_WAITING" +)] +pub const LWLockWaitState_LW_WS_WAITING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LWLockWaitState::LW_WS_PENDING_WAKEUP" +)] +pub const LWLockWaitState_LW_WS_PENDING_WAKEUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitOption::LIMIT_OPTION_COUNT" +)] +pub const LimitOption_LIMIT_OPTION_COUNT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitOption::LIMIT_OPTION_WITH_TIES" +)] +pub const LimitOption_LIMIT_OPTION_WITH_TIES: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_INITIAL" +)] +pub const LimitStateCond_LIMIT_INITIAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_RESCAN" +)] +pub const LimitStateCond_LIMIT_RESCAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_EMPTY" +)] +pub const LimitStateCond_LIMIT_EMPTY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_INWINDOW" +)] +pub const LimitStateCond_LIMIT_INWINDOW: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_WINDOWEND_TIES" +)] +pub const LimitStateCond_LIMIT_WINDOWEND_TIES: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_SUBPLANEOF" +)] +pub const LimitStateCond_LIMIT_SUBPLANEOF: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_WINDOWEND" +)] +pub const LimitStateCond_LIMIT_WINDOWEND: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LimitStateCond::LIMIT_WINDOWSTART" +)] +pub const LimitStateCond_LIMIT_WINDOWSTART: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_NOT_AVAIL" +)] +pub const LockAcquireResult_LOCKACQUIRE_NOT_AVAIL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_OK" +)] +pub const LockAcquireResult_LOCKACQUIRE_OK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_ALREADY_HELD" +)] +pub const LockAcquireResult_LOCKACQUIRE_ALREADY_HELD: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockAcquireResult::LOCKACQUIRE_ALREADY_CLEAR" +)] +pub const LockAcquireResult_LOCKACQUIRE_ALREADY_CLEAR: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_NONE" +)] +pub const LockClauseStrength_LCS_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORKEYSHARE" +)] +pub const LockClauseStrength_LCS_FORKEYSHARE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORSHARE" +)] +pub const LockClauseStrength_LCS_FORSHARE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORNOKEYUPDATE" +)] +pub const LockClauseStrength_LCS_FORNOKEYUPDATE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockClauseStrength::LCS_FORUPDATE" +)] +pub const LockClauseStrength_LCS_FORUPDATE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_RELATION" +)] +pub const LockTagType_LOCKTAG_RELATION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_RELATION_EXTEND" +)] +pub const LockTagType_LOCKTAG_RELATION_EXTEND: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_DATABASE_FROZEN_IDS" +)] +pub const LockTagType_LOCKTAG_DATABASE_FROZEN_IDS: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LockTagType::LOCKTAG_PAGE")] +pub const LockTagType_LOCKTAG_PAGE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LockTagType::LOCKTAG_TUPLE")] +pub const LockTagType_LOCKTAG_TUPLE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_TRANSACTION" +)] +pub const LockTagType_LOCKTAG_TRANSACTION: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_VIRTUALTRANSACTION" +)] +pub const LockTagType_LOCKTAG_VIRTUALTRANSACTION: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_SPECULATIVE_TOKEN" +)] +pub const LockTagType_LOCKTAG_SPECULATIVE_TOKEN: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_OBJECT" +)] +pub const LockTagType_LOCKTAG_OBJECT: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_USERLOCK" +)] +pub const LockTagType_LOCKTAG_USERLOCK: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_ADVISORY" +)] +pub const LockTagType_LOCKTAG_ADVISORY: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTagType::LOCKTAG_APPLY_TRANSACTION" +)] +pub const LockTagType_LOCKTAG_APPLY_TRANSACTION: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleKeyShare" +)] +pub const LockTupleMode_LockTupleKeyShare: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleShare" +)] +pub const LockTupleMode_LockTupleShare: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleNoKeyExclusive" +)] +pub const LockTupleMode_LockTupleNoKeyExclusive: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockTupleMode::LockTupleExclusive" +)] +pub const LockTupleMode_LockTupleExclusive: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockWaitPolicy::LockWaitBlock" +)] +pub const LockWaitPolicy_LockWaitBlock: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockWaitPolicy::LockWaitSkip" +)] +pub const LockWaitPolicy_LockWaitSkip: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LockWaitPolicy::LockWaitError" +)] +pub const LockWaitPolicy_LockWaitError: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_NONE")] +pub const LogStmtLevel_LOGSTMT_NONE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_DDL")] +pub const LogStmtLevel_LOGSTMT_DDL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_MOD")] +pub const LogStmtLevel_LOGSTMT_MOD: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::LogStmtLevel::LOGSTMT_ALL")] +pub const LogStmtLevel_LOGSTMT_ALL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_BEGIN" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_BEGIN: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_COMMIT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_COMMIT: u32 = 67; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_ORIGIN" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_ORIGIN: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_INSERT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_INSERT: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_UPDATE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_UPDATE: u32 = 85; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_DELETE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_DELETE: u32 = 68; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_TRUNCATE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_TRUNCATE: u32 = 84; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_RELATION" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_RELATION: u32 = 82; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_TYPE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_TYPE: u32 = 89; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_MESSAGE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_MESSAGE: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_BEGIN_PREPARE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_BEGIN_PREPARE: u32 = 98; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_PREPARE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_PREPARE: u32 = 80; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_COMMIT_PREPARED" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_COMMIT_PREPARED: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_ROLLBACK_PREPARED" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_ROLLBACK_PREPARED: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_START" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_START: u32 = 83; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_STOP" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_STOP: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_COMMIT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_COMMIT: u32 = 99; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_ABORT" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_ABORT: u32 = 65; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::LogicalRepMsgType::LOGICAL_REP_MSG_STREAM_PREPARE" +)] +pub const LogicalRepMsgType_LOGICAL_REP_MSG_STREAM_PREPARE: u32 = 112; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MergeMatchKind::MERGE_WHEN_MATCHED" +)] +pub const MergeMatchKind_MERGE_WHEN_MATCHED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MergeMatchKind::MERGE_WHEN_NOT_MATCHED_BY_SOURCE" +)] +pub const MergeMatchKind_MERGE_WHEN_NOT_MATCHED_BY_SOURCE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MergeMatchKind::MERGE_WHEN_NOT_MATCHED_BY_TARGET" +)] +pub const MergeMatchKind_MERGE_WHEN_NOT_MATCHED_BY_TARGET: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::MinMaxOp::IS_GREATEST")] +pub const MinMaxOp_IS_GREATEST: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::MinMaxOp::IS_LEAST")] +pub const MinMaxOp_IS_LEAST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_NONE" +)] +pub const MonotonicFunction_MONOTONICFUNC_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_INCREASING" +)] +pub const MonotonicFunction_MONOTONICFUNC_INCREASING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_DECREASING" +)] +pub const MonotonicFunction_MONOTONICFUNC_DECREASING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MonotonicFunction::MONOTONICFUNC_BOTH" +)] +pub const MonotonicFunction_MONOTONICFUNC_BOTH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForKeyShare" +)] +pub const MultiXactStatus_MultiXactStatusForKeyShare: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForShare" +)] +pub const MultiXactStatus_MultiXactStatusForShare: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForNoKeyUpdate" +)] +pub const MultiXactStatus_MultiXactStatusForNoKeyUpdate: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusForUpdate" +)] +pub const MultiXactStatus_MultiXactStatusForUpdate: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusNoKeyUpdate" +)] +pub const MultiXactStatus_MultiXactStatusNoKeyUpdate: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::MultiXactStatus::MultiXactStatusUpdate" +)] +pub const MultiXactStatus_MultiXactStatusUpdate: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::NullTestType::IS_NULL")] +pub const NullTestType_IS_NULL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::NullTestType::IS_NOT_NULL")] +pub const NullTestType_IS_NOT_NULL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_POST_CREATE" +)] +pub const ObjectAccessType_OAT_POST_CREATE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectAccessType::OAT_DROP")] +pub const ObjectAccessType_OAT_DROP: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_POST_ALTER" +)] +pub const ObjectAccessType_OAT_POST_ALTER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_NAMESPACE_SEARCH" +)] +pub const ObjectAccessType_OAT_NAMESPACE_SEARCH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_FUNCTION_EXECUTE" +)] +pub const ObjectAccessType_OAT_FUNCTION_EXECUTE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectAccessType::OAT_TRUNCATE" +)] +pub const ObjectAccessType_OAT_TRUNCATE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_ACCESS_METHOD" +)] +pub const ObjectType_OBJECT_ACCESS_METHOD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_AGGREGATE" +)] +pub const ObjectType_OBJECT_AGGREGATE: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_AMOP")] +pub const ObjectType_OBJECT_AMOP: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_AMPROC")] +pub const ObjectType_OBJECT_AMPROC: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_ATTRIBUTE" +)] +pub const ObjectType_OBJECT_ATTRIBUTE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_CAST")] +pub const ObjectType_OBJECT_CAST: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_COLUMN")] +pub const ObjectType_OBJECT_COLUMN: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_COLLATION" +)] +pub const ObjectType_OBJECT_COLLATION: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_CONVERSION" +)] +pub const ObjectType_OBJECT_CONVERSION: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_DATABASE" +)] +pub const ObjectType_OBJECT_DATABASE: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_DEFAULT")] +pub const ObjectType_OBJECT_DEFAULT: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_DEFACL")] +pub const ObjectType_OBJECT_DEFACL: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_DOMAIN")] +pub const ObjectType_OBJECT_DOMAIN: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_DOMCONSTRAINT" +)] +pub const ObjectType_OBJECT_DOMCONSTRAINT: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_EVENT_TRIGGER" +)] +pub const ObjectType_OBJECT_EVENT_TRIGGER: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_EXTENSION" +)] +pub const ObjectType_OBJECT_EXTENSION: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_FDW")] +pub const ObjectType_OBJECT_FDW: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_FOREIGN_SERVER" +)] +pub const ObjectType_OBJECT_FOREIGN_SERVER: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_FOREIGN_TABLE" +)] +pub const ObjectType_OBJECT_FOREIGN_TABLE: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_FUNCTION" +)] +pub const ObjectType_OBJECT_FUNCTION: u32 = 19; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_INDEX")] +pub const ObjectType_OBJECT_INDEX: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_LANGUAGE" +)] +pub const ObjectType_OBJECT_LANGUAGE: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_LARGEOBJECT" +)] +pub const ObjectType_OBJECT_LARGEOBJECT: u32 = 22; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_MATVIEW")] +pub const ObjectType_OBJECT_MATVIEW: u32 = 23; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_OPCLASS")] +pub const ObjectType_OBJECT_OPCLASS: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_OPERATOR" +)] +pub const ObjectType_OBJECT_OPERATOR: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_OPFAMILY" +)] +pub const ObjectType_OBJECT_OPFAMILY: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PARAMETER_ACL" +)] +pub const ObjectType_OBJECT_PARAMETER_ACL: u32 = 27; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_POLICY")] +pub const ObjectType_OBJECT_POLICY: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PROCEDURE" +)] +pub const ObjectType_OBJECT_PROCEDURE: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PUBLICATION" +)] +pub const ObjectType_OBJECT_PUBLICATION: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PUBLICATION_NAMESPACE" +)] +pub const ObjectType_OBJECT_PUBLICATION_NAMESPACE: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_PUBLICATION_REL" +)] +pub const ObjectType_OBJECT_PUBLICATION_REL: u32 = 32; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_ROLE")] +pub const ObjectType_OBJECT_ROLE: u32 = 33; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_ROUTINE")] +pub const ObjectType_OBJECT_ROUTINE: u32 = 34; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_RULE")] +pub const ObjectType_OBJECT_RULE: u32 = 35; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_SCHEMA")] +pub const ObjectType_OBJECT_SCHEMA: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_SEQUENCE" +)] +pub const ObjectType_OBJECT_SEQUENCE: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_SUBSCRIPTION" +)] +pub const ObjectType_OBJECT_SUBSCRIPTION: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_STATISTIC_EXT" +)] +pub const ObjectType_OBJECT_STATISTIC_EXT: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TABCONSTRAINT" +)] +pub const ObjectType_OBJECT_TABCONSTRAINT: u32 = 40; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_TABLE")] +pub const ObjectType_OBJECT_TABLE: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TABLESPACE" +)] +pub const ObjectType_OBJECT_TABLESPACE: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TRANSFORM" +)] +pub const ObjectType_OBJECT_TRANSFORM: u32 = 43; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_TRIGGER")] +pub const ObjectType_OBJECT_TRIGGER: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSCONFIGURATION" +)] +pub const ObjectType_OBJECT_TSCONFIGURATION: u32 = 45; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSDICTIONARY" +)] +pub const ObjectType_OBJECT_TSDICTIONARY: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSPARSER" +)] +pub const ObjectType_OBJECT_TSPARSER: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_TSTEMPLATE" +)] +pub const ObjectType_OBJECT_TSTEMPLATE: u32 = 48; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_TYPE")] +pub const ObjectType_OBJECT_TYPE: u32 = 49; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ObjectType::OBJECT_USER_MAPPING" +)] +pub const ObjectType_OBJECT_USER_MAPPING: u32 = 50; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ObjectType::OBJECT_VIEW")] +pub const ObjectType_OBJECT_VIEW: u32 = 51; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_NOOP" +)] +pub const OnCommitAction_ONCOMMIT_NOOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_PRESERVE_ROWS" +)] +pub const OnCommitAction_ONCOMMIT_PRESERVE_ROWS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_DELETE_ROWS" +)] +pub const OnCommitAction_ONCOMMIT_DELETE_ROWS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnCommitAction::ONCOMMIT_DROP" +)] +pub const OnCommitAction_ONCOMMIT_DROP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnConflictAction::ONCONFLICT_NONE" +)] +pub const OnConflictAction_ONCONFLICT_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnConflictAction::ONCONFLICT_NOTHING" +)] +pub const OnConflictAction_ONCONFLICT_NOTHING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OnConflictAction::ONCONFLICT_UPDATE" +)] +pub const OnConflictAction_ONCONFLICT_UPDATE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OutputPluginOutputType::OUTPUT_PLUGIN_BINARY_OUTPUT" +)] +pub const OutputPluginOutputType_OUTPUT_PLUGIN_BINARY_OUTPUT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OutputPluginOutputType::OUTPUT_PLUGIN_TEXTUAL_OUTPUT" +)] +pub const OutputPluginOutputType_OUTPUT_PLUGIN_TEXTUAL_OUTPUT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OverridingKind::OVERRIDING_NOT_SET" +)] +pub const OverridingKind_OVERRIDING_NOT_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OverridingKind::OVERRIDING_USER_VALUE" +)] +pub const OverridingKind_OVERRIDING_USER_VALUE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::OverridingKind::OVERRIDING_SYSTEM_VALUE" +)] +pub const OverridingKind_OVERRIDING_SYSTEM_VALUE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PGErrorVerbosity::PGERROR_TERSE" +)] +pub const PGErrorVerbosity_PGERROR_TERSE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PGErrorVerbosity::PGERROR_DEFAULT" +)] +pub const PGErrorVerbosity_PGERROR_DEFAULT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PGErrorVerbosity::PGERROR_VERBOSE" +)] +pub const PGErrorVerbosity_PGERROR_VERBOSE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_VAR" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_VAR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_ROW" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_ROW: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_REC" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_REC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_RECFIELD" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_RECFIELD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_datum_type::PLPGSQL_DTYPE_PROMISE" +)] +pub const PLpgSQL_datum_type_PLPGSQL_DTYPE_PROMISE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ROW_COUNT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ROW_COUNT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_CONTEXT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_CONTEXT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ERROR_CONTEXT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ERROR_CONTEXT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ERROR_DETAIL" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ERROR_DETAIL: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_ERROR_HINT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_ERROR_HINT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_RETURNED_SQLSTATE" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_RETURNED_SQLSTATE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_COLUMN_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_COLUMN_NAME: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_CONSTRAINT_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_CONSTRAINT_NAME: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_DATATYPE_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_DATATYPE_NAME: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_MESSAGE_TEXT" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_MESSAGE_TEXT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_TABLE_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_TABLE_NAME: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_getdiag_kind::PLPGSQL_GETDIAG_SCHEMA_NAME" +)] +pub const PLpgSQL_getdiag_kind_PLPGSQL_GETDIAG_SCHEMA_NAME: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_label_type::PLPGSQL_LABEL_BLOCK" +)] +pub const PLpgSQL_label_type_PLPGSQL_LABEL_BLOCK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_label_type::PLPGSQL_LABEL_LOOP" +)] +pub const PLpgSQL_label_type_PLPGSQL_LABEL_LOOP: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_label_type::PLPGSQL_LABEL_OTHER" +)] +pub const PLpgSQL_label_type_PLPGSQL_LABEL_OTHER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_nsitem_type::PLPGSQL_NSTYPE_LABEL" +)] +pub const PLpgSQL_nsitem_type_PLPGSQL_NSTYPE_LABEL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_nsitem_type::PLPGSQL_NSTYPE_VAR" +)] +pub const PLpgSQL_nsitem_type_PLPGSQL_NSTYPE_VAR: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_nsitem_type::PLPGSQL_NSTYPE_REC" +)] +pub const PLpgSQL_nsitem_type_PLPGSQL_NSTYPE_REC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_NONE" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_NAME" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_NAME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_WHEN" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_WHEN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_LEVEL" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_LEVEL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_OP" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_OP: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_RELID" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_RELID: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_TABLE_NAME" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_TABLE_NAME: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_TABLE_SCHEMA" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_TABLE_SCHEMA: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_NARGS" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_NARGS: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_ARGV" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_ARGV: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_EVENT" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_EVENT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_promise_type::PLPGSQL_PROMISE_TG_TAG" +)] +pub const PLpgSQL_promise_type_PLPGSQL_PROMISE_TG_TAG: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_ERRCODE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_ERRCODE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_MESSAGE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_MESSAGE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_DETAIL" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_DETAIL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_HINT" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_HINT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_COLUMN" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_COLUMN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_CONSTRAINT" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_CONSTRAINT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_DATATYPE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_DATATYPE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_TABLE" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_TABLE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_raise_option_type::PLPGSQL_RAISEOPTION_SCHEMA" +)] +pub const PLpgSQL_raise_option_type_PLPGSQL_RAISEOPTION_SCHEMA: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_resolve_option::PLPGSQL_RESOLVE_ERROR" +)] +pub const PLpgSQL_resolve_option_PLPGSQL_RESOLVE_ERROR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_resolve_option::PLPGSQL_RESOLVE_VARIABLE" +)] +pub const PLpgSQL_resolve_option_PLPGSQL_RESOLVE_VARIABLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_resolve_option::PLPGSQL_RESOLVE_COLUMN" +)] +pub const PLpgSQL_resolve_option_PLPGSQL_RESOLVE_COLUMN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_BLOCK" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_BLOCK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_ASSIGN" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_ASSIGN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_IF" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_IF: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_CASE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_CASE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_LOOP" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_LOOP: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_WHILE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_WHILE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FORI" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FORI: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FORS" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FORS: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FORC" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FORC: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FOREACH_A" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FOREACH_A: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_EXIT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_EXIT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RETURN" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RETURN: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RETURN_NEXT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RETURN_NEXT: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RETURN_QUERY" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RETURN_QUERY: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_RAISE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_RAISE: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_ASSERT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_ASSERT: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_EXECSQL" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_EXECSQL: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_DYNEXECUTE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_DYNEXECUTE: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_DYNFORS" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_DYNFORS: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_GETDIAG" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_GETDIAG: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_OPEN" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_OPEN: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_FETCH" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_FETCH: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_CLOSE" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_CLOSE: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_PERFORM" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_PERFORM: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_CALL" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_CALL: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_COMMIT" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_COMMIT: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_stmt_type::PLPGSQL_STMT_ROLLBACK" +)] +pub const PLpgSQL_stmt_type_PLPGSQL_STMT_ROLLBACK: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_trigtype::PLPGSQL_DML_TRIGGER" +)] +pub const PLpgSQL_trigtype_PLPGSQL_DML_TRIGGER: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_trigtype::PLPGSQL_EVENT_TRIGGER" +)] +pub const PLpgSQL_trigtype_PLPGSQL_EVENT_TRIGGER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_trigtype::PLPGSQL_NOT_TRIGGER" +)] +pub const PLpgSQL_trigtype_PLPGSQL_NOT_TRIGGER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_type_type::PLPGSQL_TTYPE_SCALAR" +)] +pub const PLpgSQL_type_type_PLPGSQL_TTYPE_SCALAR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_type_type::PLPGSQL_TTYPE_REC" +)] +pub const PLpgSQL_type_type_PLPGSQL_TTYPE_REC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PLpgSQL_type_type::PLPGSQL_TTYPE_PSEUDO" +)] +pub const PLpgSQL_type_type_PLPGSQL_TTYPE_PSEUDO: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_EXTERN")] +pub const ParamKind_PARAM_EXTERN: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_EXEC")] +pub const ParamKind_PARAM_EXEC: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_SUBLINK")] +pub const ParamKind_PARAM_SUBLINK: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ParamKind::PARAM_MULTIEXPR")] +pub const ParamKind_PARAM_MULTIEXPR: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_NONE" +)] +pub const ParseExprKind_EXPR_KIND_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_OTHER" +)] +pub const ParseExprKind_EXPR_KIND_OTHER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_JOIN_ON" +)] +pub const ParseExprKind_EXPR_KIND_JOIN_ON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_JOIN_USING" +)] +pub const ParseExprKind_EXPR_KIND_JOIN_USING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FROM_SUBSELECT" +)] +pub const ParseExprKind_EXPR_KIND_FROM_SUBSELECT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FROM_FUNCTION" +)] +pub const ParseExprKind_EXPR_KIND_FROM_FUNCTION: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WHERE" +)] +pub const ParseExprKind_EXPR_KIND_WHERE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_HAVING" +)] +pub const ParseExprKind_EXPR_KIND_HAVING: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FILTER" +)] +pub const ParseExprKind_EXPR_KIND_FILTER: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_PARTITION" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_PARTITION: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_ORDER" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_ORDER: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_FRAME_RANGE" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_FRAME_RANGE: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_FRAME_ROWS" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_FRAME_ROWS: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_WINDOW_FRAME_GROUPS" +)] +pub const ParseExprKind_EXPR_KIND_WINDOW_FRAME_GROUPS: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_SELECT_TARGET" +)] +pub const ParseExprKind_EXPR_KIND_SELECT_TARGET: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_INSERT_TARGET" +)] +pub const ParseExprKind_EXPR_KIND_INSERT_TARGET: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_UPDATE_SOURCE" +)] +pub const ParseExprKind_EXPR_KIND_UPDATE_SOURCE: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_UPDATE_TARGET" +)] +pub const ParseExprKind_EXPR_KIND_UPDATE_TARGET: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_MERGE_WHEN" +)] +pub const ParseExprKind_EXPR_KIND_MERGE_WHEN: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_GROUP_BY" +)] +pub const ParseExprKind_EXPR_KIND_GROUP_BY: u32 = 19; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_ORDER_BY" +)] +pub const ParseExprKind_EXPR_KIND_ORDER_BY: u32 = 20; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_DISTINCT_ON" +)] +pub const ParseExprKind_EXPR_KIND_DISTINCT_ON: u32 = 21; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_LIMIT" +)] +pub const ParseExprKind_EXPR_KIND_LIMIT: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_OFFSET" +)] +pub const ParseExprKind_EXPR_KIND_OFFSET: u32 = 23; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_RETURNING" +)] +pub const ParseExprKind_EXPR_KIND_RETURNING: u32 = 24; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_MERGE_RETURNING" +)] +pub const ParseExprKind_EXPR_KIND_MERGE_RETURNING: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_VALUES" +)] +pub const ParseExprKind_EXPR_KIND_VALUES: u32 = 26; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_VALUES_SINGLE" +)] +pub const ParseExprKind_EXPR_KIND_VALUES_SINGLE: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_CHECK_CONSTRAINT" +)] +pub const ParseExprKind_EXPR_KIND_CHECK_CONSTRAINT: u32 = 28; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_DOMAIN_CHECK" +)] +pub const ParseExprKind_EXPR_KIND_DOMAIN_CHECK: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_COLUMN_DEFAULT" +)] +pub const ParseExprKind_EXPR_KIND_COLUMN_DEFAULT: u32 = 30; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_FUNCTION_DEFAULT" +)] +pub const ParseExprKind_EXPR_KIND_FUNCTION_DEFAULT: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_INDEX_EXPRESSION" +)] +pub const ParseExprKind_EXPR_KIND_INDEX_EXPRESSION: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_INDEX_PREDICATE" +)] +pub const ParseExprKind_EXPR_KIND_INDEX_PREDICATE: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_STATS_EXPRESSION" +)] +pub const ParseExprKind_EXPR_KIND_STATS_EXPRESSION: u32 = 34; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_ALTER_COL_TRANSFORM" +)] +pub const ParseExprKind_EXPR_KIND_ALTER_COL_TRANSFORM: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_EXECUTE_PARAMETER" +)] +pub const ParseExprKind_EXPR_KIND_EXECUTE_PARAMETER: u32 = 36; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_TRIGGER_WHEN" +)] +pub const ParseExprKind_EXPR_KIND_TRIGGER_WHEN: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_POLICY" +)] +pub const ParseExprKind_EXPR_KIND_POLICY: u32 = 38; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_PARTITION_BOUND" +)] +pub const ParseExprKind_EXPR_KIND_PARTITION_BOUND: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_PARTITION_EXPRESSION" +)] +pub const ParseExprKind_EXPR_KIND_PARTITION_EXPRESSION: u32 = 40; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_CALL_ARGUMENT" +)] +pub const ParseExprKind_EXPR_KIND_CALL_ARGUMENT: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_COPY_WHERE" +)] +pub const ParseExprKind_EXPR_KIND_COPY_WHERE: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_GENERATED_COLUMN" +)] +pub const ParseExprKind_EXPR_KIND_GENERATED_COLUMN: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ParseExprKind::EXPR_KIND_CYCLE_MARK" +)] +pub const ParseExprKind_EXPR_KIND_CYCLE_MARK: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionPruneCombineOp::PARTPRUNE_COMBINE_UNION" +)] +pub const PartitionPruneCombineOp_PARTPRUNE_COMBINE_UNION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionPruneCombineOp::PARTPRUNE_COMBINE_INTERSECT" +)] +pub const PartitionPruneCombineOp_PARTPRUNE_COMBINE_INTERSECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionRangeDatumKind::PARTITION_RANGE_DATUM_MINVALUE" +)] +pub const PartitionRangeDatumKind_PARTITION_RANGE_DATUM_MINVALUE: i32 = -1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionRangeDatumKind::PARTITION_RANGE_DATUM_VALUE" +)] +pub const PartitionRangeDatumKind_PARTITION_RANGE_DATUM_VALUE: i32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionRangeDatumKind::PARTITION_RANGE_DATUM_MAXVALUE" +)] +pub const PartitionRangeDatumKind_PARTITION_RANGE_DATUM_MAXVALUE: i32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionStrategy::PARTITION_STRATEGY_LIST" +)] +pub const PartitionStrategy_PARTITION_STRATEGY_LIST: u32 = 108; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionStrategy::PARTITION_STRATEGY_RANGE" +)] +pub const PartitionStrategy_PARTITION_STRATEGY_RANGE: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionStrategy::PARTITION_STRATEGY_HASH" +)] +pub const PartitionStrategy_PARTITION_STRATEGY_HASH: u32 = 104; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionwiseAggregateType::PARTITIONWISE_AGGREGATE_NONE" +)] +pub const PartitionwiseAggregateType_PARTITIONWISE_AGGREGATE_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionwiseAggregateType::PARTITIONWISE_AGGREGATE_FULL" +)] +pub const PartitionwiseAggregateType_PARTITIONWISE_AGGREGATE_FULL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PartitionwiseAggregateType::PARTITIONWISE_AGGREGATE_PARTIAL" +)] +pub const PartitionwiseAggregateType_PARTITIONWISE_AGGREGATE_PARTIAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PasswordType::PASSWORD_TYPE_PLAINTEXT" +)] +pub const PasswordType_PASSWORD_TYPE_PLAINTEXT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PasswordType::PASSWORD_TYPE_MD5" +)] +pub const PasswordType_PASSWORD_TYPE_MD5: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PasswordType::PASSWORD_TYPE_SCRAM_SHA_256" +)] +pub const PasswordType_PASSWORD_TYPE_SCRAM_SHA_256: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_EQUAL" +)] +pub const PathKeysComparison_PATHKEYS_EQUAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_BETTER1" +)] +pub const PathKeysComparison_PATHKEYS_BETTER1: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_BETTER2" +)] +pub const PathKeysComparison_PATHKEYS_BETTER2: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PathKeysComparison::PATHKEYS_DIFFERENT" +)] +pub const PathKeysComparison_PATHKEYS_DIFFERENT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_FetchConsistency::PGSTAT_FETCH_CONSISTENCY_NONE" +)] +pub const PgStat_FetchConsistency_PGSTAT_FETCH_CONSISTENCY_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_FetchConsistency::PGSTAT_FETCH_CONSISTENCY_CACHE" +)] +pub const PgStat_FetchConsistency_PGSTAT_FETCH_CONSISTENCY_CACHE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_FetchConsistency::PGSTAT_FETCH_CONSISTENCY_SNAPSHOT" +)] +pub const PgStat_FetchConsistency_PGSTAT_FETCH_CONSISTENCY_SNAPSHOT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_INVALID" +)] +pub const PgStat_Kind_PGSTAT_KIND_INVALID: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_DATABASE" +)] +pub const PgStat_Kind_PGSTAT_KIND_DATABASE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_RELATION" +)] +pub const PgStat_Kind_PGSTAT_KIND_RELATION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_FUNCTION" +)] +pub const PgStat_Kind_PGSTAT_KIND_FUNCTION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_REPLSLOT" +)] +pub const PgStat_Kind_PGSTAT_KIND_REPLSLOT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_SUBSCRIPTION" +)] +pub const PgStat_Kind_PGSTAT_KIND_SUBSCRIPTION: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_ARCHIVER" +)] +pub const PgStat_Kind_PGSTAT_KIND_ARCHIVER: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_BGWRITER" +)] +pub const PgStat_Kind_PGSTAT_KIND_BGWRITER: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_CHECKPOINTER" +)] +pub const PgStat_Kind_PGSTAT_KIND_CHECKPOINTER: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_IO" +)] +pub const PgStat_Kind_PGSTAT_KIND_IO: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_SLRU" +)] +pub const PgStat_Kind_PGSTAT_KIND_SLRU: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PgStat_Kind::PGSTAT_KIND_WAL" +)] +pub const PgStat_Kind_PGSTAT_KIND_WAL: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PlanCacheMode::PLAN_CACHE_MODE_AUTO" +)] +pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PlanCacheMode::PLAN_CACHE_MODE_FORCE_GENERIC_PLAN" +)] +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PlanCacheMode::PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN" +)] +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::PortalStatus::PORTAL_NEW")] +pub const PortalStatus_PORTAL_NEW: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStatus::PORTAL_DEFINED" +)] +pub const PortalStatus_PORTAL_DEFINED: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::PortalStatus::PORTAL_READY")] +pub const PortalStatus_PORTAL_READY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStatus::PORTAL_ACTIVE" +)] +pub const PortalStatus_PORTAL_ACTIVE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::PortalStatus::PORTAL_DONE")] +pub const PortalStatus_PORTAL_DONE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStatus::PORTAL_FAILED" +)] +pub const PortalStatus_PORTAL_FAILED: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_ONE_SELECT" +)] +pub const PortalStrategy_PORTAL_ONE_SELECT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_ONE_RETURNING" +)] +pub const PortalStrategy_PORTAL_ONE_RETURNING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_ONE_MOD_WITH" +)] +pub const PortalStrategy_PORTAL_ONE_MOD_WITH: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_UTIL_SELECT" +)] +pub const PortalStrategy_PORTAL_UTIL_SELECT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PortalStrategy::PORTAL_MULTI_QUERY" +)] +pub const PortalStrategy_PORTAL_MULTI_QUERY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalBarrierType::PROCSIGNAL_BARRIER_SMGRRELEASE" +)] +pub const ProcSignalBarrierType_PROCSIGNAL_BARRIER_SMGRRELEASE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_CATCHUP_INTERRUPT" +)] +pub const ProcSignalReason_PROCSIG_CATCHUP_INTERRUPT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_NOTIFY_INTERRUPT" +)] +pub const ProcSignalReason_PROCSIG_NOTIFY_INTERRUPT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_PARALLEL_MESSAGE" +)] +pub const ProcSignalReason_PROCSIG_PARALLEL_MESSAGE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_WALSND_INIT_STOPPING" +)] +pub const ProcSignalReason_PROCSIG_WALSND_INIT_STOPPING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_BARRIER" +)] +pub const ProcSignalReason_PROCSIG_BARRIER: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_LOG_MEMORY_CONTEXT" +)] +pub const ProcSignalReason_PROCSIG_LOG_MEMORY_CONTEXT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_PARALLEL_APPLY_MESSAGE" +)] +pub const ProcSignalReason_PROCSIG_PARALLEL_APPLY_MESSAGE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_FIRST" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_FIRST: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_DATABASE" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_DATABASE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_TABLESPACE" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_TABLESPACE: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_LOCK" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_LOCK: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_SNAPSHOT" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_SNAPSHOT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_LOGICALSLOT: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_BUFFERPIN" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_BUFFERPIN: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_STARTUP_DEADLOCK: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::PROCSIG_RECOVERY_CONFLICT_LAST" +)] +pub const ProcSignalReason_PROCSIG_RECOVERY_CONFLICT_LAST: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcSignalReason::NUM_PROCSIGNALS" +)] +pub const ProcSignalReason_NUM_PROCSIGNALS: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcWaitStatus::PROC_WAIT_STATUS_OK" +)] +pub const ProcWaitStatus_PROC_WAIT_STATUS_OK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcWaitStatus::PROC_WAIT_STATUS_WAITING" +)] +pub const ProcWaitStatus_PROC_WAIT_STATUS_WAITING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcWaitStatus::PROC_WAIT_STATUS_ERROR" +)] +pub const ProcWaitStatus_PROC_WAIT_STATUS_ERROR: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_TOPLEVEL" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_TOPLEVEL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_QUERY" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_QUERY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_QUERY_NONATOMIC" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_QUERY_NONATOMIC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessUtilityContext::PROCESS_UTILITY_SUBCOMMAND" +)] +pub const ProcessUtilityContext_PROCESS_UTILITY_SUBCOMMAND: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessingMode::BootstrapProcessing" +)] +pub const ProcessingMode_BootstrapProcessing: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessingMode::InitProcessing" +)] +pub const ProcessingMode_InitProcessing: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProcessingMode::NormalProcessing" +)] +pub const ProcessingMode_NormalProcessing: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_INVALID" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_INVALID: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_VACUUM" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_VACUUM: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_ANALYZE" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_ANALYZE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_CLUSTER" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_CLUSTER: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_CREATE_INDEX" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_CREATE_INDEX: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_BASEBACKUP" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_BASEBACKUP: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ProgressCommandType::PROGRESS_COMMAND_COPY" +)] +pub const ProgressCommandType_PROGRESS_COMMAND_COPY: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PruneReason::PRUNE_ON_ACCESS" +)] +pub const PruneReason_PRUNE_ON_ACCESS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PruneReason::PRUNE_VACUUM_SCAN" +)] +pub const PruneReason_PRUNE_VACUUM_SCAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PruneReason::PRUNE_VACUUM_CLEANUP" +)] +pub const PruneReason_PRUNE_VACUUM_CLEANUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_TABLE" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_TABLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_TABLES_IN_SCHEMA" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_TABLES_IN_SCHEMA: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_TABLES_IN_CUR_SCHEMA: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationObjSpecType::PUBLICATIONOBJ_CONTINUATION" +)] +pub const PublicationObjSpecType_PUBLICATIONOBJ_CONTINUATION: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationPartOpt::PUBLICATION_PART_ROOT" +)] +pub const PublicationPartOpt_PUBLICATION_PART_ROOT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationPartOpt::PUBLICATION_PART_LEAF" +)] +pub const PublicationPartOpt_PUBLICATION_PART_LEAF: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::PublicationPartOpt::PUBLICATION_PART_ALL" +)] +pub const PublicationPartOpt_PUBLICATION_PART_ALL: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::QuerySource::QSRC_ORIGINAL")] +pub const QuerySource_QSRC_ORIGINAL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::QuerySource::QSRC_PARSER")] +pub const QuerySource_QSRC_PARSER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::QuerySource::QSRC_INSTEAD_RULE" +)] +pub const QuerySource_QSRC_INSTEAD_RULE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::QuerySource::QSRC_QUAL_INSTEAD_RULE" +)] +pub const QuerySource_QSRC_QUAL_INSTEAD_RULE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::QuerySource::QSRC_NON_INSTEAD_RULE" +)] +pub const QuerySource_QSRC_NON_INSTEAD_RULE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_RELATION")] +pub const RTEKind_RTE_RELATION: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_SUBQUERY")] +pub const RTEKind_RTE_SUBQUERY: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_JOIN")] +pub const RTEKind_RTE_JOIN: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_FUNCTION")] +pub const RTEKind_RTE_FUNCTION: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_TABLEFUNC")] +pub const RTEKind_RTE_TABLEFUNC: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_VALUES")] +pub const RTEKind_RTE_VALUES: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_CTE")] +pub const RTEKind_RTE_CTE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RTEKind::RTE_NAMEDTUPLESTORE" +)] +pub const RTEKind_RTE_NAMEDTUPLESTORE: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RTEKind::RTE_RESULT")] +pub const RTEKind_RTE_RESULT: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RVROption::RVR_MISSING_OK")] +pub const RVROption_RVR_MISSING_OK: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RVROption::RVR_NOWAIT")] +pub const RVROption_RVR_NOWAIT: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RVROption::RVR_SKIP_LOCKED")] +pub const RVROption_RVR_SKIP_LOCKED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_DEFAULT" +)] +pub const RawParseMode_RAW_PARSE_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_TYPE_NAME" +)] +pub const RawParseMode_RAW_PARSE_TYPE_NAME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_EXPR" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_EXPR: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_ASSIGN1" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN1: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_ASSIGN2" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN2: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RawParseMode::RAW_PARSE_PLPGSQL_ASSIGN3" +)] +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN3: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ReadBufferMode::RBM_NORMAL")] +pub const ReadBufferMode_RBM_NORMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_ZERO_AND_LOCK" +)] +pub const ReadBufferMode_RBM_ZERO_AND_LOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_ZERO_AND_CLEANUP_LOCK" +)] +pub const ReadBufferMode_RBM_ZERO_AND_CLEANUP_LOCK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_ZERO_ON_ERROR" +)] +pub const ReadBufferMode_RBM_ZERO_ON_ERROR: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReadBufferMode::RBM_NORMAL_NO_LOG" +)] +pub const ReadBufferMode_RBM_NORMAL_NO_LOG: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryPauseState::RECOVERY_NOT_PAUSED" +)] +pub const RecoveryPauseState_RECOVERY_NOT_PAUSED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryPauseState::RECOVERY_PAUSE_REQUESTED" +)] +pub const RecoveryPauseState_RECOVERY_PAUSE_REQUESTED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryPauseState::RECOVERY_PAUSED" +)] +pub const RecoveryPauseState_RECOVERY_PAUSED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryState::RECOVERY_STATE_CRASH" +)] +pub const RecoveryState_RECOVERY_STATE_CRASH: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryState::RECOVERY_STATE_ARCHIVE" +)] +pub const RecoveryState_RECOVERY_STATE_ARCHIVE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryState::RECOVERY_STATE_DONE" +)] +pub const RecoveryState_RECOVERY_STATE_DONE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetAction::RECOVERY_TARGET_ACTION_PAUSE" +)] +pub const RecoveryTargetAction_RECOVERY_TARGET_ACTION_PAUSE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetAction::RECOVERY_TARGET_ACTION_PROMOTE" +)] +pub const RecoveryTargetAction_RECOVERY_TARGET_ACTION_PROMOTE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetAction::RECOVERY_TARGET_ACTION_SHUTDOWN" +)] +pub const RecoveryTargetAction_RECOVERY_TARGET_ACTION_SHUTDOWN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetTimeLineGoal::RECOVERY_TARGET_TIMELINE_CONTROLFILE" +)] +pub const RecoveryTargetTimeLineGoal_RECOVERY_TARGET_TIMELINE_CONTROLFILE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetTimeLineGoal::RECOVERY_TARGET_TIMELINE_LATEST" +)] +pub const RecoveryTargetTimeLineGoal_RECOVERY_TARGET_TIMELINE_LATEST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetTimeLineGoal::RECOVERY_TARGET_TIMELINE_NUMERIC" +)] +pub const RecoveryTargetTimeLineGoal_RECOVERY_TARGET_TIMELINE_NUMERIC: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_UNSET" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_UNSET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_XID" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_XID: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_TIME" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_TIME: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_NAME" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_NAME: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_LSN" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_LSN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RecoveryTargetType::RECOVERY_TARGET_IMMEDIATE" +)] +pub const RecoveryTargetType_RECOVERY_TARGET_IMMEDIATE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_INDEX" +)] +pub const ReindexObjectType_REINDEX_OBJECT_INDEX: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_TABLE" +)] +pub const ReindexObjectType_REINDEX_OBJECT_TABLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_SCHEMA" +)] +pub const ReindexObjectType_REINDEX_OBJECT_SCHEMA: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_SYSTEM" +)] +pub const ReindexObjectType_REINDEX_OBJECT_SYSTEM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReindexObjectType::REINDEX_OBJECT_DATABASE" +)] +pub const ReindexObjectType_REINDEX_OBJECT_DATABASE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RelOptKind::RELOPT_BASEREL")] +pub const RelOptKind_RELOPT_BASEREL: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RelOptKind::RELOPT_JOINREL")] +pub const RelOptKind_RELOPT_JOINREL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_OTHER_MEMBER_REL" +)] +pub const RelOptKind_RELOPT_OTHER_MEMBER_REL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_OTHER_JOINREL" +)] +pub const RelOptKind_RELOPT_OTHER_JOINREL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_UPPER_REL" +)] +pub const RelOptKind_RELOPT_UPPER_REL: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RelOptKind::RELOPT_OTHER_UPPER_REL" +)] +pub const RelOptKind_RELOPT_OTHER_UPPER_REL: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INSERT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INSERT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_UPDATE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_UPDATE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_DELETE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_DELETE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_MESSAGE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_MESSAGE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INVALIDATION" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INVALIDATION: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SNAPSHOT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_COMMAND_ID" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_COMMAND_ID: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_TUPLECID" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_TUPLECID: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReorderBufferChangeType::REORDER_BUFFER_CHANGE_TRUNCATE" +)] +pub const ReorderBufferChangeType_REORDER_BUFFER_CHANGE_TRUNCATE: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationKind::REPLICATION_KIND_PHYSICAL" +)] +pub const ReplicationKind_REPLICATION_KIND_PHYSICAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationKind::REPLICATION_KIND_LOGICAL" +)] +pub const ReplicationKind_REPLICATION_KIND_LOGICAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_NONE" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_WAL_REMOVED" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_WAL_REMOVED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_HORIZON" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_HORIZON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotInvalidationCause::RS_INVAL_WAL_LEVEL" +)] +pub const ReplicationSlotInvalidationCause_RS_INVAL_WAL_LEVEL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotPersistency::RS_PERSISTENT" +)] +pub const ReplicationSlotPersistency_RS_PERSISTENT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotPersistency::RS_EPHEMERAL" +)] +pub const ReplicationSlotPersistency_RS_EPHEMERAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ReplicationSlotPersistency::RS_TEMPORARY" +)] +pub const ReplicationSlotPersistency_RS_TEMPORARY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ResourceReleasePhase::RESOURCE_RELEASE_BEFORE_LOCKS" +)] +pub const ResourceReleasePhase_RESOURCE_RELEASE_BEFORE_LOCKS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ResourceReleasePhase::RESOURCE_RELEASE_LOCKS" +)] +pub const ResourceReleasePhase_RESOURCE_RELEASE_LOCKS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ResourceReleasePhase::RESOURCE_RELEASE_AFTER_LOCKS" +)] +pub const ResourceReleasePhase_RESOURCE_RELEASE_AFTER_LOCKS: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_XLOG_ID")] +pub const RmgrIds_RM_XLOG_ID: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_XACT_ID")] +pub const RmgrIds_RM_XACT_ID: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_SMGR_ID")] +pub const RmgrIds_RM_SMGR_ID: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_CLOG_ID")] +pub const RmgrIds_RM_CLOG_ID: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_DBASE_ID")] +pub const RmgrIds_RM_DBASE_ID: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_TBLSPC_ID")] +pub const RmgrIds_RM_TBLSPC_ID: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_MULTIXACT_ID")] +pub const RmgrIds_RM_MULTIXACT_ID: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_RELMAP_ID")] +pub const RmgrIds_RM_RELMAP_ID: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_STANDBY_ID")] +pub const RmgrIds_RM_STANDBY_ID: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_HEAP2_ID")] +pub const RmgrIds_RM_HEAP2_ID: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_HEAP_ID")] +pub const RmgrIds_RM_HEAP_ID: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_BTREE_ID")] +pub const RmgrIds_RM_BTREE_ID: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_HASH_ID")] +pub const RmgrIds_RM_HASH_ID: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_GIN_ID")] +pub const RmgrIds_RM_GIN_ID: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_GIST_ID")] +pub const RmgrIds_RM_GIST_ID: u32 = 14; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_SEQ_ID")] +pub const RmgrIds_RM_SEQ_ID: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_SPGIST_ID")] +pub const RmgrIds_RM_SPGIST_ID: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_BRIN_ID")] +pub const RmgrIds_RM_BRIN_ID: u32 = 17; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_COMMIT_TS_ID")] +pub const RmgrIds_RM_COMMIT_TS_ID: u32 = 18; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_REPLORIGIN_ID")] +pub const RmgrIds_RM_REPLORIGIN_ID: u32 = 19; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_GENERIC_ID")] +pub const RmgrIds_RM_GENERIC_ID: u32 = 20; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_LOGICALMSG_ID")] +pub const RmgrIds_RM_LOGICALMSG_ID: u32 = 21; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RmgrIds::RM_NEXT_ID")] +pub const RmgrIds_RM_NEXT_ID: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_CSTRING" +)] +pub const RoleSpecType_ROLESPEC_CSTRING: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_CURRENT_ROLE" +)] +pub const RoleSpecType_ROLESPEC_CURRENT_ROLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_CURRENT_USER" +)] +pub const RoleSpecType_ROLESPEC_CURRENT_USER: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_SESSION_USER" +)] +pub const RoleSpecType_ROLESPEC_SESSION_USER: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleSpecType::ROLESPEC_PUBLIC" +)] +pub const RoleSpecType_ROLESPEC_PUBLIC: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleStmtType::ROLESTMT_ROLE" +)] +pub const RoleStmtType_ROLESTMT_ROLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleStmtType::ROLESTMT_USER" +)] +pub const RoleStmtType_ROLESTMT_USER: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RoleStmtType::ROLESTMT_GROUP" +)] +pub const RoleStmtType_ROLESTMT_GROUP: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_LT" +)] +pub const RowCompareType_ROWCOMPARE_LT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_LE" +)] +pub const RowCompareType_ROWCOMPARE_LE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_EQ" +)] +pub const RowCompareType_ROWCOMPARE_EQ: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_GE" +)] +pub const RowCompareType_ROWCOMPARE_GE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_GT" +)] +pub const RowCompareType_ROWCOMPARE_GT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowCompareType::ROWCOMPARE_NE" +)] +pub const RowCompareType_ROWCOMPARE_NE: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_EXCLUSIVE" +)] +pub const RowMarkType_ROW_MARK_EXCLUSIVE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_NOKEYEXCLUSIVE" +)] +pub const RowMarkType_ROW_MARK_NOKEYEXCLUSIVE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_SHARE" +)] +pub const RowMarkType_ROW_MARK_SHARE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_KEYSHARE" +)] +pub const RowMarkType_ROW_MARK_KEYSHARE: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::RowMarkType::ROW_MARK_REFERENCE" +)] +pub const RowMarkType_ROW_MARK_REFERENCE: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::RowMarkType::ROW_MARK_COPY")] +pub const RowMarkType_ROW_MARK_COPY: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_DATE" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_DATE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIME" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIME_N" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIME_N: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIMESTAMP" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIMESTAMP: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_TIMESTAMP_N" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_TIMESTAMP_N: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIME" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIME: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIME_N" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIME_N: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIMESTAMP" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIMESTAMP: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_LOCALTIMESTAMP_N" +)] +pub const SQLValueFunctionOp_SVFOP_LOCALTIMESTAMP_N: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_ROLE" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_ROLE: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_USER" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_USER: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_USER" +)] +pub const SQLValueFunctionOp_SVFOP_USER: u32 = 11; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_SESSION_USER" +)] +pub const SQLValueFunctionOp_SVFOP_SESSION_USER: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_CATALOG" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_CATALOG: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SQLValueFunctionOp::SVFOP_CURRENT_SCHEMA" +)] +pub const SQLValueFunctionOp_SVFOP_CURRENT_SCHEMA: u32 = 14; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanDirection::BackwardScanDirection" +)] +pub const ScanDirection_BackwardScanDirection: i32 = -1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanDirection::NoMovementScanDirection" +)] +pub const ScanDirection_NoMovementScanDirection: i32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanDirection::ForwardScanDirection" +)] +pub const ScanDirection_ForwardScanDirection: i32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_SEQSCAN" +)] +pub const ScanOptions_SO_TYPE_SEQSCAN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_BITMAPSCAN" +)] +pub const ScanOptions_SO_TYPE_BITMAPSCAN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_SAMPLESCAN" +)] +pub const ScanOptions_SO_TYPE_SAMPLESCAN: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_TIDSCAN" +)] +pub const ScanOptions_SO_TYPE_TIDSCAN: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_TIDRANGESCAN" +)] +pub const ScanOptions_SO_TYPE_TIDRANGESCAN: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TYPE_ANALYZE" +)] +pub const ScanOptions_SO_TYPE_ANALYZE: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_ALLOW_STRAT" +)] +pub const ScanOptions_SO_ALLOW_STRAT: u32 = 64; +#[deprecated(since = "0.12.0", note = "you want pg_sys::ScanOptions::SO_ALLOW_SYNC")] +pub const ScanOptions_SO_ALLOW_SYNC: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_ALLOW_PAGEMODE" +)] +pub const ScanOptions_SO_ALLOW_PAGEMODE: u32 = 256; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_TEMP_SNAPSHOT" +)] +pub const ScanOptions_SO_TEMP_SNAPSHOT: u32 = 512; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ScanOptions::SO_NEED_TUPLES" +)] +pub const ScanOptions_SO_NEED_TUPLES: u32 = 1024; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionBackupState::SESSION_BACKUP_NONE" +)] +pub const SessionBackupState_SESSION_BACKUP_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionBackupState::SESSION_BACKUP_RUNNING" +)] +pub const SessionBackupState_SESSION_BACKUP_RUNNING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_NOT_YET" +)] +pub const SessionEndType_DISCONNECT_NOT_YET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_NORMAL" +)] +pub const SessionEndType_DISCONNECT_NORMAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_CLIENT_EOF" +)] +pub const SessionEndType_DISCONNECT_CLIENT_EOF: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_FATAL" +)] +pub const SessionEndType_DISCONNECT_FATAL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SessionEndType::DISCONNECT_KILLED" +)] +pub const SessionEndType_DISCONNECT_KILLED: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_ValuePerCall" +)] +pub const SetFunctionReturnMode_SFRM_ValuePerCall: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_Materialize" +)] +pub const SetFunctionReturnMode_SFRM_Materialize: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_Materialize_Random" +)] +pub const SetFunctionReturnMode_SFRM_Materialize_Random: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetFunctionReturnMode::SFRM_Materialize_Preferred" +)] +pub const SetFunctionReturnMode_SFRM_Materialize_Preferred: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpCmd::SETOPCMD_INTERSECT" +)] +pub const SetOpCmd_SETOPCMD_INTERSECT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpCmd::SETOPCMD_INTERSECT_ALL" +)] +pub const SetOpCmd_SETOPCMD_INTERSECT_ALL: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOpCmd::SETOPCMD_EXCEPT")] +pub const SetOpCmd_SETOPCMD_EXCEPT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpCmd::SETOPCMD_EXCEPT_ALL" +)] +pub const SetOpCmd_SETOPCMD_EXCEPT_ALL: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpStrategy::SETOP_SORTED" +)] +pub const SetOpStrategy_SETOP_SORTED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOpStrategy::SETOP_HASHED" +)] +pub const SetOpStrategy_SETOP_HASHED: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOperation::SETOP_NONE")] +pub const SetOperation_SETOP_NONE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOperation::SETOP_UNION")] +pub const SetOperation_SETOP_UNION: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetOperation::SETOP_INTERSECT" +)] +pub const SetOperation_SETOP_INTERSECT: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SetOperation::SETOP_EXCEPT")] +pub const SetOperation_SETOP_EXCEPT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetQuantifier::SET_QUANTIFIER_DEFAULT" +)] +pub const SetQuantifier_SET_QUANTIFIER_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetQuantifier::SET_QUANTIFIER_ALL" +)] +pub const SetQuantifier_SET_QUANTIFIER_ALL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SetQuantifier::SET_QUANTIFIER_DISTINCT" +)] +pub const SetQuantifier_SET_QUANTIFIER_DISTINCT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedBitmapState::BM_INITIAL" +)] +pub const SharedBitmapState_BM_INITIAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedBitmapState::BM_INPROGRESS" +)] +pub const SharedBitmapState_BM_INPROGRESS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedBitmapState::BM_FINISHED" +)] +pub const SharedBitmapState_BM_FINISHED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_OWNER" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_OWNER: u32 = 111; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_ACL" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_ACL: u32 = 97; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_INITACL" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_INITACL: u32 = 105; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_POLICY" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_POLICY: u32 = 114; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_TABLESPACE" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_TABLESPACE: u32 = 116; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SharedDependencyType::SHARED_DEPENDENCY_INVALID" +)] +pub const SharedDependencyType_SHARED_DEPENDENCY_INVALID: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_MVCC" +)] +pub const SnapshotType_SNAPSHOT_MVCC: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_SELF" +)] +pub const SnapshotType_SNAPSHOT_SELF: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SnapshotType::SNAPSHOT_ANY")] +pub const SnapshotType_SNAPSHOT_ANY: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_TOAST" +)] +pub const SnapshotType_SNAPSHOT_TOAST: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_DIRTY" +)] +pub const SnapshotType_SNAPSHOT_DIRTY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_HISTORIC_MVCC" +)] +pub const SnapshotType_SNAPSHOT_HISTORIC_MVCC: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SnapshotType::SNAPSHOT_NON_VACUUMABLE" +)] +pub const SnapshotType_SNAPSHOT_NON_VACUUMABLE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_DEFAULT")] +pub const SortByDir_SORTBY_DEFAULT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_ASC")] +pub const SortByDir_SORTBY_ASC: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_DESC")] +pub const SortByDir_SORTBY_DESC: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SortByDir::SORTBY_USING")] +pub const SortByDir_SORTBY_USING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SortByNulls::SORTBY_NULLS_DEFAULT" +)] +pub const SortByNulls_SORTBY_NULLS_DEFAULT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SortByNulls::SORTBY_NULLS_FIRST" +)] +pub const SortByNulls_SORTBY_NULLS_FIRST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SortByNulls::SORTBY_NULLS_LAST" +)] +pub const SortByNulls_SORTBY_NULLS_LAST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::StdRdOptIndexCleanup::STDRD_OPTION_VACUUM_INDEX_CLEANUP_AUTO" +)] +pub const StdRdOptIndexCleanup_STDRD_OPTION_VACUUM_INDEX_CLEANUP_AUTO: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::StdRdOptIndexCleanup::STDRD_OPTION_VACUUM_INDEX_CLEANUP_OFF" +)] +pub const StdRdOptIndexCleanup_STDRD_OPTION_VACUUM_INDEX_CLEANUP_OFF: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::StdRdOptIndexCleanup::STDRD_OPTION_VACUUM_INDEX_CLEANUP_ON" +)] +pub const StdRdOptIndexCleanup_STDRD_OPTION_VACUUM_INDEX_CLEANUP_ON: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubLinkType::EXISTS_SUBLINK" +)] +pub const SubLinkType_EXISTS_SUBLINK: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::ALL_SUBLINK")] +pub const SubLinkType_ALL_SUBLINK: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::ANY_SUBLINK")] +pub const SubLinkType_ANY_SUBLINK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubLinkType::ROWCOMPARE_SUBLINK" +)] +pub const SubLinkType_ROWCOMPARE_SUBLINK: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::EXPR_SUBLINK")] +pub const SubLinkType_EXPR_SUBLINK: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubLinkType::MULTIEXPR_SUBLINK" +)] +pub const SubLinkType_MULTIEXPR_SUBLINK: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::ARRAY_SUBLINK")] +pub const SubLinkType_ARRAY_SUBLINK: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SubLinkType::CTE_SUBLINK")] +pub const SubLinkType_CTE_SUBLINK: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_START_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_START_SUB: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_COMMIT_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_COMMIT_SUB: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_ABORT_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_ABORT_SUB: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubXactEvent::SUBXACT_EVENT_PRE_COMMIT_SUB" +)] +pub const SubXactEvent_SUBXACT_EVENT_PRE_COMMIT_SUB: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubqueryScanStatus::SUBQUERY_SCAN_UNKNOWN" +)] +pub const SubqueryScanStatus_SUBQUERY_SCAN_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubqueryScanStatus::SUBQUERY_SCAN_TRIVIAL" +)] +pub const SubqueryScanStatus_SUBQUERY_SCAN_TRIVIAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SubqueryScanStatus::SUBQUERY_SCAN_NONTRIVIAL" +)] +pub const SubqueryScanStatus_SUBQUERY_SCAN_NONTRIVIAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_OFF" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_LOCAL_FLUSH" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_LOCAL_FLUSH: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_REMOTE_WRITE" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_REMOTE_WRITE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_REMOTE_FLUSH" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_REMOTE_FLUSH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncCommitLevel::SYNCHRONOUS_COMMIT_REMOTE_APPLY" +)] +pub const SyncCommitLevel_SYNCHRONOUS_COMMIT_REMOTE_APPLY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_MD" +)] +pub const SyncRequestHandler_SYNC_HANDLER_MD: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_CLOG" +)] +pub const SyncRequestHandler_SYNC_HANDLER_CLOG: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_COMMIT_TS" +)] +pub const SyncRequestHandler_SYNC_HANDLER_COMMIT_TS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_MULTIXACT_OFFSET" +)] +pub const SyncRequestHandler_SYNC_HANDLER_MULTIXACT_OFFSET: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_MULTIXACT_MEMBER" +)] +pub const SyncRequestHandler_SYNC_HANDLER_MULTIXACT_MEMBER: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestHandler::SYNC_HANDLER_NONE" +)] +pub const SyncRequestHandler_SYNC_HANDLER_NONE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_REQUEST" +)] +pub const SyncRequestType_SYNC_REQUEST: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_UNLINK_REQUEST" +)] +pub const SyncRequestType_SYNC_UNLINK_REQUEST: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_FORGET_REQUEST" +)] +pub const SyncRequestType_SYNC_FORGET_REQUEST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SyncRequestType::SYNC_FILTER_REQUEST" +)] +pub const SyncRequestType_SYNC_FILTER_REQUEST: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SysCacheIdentifier::AMNAME")] +pub const SysCacheIdentifier_AMNAME: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AMOPOPID" +)] +pub const SysCacheIdentifier_AMOPOPID: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AMOPSTRATEGY" +)] +pub const SysCacheIdentifier_AMOPSTRATEGY: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AMPROCNUM" +)] +pub const SysCacheIdentifier_AMPROCNUM: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::ATTNAME" +)] +pub const SysCacheIdentifier_ATTNAME: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::SysCacheIdentifier::ATTNUM")] +pub const SysCacheIdentifier_ATTNUM: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AUTHMEMMEMROLE" +)] +pub const SysCacheIdentifier_AUTHMEMMEMROLE: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AUTHMEMROLEMEM" +)] +pub const SysCacheIdentifier_AUTHMEMROLEMEM: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::AUTHNAME" +)] +pub const SysCacheIdentifier_AUTHNAME: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CASTSOURCETARGET" +)] +pub const SysCacheIdentifier_CASTSOURCETARGET: u32 = 12; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CLAAMNAMENSP" +)] +pub const SysCacheIdentifier_CLAAMNAMENSP: u32 = 13; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::COLLNAMEENCNSP" +)] +pub const SysCacheIdentifier_COLLNAMEENCNSP: u32 = 15; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CONDEFAULT" +)] +pub const SysCacheIdentifier_CONDEFAULT: u32 = 17; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::CONNAMENSP" +)] +pub const SysCacheIdentifier_CONNAMENSP: u32 = 18; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::DEFACLROLENSPOBJ" +)] +pub const SysCacheIdentifier_DEFACLROLENSPOBJ: u32 = 22; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::EVENTTRIGGERNAME" +)] +pub const SysCacheIdentifier_EVENTTRIGGERNAME: u32 = 25; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::FOREIGNDATAWRAPPERNAME" +)] +pub const SysCacheIdentifier_FOREIGNDATAWRAPPERNAME: u32 = 27; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::FOREIGNSERVERNAME" +)] +pub const SysCacheIdentifier_FOREIGNSERVERNAME: u32 = 29; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::FOREIGNTABLEREL" +)] +pub const SysCacheIdentifier_FOREIGNTABLEREL: u32 = 31; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::INDEXRELID" +)] +pub const SysCacheIdentifier_INDEXRELID: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::LANGNAME" +)] +pub const SysCacheIdentifier_LANGNAME: u32 = 33; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::NAMESPACENAME" +)] +pub const SysCacheIdentifier_NAMESPACENAME: u32 = 35; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::OPERNAMENSP" +)] +pub const SysCacheIdentifier_OPERNAMENSP: u32 = 37; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::OPFAMILYAMNAMENSP" +)] +pub const SysCacheIdentifier_OPFAMILYAMNAMENSP: u32 = 39; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PARAMETERACLNAME" +)] +pub const SysCacheIdentifier_PARAMETERACLNAME: u32 = 41; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PARTRELID" +)] +pub const SysCacheIdentifier_PARTRELID: u32 = 43; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PROCNAMEARGSNSP" +)] +pub const SysCacheIdentifier_PROCNAMEARGSNSP: u32 = 44; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONNAME" +)] +pub const SysCacheIdentifier_PUBLICATIONNAME: u32 = 46; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONNAMESPACE" +)] +pub const SysCacheIdentifier_PUBLICATIONNAMESPACE: u32 = 47; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONNAMESPACEMAP" +)] +pub const SysCacheIdentifier_PUBLICATIONNAMESPACEMAP: u32 = 48; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONREL" +)] +pub const SysCacheIdentifier_PUBLICATIONREL: u32 = 50; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::PUBLICATIONRELMAP" +)] +pub const SysCacheIdentifier_PUBLICATIONRELMAP: u32 = 51; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RANGEMULTIRANGE" +)] +pub const SysCacheIdentifier_RANGEMULTIRANGE: u32 = 52; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RANGETYPE" +)] +pub const SysCacheIdentifier_RANGETYPE: u32 = 53; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RELNAMENSP" +)] +pub const SysCacheIdentifier_RELNAMENSP: u32 = 54; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::REPLORIGIDENT" +)] +pub const SysCacheIdentifier_REPLORIGIDENT: u32 = 56; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::REPLORIGNAME" +)] +pub const SysCacheIdentifier_REPLORIGNAME: u32 = 57; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::RULERELNAME" +)] +pub const SysCacheIdentifier_RULERELNAME: u32 = 58; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::SEQRELID" +)] +pub const SysCacheIdentifier_SEQRELID: u32 = 59; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::STATEXTNAMENSP" +)] +pub const SysCacheIdentifier_STATEXTNAMENSP: u32 = 61; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::STATRELATTINH" +)] +pub const SysCacheIdentifier_STATRELATTINH: u32 = 63; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::SUBSCRIPTIONNAME" +)] +pub const SysCacheIdentifier_SUBSCRIPTIONNAME: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::SUBSCRIPTIONRELMAP" +)] +pub const SysCacheIdentifier_SUBSCRIPTIONRELMAP: u32 = 66; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TRFTYPELANG" +)] +pub const SysCacheIdentifier_TRFTYPELANG: u32 = 69; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSCONFIGMAP" +)] +pub const SysCacheIdentifier_TSCONFIGMAP: u32 = 70; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSCONFIGNAMENSP" +)] +pub const SysCacheIdentifier_TSCONFIGNAMENSP: u32 = 71; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSDICTNAMENSP" +)] +pub const SysCacheIdentifier_TSDICTNAMENSP: u32 = 73; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSPARSERNAMENSP" +)] +pub const SysCacheIdentifier_TSPARSERNAMENSP: u32 = 75; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TSTEMPLATENAMENSP" +)] +pub const SysCacheIdentifier_TSTEMPLATENAMENSP: u32 = 77; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::TYPENAMENSP" +)] +pub const SysCacheIdentifier_TYPENAMENSP: u32 = 79; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::SysCacheIdentifier::USERMAPPINGUSERSERVER" +)] +pub const SysCacheIdentifier_USERMAPPINGUSERSERVER: u32 = 82; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Ok")] +pub const TM_Result_TM_Ok: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Invisible")] +pub const TM_Result_TM_Invisible: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_SelfModified")] +pub const TM_Result_TM_SelfModified: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Updated")] +pub const TM_Result_TM_Updated: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_Deleted")] +pub const TM_Result_TM_Deleted: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TM_Result::TM_BeingModified" +)] +pub const TM_Result_TM_BeingModified: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TM_Result::TM_WouldBlock")] +pub const TM_Result_TM_WouldBlock: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TSTernaryValue::TS_NO")] +pub const TSTernaryValue_TS_NO: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TSTernaryValue::TS_YES")] +pub const TSTernaryValue_TS_YES: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TSTernaryValue::TS_MAYBE")] +pub const TSTernaryValue_TS_MAYBE: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TU_UpdateIndexes::TU_None")] +pub const TU_UpdateIndexes_TU_None: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::TU_UpdateIndexes::TU_All")] +pub const TU_UpdateIndexes_TU_All: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TU_UpdateIndexes::TU_Summarizing" +)] +pub const TU_UpdateIndexes_TU_Summarizing: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableFuncType::TFT_XMLTABLE" +)] +pub const TableFuncType_TFT_XMLTABLE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableFuncType::TFT_JSON_TABLE" +)] +pub const TableFuncType_TFT_JSON_TABLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_COMMENTS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_COMMENTS: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_COMPRESSION" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_COMPRESSION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_CONSTRAINTS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_CONSTRAINTS: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_DEFAULTS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_DEFAULTS: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_GENERATED" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_GENERATED: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_IDENTITY" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_IDENTITY: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_INDEXES" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_INDEXES: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_STATISTICS" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_STATISTICS: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_STORAGE" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_STORAGE: u32 = 256; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TableLikeOption::CREATE_TABLE_LIKE_ALL" +)] +pub const TableLikeOption_CREATE_TABLE_LIKE_ALL: u32 = 2147483647; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TempNamespaceStatus::TEMP_NAMESPACE_NOT_TEMP" +)] +pub const TempNamespaceStatus_TEMP_NAMESPACE_NOT_TEMP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TempNamespaceStatus::TEMP_NAMESPACE_IDLE" +)] +pub const TempNamespaceStatus_TEMP_NAMESPACE_IDLE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TempNamespaceStatus::TEMP_NAMESPACE_IN_USE" +)] +pub const TempNamespaceStatus_TEMP_NAMESPACE_IN_USE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TrackFunctionsLevel::TRACK_FUNC_OFF" +)] +pub const TrackFunctionsLevel_TRACK_FUNC_OFF: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TrackFunctionsLevel::TRACK_FUNC_PL" +)] +pub const TrackFunctionsLevel_TRACK_FUNC_PL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TrackFunctionsLevel::TRACK_FUNC_ALL" +)] +pub const TrackFunctionsLevel_TRACK_FUNC_ALL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_BEGIN" +)] +pub const TransactionStmtKind_TRANS_STMT_BEGIN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_START" +)] +pub const TransactionStmtKind_TRANS_STMT_START: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_COMMIT" +)] +pub const TransactionStmtKind_TRANS_STMT_COMMIT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_ROLLBACK" +)] +pub const TransactionStmtKind_TRANS_STMT_ROLLBACK: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_SAVEPOINT" +)] +pub const TransactionStmtKind_TRANS_STMT_SAVEPOINT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_RELEASE" +)] +pub const TransactionStmtKind_TRANS_STMT_RELEASE: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_ROLLBACK_TO" +)] +pub const TransactionStmtKind_TRANS_STMT_ROLLBACK_TO: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_PREPARE" +)] +pub const TransactionStmtKind_TRANS_STMT_PREPARE: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_COMMIT_PREPARED" +)] +pub const TransactionStmtKind_TRANS_STMT_COMMIT_PREPARED: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TransactionStmtKind::TRANS_STMT_ROLLBACK_PREPARED" +)] +pub const TransactionStmtKind_TRANS_STMT_ROLLBACK_PREPARED: u32 = 9; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_STILL_IN_PROGRESS" +)] +pub const TuplesortMethod_SORT_TYPE_STILL_IN_PROGRESS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_TOP_N_HEAPSORT" +)] +pub const TuplesortMethod_SORT_TYPE_TOP_N_HEAPSORT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_QUICKSORT" +)] +pub const TuplesortMethod_SORT_TYPE_QUICKSORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_EXTERNAL_SORT" +)] +pub const TuplesortMethod_SORT_TYPE_EXTERNAL_SORT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortMethod::SORT_TYPE_EXTERNAL_MERGE" +)] +pub const TuplesortMethod_SORT_TYPE_EXTERNAL_MERGE: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortSpaceType::SORT_SPACE_TYPE_DISK" +)] +pub const TuplesortSpaceType_SORT_SPACE_TYPE_DISK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TuplesortSpaceType::SORT_SPACE_TYPE_MEMORY" +)] +pub const TuplesortSpaceType_SORT_SPACE_TYPE_MEMORY: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_SCALAR" +)] +pub const TypeFuncClass_TYPEFUNC_SCALAR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_COMPOSITE" +)] +pub const TypeFuncClass_TYPEFUNC_COMPOSITE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_COMPOSITE_DOMAIN" +)] +pub const TypeFuncClass_TYPEFUNC_COMPOSITE_DOMAIN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_RECORD" +)] +pub const TypeFuncClass_TYPEFUNC_RECORD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::TypeFuncClass::TYPEFUNC_OTHER" +)] +pub const TypeFuncClass_TYPEFUNC_OTHER: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UniquePathMethod::UNIQUE_PATH_NOOP" +)] +pub const UniquePathMethod_UNIQUE_PATH_NOOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UniquePathMethod::UNIQUE_PATH_HASH" +)] +pub const UniquePathMethod_UNIQUE_PATH_HASH: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UniquePathMethod::UNIQUE_PATH_SORT" +)] +pub const UniquePathMethod_UNIQUE_PATH_SORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_SETOP" +)] +pub const UpperRelationKind_UPPERREL_SETOP: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_PARTIAL_GROUP_AGG" +)] +pub const UpperRelationKind_UPPERREL_PARTIAL_GROUP_AGG: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_GROUP_AGG" +)] +pub const UpperRelationKind_UPPERREL_GROUP_AGG: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_WINDOW" +)] +pub const UpperRelationKind_UPPERREL_WINDOW: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_PARTIAL_DISTINCT" +)] +pub const UpperRelationKind_UPPERREL_PARTIAL_DISTINCT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_DISTINCT" +)] +pub const UpperRelationKind_UPPERREL_DISTINCT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_ORDERED" +)] +pub const UpperRelationKind_UPPERREL_ORDERED: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::UpperRelationKind::UPPERREL_FINAL" +)] +pub const UpperRelationKind_UPPERREL_FINAL: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_UNSPECIFIED" +)] +pub const VacOptValue_VACOPTVALUE_UNSPECIFIED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_AUTO" +)] +pub const VacOptValue_VACOPTVALUE_AUTO: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_DISABLED" +)] +pub const VacOptValue_VACOPTVALUE_DISABLED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VacOptValue::VACOPTVALUE_ENABLED" +)] +pub const VacOptValue_VACOPTVALUE_ENABLED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_VALUE" +)] +pub const VariableSetKind_VAR_SET_VALUE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_DEFAULT" +)] +pub const VariableSetKind_VAR_SET_DEFAULT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_CURRENT" +)] +pub const VariableSetKind_VAR_SET_CURRENT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_SET_MULTI" +)] +pub const VariableSetKind_VAR_SET_MULTI: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::VariableSetKind::VAR_RESET")] +pub const VariableSetKind_VAR_RESET: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VariableSetKind::VAR_RESET_ALL" +)] +pub const VariableSetKind_VAR_RESET_ALL: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewCheckOption::NO_CHECK_OPTION" +)] +pub const ViewCheckOption_NO_CHECK_OPTION: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewCheckOption::LOCAL_CHECK_OPTION" +)] +pub const ViewCheckOption_LOCAL_CHECK_OPTION: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewCheckOption::CASCADED_CHECK_OPTION" +)] +pub const ViewCheckOption_CASCADED_CHECK_OPTION: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewOptCheckOption::VIEW_OPTION_CHECK_OPTION_NOT_SET" +)] +pub const ViewOptCheckOption_VIEW_OPTION_CHECK_OPTION_NOT_SET: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewOptCheckOption::VIEW_OPTION_CHECK_OPTION_LOCAL" +)] +pub const ViewOptCheckOption_VIEW_OPTION_CHECK_OPTION_LOCAL: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::ViewOptCheckOption::VIEW_OPTION_CHECK_OPTION_CASCADED" +)] +pub const ViewOptCheckOption_VIEW_OPTION_CHECK_OPTION_CASCADED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VolatileFunctionStatus::VOLATILITY_UNKNOWN" +)] +pub const VolatileFunctionStatus_VOLATILITY_UNKNOWN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VolatileFunctionStatus::VOLATILITY_VOLATILE" +)] +pub const VolatileFunctionStatus_VOLATILITY_VOLATILE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::VolatileFunctionStatus::VOLATILITY_NOVOLATILE" +)] +pub const VolatileFunctionStatus_VOLATILITY_NOVOLATILE: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_INVALID_LSN" +)] +pub const WALAvailability_WALAVAIL_INVALID_LSN: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_RESERVED" +)] +pub const WALAvailability_WALAVAIL_RESERVED: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_EXTENDED" +)] +pub const WALAvailability_WALAVAIL_EXTENDED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_UNRESERVED" +)] +pub const WALAvailability_WALAVAIL_UNRESERVED: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WALAvailability::WALAVAIL_REMOVED" +)] +pub const WALAvailability_WALAVAIL_REMOVED: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::WCOKind::WCO_VIEW_CHECK")] +pub const WCOKind_WCO_VIEW_CHECK: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_INSERT_CHECK" +)] +pub const WCOKind_WCO_RLS_INSERT_CHECK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_UPDATE_CHECK" +)] +pub const WCOKind_WCO_RLS_UPDATE_CHECK: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_CONFLICT_CHECK" +)] +pub const WCOKind_WCO_RLS_CONFLICT_CHECK: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_MERGE_UPDATE_CHECK" +)] +pub const WCOKind_WCO_RLS_MERGE_UPDATE_CHECK: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WCOKind::WCO_RLS_MERGE_DELETE_CHECK" +)] +pub const WCOKind_WCO_RLS_MERGE_DELETE_CHECK: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_ARCHIVER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_ARCHIVER_MAIN: u32 = 83886080; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_AUTOVACUUM_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_AUTOVACUUM_MAIN: u32 = 83886081; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_BGWRITER_HIBERNATE" +)] +pub const WaitEventActivity_WAIT_EVENT_BGWRITER_HIBERNATE: u32 = 83886082; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_BGWRITER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_BGWRITER_MAIN: u32 = 83886083; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_CHECKPOINTER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_CHECKPOINTER_MAIN: u32 = 83886084; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_LOGICAL_APPLY_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_LOGICAL_APPLY_MAIN: u32 = 83886085; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_LOGICAL_LAUNCHER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_LOGICAL_LAUNCHER_MAIN: u32 = 83886086; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN: u32 = 83886087; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_RECOVERY_WAL_STREAM" +)] +pub const WaitEventActivity_WAIT_EVENT_RECOVERY_WAL_STREAM: u32 = 83886088; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN: u32 = 83886089; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN" +)] +pub const WaitEventActivity_WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN: u32 = 83886090; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_SYSLOGGER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_SYSLOGGER_MAIN: u32 = 83886091; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_RECEIVER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_RECEIVER_MAIN: u32 = 83886092; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_SENDER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_SENDER_MAIN: u32 = 83886093; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_SUMMARIZER_WAL" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_SUMMARIZER_WAL: u32 = 83886094; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventActivity::WAIT_EVENT_WAL_WRITER_MAIN" +)] +pub const WaitEventActivity_WAIT_EVENT_WAL_WRITER_MAIN: u32 = 83886095; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventBufferPin::WAIT_EVENT_BUFFER_PIN" +)] +pub const WaitEventBufferPin_WAIT_EVENT_BUFFER_PIN: u32 = 67108864; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_CLIENT_READ" +)] +pub const WaitEventClient_WAIT_EVENT_CLIENT_READ: u32 = 100663296; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_CLIENT_WRITE" +)] +pub const WaitEventClient_WAIT_EVENT_CLIENT_WRITE: u32 = 100663297; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_GSS_OPEN_SERVER" +)] +pub const WaitEventClient_WAIT_EVENT_GSS_OPEN_SERVER: u32 = 100663298; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_LIBPQWALRECEIVER_CONNECT" +)] +pub const WaitEventClient_WAIT_EVENT_LIBPQWALRECEIVER_CONNECT: u32 = 100663299; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE" +)] +pub const WaitEventClient_WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE: u32 = 100663300; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_SSL_OPEN_SERVER" +)] +pub const WaitEventClient_WAIT_EVENT_SSL_OPEN_SERVER: u32 = 100663301; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION" +)] +pub const WaitEventClient_WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION: u32 = 100663302; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL" +)] +pub const WaitEventClient_WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL: u32 = 100663303; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventClient::WAIT_EVENT_WAL_SENDER_WRITE_DATA" +)] +pub const WaitEventClient_WAIT_EVENT_WAL_SENDER_WRITE_DATA: u32 = 100663304; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BASEBACKUP_READ" +)] +pub const WaitEventIO_WAIT_EVENT_BASEBACKUP_READ: u32 = 167772160; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BASEBACKUP_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_BASEBACKUP_SYNC: u32 = 167772161; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BASEBACKUP_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_BASEBACKUP_WRITE: u32 = 167772162; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BUFFILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_BUFFILE_READ: u32 = 167772163; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BUFFILE_TRUNCATE" +)] +pub const WaitEventIO_WAIT_EVENT_BUFFILE_TRUNCATE: u32 = 167772164; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_BUFFILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_BUFFILE_WRITE: u32 = 167772165; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_READ: u32 = 167772166; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_SYNC: u32 = 167772167; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE: u32 = 167772168; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_WRITE: u32 = 167772169; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE" +)] +pub const WaitEventIO_WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE: u32 = 167772170; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_COPY_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_COPY_FILE_READ: u32 = 167772171; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_COPY_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_COPY_FILE_WRITE: u32 = 167772172; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_EXTEND" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_EXTEND: u32 = 167772173; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_FLUSH" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_FLUSH: u32 = 167772174; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC: u32 = 167772175; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_PREFETCH" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_PREFETCH: u32 = 167772176; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_READ: u32 = 167772177; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_SYNC: u32 = 167772178; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_TRUNCATE" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_TRUNCATE: u32 = 167772179; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DATA_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_DATA_FILE_WRITE: u32 = 167772180; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DSM_ALLOCATE" +)] +pub const WaitEventIO_WAIT_EVENT_DSM_ALLOCATE: u32 = 167772181; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_DSM_FILL_ZERO_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_DSM_FILL_ZERO_WRITE: u32 = 167772182; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ: u32 = 167772183; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC: u32 = 167772184; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE: u32 = 167772185; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_CREATE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_CREATE_READ: u32 = 167772186; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_CREATE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_CREATE_SYNC: u32 = 167772187; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_CREATE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_CREATE_WRITE: u32 = 167772188; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ" +)] +pub const WaitEventIO_WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ: u32 = 167772189; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC: u32 = 167772190; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC: u32 = 167772191; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE: u32 = 167772192; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_SYNC: u32 = 167772193; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE: u32 = 167772194; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_LOGICAL_REWRITE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_LOGICAL_REWRITE_WRITE: u32 = 167772195; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_RELATION_MAP_READ" +)] +pub const WaitEventIO_WAIT_EVENT_RELATION_MAP_READ: u32 = 167772196; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_RELATION_MAP_REPLACE" +)] +pub const WaitEventIO_WAIT_EVENT_RELATION_MAP_REPLACE: u32 = 167772197; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_RELATION_MAP_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_RELATION_MAP_WRITE: u32 = 167772198; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REORDER_BUFFER_READ" +)] +pub const WaitEventIO_WAIT_EVENT_REORDER_BUFFER_READ: u32 = 167772199; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REORDER_BUFFER_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_REORDER_BUFFER_WRITE: u32 = 167772200; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ" +)] +pub const WaitEventIO_WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ: u32 = 167772201; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_READ" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_READ: u32 = 167772202; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC: u32 = 167772203; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_SYNC: u32 = 167772204; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_REPLICATION_SLOT_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_REPLICATION_SLOT_WRITE: u32 = 167772205; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_FLUSH_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_FLUSH_SYNC: u32 = 167772206; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_READ" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_READ: u32 = 167772207; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_SYNC: u32 = 167772208; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SLRU_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_SLRU_WRITE: u32 = 167772209; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SNAPBUILD_READ" +)] +pub const WaitEventIO_WAIT_EVENT_SNAPBUILD_READ: u32 = 167772210; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SNAPBUILD_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_SNAPBUILD_SYNC: u32 = 167772211; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_SNAPBUILD_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_SNAPBUILD_WRITE: u32 = 167772212; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC: u32 = 167772213; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE: u32 = 167772214; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_READ: u32 = 167772215; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_SYNC: u32 = 167772216; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TIMELINE_HISTORY_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_TIMELINE_HISTORY_WRITE: u32 = 167772217; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TWOPHASE_FILE_READ" +)] +pub const WaitEventIO_WAIT_EVENT_TWOPHASE_FILE_READ: u32 = 167772218; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TWOPHASE_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_TWOPHASE_FILE_SYNC: u32 = 167772219; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_TWOPHASE_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_TWOPHASE_FILE_WRITE: u32 = 167772220; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_VERSION_FILE_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_VERSION_FILE_SYNC: u32 = 167772221; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_VERSION_FILE_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_VERSION_FILE_WRITE: u32 = 167772222; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ: u32 = 167772223; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_BOOTSTRAP_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_BOOTSTRAP_SYNC: u32 = 167772224; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_BOOTSTRAP_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_BOOTSTRAP_WRITE: u32 = 167772225; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_COPY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_COPY_READ: u32 = 167772226; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_COPY_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_COPY_SYNC: u32 = 167772227; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_COPY_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_COPY_WRITE: u32 = 167772228; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_INIT_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_INIT_SYNC: u32 = 167772229; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_INIT_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_INIT_WRITE: u32 = 167772230; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_READ: u32 = 167772231; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SUMMARY_READ" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SUMMARY_READ: u32 = 167772232; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SUMMARY_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SUMMARY_WRITE: u32 = 167772233; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SYNC" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SYNC: u32 = 167772234; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN: u32 = 167772235; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIO::WAIT_EVENT_WAL_WRITE" +)] +pub const WaitEventIO_WAIT_EVENT_WAL_WRITE: u32 = 167772236; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_APPEND_READY" +)] +pub const WaitEventIPC_WAIT_EVENT_APPEND_READY: u32 = 134217728; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND: u32 = 134217729; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_ARCHIVE_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_ARCHIVE_COMMAND: u32 = 134217730; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BACKEND_TERMINATION" +)] +pub const WaitEventIPC_WAIT_EVENT_BACKEND_TERMINATION: u32 = 134217731; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE" +)] +pub const WaitEventIPC_WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE: u32 = 134217732; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BGWORKER_SHUTDOWN" +)] +pub const WaitEventIPC_WAIT_EVENT_BGWORKER_SHUTDOWN: u32 = 134217733; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BGWORKER_STARTUP" +)] +pub const WaitEventIPC_WAIT_EVENT_BGWORKER_STARTUP: u32 = 134217734; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BTREE_PAGE" +)] +pub const WaitEventIPC_WAIT_EVENT_BTREE_PAGE: u32 = 134217735; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_BUFFER_IO" +)] +pub const WaitEventIPC_WAIT_EVENT_BUFFER_IO: u32 = 134217736; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE: u32 = 134217737; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_DELAY_START" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_DELAY_START: u32 = 134217738; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_DONE" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_DONE: u32 = 134217739; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_CHECKPOINT_START" +)] +pub const WaitEventIPC_WAIT_EVENT_CHECKPOINT_START: u32 = 134217740; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_EXECUTE_GATHER" +)] +pub const WaitEventIPC_WAIT_EVENT_EXECUTE_GATHER: u32 = 134217741; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BATCH_ALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BATCH_ALLOCATE: u32 = 134217742; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BATCH_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BATCH_ELECT: u32 = 134217743; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BATCH_LOAD" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BATCH_LOAD: u32 = 134217744; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_ALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_ALLOCATE: u32 = 134217745; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_ELECT: u32 = 134217746; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_HASH_INNER" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_HASH_INNER: u32 = 134217747; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_BUILD_HASH_OUTER" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_BUILD_HASH_OUTER: u32 = 134217748; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_DECIDE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: u32 = 134217749; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_ELECT: u32 = 134217750; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_FINISH" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_FINISH: u32 = 134217751; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE: u32 = 134217752; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: u32 = 134217753; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BUCKETS_ELECT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: u32 = 134217754; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE: u32 = 134217755; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT" +)] +pub const WaitEventIPC_WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: u32 = 134217756; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_APPLY_SEND_DATA" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_APPLY_SEND_DATA: u32 = 134217757; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE: u32 = 134217758; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_SYNC_DATA" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_SYNC_DATA: u32 = 134217759; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE" +)] +pub const WaitEventIPC_WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE: u32 = 134217760; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_INTERNAL" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_INTERNAL: u32 = 134217761; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE: u32 = 134217762; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_RECEIVE" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_RECEIVE: u32 = 134217763; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MESSAGE_QUEUE_SEND" +)] +pub const WaitEventIPC_WAIT_EVENT_MESSAGE_QUEUE_SEND: u32 = 134217764; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_MULTIXACT_CREATION" +)] +pub const WaitEventIPC_WAIT_EVENT_MULTIXACT_CREATION: u32 = 134217765; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PARALLEL_BITMAP_SCAN" +)] +pub const WaitEventIPC_WAIT_EVENT_PARALLEL_BITMAP_SCAN: u32 = 134217766; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN" +)] +pub const WaitEventIPC_WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN: u32 = 134217767; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PARALLEL_FINISH" +)] +pub const WaitEventIPC_WAIT_EVENT_PARALLEL_FINISH: u32 = 134217768; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PROCARRAY_GROUP_UPDATE" +)] +pub const WaitEventIPC_WAIT_EVENT_PROCARRAY_GROUP_UPDATE: u32 = 134217769; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PROC_SIGNAL_BARRIER" +)] +pub const WaitEventIPC_WAIT_EVENT_PROC_SIGNAL_BARRIER: u32 = 134217770; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_PROMOTE" +)] +pub const WaitEventIPC_WAIT_EVENT_PROMOTE: u32 = 134217771; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT: u32 = 134217772; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE: u32 = 134217773; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_END_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_END_COMMAND: u32 = 134217774; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RECOVERY_PAUSE" +)] +pub const WaitEventIPC_WAIT_EVENT_RECOVERY_PAUSE: u32 = 134217775; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_REPLICATION_ORIGIN_DROP" +)] +pub const WaitEventIPC_WAIT_EVENT_REPLICATION_ORIGIN_DROP: u32 = 134217776; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_REPLICATION_SLOT_DROP" +)] +pub const WaitEventIPC_WAIT_EVENT_REPLICATION_SLOT_DROP: u32 = 134217777; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_RESTORE_COMMAND" +)] +pub const WaitEventIPC_WAIT_EVENT_RESTORE_COMMAND: u32 = 134217778; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_SAFE_SNAPSHOT" +)] +pub const WaitEventIPC_WAIT_EVENT_SAFE_SNAPSHOT: u32 = 134217779; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_SYNC_REP" +)] +pub const WaitEventIPC_WAIT_EVENT_SYNC_REP: u32 = 134217780; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_WAL_RECEIVER_EXIT" +)] +pub const WaitEventIPC_WAIT_EVENT_WAL_RECEIVER_EXIT: u32 = 134217781; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_WAL_RECEIVER_WAIT_START" +)] +pub const WaitEventIPC_WAIT_EVENT_WAL_RECEIVER_WAIT_START: u32 = 134217782; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_WAL_SUMMARY_READY" +)] +pub const WaitEventIPC_WAIT_EVENT_WAL_SUMMARY_READY: u32 = 134217783; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventIPC::WAIT_EVENT_XACT_GROUP_UPDATE" +)] +pub const WaitEventIPC_WAIT_EVENT_XACT_GROUP_UPDATE: u32 = 134217784; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_BASE_BACKUP_THROTTLE" +)] +pub const WaitEventTimeout_WAIT_EVENT_BASE_BACKUP_THROTTLE: u32 = 150994944; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_CHECKPOINT_WRITE_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_CHECKPOINT_WRITE_DELAY: u32 = 150994945; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_PG_SLEEP" +)] +pub const WaitEventTimeout_WAIT_EVENT_PG_SLEEP: u32 = 150994946; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_RECOVERY_APPLY_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_RECOVERY_APPLY_DELAY: u32 = 150994947; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL" +)] +pub const WaitEventTimeout_WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL: u32 = 150994948; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_REGISTER_SYNC_REQUEST" +)] +pub const WaitEventTimeout_WAIT_EVENT_REGISTER_SYNC_REQUEST: u32 = 150994949; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_SPIN_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_SPIN_DELAY: u32 = 150994950; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_VACUUM_DELAY" +)] +pub const WaitEventTimeout_WAIT_EVENT_VACUUM_DELAY: u32 = 150994951; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_VACUUM_TRUNCATE" +)] +pub const WaitEventTimeout_WAIT_EVENT_VACUUM_TRUNCATE: u32 = 150994952; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WaitEventTimeout::WAIT_EVENT_WAL_SUMMARIZER_ERROR" +)] +pub const WaitEventTimeout_WAIT_EVENT_WAL_SUMMARIZER_ERROR: u32 = 150994953; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_NONE" +)] +pub const WalCompression_WAL_COMPRESSION_NONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_PGLZ" +)] +pub const WalCompression_WAL_COMPRESSION_PGLZ: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_LZ4" +)] +pub const WalCompression_WAL_COMPRESSION_LZ4: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalCompression::WAL_COMPRESSION_ZSTD" +)] +pub const WalCompression_WAL_COMPRESSION_ZSTD: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalLevel::WAL_LEVEL_MINIMAL" +)] +pub const WalLevel_WAL_LEVEL_MINIMAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalLevel::WAL_LEVEL_REPLICA" +)] +pub const WalLevel_WAL_LEVEL_REPLICA: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalLevel::WAL_LEVEL_LOGICAL" +)] +pub const WalLevel_WAL_LEVEL_LOGICAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_ERROR" +)] +pub const WalRcvExecStatus_WALRCV_ERROR: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COMMAND" +)] +pub const WalRcvExecStatus_WALRCV_OK_COMMAND: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_TUPLES" +)] +pub const WalRcvExecStatus_WALRCV_OK_TUPLES: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COPY_IN" +)] +pub const WalRcvExecStatus_WALRCV_OK_COPY_IN: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COPY_OUT" +)] +pub const WalRcvExecStatus_WALRCV_OK_COPY_OUT: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvExecStatus::WALRCV_OK_COPY_BOTH" +)] +pub const WalRcvExecStatus_WALRCV_OK_COPY_BOTH: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STOPPED" +)] +pub const WalRcvState_WALRCV_STOPPED: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STARTING" +)] +pub const WalRcvState_WALRCV_STARTING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STREAMING" +)] +pub const WalRcvState_WALRCV_STREAMING: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_WAITING" +)] +pub const WalRcvState_WALRCV_WAITING: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_RESTARTING" +)] +pub const WalRcvState_WALRCV_RESTARTING: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalRcvState::WALRCV_STOPPING" +)] +pub const WalRcvState_WALRCV_STOPPING: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_FSYNC" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_FSYNC: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_FDATASYNC" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_FDATASYNC: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_OPEN" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_OPEN: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_FSYNC_WRITETHROUGH" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_FSYNC_WRITETHROUGH: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WalSyncMethod::WAL_SYNC_METHOD_OPEN_DSYNC" +)] +pub const WalSyncMethod_WAL_SYNC_METHOD_OPEN_DSYNC: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_DONE" +)] +pub const WindowAggStatus_WINDOWAGG_DONE: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_RUN" +)] +pub const WindowAggStatus_WINDOWAGG_RUN: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_PASSTHROUGH" +)] +pub const WindowAggStatus_WINDOWAGG_PASSTHROUGH: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::WindowAggStatus::WINDOWAGG_PASSTHROUGH_STRICT" +)] +pub const WindowAggStatus_WINDOWAGG_PASSTHROUGH_STRICT: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_None")] +pub const XLTW_Oper_XLTW_None: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_Update")] +pub const XLTW_Oper_XLTW_Update: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_Delete")] +pub const XLTW_Oper_XLTW_Delete: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLTW_Oper::XLTW_Lock")] +pub const XLTW_Oper_XLTW_Lock: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_LockUpdated" +)] +pub const XLTW_Oper_XLTW_LockUpdated: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_InsertIndex" +)] +pub const XLTW_Oper_XLTW_InsertIndex: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_InsertIndexUnique" +)] +pub const XLTW_Oper_XLTW_InsertIndexUnique: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_FetchUpdated" +)] +pub const XLTW_Oper_XLTW_FetchUpdated: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLTW_Oper::XLTW_RecheckExclusionConstr" +)] +pub const XLTW_Oper_XLTW_RecheckExclusionConstr: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogPageReadResult::XLREAD_SUCCESS" +)] +pub const XLogPageReadResult_XLREAD_SUCCESS: i32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogPageReadResult::XLREAD_FAIL" +)] +pub const XLogPageReadResult_XLREAD_FAIL: i32 = -1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogPageReadResult::XLREAD_WOULDBLOCK" +)] +pub const XLogPageReadResult_XLREAD_WOULDBLOCK: i32 = -2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogRedoAction::BLK_NEEDS_REDO" +)] +pub const XLogRedoAction_BLK_NEEDS_REDO: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XLogRedoAction::BLK_DONE")] +pub const XLogRedoAction_BLK_DONE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogRedoAction::BLK_RESTORED" +)] +pub const XLogRedoAction_BLK_RESTORED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XLogRedoAction::BLK_NOTFOUND" +)] +pub const XLogRedoAction_BLK_NOTFOUND: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_COMMIT" +)] +pub const XactEvent_XACT_EVENT_COMMIT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PARALLEL_COMMIT" +)] +pub const XactEvent_XACT_EVENT_PARALLEL_COMMIT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_ABORT" +)] +pub const XactEvent_XACT_EVENT_ABORT: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PARALLEL_ABORT" +)] +pub const XactEvent_XACT_EVENT_PARALLEL_ABORT: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PREPARE" +)] +pub const XactEvent_XACT_EVENT_PREPARE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PRE_COMMIT" +)] +pub const XactEvent_XACT_EVENT_PRE_COMMIT: u32 = 5; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PARALLEL_PRE_COMMIT" +)] +pub const XactEvent_XACT_EVENT_PARALLEL_PRE_COMMIT: u32 = 6; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XactEvent::XACT_EVENT_PRE_PREPARE" +)] +pub const XactEvent_XACT_EVENT_PRE_PREPARE: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLCONCAT")] +pub const XmlExprOp_IS_XMLCONCAT: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLELEMENT")] +pub const XmlExprOp_IS_XMLELEMENT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLFOREST")] +pub const XmlExprOp_IS_XMLFOREST: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLPARSE")] +pub const XmlExprOp_IS_XMLPARSE: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLPI")] +pub const XmlExprOp_IS_XMLPI: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLROOT")] +pub const XmlExprOp_IS_XMLROOT: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_XMLSERIALIZE")] +pub const XmlExprOp_IS_XMLSERIALIZE: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::XmlExprOp::IS_DOCUMENT")] +pub const XmlExprOp_IS_DOCUMENT: u32 = 7; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XmlOptionType::XMLOPTION_DOCUMENT" +)] +pub const XmlOptionType_XMLOPTION_DOCUMENT: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::XmlOptionType::XMLOPTION_CONTENT" +)] +pub const XmlOptionType_XMLOPTION_CONTENT: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_STREAM")] +pub const __socket_type_SOCK_STREAM: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_DGRAM")] +pub const __socket_type_SOCK_DGRAM: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_RAW")] +pub const __socket_type_SOCK_RAW: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_RDM")] +pub const __socket_type_SOCK_RDM: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__socket_type::SOCK_SEQPACKET" +)] +pub const __socket_type_SOCK_SEQPACKET: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_DCCP")] +pub const __socket_type_SOCK_DCCP: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::__socket_type::SOCK_PACKET")] +pub const __socket_type_SOCK_PACKET: u32 = 10; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__socket_type::SOCK_CLOEXEC" +)] +pub const __socket_type_SOCK_CLOEXEC: u32 = 524288; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::__socket_type::SOCK_NONBLOCK" +)] +pub const __socket_type_SOCK_NONBLOCK: u32 = 2048; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_CREATE")] +pub const dsm_op_DSM_OP_CREATE: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_ATTACH")] +pub const dsm_op_DSM_OP_ATTACH: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DETACH")] +pub const dsm_op_DSM_OP_DETACH: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::dsm_op::DSM_OP_DESTROY")] +pub const dsm_op_DSM_OP_DESTROY: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNull")] +pub const jbvType_jbvNull: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvString")] +pub const jbvType_jbvString: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvNumeric")] +pub const jbvType_jbvNumeric: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvBool")] +pub const jbvType_jbvBool: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvArray")] +pub const jbvType_jbvArray: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvObject")] +pub const jbvType_jbvObject: u32 = 17; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvBinary")] +pub const jbvType_jbvBinary: u32 = 18; +#[deprecated(since = "0.12.0", note = "you want pg_sys::jbvType::jbvDatetime")] +pub const jbvType_jbvDatetime: u32 = 32; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_SQL_ASCII")] +pub const pg_enc_PG_SQL_ASCII: u32 = 0; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_JP")] +pub const pg_enc_PG_EUC_JP: u32 = 1; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_CN")] +pub const pg_enc_PG_EUC_CN: u32 = 2; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_KR")] +pub const pg_enc_PG_EUC_KR: u32 = 3; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_TW")] +pub const pg_enc_PG_EUC_TW: u32 = 4; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_EUC_JIS_2004")] +pub const pg_enc_PG_EUC_JIS_2004: u32 = 5; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_UTF8")] +pub const pg_enc_PG_UTF8: u32 = 6; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_MULE_INTERNAL")] +pub const pg_enc_PG_MULE_INTERNAL: u32 = 7; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN1")] +pub const pg_enc_PG_LATIN1: u32 = 8; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN2")] +pub const pg_enc_PG_LATIN2: u32 = 9; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN3")] +pub const pg_enc_PG_LATIN3: u32 = 10; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN4")] +pub const pg_enc_PG_LATIN4: u32 = 11; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN5")] +pub const pg_enc_PG_LATIN5: u32 = 12; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN6")] +pub const pg_enc_PG_LATIN6: u32 = 13; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN7")] +pub const pg_enc_PG_LATIN7: u32 = 14; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN8")] +pub const pg_enc_PG_LATIN8: u32 = 15; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN9")] +pub const pg_enc_PG_LATIN9: u32 = 16; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_LATIN10")] +pub const pg_enc_PG_LATIN10: u32 = 17; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1256")] +pub const pg_enc_PG_WIN1256: u32 = 18; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1258")] +pub const pg_enc_PG_WIN1258: u32 = 19; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN866")] +pub const pg_enc_PG_WIN866: u32 = 20; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN874")] +pub const pg_enc_PG_WIN874: u32 = 21; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_KOI8R")] +pub const pg_enc_PG_KOI8R: u32 = 22; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1251")] +pub const pg_enc_PG_WIN1251: u32 = 23; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1252")] +pub const pg_enc_PG_WIN1252: u32 = 24; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_5")] +pub const pg_enc_PG_ISO_8859_5: u32 = 25; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_6")] +pub const pg_enc_PG_ISO_8859_6: u32 = 26; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_7")] +pub const pg_enc_PG_ISO_8859_7: u32 = 27; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_ISO_8859_8")] +pub const pg_enc_PG_ISO_8859_8: u32 = 28; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1250")] +pub const pg_enc_PG_WIN1250: u32 = 29; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1253")] +pub const pg_enc_PG_WIN1253: u32 = 30; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1254")] +pub const pg_enc_PG_WIN1254: u32 = 31; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1255")] +pub const pg_enc_PG_WIN1255: u32 = 32; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_WIN1257")] +pub const pg_enc_PG_WIN1257: u32 = 33; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_KOI8U")] +pub const pg_enc_PG_KOI8U: u32 = 34; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_SJIS")] +pub const pg_enc_PG_SJIS: u32 = 35; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_BIG5")] +pub const pg_enc_PG_BIG5: u32 = 36; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_GBK")] +pub const pg_enc_PG_GBK: u32 = 37; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_UHC")] +pub const pg_enc_PG_UHC: u32 = 38; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_GB18030")] +pub const pg_enc_PG_GB18030: u32 = 39; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_JOHAB")] +pub const pg_enc_PG_JOHAB: u32 = 40; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::PG_SHIFT_JIS_2004")] +pub const pg_enc_PG_SHIFT_JIS_2004: u32 = 41; +#[deprecated(since = "0.12.0", note = "you want pg_sys::pg_enc::_PG_LAST_ENCODING_")] +pub const pg_enc__PG_LAST_ENCODING_: u32 = 42; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_LOCAL" +)] +pub const relopt_kind_RELOPT_KIND_LOCAL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_HEAP" +)] +pub const relopt_kind_RELOPT_KIND_HEAP: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_TOAST" +)] +pub const relopt_kind_RELOPT_KIND_TOAST: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_BTREE" +)] +pub const relopt_kind_RELOPT_KIND_BTREE: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_HASH" +)] +pub const relopt_kind_RELOPT_KIND_HASH: u32 = 8; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_GIN" +)] +pub const relopt_kind_RELOPT_KIND_GIN: u32 = 16; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_GIST" +)] +pub const relopt_kind_RELOPT_KIND_GIST: u32 = 32; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_ATTRIBUTE" +)] +pub const relopt_kind_RELOPT_KIND_ATTRIBUTE: u32 = 64; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_TABLESPACE" +)] +pub const relopt_kind_RELOPT_KIND_TABLESPACE: u32 = 128; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_SPGIST" +)] +pub const relopt_kind_RELOPT_KIND_SPGIST: u32 = 256; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_VIEW" +)] +pub const relopt_kind_RELOPT_KIND_VIEW: u32 = 512; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_BRIN" +)] +pub const relopt_kind_RELOPT_KIND_BRIN: u32 = 1024; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_PARTITIONED" +)] +pub const relopt_kind_RELOPT_KIND_PARTITIONED: u32 = 2048; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_LAST_DEFAULT" +)] +pub const relopt_kind_RELOPT_KIND_LAST_DEFAULT: u32 = 2048; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_kind::RELOPT_KIND_MAX" +)] +pub const relopt_kind_RELOPT_KIND_MAX: u32 = 1073741824; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_BOOL" +)] +pub const relopt_type_RELOPT_TYPE_BOOL: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_INT" +)] +pub const relopt_type_RELOPT_TYPE_INT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_REAL" +)] +pub const relopt_type_RELOPT_TYPE_REAL: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_ENUM" +)] +pub const relopt_type_RELOPT_TYPE_ENUM: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::relopt_type::RELOPT_TYPE_STRING" +)] +pub const relopt_type_RELOPT_TYPE_STRING: u32 = 4; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::shm_mq_result::SHM_MQ_SUCCESS" +)] +pub const shm_mq_result_SHM_MQ_SUCCESS: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::shm_mq_result::SHM_MQ_WOULD_BLOCK" +)] +pub const shm_mq_result_SHM_MQ_WOULD_BLOCK: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::shm_mq_result::SHM_MQ_DETACHED" +)] +pub const shm_mq_result_SHM_MQ_DETACHED: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::subxids_array_status::SUBXIDS_IN_ARRAY" +)] +pub const subxids_array_status_SUBXIDS_IN_ARRAY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::subxids_array_status::SUBXIDS_MISSING" +)] +pub const subxids_array_status_SUBXIDS_MISSING: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::subxids_array_status::SUBXIDS_IN_SUBTRANS" +)] +pub const subxids_array_status_SUBXIDS_IN_SUBTRANS: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::tuplehash_status::tuplehash_SH_EMPTY" +)] +pub const tuplehash_status_tuplehash_SH_EMPTY: u32 = 0; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::tuplehash_status::tuplehash_SH_IN_USE" +)] +pub const tuplehash_status_tuplehash_SH_IN_USE: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_INDIRECT" +)] +pub const vartag_external_VARTAG_INDIRECT: u32 = 1; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_EXPANDED_RO" +)] +pub const vartag_external_VARTAG_EXPANDED_RO: u32 = 2; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_EXPANDED_RW" +)] +pub const vartag_external_VARTAG_EXPANDED_RW: u32 = 3; +#[deprecated( + since = "0.12.0", + note = "you want pg_sys::vartag_external::VARTAG_ONDISK" +)] +pub const vartag_external_VARTAG_ONDISK: u32 = 18;