diff --git a/Cargo.lock b/Cargo.lock index dbcf2d13b6..e3e4b0e3a2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -203,16 +203,16 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.69.2" +version = "0.69.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c69fae65a523209d34240b60abe0c42d33d1045d445c0839d8a4894a736e2d" +checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" dependencies = [ "bitflags 2.4.2", "cexpr", "clang-sys", + "itertools", "lazy_static", "lazycell", - "peeking_take_while", "proc-macro2", "quote", "regex", @@ -328,7 +328,7 @@ dependencies = [ [[package]] name = "cargo-pgrx" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "bzip2", "cargo_metadata", @@ -371,9 +371,9 @@ dependencies = [ [[package]] name = "cargo_metadata" -version = "0.17.0" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7daec1a2a2129eeba1644b220b4647ec537b0b5d4bfd6876fcc5a540056b592" +checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", "cargo-platform", @@ -385,9 +385,9 @@ dependencies = [ [[package]] name = "cargo_toml" -version = "0.16.3" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3f9629bc6c4388ea699781dc988c2b99766d7679b151c81990b4fa1208fafd3" +checksum = "3dc9f7a067415ab5058020f04c60ec7b557084dbec0e021217bbabc7a8d38d14" dependencies = [ "serde", "toml", @@ -440,13 +440,13 @@ dependencies = [ [[package]] name = "clap-cargo" -version = "0.11.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25122ca6ebad5f53578c26638afd9f0160426969970dc37ec6c363ff6b082ebd" +checksum = "f6e2fd20c8f8c7cc395f69a86a61eb9d93e1de8fadc00338508cde2ffc656388" dependencies = [ + "anstyle", "cargo_metadata", "clap", - "doc-comment", ] [[package]] @@ -671,12 +671,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "doc-comment" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" - [[package]] name = "either" version = "1.9.0" @@ -1016,6 +1010,15 @@ dependencies = [ "hashbrown 0.14.3", ] +[[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.10" @@ -1393,12 +1396,6 @@ dependencies = [ "libc", ] -[[package]] -name = "peeking_take_while" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" - [[package]] name = "percent-encoding" version = "2.3.1" @@ -1428,7 +1425,7 @@ dependencies = [ [[package]] name = "pgrx" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "atomic-traits", "bitflags 2.4.2", @@ -1451,7 +1448,7 @@ dependencies = [ [[package]] name = "pgrx-macros" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "pgrx-sql-entity-graph", "proc-macro2", @@ -1462,7 +1459,7 @@ dependencies = [ [[package]] name = "pgrx-pg-config" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "cargo_toml", "eyre", @@ -1479,7 +1476,7 @@ dependencies = [ [[package]] name = "pgrx-pg-sys" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "bindgen", "clang-sys", @@ -1500,7 +1497,7 @@ dependencies = [ [[package]] name = "pgrx-sql-entity-graph" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "convert_case", "eyre", @@ -1516,7 +1513,7 @@ dependencies = [ [[package]] name = "pgrx-tests" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" dependencies = [ "clap-cargo", "eyre", @@ -2072,9 +2069,9 @@ checksum = "a3f0bf26fd526d2a95683cd0f87bf103b8539e2ca1ef48ce002d67aad59aa0b4" [[package]] name = "serde" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] @@ -2103,9 +2100,9 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", @@ -2275,9 +2272,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "syn" -version = "2.0.48" +version = "2.0.52" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "b699d15b36d1f02c3e7c69f8ffef53de37aefae075d8488d4ba1a7788d574a07" dependencies = [ "proc-macro2", "quote", @@ -2500,9 +2497,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.8" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" +checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290" dependencies = [ "serde", "serde_spanned", @@ -2521,9 +2518,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.21.0" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" +checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6" dependencies = [ "indexmap", "serde", @@ -3032,9 +3029,9 @@ checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" [[package]] name = "winnow" -version = "0.5.35" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1931d78a9c73861da0134f453bb1f790ce49b2e30eba8410b4b79bac72b46a2d" +checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8" dependencies = [ "memchr", ] diff --git a/Cargo.toml b/Cargo.toml index e44f59a96e..02085b7719 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,12 +51,14 @@ members = [ cargo-pgrx = { path = "cargo-pgrx" } [workspace.dependencies] -pgrx-macros = { path = "./pgrx-macros", version = "=0.12.0-alpha.0" } -pgrx-pg-sys = { path = "./pgrx-pg-sys", version = "=0.12.0-alpha.0" } -pgrx-sql-entity-graph = { path = "./pgrx-sql-entity-graph", version = "=0.12.0-alpha.0" } -pgrx-pg-config = { path = "./pgrx-pg-config", version = "=0.12.0-alpha.0" } +pgrx-macros = { path = "./pgrx-macros", version = "=0.12.0-alpha.1" } +pgrx-pg-sys = { path = "./pgrx-pg-sys", version = "=0.12.0-alpha.1" } +pgrx-sql-entity-graph = { path = "./pgrx-sql-entity-graph", version = "=0.12.0-alpha.1" } +pgrx-pg-config = { path = "./pgrx-pg-config", version = "=0.12.0-alpha.1" } -cargo_toml = "0.16" # used for building projects +cargo_metadata = "0.18.0" +cargo_toml = "0.19" # used for building projects +clap-cargo = { version = "0.14.0", features = [ "cargo_metadata" ] } eyre = "0.6.9" # simplifies error-handling libc = "0.2" # FFI compat owo-colors = "3.5" # for output highlighting @@ -64,6 +66,7 @@ proc-macro2 = { version = "1.0.78", features = [ "span-locations" ] } quote = "1.0.33" regex = "1.1" # used for build/test syn = { version = "2", features = [ "extra-traits", "full", "parsing" ] } +toml = "0.8" # our config files thiserror = "1" unescape = "0.1.0" # for escaped-character-handling url = "2.4.1" # the non-existent std::web diff --git a/cargo-pgrx/Cargo.toml b/cargo-pgrx/Cargo.toml index 27486ec6bf..93fd6ca376 100644 --- a/cargo-pgrx/Cargo.toml +++ b/cargo-pgrx/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "cargo-pgrx" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "Cargo subcommand for 'pgrx' to make Postgres extension development easy" @@ -27,17 +27,17 @@ edition = "2021" pgrx-pg-config.workspace = true pgrx-sql-entity-graph.workspace = true +cargo_metadata.workspace = true cargo_toml.workspace = true +clap-cargo.workspace = true libc.workspace = true regex.workspace = true +toml.workspace = true -cargo_metadata = "0.17.0" clap = { version = "4.4.2", features = [ "env", "suggestions", "cargo", "derive", "wrap_help" ] } -clap-cargo = { version = "0.11.0", features = [ "cargo_metadata" ] } jobslot = "0.2.12" # as seen in gmake -j{N} semver = "1.0.20" # checking pgrx versions match tempfile = "3.8.0" -toml = "0.8.2" # our config files # SQL schema generation object = { version = "0.32.1", default-features = false, features = [ "std" ] } diff --git a/cargo-pgrx/src/templates/cargo_toml b/cargo-pgrx/src/templates/cargo_toml index efd14967dd..775fa9abeb 100644 --- a/cargo-pgrx/src/templates/cargo_toml +++ b/cargo-pgrx/src/templates/cargo_toml @@ -20,10 +20,10 @@ pg16 = ["pgrx/pg16", "pgrx-tests/pg16" ] pg_test = [] [dependencies] -pgrx = "=0.12.0-alpha.0" +pgrx = "=0.12.0-alpha.1" [dev-dependencies] -pgrx-tests = "=0.12.0-alpha.0" +pgrx-tests = "=0.12.0-alpha.1" [profile.dev] panic = "unwind" diff --git a/nix/templates/default/Cargo.toml b/nix/templates/default/Cargo.toml index f01dbdfde3..57004049aa 100644 --- a/nix/templates/default/Cargo.toml +++ b/nix/templates/default/Cargo.toml @@ -26,10 +26,10 @@ pg16 = ["pgrx/pg16", "pgrx-tests/pg16" ] pg_test = [] [dependencies] -pgrx = "=0.12.0-alpha.0" +pgrx = "=0.12.0-alpha.1" [dev-dependencies] -pgrx-tests = "=0.12.0-alpha.0" +pgrx-tests = "=0.12.0-alpha.1" tempfile = "3.2.0" once_cell = "1.7.2" diff --git a/pgrx-macros/Cargo.toml b/pgrx-macros/Cargo.toml index 8134e23db8..cd8131af2a 100644 --- a/pgrx-macros/Cargo.toml +++ b/pgrx-macros/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "pgrx-macros" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "Proc Macros for 'pgrx'" diff --git a/pgrx-pg-config/Cargo.toml b/pgrx-pg-config/Cargo.toml index c9e859ddf7..8257db6688 100644 --- a/pgrx-pg-config/Cargo.toml +++ b/pgrx-pg-config/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "pgrx-pg-config" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "A Postgres pg_config wrapper for 'pgrx'" @@ -27,6 +27,7 @@ cargo_toml.workspace = true eyre.workspace = true owo-colors.workspace = true thiserror.workspace = true +toml.workspace = true url.workspace = true home = "0.5.9" @@ -34,4 +35,3 @@ pathsearch = "0.2.0" serde = { version = "1.0", features = [ "derive" ] } serde_derive = "1.0" serde_json = "1.0" -toml = "0.8.2" diff --git a/pgrx-pg-sys/Cargo.toml b/pgrx-pg-sys/Cargo.toml index 6e33d6b114..18e1bc22b2 100644 --- a/pgrx-pg-sys/Cargo.toml +++ b/pgrx-pg-sys/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "pgrx-pg-sys" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "Generated Rust bindings for Postgres internals, for use with 'pgrx'" diff --git a/pgrx-pg-sys/src/include/pg12.rs b/pgrx-pg-sys/src/include/pg12.rs index d56220814c..68178e2f01 100644 --- a/pgrx-pg-sys/src/include/pg12.rs +++ b/pgrx-pg-sys/src/include/pg12.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate as pg_sys; use crate::{Datum, Oid, PgNode}; #[repr(C)] @@ -95,49 +101,6 @@ impl ::std::fmt::Debug for __IncompleteArrayField { fmt.write_str("__IncompleteArrayField") } } -#[repr(C)] -pub struct __BindgenUnionField(::std::marker::PhantomData); -impl __BindgenUnionField { - #[inline] - pub const fn new() -> Self { - __BindgenUnionField(::std::marker::PhantomData) - } - #[inline] - pub unsafe fn as_ref(&self) -> &T { - ::std::mem::transmute(self) - } - #[inline] - pub unsafe fn as_mut(&mut self) -> &mut T { - ::std::mem::transmute(self) - } -} -impl ::std::default::Default for __BindgenUnionField { - #[inline] - fn default() -> Self { - Self::new() - } -} -impl ::std::clone::Clone for __BindgenUnionField { - #[inline] - fn clone(&self) -> Self { - *self - } -} -impl ::std::marker::Copy for __BindgenUnionField {} -impl ::std::fmt::Debug for __BindgenUnionField { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - fmt.write_str("__BindgenUnionField") - } -} -impl ::std::hash::Hash for __BindgenUnionField { - fn hash(&self, _state: &mut H) {} -} -impl ::std::cmp::PartialEq for __BindgenUnionField { - fn eq(&self, _other: &__BindgenUnionField) -> bool { - true - } -} -impl ::std::cmp::Eq for __BindgenUnionField {} pub const PG_DIAG_SEVERITY: u8 = 83u8; pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; pub const PG_DIAG_SQLSTATE: u8 = 67u8; @@ -313,16 +276,16 @@ pub const MAXIMUM_ALIGNOF: u32 = 8; pub const MEMSET_LOOP_LIMIT: u32 = 1024; pub const PACKAGE_BUGREPORT: &[u8; 32] = b"pgsql-bugs@lists.postgresql.org\0"; pub const PACKAGE_NAME: &[u8; 11] = b"PostgreSQL\0"; -pub const PACKAGE_STRING: &[u8; 17] = b"PostgreSQL 12.16\0"; +pub const PACKAGE_STRING: &[u8; 17] = b"PostgreSQL 12.17\0"; pub const PACKAGE_TARNAME: &[u8; 11] = b"postgresql\0"; pub const PACKAGE_URL: &[u8; 1] = b"\0"; -pub const PACKAGE_VERSION: &[u8; 6] = b"12.16\0"; +pub const PACKAGE_VERSION: &[u8; 6] = b"12.17\0"; pub const PG_KRB_SRVNAM: &[u8; 9] = b"postgres\0"; pub const PG_MAJORVERSION: &[u8; 3] = b"12\0"; -pub const PG_VERSION: &[u8; 6] = b"12.16\0"; -pub const PG_VERSION_NUM: u32 = 120016; +pub const PG_VERSION: &[u8; 6] = b"12.17\0"; +pub const PG_VERSION_NUM: u32 = 120017; pub const PG_VERSION_STR: &[u8; 87] = - b"PostgreSQL 12.16 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; + b"PostgreSQL 12.17 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; pub const SIZEOF_LONG: u32 = 8; @@ -393,7 +356,7 @@ 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 = 38; +pub const __GLIBC_MINOR__: u32 = 39; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; @@ -521,6 +484,7 @@ pub const _STRINGS_H: u32 = 1; pub const _STDINT_H: u32 = 1; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; +pub const _BITS_STDINT_LEAST_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; @@ -988,6 +952,8 @@ 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_PASSPIDFD: u32 = 76; +pub const SO_PEERPIDFD: u32 = 77; pub const SO_TIMESTAMP: u32 = 29; pub const SO_TIMESTAMPNS: u32 = 35; pub const SO_TIMESTAMPING: u32 = 37; @@ -1054,6 +1020,7 @@ pub const IP_PMTUDISC_PROBE: u32 = 3; pub const IP_PMTUDISC_INTERFACE: u32 = 4; pub const IP_PMTUDISC_OMIT: u32 = 5; pub const IP_LOCAL_PORT_RANGE: u32 = 51; +pub const IP_PROTOCOL: u32 = 52; pub const SOL_IP: u32 = 0; pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; @@ -1182,7 +1149,7 @@ pub const NI_DGRAM: u32 = 16; pub const _PWD_H: u32 = 1; pub const NSS_BUFLEN_PASSWD: u32 = 1024; pub const PGINVALID_SOCKET: i32 = -1; -pub const PG_BACKEND_VERSIONSTR: &[u8; 29] = b"postgres (PostgreSQL) 12.16\n\0"; +pub const PG_BACKEND_VERSIONSTR: &[u8; 29] = b"postgres (PostgreSQL) 12.17\n\0"; pub const EXE: &[u8; 1] = b"\0"; pub const DEVNULL: &[u8; 10] = b"/dev/null\0"; pub const USE_REPL_SNPRINTF: u32 = 1; @@ -3182,6 +3149,11 @@ pub const XLOG_OVERWRITE_CONTRECORD: u32 = 208; 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 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 CACHEDPLANSOURCE_MAGIC: u32 = 195726186; pub const CACHEDPLAN_MAGIC: u32 = 953717834; pub const CACHEDEXPR_MAGIC: u32 = 838275847; @@ -4976,10 +4948,9 @@ pub const vartag_external_VARTAG_EXPANDED_RW: vartag_external = 3; pub const vartag_external_VARTAG_ONDISK: vartag_external = 18; pub type vartag_external = ::std::os::raw::c_uint; #[repr(C)] -pub struct varattrib_4b { - pub va_4byte: __BindgenUnionField, - pub va_compressed: __BindgenUnionField, - pub bindgen_union_field: [u32; 2usize], +pub union varattrib_4b { + pub va_4byte: ::std::mem::ManuallyDrop, + pub va_compressed: ::std::mem::ManuallyDrop, } #[repr(C)] #[derive(Debug, Default)] @@ -9000,11 +8971,6 @@ pub struct ParallelHashJoinState { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct ExprEvalStep { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct CopyMultiInsertBuffer { _unused: [u8; 0], } @@ -10431,35 +10397,10 @@ impl Default for GroupState { } } } -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerAggData { - _unused: [u8; 0], -} pub type AggStatePerAgg = *mut AggStatePerAggData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerTransData { - _unused: [u8; 0], -} pub type AggStatePerTrans = *mut AggStatePerTransData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerGroupData { - _unused: [u8; 0], -} pub type AggStatePerGroup = *mut AggStatePerGroupData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerPhaseData { - _unused: [u8; 0], -} pub type AggStatePerPhase = *mut AggStatePerPhaseData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerHashData { - _unused: [u8; 0], -} pub type AggStatePerHash = *mut AggStatePerHashData; #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -14675,6 +14616,7 @@ pub const SEGV_ADIDERR: _bindgen_ty_13 = 6; pub const SEGV_ADIPERR: _bindgen_ty_13 = 7; pub const SEGV_MTEAERR: _bindgen_ty_13 = 8; pub const SEGV_MTESERR: _bindgen_ty_13 = 9; +pub const SEGV_CPERR: _bindgen_ty_13 = 10; pub type _bindgen_ty_13 = ::std::os::raw::c_uint; pub const BUS_ADRALN: _bindgen_ty_14 = 1; pub const BUS_ADRERR: _bindgen_ty_14 = 2; @@ -20460,6 +20402,989 @@ impl Default for ControlFileData { } } } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub numInputs: ::std::os::raw::c_int, + pub numTransInputs: ::std::os::raw::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: ::std::os::raw::c_int, + pub numDistinctCols: ::std::os::raw::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 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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy, + pub numsets: ::std::os::raw::c_int, + pub gset_lengths: *mut ::std::os::raw::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, +} +impl Default for AggStatePerPhaseData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub numhashGrpCols: ::std::os::raw::c_int, + pub largestGrpColIdx: ::std::os::raw::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExecEvalSubroutine = ::std::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalRowtypeCache { + pub cacheptr: *mut ::std::os::raw::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const ExprEvalOp_EEOP_DONE: ExprEvalOp = 0; +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: ExprEvalOp = 1; +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: ExprEvalOp = 2; +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: ExprEvalOp = 3; +pub const ExprEvalOp_EEOP_INNER_VAR: ExprEvalOp = 4; +pub const ExprEvalOp_EEOP_OUTER_VAR: ExprEvalOp = 5; +pub const ExprEvalOp_EEOP_SCAN_VAR: ExprEvalOp = 6; +pub const ExprEvalOp_EEOP_INNER_SYSVAR: ExprEvalOp = 7; +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: ExprEvalOp = 8; +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: ExprEvalOp = 9; +pub const ExprEvalOp_EEOP_WHOLEROW: ExprEvalOp = 10; +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: ExprEvalOp = 11; +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: ExprEvalOp = 12; +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: ExprEvalOp = 13; +pub const ExprEvalOp_EEOP_ASSIGN_TMP: ExprEvalOp = 14; +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: ExprEvalOp = 15; +pub const ExprEvalOp_EEOP_CONST: ExprEvalOp = 16; +pub const ExprEvalOp_EEOP_FUNCEXPR: ExprEvalOp = 17; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: ExprEvalOp = 18; +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: ExprEvalOp = 19; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: ExprEvalOp = 20; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: ExprEvalOp = 21; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: ExprEvalOp = 22; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: ExprEvalOp = 23; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: ExprEvalOp = 24; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: ExprEvalOp = 25; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: ExprEvalOp = 26; +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: ExprEvalOp = 27; +pub const ExprEvalOp_EEOP_QUAL: ExprEvalOp = 28; +pub const ExprEvalOp_EEOP_JUMP: ExprEvalOp = 29; +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: ExprEvalOp = 30; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: ExprEvalOp = 31; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: ExprEvalOp = 32; +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: ExprEvalOp = 33; +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: ExprEvalOp = 34; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: ExprEvalOp = 35; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: ExprEvalOp = 36; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: ExprEvalOp = 37; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: ExprEvalOp = 38; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: ExprEvalOp = 39; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: ExprEvalOp = 40; +pub const ExprEvalOp_EEOP_PARAM_EXEC: ExprEvalOp = 41; +pub const ExprEvalOp_EEOP_PARAM_EXTERN: ExprEvalOp = 42; +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: ExprEvalOp = 43; +pub const ExprEvalOp_EEOP_CASE_TESTVAL: ExprEvalOp = 44; +pub const ExprEvalOp_EEOP_MAKE_READONLY: ExprEvalOp = 45; +pub const ExprEvalOp_EEOP_IOCOERCE: ExprEvalOp = 46; +pub const ExprEvalOp_EEOP_DISTINCT: ExprEvalOp = 47; +pub const ExprEvalOp_EEOP_NOT_DISTINCT: ExprEvalOp = 48; +pub const ExprEvalOp_EEOP_NULLIF: ExprEvalOp = 49; +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: ExprEvalOp = 50; +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: ExprEvalOp = 51; +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: ExprEvalOp = 52; +pub const ExprEvalOp_EEOP_ARRAYEXPR: ExprEvalOp = 53; +pub const ExprEvalOp_EEOP_ARRAYCOERCE: ExprEvalOp = 54; +pub const ExprEvalOp_EEOP_ROW: ExprEvalOp = 55; +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: ExprEvalOp = 56; +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: ExprEvalOp = 57; +pub const ExprEvalOp_EEOP_MINMAX: ExprEvalOp = 58; +pub const ExprEvalOp_EEOP_FIELDSELECT: ExprEvalOp = 59; +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: ExprEvalOp = 60; +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: ExprEvalOp = 61; +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPT: ExprEvalOp = 62; +pub const ExprEvalOp_EEOP_SBSREF_OLD: ExprEvalOp = 63; +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: ExprEvalOp = 64; +pub const ExprEvalOp_EEOP_SBSREF_FETCH: ExprEvalOp = 65; +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: ExprEvalOp = 66; +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: ExprEvalOp = 67; +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: ExprEvalOp = 68; +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: ExprEvalOp = 69; +pub const ExprEvalOp_EEOP_SCALARARRAYOP: ExprEvalOp = 70; +pub const ExprEvalOp_EEOP_XMLEXPR: ExprEvalOp = 71; +pub const ExprEvalOp_EEOP_AGGREF: ExprEvalOp = 72; +pub const ExprEvalOp_EEOP_GROUPING_FUNC: ExprEvalOp = 73; +pub const ExprEvalOp_EEOP_WINDOW_FUNC: ExprEvalOp = 74; +pub const ExprEvalOp_EEOP_SUBPLAN: ExprEvalOp = 75; +pub const ExprEvalOp_EEOP_ALTERNATIVE_SUBPLAN: ExprEvalOp = 76; +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: ExprEvalOp = 77; +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: ExprEvalOp = 78; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: ExprEvalOp = 79; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: ExprEvalOp = 80; +pub const ExprEvalOp_EEOP_AGG_INIT_TRANS: ExprEvalOp = 81; +pub const ExprEvalOp_EEOP_AGG_STRICT_TRANS_CHECK: ExprEvalOp = 82; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: ExprEvalOp = 83; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS: ExprEvalOp = 84; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: ExprEvalOp = 85; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: ExprEvalOp = 86; +pub const ExprEvalOp_EEOP_LAST: ExprEvalOp = 87; +pub type ExprEvalOp = ::std::os::raw::c_uint; +#[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 xmlexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_32, + pub aggref: ExprEvalStep__bindgen_ty_1__bindgen_ty_33, + pub grouping_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_34, + pub window_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_35, + pub subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_36, + pub alternative_subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_37, + pub agg_deserialize: ExprEvalStep__bindgen_ty_1__bindgen_ty_38, + pub agg_strict_input_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_39, + pub agg_init_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_40, + pub agg_strict_trans_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_41, + pub agg_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_42, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub attnum: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub paramid: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::std::os::raw::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub op: MinMaxOp, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 state: *mut SubscriptingRefState, + pub off: ::std::os::raw::c_int, + pub isupper: bool, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 state: *mut SubscriptingRefState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_28 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 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_32 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 astate: *mut AggrefExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_33 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 parent: *mut AggState, + pub clauses: *mut List, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_34 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_35 { + pub wfstate: *mut WindowFuncExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_36 { + pub sstate: *mut SubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 asstate: *mut AlternativeSubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 aggstate: *mut AggState, + pub fcinfo_data: FunctionCallInfo, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 args: *mut NullableDatum, + pub nulls: *mut bool, + pub nargs: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 aggstate: *mut AggState, + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_40 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_41 { + pub aggstate: *mut AggState, + pub setno: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_42 { + pub aggstate: *mut AggState, + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_42 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 refelemtype: Oid, + pub refattrlength: int16, + pub refelemlength: int16, + pub refelembyval: bool, + pub refelemalign: ::std::os::raw::c_char, + pub numupper: ::std::os::raw::c_int, + pub upperprovided: [bool; 6usize], + pub upperindex: [::std::os::raw::c_int; 6usize], + pub numlower: ::std::os::raw::c_int, + pub lowerprovided: [bool; 6usize], + pub lowerindex: [::std::os::raw::c_int; 6usize], + pub subscriptvalue: Datum, + pub subscriptnull: bool, + pub replacevalue: Datum, + pub replacenull: bool, + pub prevvalue: Datum, + pub prevnull: bool, +} +impl Default for SubscriptingRefState { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: PlanCacheMode = 0; pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: PlanCacheMode = 1; pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: PlanCacheMode = 2; @@ -25069,7 +25994,6 @@ pub type ProcessUtility_hook_type = ::std::option::Option< ), >; #[repr(C)] -#[repr(align(4))] #[derive(Debug, Default, Copy, Clone)] pub struct WordEntry { pub _bitfield_align_1: [u32; 0], @@ -26883,6 +27807,7 @@ extern "C" { facility: ::std::os::raw::c_int, ); pub fn write_stderr(fmt: *const ::std::os::raw::c_char, ...); + pub fn write_stderr_signal_safe(fmt: *const ::std::os::raw::c_char); pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::std::os::raw::c_void; pub fn MemoryContextAllocZero( context: MemoryContext, @@ -32574,6 +33499,138 @@ extern "C" { ControlFile: *mut ControlFileData, do_sync: bool, ); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::std::os::raw::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size(numAggs: ::std::os::raw::c_int) -> Size; + pub fn aggregate_dummy(fcinfo: FunctionCallInfo) -> Datum; + 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; + 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 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 ExecEvalSubscriptingRef(state: *mut ExprState, op: *mut ExprEvalStep) -> bool; + pub fn ExecEvalSubscriptingRefFetch(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSubscriptingRefOld(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSubscriptingRefAssign(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalConvertRowtype( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalScalarArrayOp(state: *mut ExprState, op: *mut ExprEvalStep); + 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 ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSubPlan( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalAlternativeSubPlan( + 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, + ); + pub fn ExecAggTransReparent( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + newValue: Datum, + newValueIsNull: bool, + oldValue: Datum, + oldValueIsNull: bool, + ) -> Datum; + 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 fn InitPlanCache(); pub fn ResetPlanCache(); pub fn CreateCachedPlan( @@ -33491,11 +34548,6 @@ extern "C" { context: *mut ::std::os::raw::c_void, flags: ::std::os::raw::c_int, ) -> *mut Node; - pub fn raw_expression_tree_walker( - node: *mut Node, - walker: ::std::option::Option bool>, - context: *mut ::std::os::raw::c_void, - ) -> bool; pub fn planstate_tree_walker( planstate: *mut PlanState, walker: ::std::option::Option bool>, @@ -34923,6 +35975,7 @@ extern "C" { ) -> *mut Query; 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) -> *const ::std::os::raw::c_char; pub fn CheckSelectLocking(qry: *mut Query, strength: LockClauseStrength); @@ -34935,6 +35988,12 @@ extern "C" { ); pub fn BuildOnConflictExcludedTargetlist(targetrel: Relation, exclRelIndex: Index) -> *mut List; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind) -> *const ::std::os::raw::c_char; pub fn ParseFuncOrColumn( pstate: *mut ParseState, funcname: *mut List, @@ -37391,7 +38450,6 @@ extern "C" { pub fn timetz_time(fcinfo: FunctionCallInfo) -> Datum; pub fn time_timetz(fcinfo: FunctionCallInfo) -> Datum; pub fn timestamp_to_char(fcinfo: FunctionCallInfo) -> Datum; - pub fn aggregate_dummy(fcinfo: FunctionCallInfo) -> Datum; pub fn timestamp_age(fcinfo: FunctionCallInfo) -> Datum; pub fn timestamp_zone(fcinfo: FunctionCallInfo) -> Datum; pub fn timestamp_izone(fcinfo: FunctionCallInfo) -> Datum; @@ -40100,6 +41158,8 @@ extern "C" { pub static mut planner_hook: planner_hook_type; pub static mut create_upper_paths_hook: create_upper_paths_hook_type; pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub static mut operator_precedence_warning: bool; + pub static mut Transform_null_equals: bool; pub static mut backslash_quote: ::std::os::raw::c_int; pub static mut escape_string_warning: bool; pub static mut standard_conforming_strings: bool; diff --git a/pgrx-pg-sys/src/include/pg12_oids.rs b/pgrx-pg-sys/src/include/pg12_oids.rs index 6adebfb1aa..e87ae423a1 100644 --- a/pgrx-pg-sys/src/include/pg12_oids.rs +++ b/pgrx-pg-sys/src/include/pg12_oids.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate::NotBuiltinOid; #[derive(Copy, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Debug)] pub enum BuiltinOid { diff --git a/pgrx-pg-sys/src/include/pg13.rs b/pgrx-pg-sys/src/include/pg13.rs index 47651fa935..54d6dbee69 100644 --- a/pgrx-pg-sys/src/include/pg13.rs +++ b/pgrx-pg-sys/src/include/pg13.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate as pg_sys; use crate::{Datum, Oid, PgNode}; #[repr(C)] @@ -95,49 +101,6 @@ impl ::std::fmt::Debug for __IncompleteArrayField { fmt.write_str("__IncompleteArrayField") } } -#[repr(C)] -pub struct __BindgenUnionField(::std::marker::PhantomData); -impl __BindgenUnionField { - #[inline] - pub const fn new() -> Self { - __BindgenUnionField(::std::marker::PhantomData) - } - #[inline] - pub unsafe fn as_ref(&self) -> &T { - ::std::mem::transmute(self) - } - #[inline] - pub unsafe fn as_mut(&mut self) -> &mut T { - ::std::mem::transmute(self) - } -} -impl ::std::default::Default for __BindgenUnionField { - #[inline] - fn default() -> Self { - Self::new() - } -} -impl ::std::clone::Clone for __BindgenUnionField { - #[inline] - fn clone(&self) -> Self { - *self - } -} -impl ::std::marker::Copy for __BindgenUnionField {} -impl ::std::fmt::Debug for __BindgenUnionField { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - fmt.write_str("__BindgenUnionField") - } -} -impl ::std::hash::Hash for __BindgenUnionField { - fn hash(&self, _state: &mut H) {} -} -impl ::std::cmp::PartialEq for __BindgenUnionField { - fn eq(&self, _other: &__BindgenUnionField) -> bool { - true - } -} -impl ::std::cmp::Eq for __BindgenUnionField {} pub const PG_DIAG_SEVERITY: u8 = 83u8; pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; pub const PG_DIAG_SQLSTATE: u8 = 67u8; @@ -162,7 +125,7 @@ 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 CONFIGURE_ARGS : & [u8 ; 206] = b" '--prefix=/home/jubilee/.pgrx/13.12/pgrx-install' '--with-pgport=28813' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; +pub const CONFIGURE_ARGS : & [u8 ; 206] = b" '--prefix=/home/jubilee/.pgrx/13.13/pgrx-install' '--with-pgport=28813' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; pub const DEF_PGPORT: u32 = 28813; pub const DEF_PGPORT_STR: &[u8; 6] = b"28813\0"; pub const ENABLE_THREAD_SAFETY: u32 = 1; @@ -305,19 +268,19 @@ pub const MAXIMUM_ALIGNOF: u32 = 8; pub const MEMSET_LOOP_LIMIT: u32 = 1024; pub const PACKAGE_BUGREPORT: &[u8; 32] = b"pgsql-bugs@lists.postgresql.org\0"; pub const PACKAGE_NAME: &[u8; 11] = b"PostgreSQL\0"; -pub const PACKAGE_STRING: &[u8; 17] = b"PostgreSQL 13.12\0"; +pub const PACKAGE_STRING: &[u8; 17] = b"PostgreSQL 13.13\0"; pub const PACKAGE_TARNAME: &[u8; 11] = b"postgresql\0"; pub const PACKAGE_URL: &[u8; 28] = b"https://www.postgresql.org/\0"; -pub const PACKAGE_VERSION: &[u8; 6] = b"13.12\0"; +pub const PACKAGE_VERSION: &[u8; 6] = b"13.13\0"; pub const PG_KRB_SRVNAM: &[u8; 9] = b"postgres\0"; pub const PG_MAJORVERSION: &[u8; 3] = b"13\0"; pub const PG_MAJORVERSION_NUM: u32 = 13; -pub const PG_MINORVERSION_NUM: u32 = 12; +pub const PG_MINORVERSION_NUM: u32 = 13; pub const PG_USE_STDBOOL: u32 = 1; -pub const PG_VERSION: &[u8; 6] = b"13.12\0"; -pub const PG_VERSION_NUM: u32 = 130012; +pub const PG_VERSION: &[u8; 6] = b"13.13\0"; +pub const PG_VERSION_NUM: u32 = 130013; pub const PG_VERSION_STR: &[u8; 87] = - b"PostgreSQL 13.12 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; + b"PostgreSQL 13.13 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; pub const SIZEOF_LONG: u32 = 8; @@ -387,7 +350,7 @@ 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 = 38; +pub const __GLIBC_MINOR__: u32 = 39; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; @@ -515,6 +478,7 @@ pub const _STRINGS_H: u32 = 1; pub const _STDINT_H: u32 = 1; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; +pub const _BITS_STDINT_LEAST_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; @@ -982,6 +946,8 @@ 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_PASSPIDFD: u32 = 76; +pub const SO_PEERPIDFD: u32 = 77; pub const SO_TIMESTAMP: u32 = 29; pub const SO_TIMESTAMPNS: u32 = 35; pub const SO_TIMESTAMPING: u32 = 37; @@ -1048,6 +1014,7 @@ pub const IP_PMTUDISC_PROBE: u32 = 3; pub const IP_PMTUDISC_INTERFACE: u32 = 4; pub const IP_PMTUDISC_OMIT: u32 = 5; pub const IP_LOCAL_PORT_RANGE: u32 = 51; +pub const IP_PROTOCOL: u32 = 52; pub const SOL_IP: u32 = 0; pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; @@ -1176,7 +1143,7 @@ pub const NI_DGRAM: u32 = 16; pub const _PWD_H: u32 = 1; pub const NSS_BUFLEN_PASSWD: u32 = 1024; pub const PGINVALID_SOCKET: i32 = -1; -pub const PG_BACKEND_VERSIONSTR: &[u8; 29] = b"postgres (PostgreSQL) 13.12\n\0"; +pub const PG_BACKEND_VERSIONSTR: &[u8; 29] = b"postgres (PostgreSQL) 13.13\n\0"; pub const EXE: &[u8; 1] = b"\0"; pub const DEVNULL: &[u8; 10] = b"/dev/null\0"; pub const USE_REPL_SNPRINTF: u32 = 1; @@ -2980,6 +2947,7 @@ pub const BPCHAR_BTREE_FAM_OID: Oid = Oid(426); pub const BYTEA_BTREE_FAM_OID: Oid = Oid(428); pub const NETWORK_BTREE_FAM_OID: Oid = Oid(1974); pub const INTEGER_BTREE_FAM_OID: Oid = Oid(1976); +pub const INTERVAL_BTREE_FAM_OID: Oid = Oid(1982); pub const OID_BTREE_FAM_OID: Oid = Oid(1989); pub const TEXT_BTREE_FAM_OID: Oid = Oid(1994); pub const TEXT_PATTERN_BTREE_FAM_OID: Oid = Oid(2095); @@ -3214,6 +3182,19 @@ pub const XLOG_OVERWRITE_CONTRECORD: u32 = 208; 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 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 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 CACHEDPLANSOURCE_MAGIC: u32 = 195726186; pub const CACHEDPLAN_MAGIC: u32 = 953717834; pub const CACHEDEXPR_MAGIC: u32 = 838275847; @@ -3248,14 +3229,6 @@ 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_OPT_NONATOMIC: u32 = 1; -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 HAVE_PLANNERINFO_TYPEDEF: u32 = 1; pub const HAVE_INDEXOPTINFO_TYPEDEF: u32 = 1; pub const HAVE_SPECIALJOININFO_TYPEDEF: u32 = 1; @@ -5020,10 +4993,9 @@ pub const vartag_external_VARTAG_EXPANDED_RW: vartag_external = 3; pub const vartag_external_VARTAG_ONDISK: vartag_external = 18; pub type vartag_external = ::std::os::raw::c_uint; #[repr(C)] -pub struct varattrib_4b { - pub va_4byte: __BindgenUnionField, - pub va_compressed: __BindgenUnionField, - pub bindgen_union_field: [u32; 2usize], +pub union varattrib_4b { + pub va_4byte: ::std::mem::ManuallyDrop, + pub va_compressed: ::std::mem::ManuallyDrop, } #[repr(C)] #[derive(Debug, Default)] @@ -9203,11 +9175,6 @@ pub struct ParallelHashJoinState { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct ExprEvalStep { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct CopyMultiInsertBuffer { _unused: [u8; 0], } @@ -10733,35 +10700,10 @@ pub struct SharedAggInfo { pub num_workers: ::std::os::raw::c_int, pub sinstrument: __IncompleteArrayField, } -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerAggData { - _unused: [u8; 0], -} pub type AggStatePerAgg = *mut AggStatePerAggData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerTransData { - _unused: [u8; 0], -} pub type AggStatePerTrans = *mut AggStatePerTransData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerGroupData { - _unused: [u8; 0], -} pub type AggStatePerGroup = *mut AggStatePerGroupData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerPhaseData { - _unused: [u8; 0], -} pub type AggStatePerPhase = *mut AggStatePerPhaseData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerHashData { - _unused: [u8; 0], -} pub type AggStatePerHash = *mut AggStatePerHashData; #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -15253,6 +15195,7 @@ pub const SEGV_ADIDERR: _bindgen_ty_13 = 6; pub const SEGV_ADIPERR: _bindgen_ty_13 = 7; pub const SEGV_MTEAERR: _bindgen_ty_13 = 8; pub const SEGV_MTESERR: _bindgen_ty_13 = 9; +pub const SEGV_CPERR: _bindgen_ty_13 = 10; pub type _bindgen_ty_13 = ::std::os::raw::c_uint; pub const BUS_ADRALN: _bindgen_ty_14 = 1; pub const BUS_ADRERR: _bindgen_ty_14 = 2; @@ -21360,196 +21303,6 @@ impl Default for ControlFileData { } } } -pub type ResourceOwner = *mut ResourceOwnerData; -pub const ResourceReleasePhase_RESOURCE_RELEASE_BEFORE_LOCKS: ResourceReleasePhase = 0; -pub const ResourceReleasePhase_RESOURCE_RELEASE_LOCKS: ResourceReleasePhase = 1; -pub const ResourceReleasePhase_RESOURCE_RELEASE_AFTER_LOCKS: ResourceReleasePhase = 2; -pub type ResourceReleasePhase = ::std::os::raw::c_uint; -pub type ResourceReleaseCallback = ::std::option::Option< - unsafe extern "C" fn( - phase: ResourceReleasePhase, - isCommit: bool, - isTopLevel: bool, - arg: *mut ::std::os::raw::c_void, - ), ->; -pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: PlanCacheMode = 0; -pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: PlanCacheMode = 1; -pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: PlanCacheMode = 2; -pub type PlanCacheMode = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::std::os::raw::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::std::os::raw::c_char, - pub commandTag: CommandTag, - pub param_types: *mut Oid, - pub num_params: ::std::os::raw::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::std::os::raw::c_void, - pub cursor_options: ::std::os::raw::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: ::std::os::raw::c_int, - pub node: dlist_node, - pub generic_cost: f64, - pub total_custom_cost: f64, - pub num_custom_plans: ::std::os::raw::c_int, -} -impl Default for CachedPlanSource { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::std::os::raw::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: ::std::os::raw::c_int, - pub refcount: ::std::os::raw::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -pub const PortalStrategy_PORTAL_ONE_SELECT: PortalStrategy = 0; -pub const PortalStrategy_PORTAL_ONE_RETURNING: PortalStrategy = 1; -pub const PortalStrategy_PORTAL_ONE_MOD_WITH: PortalStrategy = 2; -pub const PortalStrategy_PORTAL_UTIL_SELECT: PortalStrategy = 3; -pub const PortalStrategy_PORTAL_MULTI_QUERY: PortalStrategy = 4; -pub type PortalStrategy = ::std::os::raw::c_uint; -pub const PortalStatus_PORTAL_NEW: PortalStatus = 0; -pub const PortalStatus_PORTAL_DEFINED: PortalStatus = 1; -pub const PortalStatus_PORTAL_READY: PortalStatus = 2; -pub const PortalStatus_PORTAL_ACTIVE: PortalStatus = 3; -pub const PortalStatus_PORTAL_DONE: PortalStatus = 4; -pub const PortalStatus_PORTAL_FAILED: PortalStatus = 5; -pub type PortalStatus = ::std::os::raw::c_uint; -pub type Portal = *mut PortalData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct PortalData { - pub name: *const ::std::os::raw::c_char, - pub prepStmtName: *const ::std::os::raw::c_char, - pub portalContext: MemoryContext, - pub resowner: ResourceOwner, - pub cleanup: ::std::option::Option, - pub createSubid: SubTransactionId, - pub activeSubid: SubTransactionId, - pub sourceText: *const ::std::os::raw::c_char, - pub commandTag: CommandTag, - pub qc: QueryCompletion, - pub stmts: *mut List, - pub cplan: *mut CachedPlan, - pub portalParams: ParamListInfo, - pub queryEnv: *mut QueryEnvironment, - pub strategy: PortalStrategy, - pub cursorOptions: ::std::os::raw::c_int, - pub run_once: bool, - pub status: PortalStatus, - pub portalPinned: bool, - pub autoHeld: bool, - pub queryDesc: *mut QueryDesc, - pub tupDesc: TupleDesc, - pub formats: *mut int16, - 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, - pub portalSnapshot: Snapshot, - pub createLevel: ::std::os::raw::c_int, -} -impl Default for PortalData { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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 = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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 bgworker_main_type = ::std::option::Option; pub const BgWorkerStartTime_BgWorkerStart_PostmasterStart: BgWorkerStartTime = 0; pub const BgWorkerStartTime_BgWorkerStart_ConsistentState: BgWorkerStartTime = 1; @@ -21678,6 +21431,1147 @@ impl Default for ParallelWorkerContext { } } } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub numInputs: ::std::os::raw::c_int, + pub numTransInputs: ::std::os::raw::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: ::std::os::raw::c_int, + pub numDistinctCols: ::std::os::raw::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 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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy, + pub numsets: ::std::os::raw::c_int, + pub gset_lengths: *mut ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub numhashGrpCols: ::std::os::raw::c_int, + pub largestGrpColIdx: ::std::os::raw::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ExecEvalSubroutine = ::std::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalRowtypeCache { + pub cacheptr: *mut ::std::os::raw::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const ExprEvalOp_EEOP_DONE: ExprEvalOp = 0; +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: ExprEvalOp = 1; +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: ExprEvalOp = 2; +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: ExprEvalOp = 3; +pub const ExprEvalOp_EEOP_INNER_VAR: ExprEvalOp = 4; +pub const ExprEvalOp_EEOP_OUTER_VAR: ExprEvalOp = 5; +pub const ExprEvalOp_EEOP_SCAN_VAR: ExprEvalOp = 6; +pub const ExprEvalOp_EEOP_INNER_SYSVAR: ExprEvalOp = 7; +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: ExprEvalOp = 8; +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: ExprEvalOp = 9; +pub const ExprEvalOp_EEOP_WHOLEROW: ExprEvalOp = 10; +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: ExprEvalOp = 11; +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: ExprEvalOp = 12; +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: ExprEvalOp = 13; +pub const ExprEvalOp_EEOP_ASSIGN_TMP: ExprEvalOp = 14; +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: ExprEvalOp = 15; +pub const ExprEvalOp_EEOP_CONST: ExprEvalOp = 16; +pub const ExprEvalOp_EEOP_FUNCEXPR: ExprEvalOp = 17; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: ExprEvalOp = 18; +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: ExprEvalOp = 19; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: ExprEvalOp = 20; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: ExprEvalOp = 21; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: ExprEvalOp = 22; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: ExprEvalOp = 23; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: ExprEvalOp = 24; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: ExprEvalOp = 25; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: ExprEvalOp = 26; +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: ExprEvalOp = 27; +pub const ExprEvalOp_EEOP_QUAL: ExprEvalOp = 28; +pub const ExprEvalOp_EEOP_JUMP: ExprEvalOp = 29; +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: ExprEvalOp = 30; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: ExprEvalOp = 31; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: ExprEvalOp = 32; +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: ExprEvalOp = 33; +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: ExprEvalOp = 34; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: ExprEvalOp = 35; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: ExprEvalOp = 36; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: ExprEvalOp = 37; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: ExprEvalOp = 38; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: ExprEvalOp = 39; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: ExprEvalOp = 40; +pub const ExprEvalOp_EEOP_PARAM_EXEC: ExprEvalOp = 41; +pub const ExprEvalOp_EEOP_PARAM_EXTERN: ExprEvalOp = 42; +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: ExprEvalOp = 43; +pub const ExprEvalOp_EEOP_CASE_TESTVAL: ExprEvalOp = 44; +pub const ExprEvalOp_EEOP_MAKE_READONLY: ExprEvalOp = 45; +pub const ExprEvalOp_EEOP_IOCOERCE: ExprEvalOp = 46; +pub const ExprEvalOp_EEOP_DISTINCT: ExprEvalOp = 47; +pub const ExprEvalOp_EEOP_NOT_DISTINCT: ExprEvalOp = 48; +pub const ExprEvalOp_EEOP_NULLIF: ExprEvalOp = 49; +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: ExprEvalOp = 50; +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: ExprEvalOp = 51; +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: ExprEvalOp = 52; +pub const ExprEvalOp_EEOP_ARRAYEXPR: ExprEvalOp = 53; +pub const ExprEvalOp_EEOP_ARRAYCOERCE: ExprEvalOp = 54; +pub const ExprEvalOp_EEOP_ROW: ExprEvalOp = 55; +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: ExprEvalOp = 56; +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: ExprEvalOp = 57; +pub const ExprEvalOp_EEOP_MINMAX: ExprEvalOp = 58; +pub const ExprEvalOp_EEOP_FIELDSELECT: ExprEvalOp = 59; +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: ExprEvalOp = 60; +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: ExprEvalOp = 61; +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPT: ExprEvalOp = 62; +pub const ExprEvalOp_EEOP_SBSREF_OLD: ExprEvalOp = 63; +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: ExprEvalOp = 64; +pub const ExprEvalOp_EEOP_SBSREF_FETCH: ExprEvalOp = 65; +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: ExprEvalOp = 66; +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: ExprEvalOp = 67; +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: ExprEvalOp = 68; +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: ExprEvalOp = 69; +pub const ExprEvalOp_EEOP_SCALARARRAYOP: ExprEvalOp = 70; +pub const ExprEvalOp_EEOP_XMLEXPR: ExprEvalOp = 71; +pub const ExprEvalOp_EEOP_AGGREF: ExprEvalOp = 72; +pub const ExprEvalOp_EEOP_GROUPING_FUNC: ExprEvalOp = 73; +pub const ExprEvalOp_EEOP_WINDOW_FUNC: ExprEvalOp = 74; +pub const ExprEvalOp_EEOP_SUBPLAN: ExprEvalOp = 75; +pub const ExprEvalOp_EEOP_ALTERNATIVE_SUBPLAN: ExprEvalOp = 76; +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: ExprEvalOp = 77; +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: ExprEvalOp = 78; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: ExprEvalOp = 79; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: ExprEvalOp = 80; +pub const ExprEvalOp_EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: ExprEvalOp = 81; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: ExprEvalOp = 82; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: ExprEvalOp = 83; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: ExprEvalOp = 84; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: ExprEvalOp = 85; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: ExprEvalOp = 86; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYREF: ExprEvalOp = 87; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: ExprEvalOp = 88; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: ExprEvalOp = 89; +pub const ExprEvalOp_EEOP_LAST: ExprEvalOp = 90; +pub type ExprEvalOp = ::std::os::raw::c_uint; +#[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 xmlexpr: ExprEvalStep__bindgen_ty_1__bindgen_ty_32, + pub aggref: ExprEvalStep__bindgen_ty_1__bindgen_ty_33, + pub grouping_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_34, + pub window_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_35, + pub subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_36, + pub alternative_subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_37, + pub agg_deserialize: ExprEvalStep__bindgen_ty_1__bindgen_ty_38, + pub agg_strict_input_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_39, + pub agg_plain_pergroup_nullcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_40, + pub agg_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_41, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub attnum: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub paramid: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::std::os::raw::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub op: MinMaxOp, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 state: *mut SubscriptingRefState, + pub off: ::std::os::raw::c_int, + pub isupper: bool, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 state: *mut SubscriptingRefState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_28 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 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_32 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 astate: *mut AggrefExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_33 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 clauses: *mut List, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_34 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_35 { + pub wfstate: *mut WindowFuncExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_36 { + pub sstate: *mut SubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 asstate: *mut AlternativeSubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 fcinfo_data: FunctionCallInfo, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 args: *mut NullableDatum, + pub nulls: *mut bool, + pub nargs: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_40 { + pub setoff: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 refelemtype: Oid, + pub refattrlength: int16, + pub refelemlength: int16, + pub refelembyval: bool, + pub refelemalign: ::std::os::raw::c_char, + pub numupper: ::std::os::raw::c_int, + pub upperprovided: [bool; 6usize], + pub upperindex: [::std::os::raw::c_int; 6usize], + pub numlower: ::std::os::raw::c_int, + pub lowerprovided: [bool; 6usize], + pub lowerindex: [::std::os::raw::c_int; 6usize], + pub subscriptvalue: Datum, + pub subscriptnull: bool, + pub replacevalue: Datum, + pub replacenull: bool, + pub prevvalue: Datum, + pub prevnull: bool, +} +impl Default for SubscriptingRefState { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub type ResourceOwner = *mut ResourceOwnerData; +pub const ResourceReleasePhase_RESOURCE_RELEASE_BEFORE_LOCKS: ResourceReleasePhase = 0; +pub const ResourceReleasePhase_RESOURCE_RELEASE_LOCKS: ResourceReleasePhase = 1; +pub const ResourceReleasePhase_RESOURCE_RELEASE_AFTER_LOCKS: ResourceReleasePhase = 2; +pub type ResourceReleasePhase = ::std::os::raw::c_uint; +pub type ResourceReleaseCallback = ::std::option::Option< + unsafe extern "C" fn( + phase: ResourceReleasePhase, + isCommit: bool, + isTopLevel: bool, + arg: *mut ::std::os::raw::c_void, + ), +>; +pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: PlanCacheMode = 0; +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: PlanCacheMode = 1; +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: PlanCacheMode = 2; +pub type PlanCacheMode = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::std::os::raw::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::std::os::raw::c_char, + pub commandTag: CommandTag, + pub param_types: *mut Oid, + pub num_params: ::std::os::raw::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::std::os::raw::c_void, + pub cursor_options: ::std::os::raw::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: ::std::os::raw::c_int, + pub node: dlist_node, + pub generic_cost: f64, + pub total_custom_cost: f64, + pub num_custom_plans: ::std::os::raw::c_int, +} +impl Default for CachedPlanSource { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::std::os::raw::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: ::std::os::raw::c_int, + pub refcount: ::std::os::raw::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const PortalStrategy_PORTAL_ONE_SELECT: PortalStrategy = 0; +pub const PortalStrategy_PORTAL_ONE_RETURNING: PortalStrategy = 1; +pub const PortalStrategy_PORTAL_ONE_MOD_WITH: PortalStrategy = 2; +pub const PortalStrategy_PORTAL_UTIL_SELECT: PortalStrategy = 3; +pub const PortalStrategy_PORTAL_MULTI_QUERY: PortalStrategy = 4; +pub type PortalStrategy = ::std::os::raw::c_uint; +pub const PortalStatus_PORTAL_NEW: PortalStatus = 0; +pub const PortalStatus_PORTAL_DEFINED: PortalStatus = 1; +pub const PortalStatus_PORTAL_READY: PortalStatus = 2; +pub const PortalStatus_PORTAL_ACTIVE: PortalStatus = 3; +pub const PortalStatus_PORTAL_DONE: PortalStatus = 4; +pub const PortalStatus_PORTAL_FAILED: PortalStatus = 5; +pub type PortalStatus = ::std::os::raw::c_uint; +pub type Portal = *mut PortalData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PortalData { + pub name: *const ::std::os::raw::c_char, + pub prepStmtName: *const ::std::os::raw::c_char, + pub portalContext: MemoryContext, + pub resowner: ResourceOwner, + pub cleanup: ::std::option::Option, + pub createSubid: SubTransactionId, + pub activeSubid: SubTransactionId, + pub sourceText: *const ::std::os::raw::c_char, + pub commandTag: CommandTag, + pub qc: QueryCompletion, + pub stmts: *mut List, + pub cplan: *mut CachedPlan, + pub portalParams: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, + pub strategy: PortalStrategy, + pub cursorOptions: ::std::os::raw::c_int, + pub run_once: bool, + pub status: PortalStatus, + pub portalPinned: bool, + pub autoHeld: bool, + pub queryDesc: *mut QueryDesc, + pub tupDesc: TupleDesc, + pub formats: *mut int16, + 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, + pub portalSnapshot: Snapshot, + pub createLevel: ::std::os::raw::c_int, +} +impl Default for PortalData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 const CostSelector_STARTUP_COST: CostSelector = 0; pub const CostSelector_TOTAL_COST: CostSelector = 1; @@ -26021,7 +26915,6 @@ pub type ProcessUtility_hook_type = ::std::option::Option< ), >; #[repr(C)] -#[repr(align(4))] #[derive(Debug, Default, Copy, Clone)] pub struct WordEntry { pub _bitfield_align_1: [u32; 0], @@ -27777,6 +28670,7 @@ extern "C" { facility: ::std::os::raw::c_int, ); pub fn write_stderr(fmt: *const ::std::os::raw::c_char, ...); + pub fn write_stderr_signal_safe(fmt: *const ::std::os::raw::c_char); pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::std::os::raw::c_void; pub fn MemoryContextAllocZero( context: MemoryContext, @@ -33685,297 +34579,6 @@ extern "C" { ControlFile: *mut ControlFileData, do_sync: bool, ); - pub fn ResourceOwnerCreate( - parent: ResourceOwner, - name: *const ::std::os::raw::c_char, - ) -> ResourceOwner; - pub fn ResourceOwnerRelease( - owner: ResourceOwner, - phase: ResourceReleasePhase, - isCommit: bool, - isTopLevel: bool, - ); - pub fn ResourceOwnerReleaseAllPlanCacheRefs(owner: ResourceOwner); - pub fn ResourceOwnerDelete(owner: ResourceOwner); - pub fn ResourceOwnerGetParent(owner: ResourceOwner) -> ResourceOwner; - pub fn ResourceOwnerNewParent(owner: ResourceOwner, newparent: ResourceOwner); - pub fn RegisterResourceReleaseCallback( - callback: ResourceReleaseCallback, - arg: *mut ::std::os::raw::c_void, - ); - pub fn UnregisterResourceReleaseCallback( - callback: ResourceReleaseCallback, - arg: *mut ::std::os::raw::c_void, - ); - pub fn CreateAuxProcessResourceOwner(); - pub fn ReleaseAuxProcessResources(isCommit: bool); - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::std::os::raw::c_char, - commandTag: CommandTag, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::std::os::raw::c_char, - commandTag: CommandTag, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::std::os::raw::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::std::os::raw::c_void, - cursor_options: ::std::os::raw::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, - useResOwner: bool, - queryEnv: *mut QueryEnvironment, - ) -> *mut CachedPlan; - pub fn ReleaseCachedPlan(plan: *mut CachedPlan, useResOwner: bool); - 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(); - pub fn AtCleanup_Portals(); - pub fn PortalErrorCleanup(); - pub fn AtSubCommit_Portals( - mySubid: SubTransactionId, - parentSubid: SubTransactionId, - parentLevel: ::std::os::raw::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 ::std::os::raw::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 ::std::os::raw::c_char) -> Portal; - pub fn PortalDefineQuery( - portal: Portal, - prepStmtName: *const ::std::os::raw::c_char, - sourceText: *const ::std::os::raw::c_char, - commandTag: CommandTag, - 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 fn SPI_connect() -> ::std::os::raw::c_int; - pub fn SPI_connect_ext(options: ::std::os::raw::c_int) -> ::std::os::raw::c_int; - pub fn SPI_finish() -> ::std::os::raw::c_int; - pub fn SPI_execute( - src: *const ::std::os::raw::c_char, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_plan( - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_plan_with_paramlist( - plan: SPIPlanPtr, - params: ParamListInfo, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_exec( - src: *const ::std::os::raw::c_char, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execp( - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_snapshot( - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - snapshot: Snapshot, - crosscheck_snapshot: Snapshot, - read_only: bool, - fire_triggers: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_with_args( - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_prepare( - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - ) -> SPIPlanPtr; - pub fn SPI_prepare_cursor( - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - cursorOptions: ::std::os::raw::c_int, - ) -> SPIPlanPtr; - pub fn SPI_prepare_params( - src: *const ::std::os::raw::c_char, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::std::os::raw::c_void, - cursorOptions: ::std::os::raw::c_int, - ) -> SPIPlanPtr; - pub fn SPI_keepplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; - pub fn SPI_saveplan(plan: SPIPlanPtr) -> SPIPlanPtr; - pub fn SPI_freeplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; - pub fn SPI_getargtypeid(plan: SPIPlanPtr, argIndex: ::std::os::raw::c_int) -> Oid; - pub fn SPI_getargcount(plan: SPIPlanPtr) -> ::std::os::raw::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: ::std::os::raw::c_int) -> *const ::std::os::raw::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: ::std::os::raw::c_int, - attnum: *mut ::std::os::raw::c_int, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - ) -> HeapTuple; - pub fn SPI_fnumber( - tupdesc: TupleDesc, - fname: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; - pub fn SPI_fname( - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; - pub fn SPI_getvalue( - tuple: HeapTuple, - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; - pub fn SPI_getbinval( - tuple: HeapTuple, - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - isnull: *mut bool, - ) -> Datum; - pub fn SPI_gettype( - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; - pub fn SPI_gettypeid(tupdesc: TupleDesc, fnumber: ::std::os::raw::c_int) -> Oid; - pub fn SPI_getrelname(rel: Relation) -> *mut ::std::os::raw::c_char; - pub fn SPI_getnspname(rel: Relation) -> *mut ::std::os::raw::c_char; - pub fn SPI_palloc(size: Size) -> *mut ::std::os::raw::c_void; - pub fn SPI_repalloc( - pointer: *mut ::std::os::raw::c_void, - size: Size, - ) -> *mut ::std::os::raw::c_void; - pub fn SPI_pfree(pointer: *mut ::std::os::raw::c_void); - pub fn SPI_datumTransfer(value: Datum, typByVal: bool, typLen: ::std::os::raw::c_int) -> Datum; - pub fn SPI_freetuple(pointer: HeapTuple); - pub fn SPI_freetuptable(tuptable: *mut SPITupleTable); - pub fn SPI_cursor_open( - name: *const ::std::os::raw::c_char, - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - ) -> Portal; - pub fn SPI_cursor_open_with_args( - name: *const ::std::os::raw::c_char, - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - cursorOptions: ::std::os::raw::c_int, - ) -> Portal; - pub fn SPI_cursor_open_with_paramlist( - name: *const ::std::os::raw::c_char, - plan: SPIPlanPtr, - params: ParamListInfo, - read_only: bool, - ) -> Portal; - pub fn SPI_cursor_find(name: *const ::std::os::raw::c_char) -> Portal; - pub fn SPI_cursor_fetch(portal: Portal, forward: bool, count: ::std::os::raw::c_long); - pub fn SPI_cursor_move(portal: Portal, forward: bool, count: ::std::os::raw::c_long); - pub fn SPI_scroll_cursor_fetch( - arg1: Portal, - direction: FetchDirection, - count: ::std::os::raw::c_long, - ); - pub fn SPI_scroll_cursor_move( - arg1: Portal, - direction: FetchDirection, - count: ::std::os::raw::c_long, - ); - pub fn SPI_cursor_close(portal: Portal); - pub fn SPI_register_relation(enr: EphemeralNamedRelation) -> ::std::os::raw::c_int; - pub fn SPI_unregister_relation(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; - pub fn SPI_register_trigger_data(tdata: *mut TriggerData) -> ::std::os::raw::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 SPICleanup(); - pub fn AtEOXact_SPI(isCommit: bool); - pub fn AtEOSubXact_SPI(isCommit: bool, mySubid: SubTransactionId); - pub fn SPI_inside_nonatomic_context() -> bool; pub fn RegisterBackgroundWorker(worker: *mut BackgroundWorker); pub fn RegisterDynamicBackgroundWorker( worker: *mut BackgroundWorker, @@ -34054,6 +34657,445 @@ extern "C" { pub fn AtEOSubXact_Parallel(isCommit: bool, mySubId: SubTransactionId); pub fn ParallelWorkerReportLastRecEnd(last_xlog_end: XLogRecPtr); pub fn ParallelWorkerMain(main_arg: Datum); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::std::os::raw::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size( + numTrans: ::std::os::raw::c_int, + tupleWidth: Size, + transitionSpace: Size, + ) -> Size; + pub fn hash_agg_set_limits( + hashentrysize: f64, + input_groups: f64, + used_bits: ::std::os::raw::c_int, + mem_limit: *mut Size, + ngroups_limit: *mut uint64, + num_partitions: *mut ::std::os::raw::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; + 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 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 ExecEvalSubscriptingRef(state: *mut ExprState, op: *mut ExprEvalStep) -> bool; + pub fn ExecEvalSubscriptingRefFetch(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSubscriptingRefOld(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSubscriptingRefAssign(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalConvertRowtype( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalScalarArrayOp(state: *mut ExprState, op: *mut ExprEvalStep); + 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 ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + pub fn ExecEvalSubPlan( + state: *mut ExprState, + op: *mut ExprEvalStep, + econtext: *mut ExprContext, + ); + pub fn ExecEvalAlternativeSubPlan( + 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 ExecAggTransReparent( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + newValue: Datum, + newValueIsNull: bool, + oldValue: Datum, + oldValueIsNull: bool, + ) -> Datum; + 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 fn ResourceOwnerCreate( + parent: ResourceOwner, + name: *const ::std::os::raw::c_char, + ) -> ResourceOwner; + pub fn ResourceOwnerRelease( + owner: ResourceOwner, + phase: ResourceReleasePhase, + isCommit: bool, + isTopLevel: bool, + ); + pub fn ResourceOwnerReleaseAllPlanCacheRefs(owner: ResourceOwner); + pub fn ResourceOwnerDelete(owner: ResourceOwner); + pub fn ResourceOwnerGetParent(owner: ResourceOwner) -> ResourceOwner; + pub fn ResourceOwnerNewParent(owner: ResourceOwner, newparent: ResourceOwner); + pub fn RegisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::std::os::raw::c_void, + ); + pub fn UnregisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::std::os::raw::c_void, + ); + pub fn CreateAuxProcessResourceOwner(); + pub fn ReleaseAuxProcessResources(isCommit: bool); + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::std::os::raw::c_char, + commandTag: CommandTag, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::std::os::raw::c_char, + commandTag: CommandTag, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::std::os::raw::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::std::os::raw::c_void, + cursor_options: ::std::os::raw::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, + useResOwner: bool, + queryEnv: *mut QueryEnvironment, + ) -> *mut CachedPlan; + pub fn ReleaseCachedPlan(plan: *mut CachedPlan, useResOwner: bool); + 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(); + pub fn AtCleanup_Portals(); + pub fn PortalErrorCleanup(); + pub fn AtSubCommit_Portals( + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + parentLevel: ::std::os::raw::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 ::std::os::raw::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 ::std::os::raw::c_char) -> Portal; + pub fn PortalDefineQuery( + portal: Portal, + prepStmtName: *const ::std::os::raw::c_char, + sourceText: *const ::std::os::raw::c_char, + commandTag: CommandTag, + 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 fn SPI_connect() -> ::std::os::raw::c_int; + pub fn SPI_connect_ext(options: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SPI_finish() -> ::std::os::raw::c_int; + pub fn SPI_execute( + src: *const ::std::os::raw::c_char, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_plan( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_plan_with_paramlist( + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_exec( + src: *const ::std::os::raw::c_char, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execp( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_snapshot( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + snapshot: Snapshot, + crosscheck_snapshot: Snapshot, + read_only: bool, + fire_triggers: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_with_args( + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_prepare( + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + ) -> SPIPlanPtr; + pub fn SPI_prepare_cursor( + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + cursorOptions: ::std::os::raw::c_int, + ) -> SPIPlanPtr; + pub fn SPI_prepare_params( + src: *const ::std::os::raw::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::std::os::raw::c_void, + cursorOptions: ::std::os::raw::c_int, + ) -> SPIPlanPtr; + pub fn SPI_keepplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; + pub fn SPI_saveplan(plan: SPIPlanPtr) -> SPIPlanPtr; + pub fn SPI_freeplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; + pub fn SPI_getargtypeid(plan: SPIPlanPtr, argIndex: ::std::os::raw::c_int) -> Oid; + pub fn SPI_getargcount(plan: SPIPlanPtr) -> ::std::os::raw::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: ::std::os::raw::c_int) -> *const ::std::os::raw::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: ::std::os::raw::c_int, + attnum: *mut ::std::os::raw::c_int, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + ) -> HeapTuple; + pub fn SPI_fnumber( + tupdesc: TupleDesc, + fname: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn SPI_fname( + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn SPI_getvalue( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn SPI_getbinval( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn SPI_gettype( + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn SPI_gettypeid(tupdesc: TupleDesc, fnumber: ::std::os::raw::c_int) -> Oid; + pub fn SPI_getrelname(rel: Relation) -> *mut ::std::os::raw::c_char; + pub fn SPI_getnspname(rel: Relation) -> *mut ::std::os::raw::c_char; + pub fn SPI_palloc(size: Size) -> *mut ::std::os::raw::c_void; + pub fn SPI_repalloc( + pointer: *mut ::std::os::raw::c_void, + size: Size, + ) -> *mut ::std::os::raw::c_void; + pub fn SPI_pfree(pointer: *mut ::std::os::raw::c_void); + pub fn SPI_datumTransfer(value: Datum, typByVal: bool, typLen: ::std::os::raw::c_int) -> Datum; + pub fn SPI_freetuple(pointer: HeapTuple); + pub fn SPI_freetuptable(tuptable: *mut SPITupleTable); + pub fn SPI_cursor_open( + name: *const ::std::os::raw::c_char, + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_open_with_args( + name: *const ::std::os::raw::c_char, + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + cursorOptions: ::std::os::raw::c_int, + ) -> Portal; + pub fn SPI_cursor_open_with_paramlist( + name: *const ::std::os::raw::c_char, + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_find(name: *const ::std::os::raw::c_char) -> Portal; + pub fn SPI_cursor_fetch(portal: Portal, forward: bool, count: ::std::os::raw::c_long); + pub fn SPI_cursor_move(portal: Portal, forward: bool, count: ::std::os::raw::c_long); + pub fn SPI_scroll_cursor_fetch( + arg1: Portal, + direction: FetchDirection, + count: ::std::os::raw::c_long, + ); + pub fn SPI_scroll_cursor_move( + arg1: Portal, + direction: FetchDirection, + count: ::std::os::raw::c_long, + ); + pub fn SPI_cursor_close(portal: Portal); + pub fn SPI_register_relation(enr: EphemeralNamedRelation) -> ::std::os::raw::c_int; + pub fn SPI_unregister_relation(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn SPI_register_trigger_data(tdata: *mut TriggerData) -> ::std::os::raw::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 SPICleanup(); + 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; @@ -34596,11 +35638,6 @@ extern "C" { context: *mut ::std::os::raw::c_void, flags: ::std::os::raw::c_int, ) -> *mut Node; - pub fn raw_expression_tree_walker( - node: *mut Node, - walker: ::std::option::Option bool>, - context: *mut ::std::os::raw::c_void, - ) -> bool; pub fn planstate_tree_walker( planstate: *mut PlanState, walker: ::std::option::Option bool>, @@ -36085,6 +37122,7 @@ extern "C" { ) -> *mut Query; 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) -> *const ::std::os::raw::c_char; pub fn CheckSelectLocking(qry: *mut Query, strength: LockClauseStrength); @@ -36097,6 +37135,12 @@ extern "C" { ); pub fn BuildOnConflictExcludedTargetlist(targetrel: Relation, exclRelIndex: Index) -> *mut List; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind) -> *const ::std::os::raw::c_char; pub fn ParseFuncOrColumn( pstate: *mut ParseState, funcname: *mut List, @@ -41298,6 +42342,11 @@ extern "C" { pub static mut VacuumSharedCostBalance: *mut pg_atomic_uint32; pub static mut VacuumActiveNWorkers: *mut pg_atomic_uint32; pub static mut VacuumCostBalanceLocal: ::std::os::raw::c_int; + pub static mut MyBgworkerEntry: *mut BackgroundWorker; + pub static shm_mq_minimum_size: Size; + pub static mut ParallelMessagePending: bool; + pub static mut ParallelWorkerNumber: ::std::os::raw::c_int; + pub static mut InitializingParallelWorker: bool; pub static mut CurrentResourceOwner: ResourceOwner; pub static mut CurTransactionResourceOwner: ResourceOwner; pub static mut TopTransactionResourceOwner: ResourceOwner; @@ -41306,11 +42355,6 @@ extern "C" { pub static mut SPI_processed: uint64; pub static mut SPI_tuptable: *mut SPITupleTable; pub static mut SPI_result: ::std::os::raw::c_int; - pub static mut MyBgworkerEntry: *mut BackgroundWorker; - pub static shm_mq_minimum_size: Size; - pub static mut ParallelMessagePending: bool; - pub static mut ParallelWorkerNumber: ::std::os::raw::c_int; - pub static mut InitializingParallelWorker: bool; pub static pg_enc2name_tbl: [pg_enc2name; 0usize]; pub static pg_enc2gettext_tbl: [pg_enc2gettext; 0usize]; pub static pg_wchar_table: [pg_wchar_tbl; 0usize]; @@ -41359,6 +42403,8 @@ extern "C" { pub static mut planner_hook: planner_hook_type; pub static mut create_upper_paths_hook: create_upper_paths_hook_type; pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub static mut operator_precedence_warning: bool; + pub static mut Transform_null_equals: bool; pub static mut backslash_quote: ::std::os::raw::c_int; pub static mut escape_string_warning: bool; pub static mut standard_conforming_strings: bool; diff --git a/pgrx-pg-sys/src/include/pg13_oids.rs b/pgrx-pg-sys/src/include/pg13_oids.rs index 9d9fdae5b5..4da9c1cf79 100644 --- a/pgrx-pg-sys/src/include/pg13_oids.rs +++ b/pgrx-pg-sys/src/include/pg13_oids.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate::NotBuiltinOid; #[derive(Copy, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Debug)] pub enum BuiltinOid { @@ -100,6 +106,7 @@ pub enum BuiltinOid { INTERNALOID = 2281, INTERVALARRAYOID = 1187, INTERVALOID = 1186, + INTERVAL_BTREE_FAM_OID = 1982, IndexRelationId = 2610, JSONARRAYOID = 199, JSONBARRAYOID = 3807, @@ -338,6 +345,7 @@ impl BuiltinOid { 2281 => Ok(BuiltinOid::INTERNALOID), 1187 => Ok(BuiltinOid::INTERVALARRAYOID), 1186 => Ok(BuiltinOid::INTERVALOID), + 1982 => Ok(BuiltinOid::INTERVAL_BTREE_FAM_OID), 2610 => Ok(BuiltinOid::IndexRelationId), 199 => Ok(BuiltinOid::JSONARRAYOID), 3807 => Ok(BuiltinOid::JSONBARRAYOID), diff --git a/pgrx-pg-sys/src/include/pg14.rs b/pgrx-pg-sys/src/include/pg14.rs index 6b8130b8c7..e2ee50770c 100644 --- a/pgrx-pg-sys/src/include/pg14.rs +++ b/pgrx-pg-sys/src/include/pg14.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate as pg_sys; use crate::{Datum, Oid, PgNode}; #[repr(C)] @@ -95,49 +101,6 @@ impl ::std::fmt::Debug for __IncompleteArrayField { fmt.write_str("__IncompleteArrayField") } } -#[repr(C)] -pub struct __BindgenUnionField(::std::marker::PhantomData); -impl __BindgenUnionField { - #[inline] - pub const fn new() -> Self { - __BindgenUnionField(::std::marker::PhantomData) - } - #[inline] - pub unsafe fn as_ref(&self) -> &T { - ::std::mem::transmute(self) - } - #[inline] - pub unsafe fn as_mut(&mut self) -> &mut T { - ::std::mem::transmute(self) - } -} -impl ::std::default::Default for __BindgenUnionField { - #[inline] - fn default() -> Self { - Self::new() - } -} -impl ::std::clone::Clone for __BindgenUnionField { - #[inline] - fn clone(&self) -> Self { - *self - } -} -impl ::std::marker::Copy for __BindgenUnionField {} -impl ::std::fmt::Debug for __BindgenUnionField { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - fmt.write_str("__BindgenUnionField") - } -} -impl ::std::hash::Hash for __BindgenUnionField { - fn hash(&self, _state: &mut H) {} -} -impl ::std::cmp::PartialEq for __BindgenUnionField { - fn eq(&self, _other: &__BindgenUnionField) -> bool { - true - } -} -impl ::std::cmp::Eq for __BindgenUnionField {} pub const PG_DIAG_SEVERITY: u8 = 83u8; pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; pub const PG_DIAG_SQLSTATE: u8 = 67u8; @@ -162,7 +125,7 @@ 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 CONFIGURE_ARGS : & [u8 ; 205] = b" '--prefix=/home/jubilee/.pgrx/14.9/pgrx-install' '--with-pgport=28814' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; +pub const CONFIGURE_ARGS : & [u8 ; 206] = b" '--prefix=/home/jubilee/.pgrx/14.10/pgrx-install' '--with-pgport=28814' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; pub const DEF_PGPORT: u32 = 28814; pub const DEF_PGPORT_STR: &[u8; 6] = b"28814\0"; pub const ENABLE_THREAD_SAFETY: u32 = 1; @@ -313,19 +276,19 @@ pub const MAXIMUM_ALIGNOF: u32 = 8; pub const MEMSET_LOOP_LIMIT: u32 = 1024; pub const PACKAGE_BUGREPORT: &[u8; 32] = b"pgsql-bugs@lists.postgresql.org\0"; pub const PACKAGE_NAME: &[u8; 11] = b"PostgreSQL\0"; -pub const PACKAGE_STRING: &[u8; 16] = b"PostgreSQL 14.9\0"; +pub const PACKAGE_STRING: &[u8; 17] = b"PostgreSQL 14.10\0"; pub const PACKAGE_TARNAME: &[u8; 11] = b"postgresql\0"; pub const PACKAGE_URL: &[u8; 28] = b"https://www.postgresql.org/\0"; -pub const PACKAGE_VERSION: &[u8; 5] = b"14.9\0"; +pub const PACKAGE_VERSION: &[u8; 6] = b"14.10\0"; pub const PG_KRB_SRVNAM: &[u8; 9] = b"postgres\0"; pub const PG_MAJORVERSION: &[u8; 3] = b"14\0"; pub const PG_MAJORVERSION_NUM: u32 = 14; -pub const PG_MINORVERSION_NUM: u32 = 9; +pub const PG_MINORVERSION_NUM: u32 = 10; pub const PG_USE_STDBOOL: u32 = 1; -pub const PG_VERSION: &[u8; 5] = b"14.9\0"; -pub const PG_VERSION_NUM: u32 = 140009; -pub const PG_VERSION_STR: &[u8; 86] = - b"PostgreSQL 14.9 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; +pub const PG_VERSION: &[u8; 6] = b"14.10\0"; +pub const PG_VERSION_NUM: u32 = 140010; +pub const PG_VERSION_STR: &[u8; 87] = + b"PostgreSQL 14.10 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; pub const SIZEOF_LONG: u32 = 8; @@ -394,7 +357,7 @@ 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 = 38; +pub const __GLIBC_MINOR__: u32 = 39; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; @@ -522,6 +485,7 @@ pub const _STRINGS_H: u32 = 1; pub const _STDINT_H: u32 = 1; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; +pub const _BITS_STDINT_LEAST_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; @@ -987,6 +951,8 @@ 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_PASSPIDFD: u32 = 76; +pub const SO_PEERPIDFD: u32 = 77; pub const SO_TIMESTAMP: u32 = 29; pub const SO_TIMESTAMPNS: u32 = 35; pub const SO_TIMESTAMPING: u32 = 37; @@ -1053,6 +1019,7 @@ pub const IP_PMTUDISC_PROBE: u32 = 3; pub const IP_PMTUDISC_INTERFACE: u32 = 4; pub const IP_PMTUDISC_OMIT: u32 = 5; pub const IP_LOCAL_PORT_RANGE: u32 = 51; +pub const IP_PROTOCOL: u32 = 52; pub const SOL_IP: u32 = 0; pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; @@ -1181,7 +1148,7 @@ pub const NI_DGRAM: u32 = 16; pub const _PWD_H: u32 = 1; pub const NSS_BUFLEN_PASSWD: u32 = 1024; pub const PGINVALID_SOCKET: i32 = -1; -pub const PG_BACKEND_VERSIONSTR: &[u8; 28] = b"postgres (PostgreSQL) 14.9\n\0"; +pub const PG_BACKEND_VERSIONSTR: &[u8; 29] = b"postgres (PostgreSQL) 14.10\n\0"; pub const EXE: &[u8; 1] = b"\0"; pub const DEVNULL: &[u8; 10] = b"/dev/null\0"; pub const USE_REPL_SNPRINTF: u32 = 1; @@ -2844,6 +2811,7 @@ pub const BPCHAR_BTREE_FAM_OID: Oid = Oid(426); pub const BYTEA_BTREE_FAM_OID: Oid = Oid(428); pub const NETWORK_BTREE_FAM_OID: Oid = Oid(1974); pub const INTEGER_BTREE_FAM_OID: Oid = Oid(1976); +pub const INTERVAL_BTREE_FAM_OID: Oid = Oid(1982); pub const OID_BTREE_FAM_OID: Oid = Oid(1989); pub const TEXT_BTREE_FAM_OID: Oid = Oid(1994); pub const TEXT_PATTERN_BTREE_FAM_OID: Oid = Oid(2095); @@ -3104,40 +3072,6 @@ pub const XLOG_OVERWRITE_CONTRECORD: u32 = 208; 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 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; -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_OPT_NONATOMIC: u32 = 1; pub const BGWORKER_SHMEM_ACCESS: u32 = 1; pub const BGWORKER_BACKEND_DATABASE_CONNECTION: u32 = 2; pub const BGWORKER_CLASS_PARALLEL: u32 = 16; @@ -3173,6 +3107,45 @@ pub const INVALID_PGPROCNO: u32 = 2147483647; pub const DELAY_CHKPT_START: u32 = 1; pub const DELAY_CHKPT_COMPLETE: u32 = 2; pub const NUM_AUXILIARY_PROCS: u32 = 5; +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 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; +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_OPT_NONATOMIC: u32 = 1; pub const HAVE_PLANNERINFO_TYPEDEF: u32 = 1; pub const AMFLAG_HAS_TID_RANGE: u32 = 1; pub const HAVE_INDEXOPTINFO_TYPEDEF: u32 = 1; @@ -5057,10 +5030,9 @@ pub const vartag_external_VARTAG_EXPANDED_RW: vartag_external = 3; pub const vartag_external_VARTAG_ONDISK: vartag_external = 18; pub type vartag_external = ::std::os::raw::c_uint; #[repr(C)] -pub struct varattrib_4b { - pub va_4byte: __BindgenUnionField, - pub va_compressed: __BindgenUnionField, - pub bindgen_union_field: [u32; 2usize], +pub union varattrib_4b { + pub va_4byte: ::std::mem::ManuallyDrop, + pub va_compressed: ::std::mem::ManuallyDrop, } #[repr(C)] #[derive(Debug, Default)] @@ -9429,11 +9401,6 @@ pub struct ParallelHashJoinState { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct ExprEvalStep { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct CopyMultiInsertBuffer { _unused: [u8; 0], } @@ -11065,35 +11032,10 @@ pub struct SharedAggInfo { pub num_workers: ::std::os::raw::c_int, pub sinstrument: __IncompleteArrayField, } -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerAggData { - _unused: [u8; 0], -} pub type AggStatePerAgg = *mut AggStatePerAggData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerTransData { - _unused: [u8; 0], -} pub type AggStatePerTrans = *mut AggStatePerTransData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerGroupData { - _unused: [u8; 0], -} pub type AggStatePerGroup = *mut AggStatePerGroupData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerPhaseData { - _unused: [u8; 0], -} pub type AggStatePerPhase = *mut AggStatePerPhaseData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerHashData { - _unused: [u8; 0], -} pub type AggStatePerHash = *mut AggStatePerHashData; #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -15700,6 +15642,7 @@ pub const SEGV_ADIDERR: _bindgen_ty_13 = 6; pub const SEGV_ADIPERR: _bindgen_ty_13 = 7; pub const SEGV_MTEAERR: _bindgen_ty_13 = 8; pub const SEGV_MTESERR: _bindgen_ty_13 = 9; +pub const SEGV_CPERR: _bindgen_ty_13 = 10; pub type _bindgen_ty_13 = ::std::os::raw::c_uint; pub const BUS_ADRALN: _bindgen_ty_14 = 1; pub const BUS_ADRERR: _bindgen_ty_14 = 2; @@ -21777,261 +21720,6 @@ impl Default for ControlFileData { } } } -pub const RawParseMode_RAW_PARSE_DEFAULT: RawParseMode = 0; -pub const RawParseMode_RAW_PARSE_TYPE_NAME: RawParseMode = 1; -pub const RawParseMode_RAW_PARSE_PLPGSQL_EXPR: RawParseMode = 2; -pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN1: RawParseMode = 3; -pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN2: RawParseMode = 4; -pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN3: RawParseMode = 5; -pub type RawParseMode = ::std::os::raw::c_uint; -pub const BackslashQuoteType_BACKSLASH_QUOTE_OFF: BackslashQuoteType = 0; -pub const BackslashQuoteType_BACKSLASH_QUOTE_ON: BackslashQuoteType = 1; -pub const BackslashQuoteType_BACKSLASH_QUOTE_SAFE_ENCODING: BackslashQuoteType = 2; -pub type BackslashQuoteType = ::std::os::raw::c_uint; -pub type ResourceOwner = *mut ResourceOwnerData; -pub const ResourceReleasePhase_RESOURCE_RELEASE_BEFORE_LOCKS: ResourceReleasePhase = 0; -pub const ResourceReleasePhase_RESOURCE_RELEASE_LOCKS: ResourceReleasePhase = 1; -pub const ResourceReleasePhase_RESOURCE_RELEASE_AFTER_LOCKS: ResourceReleasePhase = 2; -pub type ResourceReleasePhase = ::std::os::raw::c_uint; -pub type ResourceReleaseCallback = ::std::option::Option< - unsafe extern "C" fn( - phase: ResourceReleasePhase, - isCommit: bool, - isTopLevel: bool, - arg: *mut ::std::os::raw::c_void, - ), ->; -pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: PlanCacheMode = 0; -pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: PlanCacheMode = 1; -pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: PlanCacheMode = 2; -pub type PlanCacheMode = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlanSource { - pub magic: ::std::os::raw::c_int, - pub raw_parse_tree: *mut RawStmt, - pub query_string: *const ::std::os::raw::c_char, - pub commandTag: CommandTag, - pub param_types: *mut Oid, - pub num_params: ::std::os::raw::c_int, - pub parserSetup: ParserSetupHook, - pub parserSetupArg: *mut ::std::os::raw::c_void, - pub cursor_options: ::std::os::raw::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedPlan { - pub magic: ::std::os::raw::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: ::std::os::raw::c_int, - pub refcount: ::std::os::raw::c_int, - pub context: MemoryContext, -} -impl Default for CachedPlan { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct CachedExpression { - pub magic: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); - s.assume_init() - } - } -} -pub const PortalStrategy_PORTAL_ONE_SELECT: PortalStrategy = 0; -pub const PortalStrategy_PORTAL_ONE_RETURNING: PortalStrategy = 1; -pub const PortalStrategy_PORTAL_ONE_MOD_WITH: PortalStrategy = 2; -pub const PortalStrategy_PORTAL_UTIL_SELECT: PortalStrategy = 3; -pub const PortalStrategy_PORTAL_MULTI_QUERY: PortalStrategy = 4; -pub type PortalStrategy = ::std::os::raw::c_uint; -pub const PortalStatus_PORTAL_NEW: PortalStatus = 0; -pub const PortalStatus_PORTAL_DEFINED: PortalStatus = 1; -pub const PortalStatus_PORTAL_READY: PortalStatus = 2; -pub const PortalStatus_PORTAL_ACTIVE: PortalStatus = 3; -pub const PortalStatus_PORTAL_DONE: PortalStatus = 4; -pub const PortalStatus_PORTAL_FAILED: PortalStatus = 5; -pub type PortalStatus = ::std::os::raw::c_uint; -pub type Portal = *mut PortalData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct PortalData { - pub name: *const ::std::os::raw::c_char, - pub prepStmtName: *const ::std::os::raw::c_char, - pub portalContext: MemoryContext, - pub resowner: ResourceOwner, - pub cleanup: ::std::option::Option, - pub createSubid: SubTransactionId, - pub activeSubid: SubTransactionId, - pub sourceText: *const ::std::os::raw::c_char, - pub commandTag: CommandTag, - pub qc: QueryCompletion, - pub stmts: *mut List, - pub cplan: *mut CachedPlan, - pub portalParams: ParamListInfo, - pub queryEnv: *mut QueryEnvironment, - pub strategy: PortalStrategy, - pub cursorOptions: ::std::os::raw::c_int, - pub run_once: bool, - pub status: PortalStatus, - 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, - pub createLevel: ::std::os::raw::c_int, -} -impl Default for PortalData { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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 = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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 ::std::os::raw::c_void, - pub parseMode: RawParseMode, - pub cursorOptions: ::std::os::raw::c_int, -} -impl Default for SPIPrepareOptions { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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 = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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: ::std::os::raw::c_int, - pub read_only: bool, -} -impl Default for SPIParseOpenOptions { - fn default() -> Self { - let mut s = ::std::mem::MaybeUninit::::uninit(); - unsafe { - ::std::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 bgworker_main_type = ::std::option::Option; pub const BgWorkerStartTime_BgWorkerStart_PostmasterStart: BgWorkerStartTime = 0; pub const BgWorkerStartTime_BgWorkerStart_ConsistentState: BgWorkerStartTime = 1; @@ -22328,6 +22016,1226 @@ impl Default for ParallelWorkerContext { } } } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub numInputs: ::std::os::raw::c_int, + pub numTransInputs: ::std::os::raw::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: ::std::os::raw::c_int, + pub numDistinctCols: ::std::os::raw::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 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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy, + pub numsets: ::std::os::raw::c_int, + pub gset_lengths: *mut ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub numhashGrpCols: ::std::os::raw::c_int, + pub largestGrpColIdx: ::std::os::raw::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +pub type ExecEvalBoolSubroutine = ::std::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 ::std::os::raw::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const ExprEvalOp_EEOP_DONE: ExprEvalOp = 0; +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: ExprEvalOp = 1; +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: ExprEvalOp = 2; +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: ExprEvalOp = 3; +pub const ExprEvalOp_EEOP_INNER_VAR: ExprEvalOp = 4; +pub const ExprEvalOp_EEOP_OUTER_VAR: ExprEvalOp = 5; +pub const ExprEvalOp_EEOP_SCAN_VAR: ExprEvalOp = 6; +pub const ExprEvalOp_EEOP_INNER_SYSVAR: ExprEvalOp = 7; +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: ExprEvalOp = 8; +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: ExprEvalOp = 9; +pub const ExprEvalOp_EEOP_WHOLEROW: ExprEvalOp = 10; +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: ExprEvalOp = 11; +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: ExprEvalOp = 12; +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: ExprEvalOp = 13; +pub const ExprEvalOp_EEOP_ASSIGN_TMP: ExprEvalOp = 14; +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: ExprEvalOp = 15; +pub const ExprEvalOp_EEOP_CONST: ExprEvalOp = 16; +pub const ExprEvalOp_EEOP_FUNCEXPR: ExprEvalOp = 17; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: ExprEvalOp = 18; +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: ExprEvalOp = 19; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: ExprEvalOp = 20; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: ExprEvalOp = 21; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: ExprEvalOp = 22; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: ExprEvalOp = 23; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: ExprEvalOp = 24; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: ExprEvalOp = 25; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: ExprEvalOp = 26; +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: ExprEvalOp = 27; +pub const ExprEvalOp_EEOP_QUAL: ExprEvalOp = 28; +pub const ExprEvalOp_EEOP_JUMP: ExprEvalOp = 29; +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: ExprEvalOp = 30; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: ExprEvalOp = 31; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: ExprEvalOp = 32; +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: ExprEvalOp = 33; +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: ExprEvalOp = 34; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: ExprEvalOp = 35; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: ExprEvalOp = 36; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: ExprEvalOp = 37; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: ExprEvalOp = 38; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: ExprEvalOp = 39; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: ExprEvalOp = 40; +pub const ExprEvalOp_EEOP_PARAM_EXEC: ExprEvalOp = 41; +pub const ExprEvalOp_EEOP_PARAM_EXTERN: ExprEvalOp = 42; +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: ExprEvalOp = 43; +pub const ExprEvalOp_EEOP_CASE_TESTVAL: ExprEvalOp = 44; +pub const ExprEvalOp_EEOP_MAKE_READONLY: ExprEvalOp = 45; +pub const ExprEvalOp_EEOP_IOCOERCE: ExprEvalOp = 46; +pub const ExprEvalOp_EEOP_DISTINCT: ExprEvalOp = 47; +pub const ExprEvalOp_EEOP_NOT_DISTINCT: ExprEvalOp = 48; +pub const ExprEvalOp_EEOP_NULLIF: ExprEvalOp = 49; +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: ExprEvalOp = 50; +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: ExprEvalOp = 51; +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: ExprEvalOp = 52; +pub const ExprEvalOp_EEOP_ARRAYEXPR: ExprEvalOp = 53; +pub const ExprEvalOp_EEOP_ARRAYCOERCE: ExprEvalOp = 54; +pub const ExprEvalOp_EEOP_ROW: ExprEvalOp = 55; +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: ExprEvalOp = 56; +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: ExprEvalOp = 57; +pub const ExprEvalOp_EEOP_MINMAX: ExprEvalOp = 58; +pub const ExprEvalOp_EEOP_FIELDSELECT: ExprEvalOp = 59; +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: ExprEvalOp = 60; +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: ExprEvalOp = 61; +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPTS: ExprEvalOp = 62; +pub const ExprEvalOp_EEOP_SBSREF_OLD: ExprEvalOp = 63; +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: ExprEvalOp = 64; +pub const ExprEvalOp_EEOP_SBSREF_FETCH: ExprEvalOp = 65; +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: ExprEvalOp = 66; +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: ExprEvalOp = 67; +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: ExprEvalOp = 68; +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: ExprEvalOp = 69; +pub const ExprEvalOp_EEOP_SCALARARRAYOP: ExprEvalOp = 70; +pub const ExprEvalOp_EEOP_HASHED_SCALARARRAYOP: ExprEvalOp = 71; +pub const ExprEvalOp_EEOP_XMLEXPR: ExprEvalOp = 72; +pub const ExprEvalOp_EEOP_AGGREF: ExprEvalOp = 73; +pub const ExprEvalOp_EEOP_GROUPING_FUNC: ExprEvalOp = 74; +pub const ExprEvalOp_EEOP_WINDOW_FUNC: ExprEvalOp = 75; +pub const ExprEvalOp_EEOP_SUBPLAN: ExprEvalOp = 76; +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: ExprEvalOp = 77; +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: ExprEvalOp = 78; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: ExprEvalOp = 79; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: ExprEvalOp = 80; +pub const ExprEvalOp_EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: ExprEvalOp = 81; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: ExprEvalOp = 82; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: ExprEvalOp = 83; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: ExprEvalOp = 84; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: ExprEvalOp = 85; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: ExprEvalOp = 86; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYREF: ExprEvalOp = 87; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: ExprEvalOp = 88; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: ExprEvalOp = 89; +pub const ExprEvalOp_EEOP_LAST: ExprEvalOp = 90; +pub type ExprEvalOp = ::std::os::raw::c_uint; +#[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 aggref: ExprEvalStep__bindgen_ty_1__bindgen_ty_34, + pub grouping_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_35, + pub window_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_36, + pub subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_37, + pub agg_deserialize: ExprEvalStep__bindgen_ty_1__bindgen_ty_38, + pub agg_strict_input_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_39, + pub agg_plain_pergroup_nullcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_40, + pub agg_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_41, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub attnum: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub paramid: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::std::os::raw::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub op: MinMaxOp, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 elements_tab: *mut ScalarArrayOpExprHashTable, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, + pub fn_addr: PGFunction, + pub hash_finfo: *mut FmgrInfo, + pub hash_fcinfo_data: FunctionCallInfo, + pub hash_fn_addr: PGFunction, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_32 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_34 { + pub aggno: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + pub clauses: *mut List, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_36 { + pub wfstate: *mut WindowFuncExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 sstate: *mut SubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 fcinfo_data: FunctionCallInfo, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 args: *mut NullableDatum, + pub nulls: *mut bool, + pub nargs: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_40 { + pub setoff: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub numupper: ::std::os::raw::c_int, + pub upperprovided: *mut bool, + pub upperindex: *mut Datum, + pub upperindexnull: *mut bool, + pub numlower: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} +pub const RawParseMode_RAW_PARSE_DEFAULT: RawParseMode = 0; +pub const RawParseMode_RAW_PARSE_TYPE_NAME: RawParseMode = 1; +pub const RawParseMode_RAW_PARSE_PLPGSQL_EXPR: RawParseMode = 2; +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN1: RawParseMode = 3; +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN2: RawParseMode = 4; +pub const RawParseMode_RAW_PARSE_PLPGSQL_ASSIGN3: RawParseMode = 5; +pub type RawParseMode = ::std::os::raw::c_uint; +pub const BackslashQuoteType_BACKSLASH_QUOTE_OFF: BackslashQuoteType = 0; +pub const BackslashQuoteType_BACKSLASH_QUOTE_ON: BackslashQuoteType = 1; +pub const BackslashQuoteType_BACKSLASH_QUOTE_SAFE_ENCODING: BackslashQuoteType = 2; +pub type BackslashQuoteType = ::std::os::raw::c_uint; +pub type ResourceOwner = *mut ResourceOwnerData; +pub const ResourceReleasePhase_RESOURCE_RELEASE_BEFORE_LOCKS: ResourceReleasePhase = 0; +pub const ResourceReleasePhase_RESOURCE_RELEASE_LOCKS: ResourceReleasePhase = 1; +pub const ResourceReleasePhase_RESOURCE_RELEASE_AFTER_LOCKS: ResourceReleasePhase = 2; +pub type ResourceReleasePhase = ::std::os::raw::c_uint; +pub type ResourceReleaseCallback = ::std::option::Option< + unsafe extern "C" fn( + phase: ResourceReleasePhase, + isCommit: bool, + isTopLevel: bool, + arg: *mut ::std::os::raw::c_void, + ), +>; +pub const PlanCacheMode_PLAN_CACHE_MODE_AUTO: PlanCacheMode = 0; +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_GENERIC_PLAN: PlanCacheMode = 1; +pub const PlanCacheMode_PLAN_CACHE_MODE_FORCE_CUSTOM_PLAN: PlanCacheMode = 2; +pub type PlanCacheMode = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlanSource { + pub magic: ::std::os::raw::c_int, + pub raw_parse_tree: *mut RawStmt, + pub query_string: *const ::std::os::raw::c_char, + pub commandTag: CommandTag, + pub param_types: *mut Oid, + pub num_params: ::std::os::raw::c_int, + pub parserSetup: ParserSetupHook, + pub parserSetupArg: *mut ::std::os::raw::c_void, + pub cursor_options: ::std::os::raw::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedPlan { + pub magic: ::std::os::raw::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: ::std::os::raw::c_int, + pub refcount: ::std::os::raw::c_int, + pub context: MemoryContext, +} +impl Default for CachedPlan { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct CachedExpression { + pub magic: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const PortalStrategy_PORTAL_ONE_SELECT: PortalStrategy = 0; +pub const PortalStrategy_PORTAL_ONE_RETURNING: PortalStrategy = 1; +pub const PortalStrategy_PORTAL_ONE_MOD_WITH: PortalStrategy = 2; +pub const PortalStrategy_PORTAL_UTIL_SELECT: PortalStrategy = 3; +pub const PortalStrategy_PORTAL_MULTI_QUERY: PortalStrategy = 4; +pub type PortalStrategy = ::std::os::raw::c_uint; +pub const PortalStatus_PORTAL_NEW: PortalStatus = 0; +pub const PortalStatus_PORTAL_DEFINED: PortalStatus = 1; +pub const PortalStatus_PORTAL_READY: PortalStatus = 2; +pub const PortalStatus_PORTAL_ACTIVE: PortalStatus = 3; +pub const PortalStatus_PORTAL_DONE: PortalStatus = 4; +pub const PortalStatus_PORTAL_FAILED: PortalStatus = 5; +pub type PortalStatus = ::std::os::raw::c_uint; +pub type Portal = *mut PortalData; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct PortalData { + pub name: *const ::std::os::raw::c_char, + pub prepStmtName: *const ::std::os::raw::c_char, + pub portalContext: MemoryContext, + pub resowner: ResourceOwner, + pub cleanup: ::std::option::Option, + pub createSubid: SubTransactionId, + pub activeSubid: SubTransactionId, + pub sourceText: *const ::std::os::raw::c_char, + pub commandTag: CommandTag, + pub qc: QueryCompletion, + pub stmts: *mut List, + pub cplan: *mut CachedPlan, + pub portalParams: ParamListInfo, + pub queryEnv: *mut QueryEnvironment, + pub strategy: PortalStrategy, + pub cursorOptions: ::std::os::raw::c_int, + pub run_once: bool, + pub status: PortalStatus, + 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, + pub createLevel: ::std::os::raw::c_int, +} +impl Default for PortalData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub parseMode: RawParseMode, + pub cursorOptions: ::std::os::raw::c_int, +} +impl Default for SPIPrepareOptions { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub read_only: bool, +} +impl Default for SPIParseOpenOptions { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 const CostSelector_STARTUP_COST: CostSelector = 0; pub const CostSelector_TOTAL_COST: CostSelector = 1; @@ -24589,6 +25497,31 @@ impl Default for SQLCmd { } } } +pub type SubscriptTransform = ::std::option::Option< + unsafe extern "C" fn( + sbsref: *mut SubscriptingRef, + indirection: *mut List, + pstate: *mut ParseState, + isSlice: bool, + isAssignment: bool, + ), +>; +pub type SubscriptExecSetup = ::std::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 { @@ -27313,7 +28246,6 @@ pub type ProcessUtility_hook_type = ::std::option::Option< ), >; #[repr(C)] -#[repr(align(4))] #[derive(Debug, Default, Copy, Clone)] pub struct WordEntry { pub _bitfield_align_1: [u32; 0], @@ -28140,11 +29072,6 @@ impl Default for JsonbIterator { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct SubscriptRoutines { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct OpBtreeInterpretation { pub opfamily_id: Oid, pub strategy: ::std::os::raw::c_int, @@ -29151,6 +30078,7 @@ extern "C" { facility: ::std::os::raw::c_int, ); pub fn write_stderr(fmt: *const ::std::os::raw::c_char, ...); + pub fn write_stderr_signal_safe(fmt: *const ::std::os::raw::c_char); pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::std::os::raw::c_void; pub fn MemoryContextAllocZero( context: MemoryContext, @@ -34977,317 +35905,6 @@ extern "C" { ControlFile: *mut ControlFileData, do_sync: bool, ); - pub fn raw_parser(str_: *const ::std::os::raw::c_char, mode: RawParseMode) -> *mut List; - pub fn SystemFuncName(name: *mut ::std::os::raw::c_char) -> *mut List; - pub fn SystemTypeName(name: *mut ::std::os::raw::c_char) -> *mut TypeName; - pub fn ResourceOwnerCreate( - parent: ResourceOwner, - name: *const ::std::os::raw::c_char, - ) -> ResourceOwner; - pub fn ResourceOwnerRelease( - owner: ResourceOwner, - phase: ResourceReleasePhase, - isCommit: bool, - isTopLevel: bool, - ); - pub fn ResourceOwnerReleaseAllPlanCacheRefs(owner: ResourceOwner); - pub fn ResourceOwnerDelete(owner: ResourceOwner); - pub fn ResourceOwnerGetParent(owner: ResourceOwner) -> ResourceOwner; - pub fn ResourceOwnerNewParent(owner: ResourceOwner, newparent: ResourceOwner); - pub fn RegisterResourceReleaseCallback( - callback: ResourceReleaseCallback, - arg: *mut ::std::os::raw::c_void, - ); - pub fn UnregisterResourceReleaseCallback( - callback: ResourceReleaseCallback, - arg: *mut ::std::os::raw::c_void, - ); - pub fn CreateAuxProcessResourceOwner(); - pub fn ReleaseAuxProcessResources(isCommit: bool); - pub fn InitPlanCache(); - pub fn ResetPlanCache(); - pub fn CreateCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::std::os::raw::c_char, - commandTag: CommandTag, - ) -> *mut CachedPlanSource; - pub fn CreateOneShotCachedPlan( - raw_parse_tree: *mut RawStmt, - query_string: *const ::std::os::raw::c_char, - commandTag: CommandTag, - ) -> *mut CachedPlanSource; - pub fn CompleteCachedPlan( - plansource: *mut CachedPlanSource, - querytree_list: *mut List, - querytree_context: MemoryContext, - param_types: *mut Oid, - num_params: ::std::os::raw::c_int, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::std::os::raw::c_void, - cursor_options: ::std::os::raw::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(); - pub fn AtCleanup_Portals(); - pub fn PortalErrorCleanup(); - pub fn AtSubCommit_Portals( - mySubid: SubTransactionId, - parentSubid: SubTransactionId, - parentLevel: ::std::os::raw::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 ::std::os::raw::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 ::std::os::raw::c_char) -> Portal; - pub fn PortalDefineQuery( - portal: Portal, - prepStmtName: *const ::std::os::raw::c_char, - sourceText: *const ::std::os::raw::c_char, - commandTag: CommandTag, - 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 fn SPI_connect() -> ::std::os::raw::c_int; - pub fn SPI_connect_ext(options: ::std::os::raw::c_int) -> ::std::os::raw::c_int; - pub fn SPI_finish() -> ::std::os::raw::c_int; - pub fn SPI_execute( - src: *const ::std::os::raw::c_char, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_extended( - src: *const ::std::os::raw::c_char, - options: *const SPIExecuteOptions, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_plan( - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_plan_extended( - plan: SPIPlanPtr, - options: *const SPIExecuteOptions, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_plan_with_paramlist( - plan: SPIPlanPtr, - params: ParamListInfo, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_exec( - src: *const ::std::os::raw::c_char, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execp( - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_snapshot( - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - snapshot: Snapshot, - crosscheck_snapshot: Snapshot, - read_only: bool, - fire_triggers: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_execute_with_args( - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - tcount: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; - pub fn SPI_prepare( - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - ) -> SPIPlanPtr; - pub fn SPI_prepare_cursor( - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - cursorOptions: ::std::os::raw::c_int, - ) -> SPIPlanPtr; - pub fn SPI_prepare_extended( - src: *const ::std::os::raw::c_char, - options: *const SPIPrepareOptions, - ) -> SPIPlanPtr; - pub fn SPI_prepare_params( - src: *const ::std::os::raw::c_char, - parserSetup: ParserSetupHook, - parserSetupArg: *mut ::std::os::raw::c_void, - cursorOptions: ::std::os::raw::c_int, - ) -> SPIPlanPtr; - pub fn SPI_keepplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; - pub fn SPI_saveplan(plan: SPIPlanPtr) -> SPIPlanPtr; - pub fn SPI_freeplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; - pub fn SPI_getargtypeid(plan: SPIPlanPtr, argIndex: ::std::os::raw::c_int) -> Oid; - pub fn SPI_getargcount(plan: SPIPlanPtr) -> ::std::os::raw::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: ::std::os::raw::c_int) -> *const ::std::os::raw::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: ::std::os::raw::c_int, - attnum: *mut ::std::os::raw::c_int, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - ) -> HeapTuple; - pub fn SPI_fnumber( - tupdesc: TupleDesc, - fname: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; - pub fn SPI_fname( - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; - pub fn SPI_getvalue( - tuple: HeapTuple, - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; - pub fn SPI_getbinval( - tuple: HeapTuple, - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - isnull: *mut bool, - ) -> Datum; - pub fn SPI_gettype( - tupdesc: TupleDesc, - fnumber: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; - pub fn SPI_gettypeid(tupdesc: TupleDesc, fnumber: ::std::os::raw::c_int) -> Oid; - pub fn SPI_getrelname(rel: Relation) -> *mut ::std::os::raw::c_char; - pub fn SPI_getnspname(rel: Relation) -> *mut ::std::os::raw::c_char; - pub fn SPI_palloc(size: Size) -> *mut ::std::os::raw::c_void; - pub fn SPI_repalloc( - pointer: *mut ::std::os::raw::c_void, - size: Size, - ) -> *mut ::std::os::raw::c_void; - pub fn SPI_pfree(pointer: *mut ::std::os::raw::c_void); - pub fn SPI_datumTransfer(value: Datum, typByVal: bool, typLen: ::std::os::raw::c_int) -> Datum; - pub fn SPI_freetuple(pointer: HeapTuple); - pub fn SPI_freetuptable(tuptable: *mut SPITupleTable); - pub fn SPI_cursor_open( - name: *const ::std::os::raw::c_char, - plan: SPIPlanPtr, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - ) -> Portal; - pub fn SPI_cursor_open_with_args( - name: *const ::std::os::raw::c_char, - src: *const ::std::os::raw::c_char, - nargs: ::std::os::raw::c_int, - argtypes: *mut Oid, - Values: *mut Datum, - Nulls: *const ::std::os::raw::c_char, - read_only: bool, - cursorOptions: ::std::os::raw::c_int, - ) -> Portal; - pub fn SPI_cursor_open_with_paramlist( - name: *const ::std::os::raw::c_char, - plan: SPIPlanPtr, - params: ParamListInfo, - read_only: bool, - ) -> Portal; - pub fn SPI_cursor_parse_open( - name: *const ::std::os::raw::c_char, - src: *const ::std::os::raw::c_char, - options: *const SPIParseOpenOptions, - ) -> Portal; - pub fn SPI_cursor_find(name: *const ::std::os::raw::c_char) -> Portal; - pub fn SPI_cursor_fetch(portal: Portal, forward: bool, count: ::std::os::raw::c_long); - pub fn SPI_cursor_move(portal: Portal, forward: bool, count: ::std::os::raw::c_long); - pub fn SPI_scroll_cursor_fetch( - arg1: Portal, - direction: FetchDirection, - count: ::std::os::raw::c_long, - ); - pub fn SPI_scroll_cursor_move( - arg1: Portal, - direction: FetchDirection, - count: ::std::os::raw::c_long, - ); - pub fn SPI_cursor_close(portal: Portal); - pub fn SPI_register_relation(enr: EphemeralNamedRelation) -> ::std::os::raw::c_int; - pub fn SPI_unregister_relation(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; - pub fn SPI_register_trigger_data(tdata: *mut TriggerData) -> ::std::os::raw::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 SPICleanup(); - pub fn AtEOXact_SPI(isCommit: bool); - pub fn AtEOSubXact_SPI(isCommit: bool, mySubid: SubTransactionId); - pub fn SPI_inside_nonatomic_context() -> bool; pub fn RegisterBackgroundWorker(worker: *mut BackgroundWorker); pub fn RegisterDynamicBackgroundWorker( worker: *mut BackgroundWorker, @@ -35468,6 +36085,461 @@ extern "C" { pub fn AtEOSubXact_Parallel(isCommit: bool, mySubId: SubTransactionId); pub fn ParallelWorkerReportLastRecEnd(last_xlog_end: XLogRecPtr); pub fn ParallelWorkerMain(main_arg: Datum); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::std::os::raw::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size( + numTrans: ::std::os::raw::c_int, + tupleWidth: Size, + transitionSpace: Size, + ) -> Size; + pub fn hash_agg_set_limits( + hashentrysize: f64, + input_groups: f64, + used_bits: ::std::os::raw::c_int, + mem_limit: *mut Size, + ngroups_limit: *mut uint64, + num_partitions: *mut ::std::os::raw::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; + 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 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 ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + 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 ExecAggTransReparent( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + newValue: Datum, + newValueIsNull: bool, + oldValue: Datum, + oldValueIsNull: bool, + ) -> Datum; + 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 fn raw_parser(str_: *const ::std::os::raw::c_char, mode: RawParseMode) -> *mut List; + pub fn SystemFuncName(name: *mut ::std::os::raw::c_char) -> *mut List; + pub fn SystemTypeName(name: *mut ::std::os::raw::c_char) -> *mut TypeName; + pub fn ResourceOwnerCreate( + parent: ResourceOwner, + name: *const ::std::os::raw::c_char, + ) -> ResourceOwner; + pub fn ResourceOwnerRelease( + owner: ResourceOwner, + phase: ResourceReleasePhase, + isCommit: bool, + isTopLevel: bool, + ); + pub fn ResourceOwnerReleaseAllPlanCacheRefs(owner: ResourceOwner); + pub fn ResourceOwnerDelete(owner: ResourceOwner); + pub fn ResourceOwnerGetParent(owner: ResourceOwner) -> ResourceOwner; + pub fn ResourceOwnerNewParent(owner: ResourceOwner, newparent: ResourceOwner); + pub fn RegisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::std::os::raw::c_void, + ); + pub fn UnregisterResourceReleaseCallback( + callback: ResourceReleaseCallback, + arg: *mut ::std::os::raw::c_void, + ); + pub fn CreateAuxProcessResourceOwner(); + pub fn ReleaseAuxProcessResources(isCommit: bool); + pub fn InitPlanCache(); + pub fn ResetPlanCache(); + pub fn CreateCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::std::os::raw::c_char, + commandTag: CommandTag, + ) -> *mut CachedPlanSource; + pub fn CreateOneShotCachedPlan( + raw_parse_tree: *mut RawStmt, + query_string: *const ::std::os::raw::c_char, + commandTag: CommandTag, + ) -> *mut CachedPlanSource; + pub fn CompleteCachedPlan( + plansource: *mut CachedPlanSource, + querytree_list: *mut List, + querytree_context: MemoryContext, + param_types: *mut Oid, + num_params: ::std::os::raw::c_int, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::std::os::raw::c_void, + cursor_options: ::std::os::raw::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(); + pub fn AtCleanup_Portals(); + pub fn PortalErrorCleanup(); + pub fn AtSubCommit_Portals( + mySubid: SubTransactionId, + parentSubid: SubTransactionId, + parentLevel: ::std::os::raw::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 ::std::os::raw::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 ::std::os::raw::c_char) -> Portal; + pub fn PortalDefineQuery( + portal: Portal, + prepStmtName: *const ::std::os::raw::c_char, + sourceText: *const ::std::os::raw::c_char, + commandTag: CommandTag, + 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 fn SPI_connect() -> ::std::os::raw::c_int; + pub fn SPI_connect_ext(options: ::std::os::raw::c_int) -> ::std::os::raw::c_int; + pub fn SPI_finish() -> ::std::os::raw::c_int; + pub fn SPI_execute( + src: *const ::std::os::raw::c_char, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_extended( + src: *const ::std::os::raw::c_char, + options: *const SPIExecuteOptions, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_plan( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_plan_extended( + plan: SPIPlanPtr, + options: *const SPIExecuteOptions, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_plan_with_paramlist( + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_exec( + src: *const ::std::os::raw::c_char, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execp( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_snapshot( + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + snapshot: Snapshot, + crosscheck_snapshot: Snapshot, + read_only: bool, + fire_triggers: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_execute_with_args( + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + tcount: ::std::os::raw::c_long, + ) -> ::std::os::raw::c_int; + pub fn SPI_prepare( + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + ) -> SPIPlanPtr; + pub fn SPI_prepare_cursor( + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + cursorOptions: ::std::os::raw::c_int, + ) -> SPIPlanPtr; + pub fn SPI_prepare_extended( + src: *const ::std::os::raw::c_char, + options: *const SPIPrepareOptions, + ) -> SPIPlanPtr; + pub fn SPI_prepare_params( + src: *const ::std::os::raw::c_char, + parserSetup: ParserSetupHook, + parserSetupArg: *mut ::std::os::raw::c_void, + cursorOptions: ::std::os::raw::c_int, + ) -> SPIPlanPtr; + pub fn SPI_keepplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; + pub fn SPI_saveplan(plan: SPIPlanPtr) -> SPIPlanPtr; + pub fn SPI_freeplan(plan: SPIPlanPtr) -> ::std::os::raw::c_int; + pub fn SPI_getargtypeid(plan: SPIPlanPtr, argIndex: ::std::os::raw::c_int) -> Oid; + pub fn SPI_getargcount(plan: SPIPlanPtr) -> ::std::os::raw::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: ::std::os::raw::c_int) -> *const ::std::os::raw::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: ::std::os::raw::c_int, + attnum: *mut ::std::os::raw::c_int, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + ) -> HeapTuple; + pub fn SPI_fnumber( + tupdesc: TupleDesc, + fname: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; + pub fn SPI_fname( + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn SPI_getvalue( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn SPI_getbinval( + tuple: HeapTuple, + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + isnull: *mut bool, + ) -> Datum; + pub fn SPI_gettype( + tupdesc: TupleDesc, + fnumber: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; + pub fn SPI_gettypeid(tupdesc: TupleDesc, fnumber: ::std::os::raw::c_int) -> Oid; + pub fn SPI_getrelname(rel: Relation) -> *mut ::std::os::raw::c_char; + pub fn SPI_getnspname(rel: Relation) -> *mut ::std::os::raw::c_char; + pub fn SPI_palloc(size: Size) -> *mut ::std::os::raw::c_void; + pub fn SPI_repalloc( + pointer: *mut ::std::os::raw::c_void, + size: Size, + ) -> *mut ::std::os::raw::c_void; + pub fn SPI_pfree(pointer: *mut ::std::os::raw::c_void); + pub fn SPI_datumTransfer(value: Datum, typByVal: bool, typLen: ::std::os::raw::c_int) -> Datum; + pub fn SPI_freetuple(pointer: HeapTuple); + pub fn SPI_freetuptable(tuptable: *mut SPITupleTable); + pub fn SPI_cursor_open( + name: *const ::std::os::raw::c_char, + plan: SPIPlanPtr, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_open_with_args( + name: *const ::std::os::raw::c_char, + src: *const ::std::os::raw::c_char, + nargs: ::std::os::raw::c_int, + argtypes: *mut Oid, + Values: *mut Datum, + Nulls: *const ::std::os::raw::c_char, + read_only: bool, + cursorOptions: ::std::os::raw::c_int, + ) -> Portal; + pub fn SPI_cursor_open_with_paramlist( + name: *const ::std::os::raw::c_char, + plan: SPIPlanPtr, + params: ParamListInfo, + read_only: bool, + ) -> Portal; + pub fn SPI_cursor_parse_open( + name: *const ::std::os::raw::c_char, + src: *const ::std::os::raw::c_char, + options: *const SPIParseOpenOptions, + ) -> Portal; + pub fn SPI_cursor_find(name: *const ::std::os::raw::c_char) -> Portal; + pub fn SPI_cursor_fetch(portal: Portal, forward: bool, count: ::std::os::raw::c_long); + pub fn SPI_cursor_move(portal: Portal, forward: bool, count: ::std::os::raw::c_long); + pub fn SPI_scroll_cursor_fetch( + arg1: Portal, + direction: FetchDirection, + count: ::std::os::raw::c_long, + ); + pub fn SPI_scroll_cursor_move( + arg1: Portal, + direction: FetchDirection, + count: ::std::os::raw::c_long, + ); + pub fn SPI_cursor_close(portal: Portal); + pub fn SPI_register_relation(enr: EphemeralNamedRelation) -> ::std::os::raw::c_int; + pub fn SPI_unregister_relation(name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; + pub fn SPI_register_trigger_data(tdata: *mut TriggerData) -> ::std::os::raw::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 SPICleanup(); + 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; @@ -36033,11 +37105,6 @@ extern "C" { context: *mut ::std::os::raw::c_void, flags: ::std::os::raw::c_int, ) -> *mut Node; - pub fn raw_expression_tree_walker( - node: *mut Node, - walker: ::std::option::Option bool>, - context: *mut ::std::os::raw::c_void, - ) -> bool; pub fn planstate_tree_walker( planstate: *mut PlanState, walker: ::std::option::Option bool>, @@ -37572,6 +38639,7 @@ extern "C" { ) -> *mut Query; 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) -> *const ::std::os::raw::c_char; pub fn CheckSelectLocking(qry: *mut Query, strength: LockClauseStrength); @@ -37586,6 +38654,12 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind) -> *const ::std::os::raw::c_char; pub fn ParseFuncOrColumn( pstate: *mut ParseState, funcname: *mut List, @@ -43350,17 +44424,6 @@ extern "C" { pub static mut VacuumSharedCostBalance: *mut pg_atomic_uint32; pub static mut VacuumActiveNWorkers: *mut pg_atomic_uint32; pub static mut VacuumCostBalanceLocal: ::std::os::raw::c_int; - pub static mut backslash_quote: ::std::os::raw::c_int; - pub static mut escape_string_warning: bool; - pub static mut standard_conforming_strings: bool; - pub static mut CurrentResourceOwner: ResourceOwner; - pub static mut CurTransactionResourceOwner: ResourceOwner; - pub static mut TopTransactionResourceOwner: ResourceOwner; - pub static mut AuxProcessResourceOwner: ResourceOwner; - pub static mut plan_cache_mode: ::std::os::raw::c_int; - pub static mut SPI_processed: uint64; - pub static mut SPI_tuptable: *mut SPITupleTable; - pub static mut SPI_result: ::std::os::raw::c_int; pub static mut MyBgworkerEntry: *mut BackgroundWorker; pub static mut MyProc: *mut PGPROC; pub static mut ProcGlobal: *mut PROC_HDR; @@ -43375,6 +44438,17 @@ extern "C" { pub static mut ParallelMessagePending: bool; pub static mut ParallelWorkerNumber: ::std::os::raw::c_int; pub static mut InitializingParallelWorker: bool; + pub static mut backslash_quote: ::std::os::raw::c_int; + pub static mut escape_string_warning: bool; + pub static mut standard_conforming_strings: bool; + pub static mut CurrentResourceOwner: ResourceOwner; + pub static mut CurTransactionResourceOwner: ResourceOwner; + pub static mut TopTransactionResourceOwner: ResourceOwner; + pub static mut AuxProcessResourceOwner: ResourceOwner; + pub static mut plan_cache_mode: ::std::os::raw::c_int; + pub static mut SPI_processed: uint64; + pub static mut SPI_tuptable: *mut SPITupleTable; + pub static mut SPI_result: ::std::os::raw::c_int; pub static pg_enc2name_tbl: [pg_enc2name; 0usize]; pub static pg_enc2gettext_tbl: [pg_enc2gettext; 0usize]; pub static pg_wchar_table: [pg_wchar_tbl; 0usize]; @@ -43427,6 +44501,7 @@ extern "C" { pub static mut compute_query_id: ::std::os::raw::c_int; pub static mut query_id_enabled: bool; pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub static mut Transform_null_equals: bool; pub static mut plpgsql_IdentifierLookup: IdentifierLookup; pub static mut plpgsql_variable_conflict: ::std::os::raw::c_int; pub static mut plpgsql_print_strict_params: bool; diff --git a/pgrx-pg-sys/src/include/pg14_oids.rs b/pgrx-pg-sys/src/include/pg14_oids.rs index e9d5f26c21..c594fadd14 100644 --- a/pgrx-pg-sys/src/include/pg14_oids.rs +++ b/pgrx-pg-sys/src/include/pg14_oids.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate::NotBuiltinOid; #[derive(Copy, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Debug)] pub enum BuiltinOid { @@ -106,6 +112,7 @@ pub enum BuiltinOid { INTERNALOID = 2281, INTERVALARRAYOID = 1187, INTERVALOID = 1186, + INTERVAL_BTREE_FAM_OID = 1982, IndexRelationId = 2610, JSONARRAYOID = 199, JSONBARRAYOID = 3807, @@ -363,6 +370,7 @@ impl BuiltinOid { 2281 => Ok(BuiltinOid::INTERNALOID), 1187 => Ok(BuiltinOid::INTERVALARRAYOID), 1186 => Ok(BuiltinOid::INTERVALOID), + 1982 => Ok(BuiltinOid::INTERVAL_BTREE_FAM_OID), 2610 => Ok(BuiltinOid::IndexRelationId), 199 => Ok(BuiltinOid::JSONARRAYOID), 3807 => Ok(BuiltinOid::JSONBARRAYOID), diff --git a/pgrx-pg-sys/src/include/pg15.rs b/pgrx-pg-sys/src/include/pg15.rs index 87eac01ce8..a2b5929f9b 100644 --- a/pgrx-pg-sys/src/include/pg15.rs +++ b/pgrx-pg-sys/src/include/pg15.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate as pg_sys; use crate::{Datum, Oid, PgNode}; #[repr(C)] @@ -95,49 +101,6 @@ impl ::std::fmt::Debug for __IncompleteArrayField { fmt.write_str("__IncompleteArrayField") } } -#[repr(C)] -pub struct __BindgenUnionField(::std::marker::PhantomData); -impl __BindgenUnionField { - #[inline] - pub const fn new() -> Self { - __BindgenUnionField(::std::marker::PhantomData) - } - #[inline] - pub unsafe fn as_ref(&self) -> &T { - ::std::mem::transmute(self) - } - #[inline] - pub unsafe fn as_mut(&mut self) -> &mut T { - ::std::mem::transmute(self) - } -} -impl ::std::default::Default for __BindgenUnionField { - #[inline] - fn default() -> Self { - Self::new() - } -} -impl ::std::clone::Clone for __BindgenUnionField { - #[inline] - fn clone(&self) -> Self { - *self - } -} -impl ::std::marker::Copy for __BindgenUnionField {} -impl ::std::fmt::Debug for __BindgenUnionField { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - fmt.write_str("__BindgenUnionField") - } -} -impl ::std::hash::Hash for __BindgenUnionField { - fn hash(&self, _state: &mut H) {} -} -impl ::std::cmp::PartialEq for __BindgenUnionField { - fn eq(&self, _other: &__BindgenUnionField) -> bool { - true - } -} -impl ::std::cmp::Eq for __BindgenUnionField {} pub const PG_DIAG_SEVERITY: u8 = 83u8; pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; pub const PG_DIAG_SQLSTATE: u8 = 67u8; @@ -162,7 +125,7 @@ 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 CONFIGURE_ARGS : & [u8 ; 205] = b" '--prefix=/home/jubilee/.pgrx/15.4/pgrx-install' '--with-pgport=28815' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; +pub const CONFIGURE_ARGS : & [u8 ; 205] = b" '--prefix=/home/jubilee/.pgrx/15.5/pgrx-install' '--with-pgport=28815' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; pub const DEF_PGPORT: u32 = 28815; pub const DEF_PGPORT_STR: &[u8; 6] = b"28815\0"; pub const DLSUFFIX: &[u8; 4] = b".so\0"; @@ -316,19 +279,19 @@ pub const MAXIMUM_ALIGNOF: u32 = 8; pub const MEMSET_LOOP_LIMIT: u32 = 1024; pub const PACKAGE_BUGREPORT: &[u8; 32] = b"pgsql-bugs@lists.postgresql.org\0"; pub const PACKAGE_NAME: &[u8; 11] = b"PostgreSQL\0"; -pub const PACKAGE_STRING: &[u8; 16] = b"PostgreSQL 15.4\0"; +pub const PACKAGE_STRING: &[u8; 16] = b"PostgreSQL 15.5\0"; pub const PACKAGE_TARNAME: &[u8; 11] = b"postgresql\0"; pub const PACKAGE_URL: &[u8; 28] = b"https://www.postgresql.org/\0"; -pub const PACKAGE_VERSION: &[u8; 5] = b"15.4\0"; +pub const PACKAGE_VERSION: &[u8; 5] = b"15.5\0"; pub const PG_KRB_SRVNAM: &[u8; 9] = b"postgres\0"; pub const PG_MAJORVERSION: &[u8; 3] = b"15\0"; pub const PG_MAJORVERSION_NUM: u32 = 15; -pub const PG_MINORVERSION_NUM: u32 = 4; +pub const PG_MINORVERSION_NUM: u32 = 5; pub const PG_USE_STDBOOL: u32 = 1; -pub const PG_VERSION: &[u8; 5] = b"15.4\0"; -pub const PG_VERSION_NUM: u32 = 150004; +pub const PG_VERSION: &[u8; 5] = b"15.5\0"; +pub const PG_VERSION_NUM: u32 = 150005; pub const PG_VERSION_STR: &[u8; 86] = - b"PostgreSQL 15.4 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; + b"PostgreSQL 15.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; pub const SIZEOF_LONG: u32 = 8; @@ -398,7 +361,7 @@ 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 = 38; +pub const __GLIBC_MINOR__: u32 = 39; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; @@ -526,6 +489,7 @@ pub const _STRINGS_H: u32 = 1; pub const _STDINT_H: u32 = 1; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; +pub const _BITS_STDINT_LEAST_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; @@ -770,7 +734,7 @@ pub const PG_BINARY_R: &[u8; 2] = b"r\0"; pub const PG_BINARY_W: &[u8; 2] = b"w\0"; pub const _CTYPE_H: u32 = 1; pub const PGINVALID_SOCKET: i32 = -1; -pub const PG_BACKEND_VERSIONSTR: &[u8; 28] = b"postgres (PostgreSQL) 15.4\n\0"; +pub const PG_BACKEND_VERSIONSTR: &[u8; 28] = b"postgres (PostgreSQL) 15.5\n\0"; pub const EXE: &[u8; 1] = b"\0"; pub const DEVNULL: &[u8; 10] = b"/dev/null\0"; pub const USE_REPL_SNPRINTF: u32 = 1; @@ -1971,6 +1935,8 @@ 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_PASSPIDFD: u32 = 76; +pub const SO_PEERPIDFD: u32 = 77; pub const SO_TIMESTAMP: u32 = 29; pub const SO_TIMESTAMPNS: u32 = 35; pub const SO_TIMESTAMPING: u32 = 37; @@ -2039,6 +2005,7 @@ pub const IP_PMTUDISC_PROBE: u32 = 3; pub const IP_PMTUDISC_INTERFACE: u32 = 4; pub const IP_PMTUDISC_OMIT: u32 = 5; pub const IP_LOCAL_PORT_RANGE: u32 = 51; +pub const IP_PROTOCOL: u32 = 52; pub const SOL_IP: u32 = 0; pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; @@ -2899,6 +2866,7 @@ pub const BPCHAR_BTREE_FAM_OID: Oid = Oid(426); pub const BYTEA_BTREE_FAM_OID: Oid = Oid(428); pub const NETWORK_BTREE_FAM_OID: Oid = Oid(1974); pub const INTEGER_BTREE_FAM_OID: Oid = Oid(1976); +pub const INTERVAL_BTREE_FAM_OID: Oid = Oid(1982); pub const OID_BTREE_FAM_OID: Oid = Oid(1989); pub const TEXT_BTREE_FAM_OID: Oid = Oid(1994); pub const TEXT_PATTERN_BTREE_FAM_OID: Oid = Oid(2095); @@ -3178,6 +3146,11 @@ pub const VACOPT_FULL: u32 = 16; pub const VACOPT_SKIP_LOCKED: u32 = 32; pub const VACOPT_PROCESS_TOAST: u32 = 64; pub const VACOPT_DISABLE_PAGE_SKIPPING: u32 = 128; +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 CACHEDPLANSOURCE_MAGIC: u32 = 195726186; pub const CACHEDPLAN_MAGIC: u32 = 953717834; pub const CACHEDEXPR_MAGIC: u32 = 838275847; @@ -4574,10 +4547,9 @@ pub const vartag_external_VARTAG_EXPANDED_RW: vartag_external = 3; pub const vartag_external_VARTAG_ONDISK: vartag_external = 18; pub type vartag_external = ::std::os::raw::c_uint; #[repr(C)] -pub struct varattrib_4b { - pub va_4byte: __BindgenUnionField, - pub va_compressed: __BindgenUnionField, - pub bindgen_union_field: [u32; 2usize], +pub union varattrib_4b { + pub va_4byte: ::std::mem::ManuallyDrop, + pub va_compressed: ::std::mem::ManuallyDrop, } #[repr(C)] #[derive(Debug, Default)] @@ -12846,11 +12818,6 @@ pub struct ParallelHashJoinState { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct ExprEvalStep { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct CopyMultiInsertBuffer { _unused: [u8; 0], } @@ -14515,35 +14482,10 @@ pub struct SharedAggInfo { pub num_workers: ::std::os::raw::c_int, pub sinstrument: __IncompleteArrayField, } -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerAggData { - _unused: [u8; 0], -} pub type AggStatePerAgg = *mut AggStatePerAggData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerTransData { - _unused: [u8; 0], -} pub type AggStatePerTrans = *mut AggStatePerTransData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerGroupData { - _unused: [u8; 0], -} pub type AggStatePerGroup = *mut AggStatePerGroupData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerPhaseData { - _unused: [u8; 0], -} pub type AggStatePerPhase = *mut AggStatePerPhaseData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerHashData { - _unused: [u8; 0], -} pub type AggStatePerHash = *mut AggStatePerHashData; #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -15526,6 +15468,7 @@ pub const SEGV_ADIDERR: _bindgen_ty_7 = 6; pub const SEGV_ADIPERR: _bindgen_ty_7 = 7; pub const SEGV_MTEAERR: _bindgen_ty_7 = 8; pub const SEGV_MTESERR: _bindgen_ty_7 = 9; +pub const SEGV_CPERR: _bindgen_ty_7 = 10; pub type _bindgen_ty_7 = ::std::os::raw::c_uint; pub const BUS_ADRALN: _bindgen_ty_8 = 1; pub const BUS_ADRERR: _bindgen_ty_8 = 2; @@ -21992,6 +21935,969 @@ impl Default for ConfigData { } } } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub numInputs: ::std::os::raw::c_int, + pub numTransInputs: ::std::os::raw::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: ::std::os::raw::c_int, + pub numDistinctCols: ::std::os::raw::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 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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy, + pub numsets: ::std::os::raw::c_int, + pub gset_lengths: *mut ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub numhashGrpCols: ::std::os::raw::c_int, + pub largestGrpColIdx: ::std::os::raw::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +pub type ExecEvalBoolSubroutine = ::std::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 ::std::os::raw::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const ExprEvalOp_EEOP_DONE: ExprEvalOp = 0; +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: ExprEvalOp = 1; +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: ExprEvalOp = 2; +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: ExprEvalOp = 3; +pub const ExprEvalOp_EEOP_INNER_VAR: ExprEvalOp = 4; +pub const ExprEvalOp_EEOP_OUTER_VAR: ExprEvalOp = 5; +pub const ExprEvalOp_EEOP_SCAN_VAR: ExprEvalOp = 6; +pub const ExprEvalOp_EEOP_INNER_SYSVAR: ExprEvalOp = 7; +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: ExprEvalOp = 8; +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: ExprEvalOp = 9; +pub const ExprEvalOp_EEOP_WHOLEROW: ExprEvalOp = 10; +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: ExprEvalOp = 11; +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: ExprEvalOp = 12; +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: ExprEvalOp = 13; +pub const ExprEvalOp_EEOP_ASSIGN_TMP: ExprEvalOp = 14; +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: ExprEvalOp = 15; +pub const ExprEvalOp_EEOP_CONST: ExprEvalOp = 16; +pub const ExprEvalOp_EEOP_FUNCEXPR: ExprEvalOp = 17; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: ExprEvalOp = 18; +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: ExprEvalOp = 19; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: ExprEvalOp = 20; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: ExprEvalOp = 21; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: ExprEvalOp = 22; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: ExprEvalOp = 23; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: ExprEvalOp = 24; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: ExprEvalOp = 25; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: ExprEvalOp = 26; +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: ExprEvalOp = 27; +pub const ExprEvalOp_EEOP_QUAL: ExprEvalOp = 28; +pub const ExprEvalOp_EEOP_JUMP: ExprEvalOp = 29; +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: ExprEvalOp = 30; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: ExprEvalOp = 31; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: ExprEvalOp = 32; +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: ExprEvalOp = 33; +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: ExprEvalOp = 34; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: ExprEvalOp = 35; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: ExprEvalOp = 36; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: ExprEvalOp = 37; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: ExprEvalOp = 38; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: ExprEvalOp = 39; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: ExprEvalOp = 40; +pub const ExprEvalOp_EEOP_PARAM_EXEC: ExprEvalOp = 41; +pub const ExprEvalOp_EEOP_PARAM_EXTERN: ExprEvalOp = 42; +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: ExprEvalOp = 43; +pub const ExprEvalOp_EEOP_CASE_TESTVAL: ExprEvalOp = 44; +pub const ExprEvalOp_EEOP_MAKE_READONLY: ExprEvalOp = 45; +pub const ExprEvalOp_EEOP_IOCOERCE: ExprEvalOp = 46; +pub const ExprEvalOp_EEOP_DISTINCT: ExprEvalOp = 47; +pub const ExprEvalOp_EEOP_NOT_DISTINCT: ExprEvalOp = 48; +pub const ExprEvalOp_EEOP_NULLIF: ExprEvalOp = 49; +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: ExprEvalOp = 50; +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: ExprEvalOp = 51; +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: ExprEvalOp = 52; +pub const ExprEvalOp_EEOP_ARRAYEXPR: ExprEvalOp = 53; +pub const ExprEvalOp_EEOP_ARRAYCOERCE: ExprEvalOp = 54; +pub const ExprEvalOp_EEOP_ROW: ExprEvalOp = 55; +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: ExprEvalOp = 56; +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: ExprEvalOp = 57; +pub const ExprEvalOp_EEOP_MINMAX: ExprEvalOp = 58; +pub const ExprEvalOp_EEOP_FIELDSELECT: ExprEvalOp = 59; +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: ExprEvalOp = 60; +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: ExprEvalOp = 61; +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPTS: ExprEvalOp = 62; +pub const ExprEvalOp_EEOP_SBSREF_OLD: ExprEvalOp = 63; +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: ExprEvalOp = 64; +pub const ExprEvalOp_EEOP_SBSREF_FETCH: ExprEvalOp = 65; +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: ExprEvalOp = 66; +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: ExprEvalOp = 67; +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: ExprEvalOp = 68; +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: ExprEvalOp = 69; +pub const ExprEvalOp_EEOP_SCALARARRAYOP: ExprEvalOp = 70; +pub const ExprEvalOp_EEOP_HASHED_SCALARARRAYOP: ExprEvalOp = 71; +pub const ExprEvalOp_EEOP_XMLEXPR: ExprEvalOp = 72; +pub const ExprEvalOp_EEOP_AGGREF: ExprEvalOp = 73; +pub const ExprEvalOp_EEOP_GROUPING_FUNC: ExprEvalOp = 74; +pub const ExprEvalOp_EEOP_WINDOW_FUNC: ExprEvalOp = 75; +pub const ExprEvalOp_EEOP_SUBPLAN: ExprEvalOp = 76; +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: ExprEvalOp = 77; +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: ExprEvalOp = 78; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: ExprEvalOp = 79; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: ExprEvalOp = 80; +pub const ExprEvalOp_EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: ExprEvalOp = 81; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: ExprEvalOp = 82; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: ExprEvalOp = 83; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: ExprEvalOp = 84; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: ExprEvalOp = 85; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: ExprEvalOp = 86; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYREF: ExprEvalOp = 87; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: ExprEvalOp = 88; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: ExprEvalOp = 89; +pub const ExprEvalOp_EEOP_LAST: ExprEvalOp = 90; +pub type ExprEvalOp = ::std::os::raw::c_uint; +#[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 aggref: ExprEvalStep__bindgen_ty_1__bindgen_ty_34, + pub grouping_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_35, + pub window_func: ExprEvalStep__bindgen_ty_1__bindgen_ty_36, + pub subplan: ExprEvalStep__bindgen_ty_1__bindgen_ty_37, + pub agg_deserialize: ExprEvalStep__bindgen_ty_1__bindgen_ty_38, + pub agg_strict_input_check: ExprEvalStep__bindgen_ty_1__bindgen_ty_39, + pub agg_plain_pergroup_nullcheck: ExprEvalStep__bindgen_ty_1__bindgen_ty_40, + pub agg_trans: ExprEvalStep__bindgen_ty_1__bindgen_ty_41, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub attnum: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub paramid: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::std::os::raw::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub op: MinMaxOp, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_34 { + pub aggno: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + pub clauses: *mut List, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_35 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_36 { + pub wfstate: *mut WindowFuncExprState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_36 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 sstate: *mut SubPlanState, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_37 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 fcinfo_data: FunctionCallInfo, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_38 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 args: *mut NullableDatum, + pub nulls: *mut bool, + pub nargs: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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_40 { + pub setoff: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + pub pertrans: AggStatePerTrans, + pub aggcontext: *mut ExprContext, + pub setno: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_41 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub numupper: ::std::os::raw::c_int, + pub upperprovided: *mut bool, + pub upperindex: *mut Datum, + pub upperindexnull: *mut bool, + pub numlower: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} pub const RawParseMode_RAW_PARSE_DEFAULT: RawParseMode = 0; pub const RawParseMode_RAW_PARSE_TYPE_NAME: RawParseMode = 1; pub const RawParseMode_RAW_PARSE_PLPGSQL_EXPR: RawParseMode = 2; @@ -24529,6 +25435,31 @@ impl Default for TimeLineHistoryCmd { } } } +pub type SubscriptTransform = ::std::option::Option< + unsafe extern "C" fn( + sbsref: *mut SubscriptingRef, + indirection: *mut List, + pstate: *mut ParseState, + isSlice: bool, + isAssignment: bool, + ), +>; +pub type SubscriptExecSetup = ::std::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 { @@ -27385,7 +28316,6 @@ pub type ProcessUtility_hook_type = ::std::option::Option< ), >; #[repr(C)] -#[repr(align(4))] #[derive(Debug, Default, Copy, Clone)] pub struct WordEntry { pub _bitfield_align_1: [u32; 0], @@ -28212,11 +29142,6 @@ impl Default for JsonbIterator { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct SubscriptRoutines { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct OpBtreeInterpretation { pub opfamily_id: Oid, pub strategy: ::std::os::raw::c_int, @@ -29242,6 +30167,7 @@ extern "C" { facility: ::std::os::raw::c_int, ); pub fn write_stderr(fmt: *const ::std::os::raw::c_char, ...); + pub fn write_stderr_signal_safe(fmt: *const ::std::os::raw::c_char); pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::std::os::raw::c_void; pub fn MemoryContextAllocZero( context: MemoryContext, @@ -35547,6 +36473,150 @@ extern "C" { ControlFile: *mut ControlFileData, do_sync: bool, ); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::std::os::raw::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size( + numTrans: ::std::os::raw::c_int, + tupleWidth: Size, + transitionSpace: Size, + ) -> Size; + pub fn hash_agg_set_limits( + hashentrysize: f64, + input_groups: f64, + used_bits: ::std::os::raw::c_int, + mem_limit: *mut Size, + ngroups_limit: *mut uint64, + num_partitions: *mut ::std::os::raw::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; + 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 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 ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + 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 ExecAggTransReparent( + aggstate: *mut AggState, + pertrans: AggStatePerTrans, + newValue: Datum, + newValueIsNull: bool, + oldValue: Datum, + oldValueIsNull: bool, + ) -> Datum; + 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 fn raw_parser(str_: *const ::std::os::raw::c_char, mode: RawParseMode) -> *mut List; pub fn SystemFuncName(name: *mut ::std::os::raw::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::std::os::raw::c_char) -> *mut TypeName; @@ -36423,11 +37493,6 @@ extern "C" { context: *mut ::std::os::raw::c_void, flags: ::std::os::raw::c_int, ) -> *mut Node; - pub fn raw_expression_tree_walker( - node: *mut Node, - walker: ::std::option::Option bool>, - context: *mut ::std::os::raw::c_void, - ) -> bool; pub fn planstate_tree_walker( planstate: *mut PlanState, walker: ::std::option::Option bool>, @@ -37983,6 +39048,7 @@ extern "C" { pub fn transformUpdateTargetList(pstate: *mut ParseState, targetList: *mut List) -> *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) -> *const ::std::os::raw::c_char; pub fn CheckSelectLocking(qry: *mut Query, strength: LockClauseStrength); @@ -37997,6 +39063,12 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind) -> *const ::std::os::raw::c_char; pub fn ParseFuncOrColumn( pstate: *mut ParseState, funcname: *mut List, @@ -43953,6 +45025,7 @@ extern "C" { pub static mut compute_query_id: ::std::os::raw::c_int; pub static mut query_id_enabled: bool; pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub static mut Transform_null_equals: bool; pub static mut plpgsql_IdentifierLookup: IdentifierLookup; pub static mut plpgsql_variable_conflict: ::std::os::raw::c_int; pub static mut plpgsql_print_strict_params: bool; diff --git a/pgrx-pg-sys/src/include/pg15_oids.rs b/pgrx-pg-sys/src/include/pg15_oids.rs index b9661d1e02..e89b3d1021 100644 --- a/pgrx-pg-sys/src/include/pg15_oids.rs +++ b/pgrx-pg-sys/src/include/pg15_oids.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate::NotBuiltinOid; #[derive(Copy, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Debug)] pub enum BuiltinOid { @@ -106,6 +112,7 @@ pub enum BuiltinOid { INTERNALOID = 2281, INTERVALARRAYOID = 1187, INTERVALOID = 1186, + INTERVAL_BTREE_FAM_OID = 1982, IndexRelationId = 2610, JSONARRAYOID = 199, JSONBARRAYOID = 3807, @@ -362,6 +369,7 @@ impl BuiltinOid { 2281 => Ok(BuiltinOid::INTERNALOID), 1187 => Ok(BuiltinOid::INTERVALARRAYOID), 1186 => Ok(BuiltinOid::INTERVALOID), + 1982 => Ok(BuiltinOid::INTERVAL_BTREE_FAM_OID), 2610 => Ok(BuiltinOid::IndexRelationId), 199 => Ok(BuiltinOid::JSONARRAYOID), 3807 => Ok(BuiltinOid::JSONBARRAYOID), diff --git a/pgrx-pg-sys/src/include/pg16.rs b/pgrx-pg-sys/src/include/pg16.rs index ad3f097eda..8c709cab28 100644 --- a/pgrx-pg-sys/src/include/pg16.rs +++ b/pgrx-pg-sys/src/include/pg16.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate as pg_sys; use crate::{Datum, Oid, PgNode}; #[repr(C)] @@ -65,6 +71,9 @@ where } } } +#[derive(PartialEq, Copy, Clone, Hash, Debug, Default)] +#[repr(transparent)] +pub struct __BindgenFloat16(pub u16); #[repr(C)] #[derive(Default)] pub struct __IncompleteArrayField(::std::marker::PhantomData, [T; 0]); @@ -95,49 +104,6 @@ impl ::std::fmt::Debug for __IncompleteArrayField { fmt.write_str("__IncompleteArrayField") } } -#[repr(C)] -pub struct __BindgenUnionField(::std::marker::PhantomData); -impl __BindgenUnionField { - #[inline] - pub const fn new() -> Self { - __BindgenUnionField(::std::marker::PhantomData) - } - #[inline] - pub unsafe fn as_ref(&self) -> &T { - ::std::mem::transmute(self) - } - #[inline] - pub unsafe fn as_mut(&mut self) -> &mut T { - ::std::mem::transmute(self) - } -} -impl ::std::default::Default for __BindgenUnionField { - #[inline] - fn default() -> Self { - Self::new() - } -} -impl ::std::clone::Clone for __BindgenUnionField { - #[inline] - fn clone(&self) -> Self { - *self - } -} -impl ::std::marker::Copy for __BindgenUnionField {} -impl ::std::fmt::Debug for __BindgenUnionField { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - fmt.write_str("__BindgenUnionField") - } -} -impl ::std::hash::Hash for __BindgenUnionField { - fn hash(&self, _state: &mut H) {} -} -impl ::std::cmp::PartialEq for __BindgenUnionField { - fn eq(&self, _other: &__BindgenUnionField) -> bool { - true - } -} -impl ::std::cmp::Eq for __BindgenUnionField {} pub const PG_DIAG_SEVERITY: u8 = 83u8; pub const PG_DIAG_SEVERITY_NONLOCALIZED: u8 = 86u8; pub const PG_DIAG_SQLSTATE: u8 = 67u8; @@ -162,7 +128,7 @@ 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 CONFIGURE_ARGS : & [u8 ; 205] = b" '--prefix=/home/jubilee/.pgrx/16.0/pgrx-install' '--with-pgport=28816' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; +pub const CONFIGURE_ARGS : & [u8 ; 205] = b" '--prefix=/home/jubilee/.pgrx/16.1/pgrx-install' '--with-pgport=28816' '--enable-debug' '--enable-cassert' 'CPPFLAGS= -DMEMORY_CONTEXT_CHECKING=1 -DCLOBBER_FREED_MEMORY=1 -DRANDOMIZE_ALLOCATED_MEMORY=1 '\0" ; pub const DEF_PGPORT: u32 = 28816; pub const DEF_PGPORT_STR: &[u8; 6] = b"28816\0"; pub const DLSUFFIX: &[u8; 4] = b".so\0"; @@ -271,19 +237,19 @@ pub const MAXIMUM_ALIGNOF: u32 = 8; pub const MEMSET_LOOP_LIMIT: u32 = 1024; pub const PACKAGE_BUGREPORT: &[u8; 32] = b"pgsql-bugs@lists.postgresql.org\0"; pub const PACKAGE_NAME: &[u8; 11] = b"PostgreSQL\0"; -pub const PACKAGE_STRING: &[u8; 16] = b"PostgreSQL 16.0\0"; +pub const PACKAGE_STRING: &[u8; 16] = b"PostgreSQL 16.1\0"; pub const PACKAGE_TARNAME: &[u8; 11] = b"postgresql\0"; pub const PACKAGE_URL: &[u8; 28] = b"https://www.postgresql.org/\0"; -pub const PACKAGE_VERSION: &[u8; 5] = b"16.0\0"; +pub const PACKAGE_VERSION: &[u8; 5] = b"16.1\0"; pub const PG_KRB_SRVNAM: &[u8; 9] = b"postgres\0"; pub const PG_MAJORVERSION: &[u8; 3] = b"16\0"; pub const PG_MAJORVERSION_NUM: u32 = 16; -pub const PG_MINORVERSION_NUM: u32 = 0; +pub const PG_MINORVERSION_NUM: u32 = 1; pub const PG_USE_STDBOOL: u32 = 1; -pub const PG_VERSION: &[u8; 5] = b"16.0\0"; -pub const PG_VERSION_NUM: u32 = 160000; +pub const PG_VERSION: &[u8; 5] = b"16.1\0"; +pub const PG_VERSION_NUM: u32 = 160001; pub const PG_VERSION_STR: &[u8; 86] = - b"PostgreSQL 16.0 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; + b"PostgreSQL 16.1 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 13.2.1 20230801, 64-bit\0"; pub const RELSEG_SIZE: u32 = 131072; pub const SIZEOF_BOOL: u32 = 1; pub const SIZEOF_LONG: u32 = 8; @@ -353,7 +319,7 @@ 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 = 38; +pub const __GLIBC_MINOR__: u32 = 39; pub const _SYS_CDEFS_H: u32 = 1; pub const __glibc_c99_flexarr_available: u32 = 1; pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; @@ -481,6 +447,7 @@ pub const _STRINGS_H: u32 = 1; pub const _STDINT_H: u32 = 1; pub const _BITS_WCHAR_H: u32 = 1; pub const _BITS_STDINT_UINTN_H: u32 = 1; +pub const _BITS_STDINT_LEAST_H: u32 = 1; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; @@ -724,7 +691,7 @@ pub const PG_BINARY_R: &[u8; 2] = b"r\0"; pub const PG_BINARY_W: &[u8; 2] = b"w\0"; pub const _CTYPE_H: u32 = 1; pub const PGINVALID_SOCKET: i32 = -1; -pub const PG_BACKEND_VERSIONSTR: &[u8; 28] = b"postgres (PostgreSQL) 16.0\n\0"; +pub const PG_BACKEND_VERSIONSTR: &[u8; 28] = b"postgres (PostgreSQL) 16.1\n\0"; pub const EXE: &[u8; 1] = b"\0"; pub const DEVNULL: &[u8; 10] = b"/dev/null\0"; pub const USE_REPL_SNPRINTF: u32 = 1; @@ -1934,6 +1901,8 @@ 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_PASSPIDFD: u32 = 76; +pub const SO_PEERPIDFD: u32 = 77; pub const SO_TIMESTAMP: u32 = 29; pub const SO_TIMESTAMPNS: u32 = 35; pub const SO_TIMESTAMPING: u32 = 37; @@ -2003,6 +1972,7 @@ pub const IP_PMTUDISC_PROBE: u32 = 3; pub const IP_PMTUDISC_INTERFACE: u32 = 4; pub const IP_PMTUDISC_OMIT: u32 = 5; pub const IP_LOCAL_PORT_RANGE: u32 = 51; +pub const IP_PROTOCOL: u32 = 52; pub const SOL_IP: u32 = 0; pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; @@ -2836,6 +2806,7 @@ pub const BPCHAR_BTREE_FAM_OID: Oid = Oid(426); pub const BYTEA_BTREE_FAM_OID: Oid = Oid(428); pub const NETWORK_BTREE_FAM_OID: Oid = Oid(1974); pub const INTEGER_BTREE_FAM_OID: Oid = Oid(1976); +pub const INTERVAL_BTREE_FAM_OID: Oid = Oid(1982); pub const OID_BTREE_FAM_OID: Oid = Oid(1989); pub const TEXT_BTREE_FAM_OID: Oid = Oid(1994); pub const TEXT_PATTERN_BTREE_FAM_OID: Oid = Oid(2095); @@ -3150,6 +3121,11 @@ 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 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 CACHEDPLANSOURCE_MAGIC: u32 = 195726186; pub const CACHEDPLAN_MAGIC: u32 = 953717834; pub const CACHEDEXPR_MAGIC: u32 = 838275847; @@ -5611,10 +5587,9 @@ pub const vartag_external_VARTAG_EXPANDED_RW: vartag_external = 3; pub const vartag_external_VARTAG_ONDISK: vartag_external = 18; pub type vartag_external = ::std::os::raw::c_uint; #[repr(C)] -pub struct varattrib_4b { - pub va_4byte: __BindgenUnionField, - pub va_compressed: __BindgenUnionField, - pub bindgen_union_field: [u32; 2usize], +pub union varattrib_4b { + pub va_4byte: ::std::mem::ManuallyDrop, + pub va_compressed: ::std::mem::ManuallyDrop, } #[repr(C)] #[derive(Debug, Default)] @@ -13295,11 +13270,6 @@ pub struct ParallelHashJoinState { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct ExprEvalStep { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct CopyMultiInsertBuffer { _unused: [u8; 0], } @@ -14938,35 +14908,10 @@ pub struct SharedAggInfo { pub num_workers: ::std::os::raw::c_int, pub sinstrument: __IncompleteArrayField, } -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerAggData { - _unused: [u8; 0], -} pub type AggStatePerAgg = *mut AggStatePerAggData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerTransData { - _unused: [u8; 0], -} pub type AggStatePerTrans = *mut AggStatePerTransData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerGroupData { - _unused: [u8; 0], -} pub type AggStatePerGroup = *mut AggStatePerGroupData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerPhaseData { - _unused: [u8; 0], -} pub type AggStatePerPhase = *mut AggStatePerPhaseData; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct AggStatePerHashData { - _unused: [u8; 0], -} pub type AggStatePerHash = *mut AggStatePerHashData; #[repr(C)] #[derive(Debug, Copy, Clone)] @@ -15953,6 +15898,7 @@ pub const SEGV_ADIDERR: _bindgen_ty_7 = 6; pub const SEGV_ADIPERR: _bindgen_ty_7 = 7; pub const SEGV_MTEAERR: _bindgen_ty_7 = 8; pub const SEGV_MTESERR: _bindgen_ty_7 = 9; +pub const SEGV_CPERR: _bindgen_ty_7 = 10; pub type _bindgen_ty_7 = ::std::os::raw::c_uint; pub const BUS_ADRALN: _bindgen_ty_8 = 1; pub const BUS_ADRERR: _bindgen_ty_8 = 2; @@ -22492,6 +22438,1058 @@ impl Default for ConfigData { } } } +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerTransData { + pub aggref: *mut Aggref, + pub aggshared: bool, + pub aggsortrequired: bool, + pub numInputs: ::std::os::raw::c_int, + pub numTransInputs: ::std::os::raw::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: ::std::os::raw::c_int, + pub numDistinctCols: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub finalfn_oid: Oid, + pub finalfn: FmgrInfo, + pub numFinalArgs: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct AggStatePerPhaseData { + pub aggstrategy: AggStrategy, + pub numsets: ::std::os::raw::c_int, + pub gset_lengths: *mut ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub numhashGrpCols: ::std::os::raw::c_int, + pub largestGrpColIdx: ::std::os::raw::c_int, + pub hashGrpColIdxInput: *mut AttrNumber, + pub hashGrpColIdxHash: *mut AttrNumber, + pub aggnode: *mut Agg, +} +impl Default for AggStatePerHashData { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::option::Option< + unsafe extern "C" fn(state: *mut ExprState, op: *mut ExprEvalStep, econtext: *mut ExprContext), +>; +pub type ExecEvalBoolSubroutine = ::std::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 ::std::os::raw::c_void, + pub tupdesc_id: uint64, +} +impl Default for ExprEvalRowtypeCache { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +pub const ExprEvalOp_EEOP_DONE: ExprEvalOp = 0; +pub const ExprEvalOp_EEOP_INNER_FETCHSOME: ExprEvalOp = 1; +pub const ExprEvalOp_EEOP_OUTER_FETCHSOME: ExprEvalOp = 2; +pub const ExprEvalOp_EEOP_SCAN_FETCHSOME: ExprEvalOp = 3; +pub const ExprEvalOp_EEOP_INNER_VAR: ExprEvalOp = 4; +pub const ExprEvalOp_EEOP_OUTER_VAR: ExprEvalOp = 5; +pub const ExprEvalOp_EEOP_SCAN_VAR: ExprEvalOp = 6; +pub const ExprEvalOp_EEOP_INNER_SYSVAR: ExprEvalOp = 7; +pub const ExprEvalOp_EEOP_OUTER_SYSVAR: ExprEvalOp = 8; +pub const ExprEvalOp_EEOP_SCAN_SYSVAR: ExprEvalOp = 9; +pub const ExprEvalOp_EEOP_WHOLEROW: ExprEvalOp = 10; +pub const ExprEvalOp_EEOP_ASSIGN_INNER_VAR: ExprEvalOp = 11; +pub const ExprEvalOp_EEOP_ASSIGN_OUTER_VAR: ExprEvalOp = 12; +pub const ExprEvalOp_EEOP_ASSIGN_SCAN_VAR: ExprEvalOp = 13; +pub const ExprEvalOp_EEOP_ASSIGN_TMP: ExprEvalOp = 14; +pub const ExprEvalOp_EEOP_ASSIGN_TMP_MAKE_RO: ExprEvalOp = 15; +pub const ExprEvalOp_EEOP_CONST: ExprEvalOp = 16; +pub const ExprEvalOp_EEOP_FUNCEXPR: ExprEvalOp = 17; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT: ExprEvalOp = 18; +pub const ExprEvalOp_EEOP_FUNCEXPR_FUSAGE: ExprEvalOp = 19; +pub const ExprEvalOp_EEOP_FUNCEXPR_STRICT_FUSAGE: ExprEvalOp = 20; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_FIRST: ExprEvalOp = 21; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP: ExprEvalOp = 22; +pub const ExprEvalOp_EEOP_BOOL_AND_STEP_LAST: ExprEvalOp = 23; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_FIRST: ExprEvalOp = 24; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP: ExprEvalOp = 25; +pub const ExprEvalOp_EEOP_BOOL_OR_STEP_LAST: ExprEvalOp = 26; +pub const ExprEvalOp_EEOP_BOOL_NOT_STEP: ExprEvalOp = 27; +pub const ExprEvalOp_EEOP_QUAL: ExprEvalOp = 28; +pub const ExprEvalOp_EEOP_JUMP: ExprEvalOp = 29; +pub const ExprEvalOp_EEOP_JUMP_IF_NULL: ExprEvalOp = 30; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_NULL: ExprEvalOp = 31; +pub const ExprEvalOp_EEOP_JUMP_IF_NOT_TRUE: ExprEvalOp = 32; +pub const ExprEvalOp_EEOP_NULLTEST_ISNULL: ExprEvalOp = 33; +pub const ExprEvalOp_EEOP_NULLTEST_ISNOTNULL: ExprEvalOp = 34; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNULL: ExprEvalOp = 35; +pub const ExprEvalOp_EEOP_NULLTEST_ROWISNOTNULL: ExprEvalOp = 36; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_TRUE: ExprEvalOp = 37; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_TRUE: ExprEvalOp = 38; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_FALSE: ExprEvalOp = 39; +pub const ExprEvalOp_EEOP_BOOLTEST_IS_NOT_FALSE: ExprEvalOp = 40; +pub const ExprEvalOp_EEOP_PARAM_EXEC: ExprEvalOp = 41; +pub const ExprEvalOp_EEOP_PARAM_EXTERN: ExprEvalOp = 42; +pub const ExprEvalOp_EEOP_PARAM_CALLBACK: ExprEvalOp = 43; +pub const ExprEvalOp_EEOP_CASE_TESTVAL: ExprEvalOp = 44; +pub const ExprEvalOp_EEOP_MAKE_READONLY: ExprEvalOp = 45; +pub const ExprEvalOp_EEOP_IOCOERCE: ExprEvalOp = 46; +pub const ExprEvalOp_EEOP_DISTINCT: ExprEvalOp = 47; +pub const ExprEvalOp_EEOP_NOT_DISTINCT: ExprEvalOp = 48; +pub const ExprEvalOp_EEOP_NULLIF: ExprEvalOp = 49; +pub const ExprEvalOp_EEOP_SQLVALUEFUNCTION: ExprEvalOp = 50; +pub const ExprEvalOp_EEOP_CURRENTOFEXPR: ExprEvalOp = 51; +pub const ExprEvalOp_EEOP_NEXTVALUEEXPR: ExprEvalOp = 52; +pub const ExprEvalOp_EEOP_ARRAYEXPR: ExprEvalOp = 53; +pub const ExprEvalOp_EEOP_ARRAYCOERCE: ExprEvalOp = 54; +pub const ExprEvalOp_EEOP_ROW: ExprEvalOp = 55; +pub const ExprEvalOp_EEOP_ROWCOMPARE_STEP: ExprEvalOp = 56; +pub const ExprEvalOp_EEOP_ROWCOMPARE_FINAL: ExprEvalOp = 57; +pub const ExprEvalOp_EEOP_MINMAX: ExprEvalOp = 58; +pub const ExprEvalOp_EEOP_FIELDSELECT: ExprEvalOp = 59; +pub const ExprEvalOp_EEOP_FIELDSTORE_DEFORM: ExprEvalOp = 60; +pub const ExprEvalOp_EEOP_FIELDSTORE_FORM: ExprEvalOp = 61; +pub const ExprEvalOp_EEOP_SBSREF_SUBSCRIPTS: ExprEvalOp = 62; +pub const ExprEvalOp_EEOP_SBSREF_OLD: ExprEvalOp = 63; +pub const ExprEvalOp_EEOP_SBSREF_ASSIGN: ExprEvalOp = 64; +pub const ExprEvalOp_EEOP_SBSREF_FETCH: ExprEvalOp = 65; +pub const ExprEvalOp_EEOP_DOMAIN_TESTVAL: ExprEvalOp = 66; +pub const ExprEvalOp_EEOP_DOMAIN_NOTNULL: ExprEvalOp = 67; +pub const ExprEvalOp_EEOP_DOMAIN_CHECK: ExprEvalOp = 68; +pub const ExprEvalOp_EEOP_CONVERT_ROWTYPE: ExprEvalOp = 69; +pub const ExprEvalOp_EEOP_SCALARARRAYOP: ExprEvalOp = 70; +pub const ExprEvalOp_EEOP_HASHED_SCALARARRAYOP: ExprEvalOp = 71; +pub const ExprEvalOp_EEOP_XMLEXPR: ExprEvalOp = 72; +pub const ExprEvalOp_EEOP_JSON_CONSTRUCTOR: ExprEvalOp = 73; +pub const ExprEvalOp_EEOP_IS_JSON: ExprEvalOp = 74; +pub const ExprEvalOp_EEOP_AGGREF: ExprEvalOp = 75; +pub const ExprEvalOp_EEOP_GROUPING_FUNC: ExprEvalOp = 76; +pub const ExprEvalOp_EEOP_WINDOW_FUNC: ExprEvalOp = 77; +pub const ExprEvalOp_EEOP_SUBPLAN: ExprEvalOp = 78; +pub const ExprEvalOp_EEOP_AGG_STRICT_DESERIALIZE: ExprEvalOp = 79; +pub const ExprEvalOp_EEOP_AGG_DESERIALIZE: ExprEvalOp = 80; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_ARGS: ExprEvalOp = 81; +pub const ExprEvalOp_EEOP_AGG_STRICT_INPUT_CHECK_NULLS: ExprEvalOp = 82; +pub const ExprEvalOp_EEOP_AGG_PLAIN_PERGROUP_NULLCHECK: ExprEvalOp = 83; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYVAL: ExprEvalOp = 84; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYVAL: ExprEvalOp = 85; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYVAL: ExprEvalOp = 86; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_INIT_STRICT_BYREF: ExprEvalOp = 87; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_STRICT_BYREF: ExprEvalOp = 88; +pub const ExprEvalOp_EEOP_AGG_PLAIN_TRANS_BYREF: ExprEvalOp = 89; +pub const ExprEvalOp_EEOP_AGG_PRESORTED_DISTINCT_SINGLE: ExprEvalOp = 90; +pub const ExprEvalOp_EEOP_AGG_PRESORTED_DISTINCT_MULTI: ExprEvalOp = 91; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_DATUM: ExprEvalOp = 92; +pub const ExprEvalOp_EEOP_AGG_ORDERED_TRANS_TUPLE: ExprEvalOp = 93; +pub const ExprEvalOp_EEOP_LAST: ExprEvalOp = 94; +pub type ExprEvalOp = ::std::os::raw::c_uint; +#[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, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_1 { + pub last_var: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub vartype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_2 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub attnum: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_5 { + pub resultnum: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_7 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_8 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Default, Copy, Clone)] +pub struct ExprEvalStep__bindgen_ty_1__bindgen_ty_10 { + pub jumpdone: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_12 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub paramid: ::std::os::raw::c_int, + pub paramtype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_13 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub elemtype: Oid, + pub elemlength: int16, + pub elembyval: bool, + pub elemalign: ::std::os::raw::c_char, + pub multidims: bool, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_19 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpdone: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_22 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_23 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub op: MinMaxOp, + pub finfo: *mut FmgrInfo, + pub fcinfo_data: FunctionCallInfo, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_24 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_26 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_27 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_char, + pub checkvalue: *mut Datum, + pub checknull: *mut bool, + pub resulttype: Oid, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_29 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_39 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_40 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub jumpnull: ::std::os::raw::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: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_42 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, + pub transno: ::std::os::raw::c_int, + pub setoff: ::std::os::raw::c_int, +} +impl Default for ExprEvalStep__bindgen_ty_1__bindgen_ty_43 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for ExprEvalStep { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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 ::std::os::raw::c_void, + pub numupper: ::std::os::raw::c_int, + pub upperprovided: *mut bool, + pub upperindex: *mut Datum, + pub upperindexnull: *mut bool, + pub numlower: ::std::os::raw::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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::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: ::std::os::raw::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct JsonConstructorExprState__bindgen_ty_1 { + pub category: ::std::os::raw::c_int, + pub outfuncid: Oid, +} +impl Default for JsonConstructorExprState__bindgen_ty_1 { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} +impl Default for JsonConstructorExprState { + fn default() -> Self { + let mut s = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub const RawParseMode_RAW_PARSE_DEFAULT: RawParseMode = 0; pub const RawParseMode_RAW_PARSE_TYPE_NAME: RawParseMode = 1; pub const RawParseMode_RAW_PARSE_PLPGSQL_EXPR: RawParseMode = 2; @@ -24663,9 +25661,9 @@ pub type __v2du = [::std::os::raw::c_ulonglong; 2usize]; pub type __v8hu = [::std::os::raw::c_ushort; 8usize]; pub type __v16qu = [::std::os::raw::c_uchar; 16usize]; pub type __v16qs = [::std::os::raw::c_schar; 16usize]; -pub type __v8hf = u128; -pub type __m128h = u128; -pub type __m128h_u = u128; +pub type __v8hf = [__BindgenFloat16; 8usize]; +pub type __m128h = [__BindgenFloat16; 8usize]; +pub type __m128h_u = [__BindgenFloat16; 8usize]; pub type __v8bf = u128; pub type __m128bh = u128; pub type Vector8 = __m128i; @@ -24993,6 +25991,23 @@ impl Default for CustomExecMethods { } } } +#[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 = ::std::mem::MaybeUninit::::uninit(); + unsafe { + ::std::ptr::write_bytes(s.as_mut_ptr(), 0, 1); + s.assume_init() + } + } +} pub type check_function_callback = ::std::option::Option< unsafe extern "C" fn(func_id: Oid, context: *mut ::std::os::raw::c_void) -> bool, >; @@ -25121,6 +26136,31 @@ impl Default for TimeLineHistoryCmd { } } } +pub type SubscriptTransform = ::std::option::Option< + unsafe extern "C" fn( + sbsref: *mut SubscriptingRef, + indirection: *mut List, + pstate: *mut ParseState, + isSlice: bool, + isAssignment: bool, + ), +>; +pub type SubscriptExecSetup = ::std::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 { @@ -28048,7 +29088,6 @@ pub type ProcessUtility_hook_type = ::std::option::Option< ), >; #[repr(C)] -#[repr(align(4))] #[derive(Debug, Default, Copy, Clone)] pub struct WordEntry { pub _bitfield_align_1: [u32; 0], @@ -28892,11 +29931,6 @@ impl Default for JsonbIterator { } #[repr(C)] #[derive(Debug, Copy, Clone)] -pub struct SubscriptRoutines { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] pub struct OpBtreeInterpretation { pub opfamily_id: Oid, pub strategy: ::std::os::raw::c_int, @@ -29964,6 +30998,7 @@ extern "C" { pub fn write_csvlog(edata: *mut ErrorData); pub fn write_jsonlog(edata: *mut ErrorData); pub fn write_stderr(fmt: *const ::std::os::raw::c_char, ...); + pub fn write_stderr_signal_safe(fmt: *const ::std::os::raw::c_char); pub fn MemoryContextAlloc(context: MemoryContext, size: Size) -> *mut ::std::os::raw::c_void; pub fn MemoryContextAllocZero( context: MemoryContext, @@ -36295,6 +37330,164 @@ extern "C" { ControlFile: *mut ControlFileData, do_sync: bool, ); + pub fn ExecInitAgg( + node: *mut Agg, + estate: *mut EState, + eflags: ::std::os::raw::c_int, + ) -> *mut AggState; + pub fn ExecEndAgg(node: *mut AggState); + pub fn ExecReScanAgg(node: *mut AggState); + pub fn hash_agg_entry_size( + numTrans: ::std::os::raw::c_int, + tupleWidth: Size, + transitionSpace: Size, + ) -> Size; + pub fn hash_agg_set_limits( + hashentrysize: f64, + input_groups: f64, + used_bits: ::std::os::raw::c_int, + mem_limit: *mut Size, + ngroups_limit: *mut uint64, + num_partitions: *mut ::std::os::raw::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; + 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 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 ExecEvalGroupingFunc(state: *mut ExprState, op: *mut ExprEvalStep); + 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 fn raw_parser(str_: *const ::std::os::raw::c_char, mode: RawParseMode) -> *mut List; pub fn SystemFuncName(name: *mut ::std::os::raw::c_char) -> *mut List; pub fn SystemTypeName(name: *mut ::std::os::raw::c_char) -> *mut TypeName; @@ -38805,6 +39998,12 @@ extern "C" { -> *mut List; pub fn makeSortGroupClauseForSetOp(rescoltype: Oid, require_hash: bool) -> *mut SortGroupClause; + pub fn transformExpr( + pstate: *mut ParseState, + expr: *mut Node, + exprKind: ParseExprKind, + ) -> *mut Node; + pub fn ParseExprKindName(exprKind: ParseExprKind) -> *const ::std::os::raw::c_char; pub fn ParseFuncOrColumn( pstate: *mut ParseState, funcname: *mut List, @@ -44968,6 +46167,7 @@ extern "C" { pub static mut compute_query_id: ::std::os::raw::c_int; pub static mut query_id_enabled: bool; pub static mut post_parse_analyze_hook: post_parse_analyze_hook_type; + pub static mut Transform_null_equals: bool; pub static mut plpgsql_IdentifierLookup: IdentifierLookup; pub static mut plpgsql_variable_conflict: ::std::os::raw::c_int; pub static mut plpgsql_print_strict_params: bool; @@ -46152,6 +47352,13 @@ impl ::core::fmt::Display for EquivalenceMember { self.display_node().fmt(f) } } +impl pg_sys::seal::Sealed for ErrorSaveContext {} +impl pg_sys::PgNode for ErrorSaveContext {} +impl ::core::fmt::Display for ErrorSaveContext { + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + self.display_node().fmt(f) + } +} impl pg_sys::seal::Sealed for EventTriggerData {} impl pg_sys::PgNode for EventTriggerData {} impl ::core::fmt::Display for EventTriggerData { diff --git a/pgrx-pg-sys/src/include/pg16_oids.rs b/pgrx-pg-sys/src/include/pg16_oids.rs index b9661d1e02..e89b3d1021 100644 --- a/pgrx-pg-sys/src/include/pg16_oids.rs +++ b/pgrx-pg-sys/src/include/pg16_oids.rs @@ -1,3 +1,9 @@ +/* Automatically generated by bindgen. Do not hand-edit. + +This code is generated for documentation purposes, so that it is +easy to reference on docs.rs. Bindings are regenerated for your +build of pgrx, and the values of your Postgres version may differ. +*/ use crate::NotBuiltinOid; #[derive(Copy, Clone, Eq, PartialEq, Hash, Ord, PartialOrd, Debug)] pub enum BuiltinOid { @@ -106,6 +112,7 @@ pub enum BuiltinOid { INTERNALOID = 2281, INTERVALARRAYOID = 1187, INTERVALOID = 1186, + INTERVAL_BTREE_FAM_OID = 1982, IndexRelationId = 2610, JSONARRAYOID = 199, JSONBARRAYOID = 3807, @@ -362,6 +369,7 @@ impl BuiltinOid { 2281 => Ok(BuiltinOid::INTERNALOID), 1187 => Ok(BuiltinOid::INTERVALARRAYOID), 1186 => Ok(BuiltinOid::INTERVALOID), + 1982 => Ok(BuiltinOid::INTERVAL_BTREE_FAM_OID), 2610 => Ok(BuiltinOid::IndexRelationId), 199 => Ok(BuiltinOid::JSONARRAYOID), 3807 => Ok(BuiltinOid::JSONBARRAYOID), diff --git a/pgrx-sql-entity-graph/Cargo.toml b/pgrx-sql-entity-graph/Cargo.toml index 86450cbc6c..01624942e6 100644 --- a/pgrx-sql-entity-graph/Cargo.toml +++ b/pgrx-sql-entity-graph/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "pgrx-sql-entity-graph" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "Sql Entity Graph for `pgrx`" diff --git a/pgrx-tests/Cargo.toml b/pgrx-tests/Cargo.toml index 077a2d0cbd..b8f78abb75 100644 --- a/pgrx-tests/Cargo.toml +++ b/pgrx-tests/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "pgrx-tests" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "Test framework for 'pgrx'-based Postgres extensions" @@ -51,13 +51,13 @@ rustdoc-args = ["--cfg", "docsrs"] pgrx-macros.workspace = true pgrx-pg-config.workspace = true +clap-cargo.workspace = true eyre.workspace = true libc.workspace = true +owo-colors.workspace = true regex.workspace = true thiserror.workspace = true -owo-colors.workspace = true -clap-cargo = "0.11.0" postgres = "0.19.7" proptest = { version = "1", optional = true } serde = "1.0" @@ -68,7 +68,7 @@ rand = "0.8.5" [dependencies.pgrx] # Not unified in workspace due to default-features key path = "../pgrx" default-features = false -version = "=0.12.0-alpha.0" +version = "=0.12.0-alpha.1" [dev-dependencies] eyre.workspace = true # testing functions that return `eyre::Result` diff --git a/pgrx-version-updater/Cargo.toml b/pgrx-version-updater/Cargo.toml index 46ac457579..42be608263 100644 --- a/pgrx-version-updater/Cargo.toml +++ b/pgrx-version-updater/Cargo.toml @@ -21,4 +21,4 @@ owo-colors.workspace = true walkdir.workspace = true clap = { version = "4.4.2", features = [ "env", "derive" ] } -toml_edit = { version = "0.21" } +toml_edit = { version = "0.22" } diff --git a/pgrx/Cargo.toml b/pgrx/Cargo.toml index 472c42da65..8a14757bbb 100644 --- a/pgrx/Cargo.toml +++ b/pgrx/Cargo.toml @@ -10,7 +10,7 @@ [package] name = "pgrx" -version = "0.12.0-alpha.0" +version = "0.12.0-alpha.1" authors = ["PgCentral Foundation, Inc. "] license = "MIT" description = "pgrx: A Rust framework for creating Postgres extensions"