nostrdb-rs

nostrdb in rust!
git clone git://jb55.com/nostrdb-rs
Log | Files | Refs | Submodules | README | LICENSE

commit c946dcf34ad6970decdc318c8e3b54354f76aaf0
parent 9bbafd8a2e904b77a51e7cfca71eb5bb5650e829
Author: William Casarin <jb55@jb55.com>
Date:   Thu, 28 Nov 2024 10:27:34 -0800

Merge Windows support #20

William Casarin (10):
      build: ensure we build secp first
      build: just include secp256k1 directly into nostrdb
      fmt: formatting and clippy
      initial windows support
      macos: enable framework stuff
      multi-platform build
      note: explicit clone implementation
      rustfmt and clippy time
      win: use separate bindings for windows

Diffstat:
A.github/workflows/build-and-test.yml | 36++++++++++++++++++++++++++++++++++++
M.github/workflows/rust.yml | 51+++++++++++++++++++++++++++++++++++++--------------
Mbuild.rs | 105++++++++++++++++++++++++++++++++++++++++++-------------------------------------
Msrc/bindings.rs | 6038+------------------------------------------------------------------------------
Asrc/bindings_posix.rs | 6064+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Asrc/bindings_win.rs | 5563+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Msrc/block.rs | 2+-
Msrc/filter.rs | 2+-
Msrc/ndb.rs | 6+++++-
Msrc/ndb_profile.rs | 873+++++++++++++++++++++++++++++++++++++++++++++----------------------------------
Msrc/note.rs | 53+++++++++++++++++++++++++++++++++++++++++++++++++----
Msrc/subscription.rs | 1-
Msrc/util/nip10.rs | 2+-
13 files changed, 12312 insertions(+), 6484 deletions(-)

diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml @@ -0,0 +1,36 @@ +name: Build & Test + +on: + workflow_call: + inputs: + os: + required: true + type: string + additional-setup: + required: false + type: string + +jobs: + run: + runs-on: ${{ inputs.os }} + steps: + - name: Checkout Code + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Rust toolchain + uses: dtolnay/rust-toolchain@stable + + - name: Rust cache + uses: Swatinem/rust-cache@v2 + + - name: Additional Setup (if specified) + if: ${{ inputs.additional-setup != '' }} + run: ${{ inputs.additional-setup }} + + - name: Run Tests + run: cargo test --release + + - name: Build + run: cargo build --release diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml @@ -1,24 +1,47 @@ name: Rust -on: - push: - branches: [ "master", "ci" ] - pull_request: - branches: [ "master" ] +on: [pull_request] env: CARGO_TERM_COLOR: always jobs: - build: - + fmt: + name: Rustfmt runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: dtolnay/rust-toolchain@stable + with: + components: rustfmt + - run: cargo fmt --all -- --check + clippy: + name: Clippy + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Initialize Submodules - run: git submodule update --init --recursive - - name: Build - run: cargo build --verbose - - name: Run tests - run: cargo test --verbose + - uses: actions/checkout@v4 + with: + submodules: recursive + - uses: dtolnay/rust-toolchain@stable + with: + components: clippy + - run: cargo clippy -- -D warnings + + linux-build-test: + name: Build and Test (Linux) + uses: ./.github/workflows/build-and-test.yml + with: + os: ubuntu-latest + + macos-build-test: + name: Build and Test (macOS) + uses: ./.github/workflows/build-and-test.yml + with: + os: macos-latest + + windows-build-test: + name: Build and Test (Windows) + uses: ./.github/workflows/build-and-test.yml + with: + os: windows-latest diff --git a/build.rs b/build.rs @@ -3,16 +3,16 @@ use cc::Build; use std::env; use std::path::PathBuf; -fn secp256k1_build() { +fn secp256k1_build(base_config: &mut Build) { // Actual build - let mut base_config = cc::Build::new(); + //let mut base_config = cc::Build::new(); base_config .include("nostrdb/deps/secp256k1/") .include("nostrdb/deps/secp256k1/include") .include("nostrdb/deps/secp256k1/src") .flag_if_supported("-Wno-unused-function") // some ecmult stuff is defined but not used upstream .flag_if_supported("-Wno-unused-parameter") // patching out printf causes this warning - //.define("SECP256K1_API", Some("")) + .define("SECP256K1_STATIC", "1") .define("ENABLE_MODULE_ECDH", Some("1")) .define("ENABLE_MODULE_SCHNORRSIG", Some("1")) .define("ENABLE_MODULE_EXTRAKEYS", Some("1")); @@ -34,13 +34,25 @@ fn secp256k1_build() { base_config.flag("-O1"); } - if base_config.try_compile("libsecp256k1.a").is_err() { - // Some embedded platforms may not have, eg, string.h available, so if the build fails - // simply try again with the wasm sysroot (but without the wasm type sizes) in the hopes - // that it works. - base_config.include("wasm/wasm-sysroot"); - base_config.compile("libsecp256k1.a"); - } + //base_config.compile("libsecp256k1.a"); +} + +/// bolt11 deps with portability issues, exclude these on windows build +fn bolt11_deps() -> &'static [&'static str] { + &[ + "nostrdb/ccan/ccan/likely/likely.c", + "nostrdb/ccan/ccan/list/list.c", + "nostrdb/ccan/ccan/mem/mem.c", + "nostrdb/ccan/ccan/str/debug.c", + "nostrdb/ccan/ccan/str/str.c", + "nostrdb/ccan/ccan/take/take.c", + "nostrdb/ccan/ccan/tal/str/str.c", + "nostrdb/ccan/ccan/tal/tal.c", + "nostrdb/ccan/ccan/utf8/utf8.c", + "nostrdb/src/bolt11/bolt11.c", + "nostrdb/src/bolt11/amount.c", + "nostrdb/src/bolt11/hash_u5.c", + ] } fn main() { @@ -50,30 +62,11 @@ fn main() { build .files([ "nostrdb/src/nostrdb.c", - "nostrdb/src/bolt11/bolt11.c", - "nostrdb/src/bolt11/amount.c", - "nostrdb/src/bolt11/bech32.c", - "nostrdb/src/bolt11/hash_u5.c", "nostrdb/src/invoice.c", "nostrdb/src/nostr_bech32.c", "nostrdb/src/content_parser.c", "nostrdb/ccan/ccan/crypto/sha256/sha256.c", - //"nostrdb/ccan/ccan/htable/htable.c", - //"nostrdb/ccan/ccan/htable/tools/density.c", - //"nostrdb/ccan/ccan/htable/tools/hsearchspeed.c", - //"nostrdb/ccan/ccan/htable/tools/speed.c", - //"nostrdb/ccan/ccan/htable/tools/stringspeed.c", - "nostrdb/ccan/ccan/likely/likely.c", - "nostrdb/ccan/ccan/list/list.c", - "nostrdb/ccan/ccan/mem/mem.c", - "nostrdb/ccan/ccan/str/debug.c", - "nostrdb/ccan/ccan/str/str.c", - "nostrdb/ccan/ccan/take/take.c", - //"nostrdb/ccan/ccan/tal/benchmark/samba-allocs.c", - //"nostrdb/ccan/ccan/tal/benchmark/speed.c", - "nostrdb/ccan/ccan/tal/str/str.c", - "nostrdb/ccan/ccan/tal/tal.c", - "nostrdb/ccan/ccan/utf8/utf8.c", + "nostrdb/src/bolt11/bech32.c", "nostrdb/src/block.c", "nostrdb/deps/flatcc/src/runtime/json_parser.c", "nostrdb/deps/flatcc/src/runtime/verifier.c", @@ -87,41 +80,49 @@ fn main() { .include("nostrdb/deps/flatcc/include") .include("nostrdb/deps/secp256k1/include") .include("nostrdb/ccan") - .include("nostrdb/src") - // Add other include paths - //.flag("-Wall") - .flag("-Wno-sign-compare") - .flag("-Wno-misleading-indentation") - .flag("-Wno-unused-function") - .flag("-Wno-unused-parameter"); + .include("nostrdb/src"); + // Add other include paths + //.flag("-Wall") //.flag("-Werror") //.flag("-g") + // Link Security framework on macOS + if !cfg!(target_os = "windows") { + build.files(bolt11_deps()); + build + .flag("-Wno-sign-compare") + .flag("-Wno-misleading-indentation") + .flag("-Wno-unused-function") + .flag("-Wno-unused-parameter"); + } else { + // need this on windows + println!("cargo:rustc-link-lib=bcrypt"); + } + if env::var("PROFILE").unwrap() == "debug" { build.flag("-DDEBUG"); build.flag("-O1"); } + // Print out the path to the compiled library + let out_path = PathBuf::from(env::var("OUT_DIR").unwrap()); + println!("cargo:rustc-link-search=native={}", out_path.display()); + + secp256k1_build(&mut build); + build.compile("libnostrdb.a"); - secp256k1_build(); + println!("cargo:rustc-link-lib=static=nostrdb"); // Re-run the build script if any of the C files or headers change for file in &["nostrdb/src/nostrdb.c", "nostrdb/src/nostrdb.h"] { println!("cargo:rerun-if-changed={}", file); } - println!("cargo:rustc-link-lib=secp256k1"); - - // Print out the path to the compiled library - let out_path = PathBuf::from(env::var("OUT_DIR").unwrap()); - println!("cargo:rustc-link-search=native={}", out_path.display()); - println!("cargo:rustc-link-lib=static=nostrdb"); - // Link Security framework on macOS - //if cfg!(target_os = "macos") { - //println!("cargo:rustc-link-lib=framework=Security"); - //} + if cfg!(target_os = "macos") { + println!("cargo:rustc-link-lib=framework=Security"); + } // // We only need bindgen when we update the bindings. @@ -137,8 +138,14 @@ fn main() { .generate() .expect("Unable to generate bindings"); + #[cfg(target_os = "windows")] + let filename = "src/bindings_win.rs"; + + #[cfg(not(target_os = "windows"))] + let filename = "src/bindings_posix.rs"; + bindings - .write_to_file("src/bindings.rs") + .write_to_file(filename) .expect("Couldn't write bindings!"); } } diff --git a/src/bindings.rs b/src/bindings.rs @@ -1,6035 +1,5 @@ -/* automatically generated by rust-bindgen 0.69.2 */ +#[cfg(target_os = "windows")] +include! {"bindings_win.rs"} -#[repr(C)] -#[derive(Default)] -pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]); -impl<T> __IncompleteArrayField<T> { - #[inline] - pub const fn new() -> Self { - __IncompleteArrayField(::std::marker::PhantomData, []) - } - #[inline] - pub fn as_ptr(&self) -> *const T { - self as *const _ as *const T - } - #[inline] - pub fn as_mut_ptr(&mut self) -> *mut T { - self as *mut _ as *mut T - } - #[inline] - pub unsafe fn as_slice(&self, len: usize) -> &[T] { - ::std::slice::from_raw_parts(self.as_ptr(), len) - } - #[inline] - pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { - ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) - } -} -impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> { - fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { - fmt.write_str("__IncompleteArrayField") - } -} -pub const __PRI_8_LENGTH_MODIFIER__: &[u8; 3] = b"hh\0"; -pub const __PRI_64_LENGTH_MODIFIER__: &[u8; 3] = b"ll\0"; -pub const __SCN_64_LENGTH_MODIFIER__: &[u8; 3] = b"ll\0"; -pub const __PRI_MAX_LENGTH_MODIFIER__: &[u8; 2] = b"j\0"; -pub const __SCN_MAX_LENGTH_MODIFIER__: &[u8; 2] = b"j\0"; -pub const PRId8: &[u8; 4] = b"hhd\0"; -pub const PRIi8: &[u8; 4] = b"hhi\0"; -pub const PRIo8: &[u8; 4] = b"hho\0"; -pub const PRIu8: &[u8; 4] = b"hhu\0"; -pub const PRIx8: &[u8; 4] = b"hhx\0"; -pub const PRIX8: &[u8; 4] = b"hhX\0"; -pub const PRId16: &[u8; 3] = b"hd\0"; -pub const PRIi16: &[u8; 3] = b"hi\0"; -pub const PRIo16: &[u8; 3] = b"ho\0"; -pub const PRIu16: &[u8; 3] = b"hu\0"; -pub const PRIx16: &[u8; 3] = b"hx\0"; -pub const PRIX16: &[u8; 3] = b"hX\0"; -pub const PRId32: &[u8; 2] = b"d\0"; -pub const PRIi32: &[u8; 2] = b"i\0"; -pub const PRIo32: &[u8; 2] = b"o\0"; -pub const PRIu32: &[u8; 2] = b"u\0"; -pub const PRIx32: &[u8; 2] = b"x\0"; -pub const PRIX32: &[u8; 2] = b"X\0"; -pub const PRId64: &[u8; 4] = b"lld\0"; -pub const PRIi64: &[u8; 4] = b"lli\0"; -pub const PRIo64: &[u8; 4] = b"llo\0"; -pub const PRIu64: &[u8; 4] = b"llu\0"; -pub const PRIx64: &[u8; 4] = b"llx\0"; -pub const PRIX64: &[u8; 4] = b"llX\0"; -pub const PRIdLEAST8: &[u8; 4] = b"hhd\0"; -pub const PRIiLEAST8: &[u8; 4] = b"hhi\0"; -pub const PRIoLEAST8: &[u8; 4] = b"hho\0"; -pub const PRIuLEAST8: &[u8; 4] = b"hhu\0"; -pub const PRIxLEAST8: &[u8; 4] = b"hhx\0"; -pub const PRIXLEAST8: &[u8; 4] = b"hhX\0"; -pub const PRIdLEAST16: &[u8; 3] = b"hd\0"; -pub const PRIiLEAST16: &[u8; 3] = b"hi\0"; -pub const PRIoLEAST16: &[u8; 3] = b"ho\0"; -pub const PRIuLEAST16: &[u8; 3] = b"hu\0"; -pub const PRIxLEAST16: &[u8; 3] = b"hx\0"; -pub const PRIXLEAST16: &[u8; 3] = b"hX\0"; -pub const PRIdLEAST32: &[u8; 2] = b"d\0"; -pub const PRIiLEAST32: &[u8; 2] = b"i\0"; -pub const PRIoLEAST32: &[u8; 2] = b"o\0"; -pub const PRIuLEAST32: &[u8; 2] = b"u\0"; -pub const PRIxLEAST32: &[u8; 2] = b"x\0"; -pub const PRIXLEAST32: &[u8; 2] = b"X\0"; -pub const PRIdLEAST64: &[u8; 4] = b"lld\0"; -pub const PRIiLEAST64: &[u8; 4] = b"lli\0"; -pub const PRIoLEAST64: &[u8; 4] = b"llo\0"; -pub const PRIuLEAST64: &[u8; 4] = b"llu\0"; -pub const PRIxLEAST64: &[u8; 4] = b"llx\0"; -pub const PRIXLEAST64: &[u8; 4] = b"llX\0"; -pub const PRIdFAST8: &[u8; 4] = b"hhd\0"; -pub const PRIiFAST8: &[u8; 4] = b"hhi\0"; -pub const PRIoFAST8: &[u8; 4] = b"hho\0"; -pub const PRIuFAST8: &[u8; 4] = b"hhu\0"; -pub const PRIxFAST8: &[u8; 4] = b"hhx\0"; -pub const PRIXFAST8: &[u8; 4] = b"hhX\0"; -pub const PRIdFAST16: &[u8; 3] = b"hd\0"; -pub const PRIiFAST16: &[u8; 3] = b"hi\0"; -pub const PRIoFAST16: &[u8; 3] = b"ho\0"; -pub const PRIuFAST16: &[u8; 3] = b"hu\0"; -pub const PRIxFAST16: &[u8; 3] = b"hx\0"; -pub const PRIXFAST16: &[u8; 3] = b"hX\0"; -pub const PRIdFAST32: &[u8; 2] = b"d\0"; -pub const PRIiFAST32: &[u8; 2] = b"i\0"; -pub const PRIoFAST32: &[u8; 2] = b"o\0"; -pub const PRIuFAST32: &[u8; 2] = b"u\0"; -pub const PRIxFAST32: &[u8; 2] = b"x\0"; -pub const PRIXFAST32: &[u8; 2] = b"X\0"; -pub const PRIdFAST64: &[u8; 4] = b"lld\0"; -pub const PRIiFAST64: &[u8; 4] = b"lli\0"; -pub const PRIoFAST64: &[u8; 4] = b"llo\0"; -pub const PRIuFAST64: &[u8; 4] = b"llu\0"; -pub const PRIxFAST64: &[u8; 4] = b"llx\0"; -pub const PRIXFAST64: &[u8; 4] = b"llX\0"; -pub const PRIdPTR: &[u8; 3] = b"ld\0"; -pub const PRIiPTR: &[u8; 3] = b"li\0"; -pub const PRIoPTR: &[u8; 3] = b"lo\0"; -pub const PRIuPTR: &[u8; 3] = b"lu\0"; -pub const PRIxPTR: &[u8; 3] = b"lx\0"; -pub const PRIXPTR: &[u8; 3] = b"lX\0"; -pub const PRIdMAX: &[u8; 3] = b"jd\0"; -pub const PRIiMAX: &[u8; 3] = b"ji\0"; -pub const PRIoMAX: &[u8; 3] = b"jo\0"; -pub const PRIuMAX: &[u8; 3] = b"ju\0"; -pub const PRIxMAX: &[u8; 3] = b"jx\0"; -pub const PRIXMAX: &[u8; 3] = b"jX\0"; -pub const SCNd8: &[u8; 4] = b"hhd\0"; -pub const SCNi8: &[u8; 4] = b"hhi\0"; -pub const SCNo8: &[u8; 4] = b"hho\0"; -pub const SCNu8: &[u8; 4] = b"hhu\0"; -pub const SCNx8: &[u8; 4] = b"hhx\0"; -pub const SCNd16: &[u8; 3] = b"hd\0"; -pub const SCNi16: &[u8; 3] = b"hi\0"; -pub const SCNo16: &[u8; 3] = b"ho\0"; -pub const SCNu16: &[u8; 3] = b"hu\0"; -pub const SCNx16: &[u8; 3] = b"hx\0"; -pub const SCNd32: &[u8; 2] = b"d\0"; -pub const SCNi32: &[u8; 2] = b"i\0"; -pub const SCNo32: &[u8; 2] = b"o\0"; -pub const SCNu32: &[u8; 2] = b"u\0"; -pub const SCNx32: &[u8; 2] = b"x\0"; -pub const SCNd64: &[u8; 4] = b"lld\0"; -pub const SCNi64: &[u8; 4] = b"lli\0"; -pub const SCNo64: &[u8; 4] = b"llo\0"; -pub const SCNu64: &[u8; 4] = b"llu\0"; -pub const SCNx64: &[u8; 4] = b"llx\0"; -pub const SCNdLEAST8: &[u8; 4] = b"hhd\0"; -pub const SCNiLEAST8: &[u8; 4] = b"hhi\0"; -pub const SCNoLEAST8: &[u8; 4] = b"hho\0"; -pub const SCNuLEAST8: &[u8; 4] = b"hhu\0"; -pub const SCNxLEAST8: &[u8; 4] = b"hhx\0"; -pub const SCNdLEAST16: &[u8; 3] = b"hd\0"; -pub const SCNiLEAST16: &[u8; 3] = b"hi\0"; -pub const SCNoLEAST16: &[u8; 3] = b"ho\0"; -pub const SCNuLEAST16: &[u8; 3] = b"hu\0"; -pub const SCNxLEAST16: &[u8; 3] = b"hx\0"; -pub const SCNdLEAST32: &[u8; 2] = b"d\0"; -pub const SCNiLEAST32: &[u8; 2] = b"i\0"; -pub const SCNoLEAST32: &[u8; 2] = b"o\0"; -pub const SCNuLEAST32: &[u8; 2] = b"u\0"; -pub const SCNxLEAST32: &[u8; 2] = b"x\0"; -pub const SCNdLEAST64: &[u8; 4] = b"lld\0"; -pub const SCNiLEAST64: &[u8; 4] = b"lli\0"; -pub const SCNoLEAST64: &[u8; 4] = b"llo\0"; -pub const SCNuLEAST64: &[u8; 4] = b"llu\0"; -pub const SCNxLEAST64: &[u8; 4] = b"llx\0"; -pub const SCNdFAST8: &[u8; 4] = b"hhd\0"; -pub const SCNiFAST8: &[u8; 4] = b"hhi\0"; -pub const SCNoFAST8: &[u8; 4] = b"hho\0"; -pub const SCNuFAST8: &[u8; 4] = b"hhu\0"; -pub const SCNxFAST8: &[u8; 4] = b"hhx\0"; -pub const SCNdFAST16: &[u8; 3] = b"hd\0"; -pub const SCNiFAST16: &[u8; 3] = b"hi\0"; -pub const SCNoFAST16: &[u8; 3] = b"ho\0"; -pub const SCNuFAST16: &[u8; 3] = b"hu\0"; -pub const SCNxFAST16: &[u8; 3] = b"hx\0"; -pub const SCNdFAST32: &[u8; 2] = b"d\0"; -pub const SCNiFAST32: &[u8; 2] = b"i\0"; -pub const SCNoFAST32: &[u8; 2] = b"o\0"; -pub const SCNuFAST32: &[u8; 2] = b"u\0"; -pub const SCNxFAST32: &[u8; 2] = b"x\0"; -pub const SCNdFAST64: &[u8; 4] = b"lld\0"; -pub const SCNiFAST64: &[u8; 4] = b"lli\0"; -pub const SCNoFAST64: &[u8; 4] = b"llo\0"; -pub const SCNuFAST64: &[u8; 4] = b"llu\0"; -pub const SCNxFAST64: &[u8; 4] = b"llx\0"; -pub const SCNdPTR: &[u8; 3] = b"ld\0"; -pub const SCNiPTR: &[u8; 3] = b"li\0"; -pub const SCNoPTR: &[u8; 3] = b"lo\0"; -pub const SCNuPTR: &[u8; 3] = b"lu\0"; -pub const SCNxPTR: &[u8; 3] = b"lx\0"; -pub const SCNdMAX: &[u8; 3] = b"jd\0"; -pub const SCNiMAX: &[u8; 3] = b"ji\0"; -pub const SCNoMAX: &[u8; 3] = b"jo\0"; -pub const SCNuMAX: &[u8; 3] = b"ju\0"; -pub const SCNxMAX: &[u8; 3] = b"jx\0"; -pub const __has_safe_buffers: u32 = 1; -pub const __DARWIN_ONLY_64_BIT_INO_T: u32 = 1; -pub const __DARWIN_ONLY_UNIX_CONFORMANCE: u32 = 1; -pub const __DARWIN_ONLY_VERS_1050: u32 = 1; -pub const __DARWIN_UNIX03: u32 = 1; -pub const __DARWIN_64_BIT_INO_T: u32 = 1; -pub const __DARWIN_VERS_1050: u32 = 1; -pub const __DARWIN_NON_CANCELABLE: u32 = 0; -pub const __DARWIN_SUF_EXTSN: &[u8; 14] = b"$DARWIN_EXTSN\0"; -pub const __DARWIN_C_ANSI: u32 = 4096; -pub const __DARWIN_C_FULL: u32 = 900000; -pub const __DARWIN_C_LEVEL: u32 = 900000; -pub const __STDC_WANT_LIB_EXT1__: u32 = 1; -pub const __DARWIN_NO_LONG_LONG: u32 = 0; -pub const _DARWIN_FEATURE_64_BIT_INODE: u32 = 1; -pub const _DARWIN_FEATURE_ONLY_64_BIT_INODE: u32 = 1; -pub const _DARWIN_FEATURE_ONLY_VERS_1050: u32 = 1; -pub const _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE: u32 = 1; -pub const _DARWIN_FEATURE_UNIX_CONFORMANCE: u32 = 3; -pub const __has_ptrcheck: u32 = 0; -pub const __API_TO_BE_DEPRECATED: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_MACOS: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_IOS: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_MACCATALYST: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_WATCHOS: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_TVOS: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_DRIVERKIT: u32 = 100000; -pub const __API_TO_BE_DEPRECATED_VISIONOS: u32 = 100000; -pub const __MAC_10_0: u32 = 1000; -pub const __MAC_10_1: u32 = 1010; -pub const __MAC_10_2: u32 = 1020; -pub const __MAC_10_3: u32 = 1030; -pub const __MAC_10_4: u32 = 1040; -pub const __MAC_10_5: u32 = 1050; -pub const __MAC_10_6: u32 = 1060; -pub const __MAC_10_7: u32 = 1070; -pub const __MAC_10_8: u32 = 1080; -pub const __MAC_10_9: u32 = 1090; -pub const __MAC_10_10: u32 = 101000; -pub const __MAC_10_10_2: u32 = 101002; -pub const __MAC_10_10_3: u32 = 101003; -pub const __MAC_10_11: u32 = 101100; -pub const __MAC_10_11_2: u32 = 101102; -pub const __MAC_10_11_3: u32 = 101103; -pub const __MAC_10_11_4: u32 = 101104; -pub const __MAC_10_12: u32 = 101200; -pub const __MAC_10_12_1: u32 = 101201; -pub const __MAC_10_12_2: u32 = 101202; -pub const __MAC_10_12_4: u32 = 101204; -pub const __MAC_10_13: u32 = 101300; -pub const __MAC_10_13_1: u32 = 101301; -pub const __MAC_10_13_2: u32 = 101302; -pub const __MAC_10_13_4: u32 = 101304; -pub const __MAC_10_14: u32 = 101400; -pub const __MAC_10_14_1: u32 = 101401; -pub const __MAC_10_14_4: u32 = 101404; -pub const __MAC_10_14_5: u32 = 101405; -pub const __MAC_10_14_6: u32 = 101406; -pub const __MAC_10_15: u32 = 101500; -pub const __MAC_10_15_1: u32 = 101501; -pub const __MAC_10_15_4: u32 = 101504; -pub const __MAC_10_16: u32 = 101600; -pub const __MAC_11_0: u32 = 110000; -pub const __MAC_11_1: u32 = 110100; -pub const __MAC_11_3: u32 = 110300; -pub const __MAC_11_4: u32 = 110400; -pub const __MAC_11_5: u32 = 110500; -pub const __MAC_11_6: u32 = 110600; -pub const __MAC_12_0: u32 = 120000; -pub const __MAC_12_1: u32 = 120100; -pub const __MAC_12_2: u32 = 120200; -pub const __MAC_12_3: u32 = 120300; -pub const __MAC_12_4: u32 = 120400; -pub const __MAC_12_5: u32 = 120500; -pub const __MAC_12_6: u32 = 120600; -pub const __MAC_12_7: u32 = 120700; -pub const __MAC_13_0: u32 = 130000; -pub const __MAC_13_1: u32 = 130100; -pub const __MAC_13_2: u32 = 130200; -pub const __MAC_13_3: u32 = 130300; -pub const __MAC_13_4: u32 = 130400; -pub const __MAC_13_5: u32 = 130500; -pub const __MAC_13_6: u32 = 130600; -pub const __MAC_14_0: u32 = 140000; -pub const __MAC_14_1: u32 = 140100; -pub const __MAC_14_2: u32 = 140200; -pub const __MAC_14_3: u32 = 140300; -pub const __MAC_14_4: u32 = 140400; -pub const __MAC_14_5: u32 = 140500; -pub const __MAC_15_0: u32 = 150000; -pub const __IPHONE_2_0: u32 = 20000; -pub const __IPHONE_2_1: u32 = 20100; -pub const __IPHONE_2_2: u32 = 20200; -pub const __IPHONE_3_0: u32 = 30000; -pub const __IPHONE_3_1: u32 = 30100; -pub const __IPHONE_3_2: u32 = 30200; -pub const __IPHONE_4_0: u32 = 40000; -pub const __IPHONE_4_1: u32 = 40100; -pub const __IPHONE_4_2: u32 = 40200; -pub const __IPHONE_4_3: u32 = 40300; -pub const __IPHONE_5_0: u32 = 50000; -pub const __IPHONE_5_1: u32 = 50100; -pub const __IPHONE_6_0: u32 = 60000; -pub const __IPHONE_6_1: u32 = 60100; -pub const __IPHONE_7_0: u32 = 70000; -pub const __IPHONE_7_1: u32 = 70100; -pub const __IPHONE_8_0: u32 = 80000; -pub const __IPHONE_8_1: u32 = 80100; -pub const __IPHONE_8_2: u32 = 80200; -pub const __IPHONE_8_3: u32 = 80300; -pub const __IPHONE_8_4: u32 = 80400; -pub const __IPHONE_9_0: u32 = 90000; -pub const __IPHONE_9_1: u32 = 90100; -pub const __IPHONE_9_2: u32 = 90200; -pub const __IPHONE_9_3: u32 = 90300; -pub const __IPHONE_10_0: u32 = 100000; -pub const __IPHONE_10_1: u32 = 100100; -pub const __IPHONE_10_2: u32 = 100200; -pub const __IPHONE_10_3: u32 = 100300; -pub const __IPHONE_11_0: u32 = 110000; -pub const __IPHONE_11_1: u32 = 110100; -pub const __IPHONE_11_2: u32 = 110200; -pub const __IPHONE_11_3: u32 = 110300; -pub const __IPHONE_11_4: u32 = 110400; -pub const __IPHONE_12_0: u32 = 120000; -pub const __IPHONE_12_1: u32 = 120100; -pub const __IPHONE_12_2: u32 = 120200; -pub const __IPHONE_12_3: u32 = 120300; -pub const __IPHONE_12_4: u32 = 120400; -pub const __IPHONE_13_0: u32 = 130000; -pub const __IPHONE_13_1: u32 = 130100; -pub const __IPHONE_13_2: u32 = 130200; -pub const __IPHONE_13_3: u32 = 130300; -pub const __IPHONE_13_4: u32 = 130400; -pub const __IPHONE_13_5: u32 = 130500; -pub const __IPHONE_13_6: u32 = 130600; -pub const __IPHONE_13_7: u32 = 130700; -pub const __IPHONE_14_0: u32 = 140000; -pub const __IPHONE_14_1: u32 = 140100; -pub const __IPHONE_14_2: u32 = 140200; -pub const __IPHONE_14_3: u32 = 140300; -pub const __IPHONE_14_5: u32 = 140500; -pub const __IPHONE_14_4: u32 = 140400; -pub const __IPHONE_14_6: u32 = 140600; -pub const __IPHONE_14_7: u32 = 140700; -pub const __IPHONE_14_8: u32 = 140800; -pub const __IPHONE_15_0: u32 = 150000; -pub const __IPHONE_15_1: u32 = 150100; -pub const __IPHONE_15_2: u32 = 150200; -pub const __IPHONE_15_3: u32 = 150300; -pub const __IPHONE_15_4: u32 = 150400; -pub const __IPHONE_15_5: u32 = 150500; -pub const __IPHONE_15_6: u32 = 150600; -pub const __IPHONE_15_7: u32 = 150700; -pub const __IPHONE_15_8: u32 = 150800; -pub const __IPHONE_16_0: u32 = 160000; -pub const __IPHONE_16_1: u32 = 160100; -pub const __IPHONE_16_2: u32 = 160200; -pub const __IPHONE_16_3: u32 = 160300; -pub const __IPHONE_16_4: u32 = 160400; -pub const __IPHONE_16_5: u32 = 160500; -pub const __IPHONE_16_6: u32 = 160600; -pub const __IPHONE_16_7: u32 = 160700; -pub const __IPHONE_17_0: u32 = 170000; -pub const __IPHONE_17_1: u32 = 170100; -pub const __IPHONE_17_2: u32 = 170200; -pub const __IPHONE_17_3: u32 = 170300; -pub const __IPHONE_17_4: u32 = 170400; -pub const __IPHONE_17_5: u32 = 170500; -pub const __IPHONE_18_0: u32 = 180000; -pub const __WATCHOS_1_0: u32 = 10000; -pub const __WATCHOS_2_0: u32 = 20000; -pub const __WATCHOS_2_1: u32 = 20100; -pub const __WATCHOS_2_2: u32 = 20200; -pub const __WATCHOS_3_0: u32 = 30000; -pub const __WATCHOS_3_1: u32 = 30100; -pub const __WATCHOS_3_1_1: u32 = 30101; -pub const __WATCHOS_3_2: u32 = 30200; -pub const __WATCHOS_4_0: u32 = 40000; -pub const __WATCHOS_4_1: u32 = 40100; -pub const __WATCHOS_4_2: u32 = 40200; -pub const __WATCHOS_4_3: u32 = 40300; -pub const __WATCHOS_5_0: u32 = 50000; -pub const __WATCHOS_5_1: u32 = 50100; -pub const __WATCHOS_5_2: u32 = 50200; -pub const __WATCHOS_5_3: u32 = 50300; -pub const __WATCHOS_6_0: u32 = 60000; -pub const __WATCHOS_6_1: u32 = 60100; -pub const __WATCHOS_6_2: u32 = 60200; -pub const __WATCHOS_7_0: u32 = 70000; -pub const __WATCHOS_7_1: u32 = 70100; -pub const __WATCHOS_7_2: u32 = 70200; -pub const __WATCHOS_7_3: u32 = 70300; -pub const __WATCHOS_7_4: u32 = 70400; -pub const __WATCHOS_7_5: u32 = 70500; -pub const __WATCHOS_7_6: u32 = 70600; -pub const __WATCHOS_8_0: u32 = 80000; -pub const __WATCHOS_8_1: u32 = 80100; -pub const __WATCHOS_8_3: u32 = 80300; -pub const __WATCHOS_8_4: u32 = 80400; -pub const __WATCHOS_8_5: u32 = 80500; -pub const __WATCHOS_8_6: u32 = 80600; -pub const __WATCHOS_8_7: u32 = 80700; -pub const __WATCHOS_8_8: u32 = 80800; -pub const __WATCHOS_9_0: u32 = 90000; -pub const __WATCHOS_9_1: u32 = 90100; -pub const __WATCHOS_9_2: u32 = 90200; -pub const __WATCHOS_9_3: u32 = 90300; -pub const __WATCHOS_9_4: u32 = 90400; -pub const __WATCHOS_9_5: u32 = 90500; -pub const __WATCHOS_9_6: u32 = 90600; -pub const __WATCHOS_10_0: u32 = 100000; -pub const __WATCHOS_10_1: u32 = 100100; -pub const __WATCHOS_10_2: u32 = 100200; -pub const __WATCHOS_10_3: u32 = 100300; -pub const __WATCHOS_10_4: u32 = 100400; -pub const __WATCHOS_10_5: u32 = 100500; -pub const __WATCHOS_11_0: u32 = 110000; -pub const __TVOS_9_0: u32 = 90000; -pub const __TVOS_9_1: u32 = 90100; -pub const __TVOS_9_2: u32 = 90200; -pub const __TVOS_10_0: u32 = 100000; -pub const __TVOS_10_0_1: u32 = 100001; -pub const __TVOS_10_1: u32 = 100100; -pub const __TVOS_10_2: u32 = 100200; -pub const __TVOS_11_0: u32 = 110000; -pub const __TVOS_11_1: u32 = 110100; -pub const __TVOS_11_2: u32 = 110200; -pub const __TVOS_11_3: u32 = 110300; -pub const __TVOS_11_4: u32 = 110400; -pub const __TVOS_12_0: u32 = 120000; -pub const __TVOS_12_1: u32 = 120100; -pub const __TVOS_12_2: u32 = 120200; -pub const __TVOS_12_3: u32 = 120300; -pub const __TVOS_12_4: u32 = 120400; -pub const __TVOS_13_0: u32 = 130000; -pub const __TVOS_13_2: u32 = 130200; -pub const __TVOS_13_3: u32 = 130300; -pub const __TVOS_13_4: u32 = 130400; -pub const __TVOS_14_0: u32 = 140000; -pub const __TVOS_14_1: u32 = 140100; -pub const __TVOS_14_2: u32 = 140200; -pub const __TVOS_14_3: u32 = 140300; -pub const __TVOS_14_5: u32 = 140500; -pub const __TVOS_14_6: u32 = 140600; -pub const __TVOS_14_7: u32 = 140700; -pub const __TVOS_15_0: u32 = 150000; -pub const __TVOS_15_1: u32 = 150100; -pub const __TVOS_15_2: u32 = 150200; -pub const __TVOS_15_3: u32 = 150300; -pub const __TVOS_15_4: u32 = 150400; -pub const __TVOS_15_5: u32 = 150500; -pub const __TVOS_15_6: u32 = 150600; -pub const __TVOS_16_0: u32 = 160000; -pub const __TVOS_16_1: u32 = 160100; -pub const __TVOS_16_2: u32 = 160200; -pub const __TVOS_16_3: u32 = 160300; -pub const __TVOS_16_4: u32 = 160400; -pub const __TVOS_16_5: u32 = 160500; -pub const __TVOS_16_6: u32 = 160600; -pub const __TVOS_17_0: u32 = 170000; -pub const __TVOS_17_1: u32 = 170100; -pub const __TVOS_17_2: u32 = 170200; -pub const __TVOS_17_3: u32 = 170300; -pub const __TVOS_17_4: u32 = 170400; -pub const __TVOS_17_5: u32 = 170500; -pub const __TVOS_18_0: u32 = 180000; -pub const __BRIDGEOS_2_0: u32 = 20000; -pub const __BRIDGEOS_3_0: u32 = 30000; -pub const __BRIDGEOS_3_1: u32 = 30100; -pub const __BRIDGEOS_3_4: u32 = 30400; -pub const __BRIDGEOS_4_0: u32 = 40000; -pub const __BRIDGEOS_4_1: u32 = 40100; -pub const __BRIDGEOS_5_0: u32 = 50000; -pub const __BRIDGEOS_5_1: u32 = 50100; -pub const __BRIDGEOS_5_3: u32 = 50300; -pub const __BRIDGEOS_6_0: u32 = 60000; -pub const __BRIDGEOS_6_2: u32 = 60200; -pub const __BRIDGEOS_6_4: u32 = 60400; -pub const __BRIDGEOS_6_5: u32 = 60500; -pub const __BRIDGEOS_6_6: u32 = 60600; -pub const __BRIDGEOS_7_0: u32 = 70000; -pub const __BRIDGEOS_7_1: u32 = 70100; -pub const __BRIDGEOS_7_2: u32 = 70200; -pub const __BRIDGEOS_7_3: u32 = 70300; -pub const __BRIDGEOS_7_4: u32 = 70400; -pub const __BRIDGEOS_7_6: u32 = 70600; -pub const __BRIDGEOS_8_0: u32 = 80000; -pub const __BRIDGEOS_8_1: u32 = 80100; -pub const __BRIDGEOS_8_2: u32 = 80200; -pub const __BRIDGEOS_8_3: u32 = 80300; -pub const __BRIDGEOS_8_4: u32 = 80400; -pub const __BRIDGEOS_8_5: u32 = 80500; -pub const __BRIDGEOS_9_0: u32 = 90000; -pub const __DRIVERKIT_19_0: u32 = 190000; -pub const __DRIVERKIT_20_0: u32 = 200000; -pub const __DRIVERKIT_21_0: u32 = 210000; -pub const __DRIVERKIT_22_0: u32 = 220000; -pub const __DRIVERKIT_22_4: u32 = 220400; -pub const __DRIVERKIT_22_5: u32 = 220500; -pub const __DRIVERKIT_22_6: u32 = 220600; -pub const __DRIVERKIT_23_0: u32 = 230000; -pub const __DRIVERKIT_23_1: u32 = 230100; -pub const __DRIVERKIT_23_2: u32 = 230200; -pub const __DRIVERKIT_23_3: u32 = 230300; -pub const __DRIVERKIT_23_4: u32 = 230400; -pub const __DRIVERKIT_23_5: u32 = 230500; -pub const __DRIVERKIT_24_0: u32 = 240000; -pub const __VISIONOS_1_0: u32 = 10000; -pub const __VISIONOS_1_1: u32 = 10100; -pub const __VISIONOS_1_2: u32 = 10200; -pub const __VISIONOS_2_0: u32 = 20000; -pub const MAC_OS_X_VERSION_10_0: u32 = 1000; -pub const MAC_OS_X_VERSION_10_1: u32 = 1010; -pub const MAC_OS_X_VERSION_10_2: u32 = 1020; -pub const MAC_OS_X_VERSION_10_3: u32 = 1030; -pub const MAC_OS_X_VERSION_10_4: u32 = 1040; -pub const MAC_OS_X_VERSION_10_5: u32 = 1050; -pub const MAC_OS_X_VERSION_10_6: u32 = 1060; -pub const MAC_OS_X_VERSION_10_7: u32 = 1070; -pub const MAC_OS_X_VERSION_10_8: u32 = 1080; -pub const MAC_OS_X_VERSION_10_9: u32 = 1090; -pub const MAC_OS_X_VERSION_10_10: u32 = 101000; -pub const MAC_OS_X_VERSION_10_10_2: u32 = 101002; -pub const MAC_OS_X_VERSION_10_10_3: u32 = 101003; -pub const MAC_OS_X_VERSION_10_11: u32 = 101100; -pub const MAC_OS_X_VERSION_10_11_2: u32 = 101102; -pub const MAC_OS_X_VERSION_10_11_3: u32 = 101103; -pub const MAC_OS_X_VERSION_10_11_4: u32 = 101104; -pub const MAC_OS_X_VERSION_10_12: u32 = 101200; -pub const MAC_OS_X_VERSION_10_12_1: u32 = 101201; -pub const MAC_OS_X_VERSION_10_12_2: u32 = 101202; -pub const MAC_OS_X_VERSION_10_12_4: u32 = 101204; -pub const MAC_OS_X_VERSION_10_13: u32 = 101300; -pub const MAC_OS_X_VERSION_10_13_1: u32 = 101301; -pub const MAC_OS_X_VERSION_10_13_2: u32 = 101302; -pub const MAC_OS_X_VERSION_10_13_4: u32 = 101304; -pub const MAC_OS_X_VERSION_10_14: u32 = 101400; -pub const MAC_OS_X_VERSION_10_14_1: u32 = 101401; -pub const MAC_OS_X_VERSION_10_14_4: u32 = 101404; -pub const MAC_OS_X_VERSION_10_14_5: u32 = 101405; -pub const MAC_OS_X_VERSION_10_14_6: u32 = 101406; -pub const MAC_OS_X_VERSION_10_15: u32 = 101500; -pub const MAC_OS_X_VERSION_10_15_1: u32 = 101501; -pub const MAC_OS_X_VERSION_10_15_4: u32 = 101504; -pub const MAC_OS_X_VERSION_10_16: u32 = 101600; -pub const MAC_OS_VERSION_11_0: u32 = 110000; -pub const MAC_OS_VERSION_11_1: u32 = 110100; -pub const MAC_OS_VERSION_11_3: u32 = 110300; -pub const MAC_OS_VERSION_11_4: u32 = 110400; -pub const MAC_OS_VERSION_11_5: u32 = 110500; -pub const MAC_OS_VERSION_11_6: u32 = 110600; -pub const MAC_OS_VERSION_12_0: u32 = 120000; -pub const MAC_OS_VERSION_12_1: u32 = 120100; -pub const MAC_OS_VERSION_12_2: u32 = 120200; -pub const MAC_OS_VERSION_12_3: u32 = 120300; -pub const MAC_OS_VERSION_12_4: u32 = 120400; -pub const MAC_OS_VERSION_12_5: u32 = 120500; -pub const MAC_OS_VERSION_12_6: u32 = 120600; -pub const MAC_OS_VERSION_12_7: u32 = 120700; -pub const MAC_OS_VERSION_13_0: u32 = 130000; -pub const MAC_OS_VERSION_13_1: u32 = 130100; -pub const MAC_OS_VERSION_13_2: u32 = 130200; -pub const MAC_OS_VERSION_13_3: u32 = 130300; -pub const MAC_OS_VERSION_13_4: u32 = 130400; -pub const MAC_OS_VERSION_13_5: u32 = 130500; -pub const MAC_OS_VERSION_13_6: u32 = 130600; -pub const MAC_OS_VERSION_14_0: u32 = 140000; -pub const MAC_OS_VERSION_14_1: u32 = 140100; -pub const MAC_OS_VERSION_14_2: u32 = 140200; -pub const MAC_OS_VERSION_14_3: u32 = 140300; -pub const MAC_OS_VERSION_14_4: u32 = 140400; -pub const MAC_OS_VERSION_14_5: u32 = 140500; -pub const MAC_OS_VERSION_15_0: u32 = 150000; -pub const __MAC_OS_X_VERSION_MAX_ALLOWED: u32 = 150000; -pub const __ENABLE_LEGACY_MAC_AVAILABILITY: u32 = 1; -pub const __PTHREAD_SIZE__: u32 = 8176; -pub const __PTHREAD_ATTR_SIZE__: u32 = 56; -pub const __PTHREAD_MUTEXATTR_SIZE__: u32 = 8; -pub const __PTHREAD_MUTEX_SIZE__: u32 = 56; -pub const __PTHREAD_CONDATTR_SIZE__: u32 = 8; -pub const __PTHREAD_COND_SIZE__: u32 = 40; -pub const __PTHREAD_ONCE_SIZE__: u32 = 8; -pub const __PTHREAD_RWLOCK_SIZE__: u32 = 192; -pub const __PTHREAD_RWLOCKATTR_SIZE__: u32 = 16; -pub const __DARWIN_WCHAR_MIN: i32 = -2147483648; -pub const _FORTIFY_SOURCE: u32 = 2; -pub const __WORDSIZE: u32 = 64; -pub const INT8_MAX: u32 = 127; -pub const INT16_MAX: u32 = 32767; -pub const INT32_MAX: u32 = 2147483647; -pub const INT64_MAX: u64 = 9223372036854775807; -pub const INT8_MIN: i32 = -128; -pub const INT16_MIN: i32 = -32768; -pub const INT32_MIN: i32 = -2147483648; -pub const INT64_MIN: i64 = -9223372036854775808; -pub const UINT8_MAX: u32 = 255; -pub const UINT16_MAX: u32 = 65535; -pub const UINT32_MAX: u32 = 4294967295; -pub const UINT64_MAX: i32 = -1; -pub const INT_LEAST8_MIN: i32 = -128; -pub const INT_LEAST16_MIN: i32 = -32768; -pub const INT_LEAST32_MIN: i32 = -2147483648; -pub const INT_LEAST64_MIN: i64 = -9223372036854775808; -pub const INT_LEAST8_MAX: u32 = 127; -pub const INT_LEAST16_MAX: u32 = 32767; -pub const INT_LEAST32_MAX: u32 = 2147483647; -pub const INT_LEAST64_MAX: u64 = 9223372036854775807; -pub const UINT_LEAST8_MAX: u32 = 255; -pub const UINT_LEAST16_MAX: u32 = 65535; -pub const UINT_LEAST32_MAX: u32 = 4294967295; -pub const UINT_LEAST64_MAX: i32 = -1; -pub const INT_FAST8_MIN: i32 = -128; -pub const INT_FAST16_MIN: i32 = -32768; -pub const INT_FAST32_MIN: i32 = -2147483648; -pub const INT_FAST64_MIN: i64 = -9223372036854775808; -pub const INT_FAST8_MAX: u32 = 127; -pub const INT_FAST16_MAX: u32 = 32767; -pub const INT_FAST32_MAX: u32 = 2147483647; -pub const INT_FAST64_MAX: u64 = 9223372036854775807; -pub const UINT_FAST8_MAX: u32 = 255; -pub const UINT_FAST16_MAX: u32 = 65535; -pub const UINT_FAST32_MAX: u32 = 4294967295; -pub const UINT_FAST64_MAX: i32 = -1; -pub const INTPTR_MAX: u64 = 9223372036854775807; -pub const INTPTR_MIN: i64 = -9223372036854775808; -pub const UINTPTR_MAX: i32 = -1; -pub const SIZE_MAX: i32 = -1; -pub const RSIZE_MAX: i32 = -1; -pub const WINT_MIN: i32 = -2147483648; -pub const WINT_MAX: u32 = 2147483647; -pub const SIG_ATOMIC_MIN: i32 = -2147483648; -pub const SIG_ATOMIC_MAX: u32 = 2147483647; -pub const CCAN_COMPILER: &[u8; 3] = b"cc\0"; -pub const CCAN_CFLAGS : & [u8 ; 111] = b"-g3 -ggdb -Wall -Wundef -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wold-style-definition\0" ; -pub const CCAN_OUTPUT_EXE_CFLAG: &[u8; 3] = b"-o\0"; -pub const HAVE_CCAN: u32 = 1; -pub const HAVE_UNALIGNED_ACCESS: u32 = 1; -pub const HAVE_TYPEOF: u32 = 1; -pub const HAVE_BIG_ENDIAN: u32 = 0; -pub const HAVE_BYTESWAP_H: u32 = 0; -pub const HAVE_BSWAP_64: u32 = 0; -pub const HAVE_LITTLE_ENDIAN: u32 = 1; -pub const __bool_true_false_are_defined: u32 = 1; -pub const true_: u32 = 1; -pub const false_: u32 = 0; -pub const RENAME_SECLUDE: u32 = 1; -pub const RENAME_SWAP: u32 = 2; -pub const RENAME_EXCL: u32 = 4; -pub const RENAME_RESERVED1: u32 = 8; -pub const RENAME_NOFOLLOW_ANY: u32 = 16; -pub const SEEK_SET: u32 = 0; -pub const SEEK_CUR: u32 = 1; -pub const SEEK_END: u32 = 2; -pub const SEEK_HOLE: u32 = 3; -pub const SEEK_DATA: u32 = 4; -pub const __SLBF: u32 = 1; -pub const __SNBF: u32 = 2; -pub const __SRD: u32 = 4; -pub const __SWR: u32 = 8; -pub const __SRW: u32 = 16; -pub const __SEOF: u32 = 32; -pub const __SERR: u32 = 64; -pub const __SMBF: u32 = 128; -pub const __SAPP: u32 = 256; -pub const __SSTR: u32 = 512; -pub const __SOPT: u32 = 1024; -pub const __SNPT: u32 = 2048; -pub const __SOFF: u32 = 4096; -pub const __SMOD: u32 = 8192; -pub const __SALC: u32 = 16384; -pub const __SIGN: u32 = 32768; -pub const _IOFBF: u32 = 0; -pub const _IOLBF: u32 = 1; -pub const _IONBF: u32 = 2; -pub const BUFSIZ: u32 = 1024; -pub const EOF: i32 = -1; -pub const FOPEN_MAX: u32 = 20; -pub const FILENAME_MAX: u32 = 1024; -pub const P_tmpdir: &[u8; 10] = b"/var/tmp/\0"; -pub const L_tmpnam: u32 = 1024; -pub const TMP_MAX: u32 = 308915776; -pub const L_ctermid: u32 = 1024; -pub const _USE_FORTIFY_LEVEL: u32 = 2; -pub const _CACHED_RUNES: u32 = 256; -pub const _CRMASK: i32 = -256; -pub const _RUNE_MAGIC_A: &[u8; 9] = b"RuneMagA\0"; -pub const _CTYPE_A: u32 = 256; -pub const _CTYPE_C: u32 = 512; -pub const _CTYPE_D: u32 = 1024; -pub const _CTYPE_G: u32 = 2048; -pub const _CTYPE_L: u32 = 4096; -pub const _CTYPE_P: u32 = 8192; -pub const _CTYPE_S: u32 = 16384; -pub const _CTYPE_U: u32 = 32768; -pub const _CTYPE_X: u32 = 65536; -pub const _CTYPE_B: u32 = 131072; -pub const _CTYPE_R: u32 = 262144; -pub const _CTYPE_I: u32 = 524288; -pub const _CTYPE_T: u32 = 1048576; -pub const _CTYPE_Q: u32 = 2097152; -pub const _CTYPE_SW0: u32 = 536870912; -pub const _CTYPE_SW1: u32 = 1073741824; -pub const _CTYPE_SW2: u32 = 2147483648; -pub const _CTYPE_SW3: u32 = 3221225472; -pub const _CTYPE_SWM: u32 = 3758096384; -pub const _CTYPE_SWS: u32 = 30; -pub const __HAS_FIXED_CHK_PROTOTYPES: u32 = 1; -pub const NDB_PACKED_STR: u32 = 1; -pub const NDB_PACKED_ID: u32 = 2; -pub const NDB_FLAG_NOMIGRATE: u32 = 1; -pub const NDB_FLAG_SKIP_NOTE_VERIFY: u32 = 2; -pub const NDB_NUM_FILTERS: u32 = 7; -pub const MAX_TEXT_SEARCH_RESULTS: u32 = 128; -pub const MAX_TEXT_SEARCH_WORDS: u32 = 8; -pub const NDB_NUM_BLOCK_TYPES: u32 = 6; -pub const NDB_MAX_RELAYS: u32 = 24; -pub const NOSTR_BECH32_KNOWN_TYPES: u32 = 7; -pub type __int8_t = ::std::os::raw::c_schar; -pub type __uint8_t = ::std::os::raw::c_uchar; -pub type __int16_t = ::std::os::raw::c_short; -pub type __uint16_t = ::std::os::raw::c_ushort; -pub type __int32_t = ::std::os::raw::c_int; -pub type __uint32_t = ::std::os::raw::c_uint; -pub type __int64_t = ::std::os::raw::c_longlong; -pub type __uint64_t = ::std::os::raw::c_ulonglong; -pub type __darwin_intptr_t = ::std::os::raw::c_long; -pub type __darwin_natural_t = ::std::os::raw::c_uint; -pub type __darwin_ct_rune_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union __mbstate_t { - pub __mbstate8: [::std::os::raw::c_char; 128usize], - pub _mbstateL: ::std::os::raw::c_longlong, -} -#[test] -fn bindgen_test_layout___mbstate_t() { - const UNINIT: ::std::mem::MaybeUninit<__mbstate_t> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<__mbstate_t>(), - 128usize, - concat!("Size of: ", stringify!(__mbstate_t)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t>(), - 8usize, - concat!("Alignment of ", stringify!(__mbstate_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__mbstate8) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__mbstate8) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._mbstateL) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(_mbstateL) - ) - ); -} -pub type __darwin_mbstate_t = __mbstate_t; -pub type __darwin_ptrdiff_t = ::std::os::raw::c_long; -pub type __darwin_size_t = ::std::os::raw::c_ulong; -pub type __darwin_va_list = __builtin_va_list; -pub type __darwin_wchar_t = ::std::os::raw::c_int; -pub type __darwin_rune_t = __darwin_wchar_t; -pub type __darwin_wint_t = ::std::os::raw::c_int; -pub type __darwin_clock_t = ::std::os::raw::c_ulong; -pub type __darwin_socklen_t = __uint32_t; -pub type __darwin_ssize_t = ::std::os::raw::c_long; -pub type __darwin_time_t = ::std::os::raw::c_long; -pub type __darwin_blkcnt_t = __int64_t; -pub type __darwin_blksize_t = __int32_t; -pub type __darwin_dev_t = __int32_t; -pub type __darwin_fsblkcnt_t = ::std::os::raw::c_uint; -pub type __darwin_fsfilcnt_t = ::std::os::raw::c_uint; -pub type __darwin_gid_t = __uint32_t; -pub type __darwin_id_t = __uint32_t; -pub type __darwin_ino64_t = __uint64_t; -pub type __darwin_ino_t = __darwin_ino64_t; -pub type __darwin_mach_port_name_t = __darwin_natural_t; -pub type __darwin_mach_port_t = __darwin_mach_port_name_t; -pub type __darwin_mode_t = __uint16_t; -pub type __darwin_off_t = __int64_t; -pub type __darwin_pid_t = __int32_t; -pub type __darwin_sigset_t = __uint32_t; -pub type __darwin_suseconds_t = __int32_t; -pub type __darwin_uid_t = __uint32_t; -pub type __darwin_useconds_t = __uint32_t; -pub type __darwin_uuid_t = [::std::os::raw::c_uchar; 16usize]; -pub type __darwin_uuid_string_t = [::std::os::raw::c_char; 37usize]; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __darwin_pthread_handler_rec { - pub __routine: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>, - pub __arg: *mut ::std::os::raw::c_void, - pub __next: *mut __darwin_pthread_handler_rec, -} -#[test] -fn bindgen_test_layout___darwin_pthread_handler_rec() { - const UNINIT: ::std::mem::MaybeUninit<__darwin_pthread_handler_rec> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<__darwin_pthread_handler_rec>(), - 24usize, - concat!("Size of: ", stringify!(__darwin_pthread_handler_rec)) - ); - assert_eq!( - ::std::mem::align_of::<__darwin_pthread_handler_rec>(), - 8usize, - concat!("Alignment of ", stringify!(__darwin_pthread_handler_rec)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__routine) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__darwin_pthread_handler_rec), - "::", - stringify!(__routine) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__arg) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__darwin_pthread_handler_rec), - "::", - stringify!(__arg) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__next) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__darwin_pthread_handler_rec), - "::", - stringify!(__next) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_attr_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 56usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_attr_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_attr_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_attr_t>(), - 64usize, - concat!("Size of: ", stringify!(_opaque_pthread_attr_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_attr_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_attr_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_attr_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_attr_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_cond_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 40usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_cond_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_cond_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_cond_t>(), - 48usize, - concat!("Size of: ", stringify!(_opaque_pthread_cond_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_cond_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_cond_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_cond_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_cond_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_condattr_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 8usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_condattr_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_condattr_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_condattr_t>(), - 16usize, - concat!("Size of: ", stringify!(_opaque_pthread_condattr_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_condattr_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_condattr_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_condattr_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_condattr_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_mutex_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 56usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_mutex_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutex_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_mutex_t>(), - 64usize, - concat!("Size of: ", stringify!(_opaque_pthread_mutex_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_mutex_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_mutex_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_mutex_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_mutex_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_mutexattr_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 8usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_mutexattr_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutexattr_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_mutexattr_t>(), - 16usize, - concat!("Size of: ", stringify!(_opaque_pthread_mutexattr_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_mutexattr_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_mutexattr_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_mutexattr_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_mutexattr_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_once_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 8usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_once_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_once_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_once_t>(), - 16usize, - concat!("Size of: ", stringify!(_opaque_pthread_once_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_once_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_once_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_once_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_once_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_rwlock_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 192usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_rwlock_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlock_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_rwlock_t>(), - 200usize, - concat!("Size of: ", stringify!(_opaque_pthread_rwlock_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_rwlock_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_rwlock_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_rwlock_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_rwlock_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_rwlockattr_t { - pub __sig: ::std::os::raw::c_long, - pub __opaque: [::std::os::raw::c_char; 16usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_rwlockattr_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlockattr_t> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_rwlockattr_t>(), - 24usize, - concat!("Size of: ", stringify!(_opaque_pthread_rwlockattr_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_rwlockattr_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_rwlockattr_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_rwlockattr_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_rwlockattr_t), - "::", - stringify!(__opaque) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _opaque_pthread_t { - pub __sig: ::std::os::raw::c_long, - pub __cleanup_stack: *mut __darwin_pthread_handler_rec, - pub __opaque: [::std::os::raw::c_char; 8176usize], -} -#[test] -fn bindgen_test_layout__opaque_pthread_t() { - const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_t> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_opaque_pthread_t>(), - 8192usize, - concat!("Size of: ", stringify!(_opaque_pthread_t)) - ); - assert_eq!( - ::std::mem::align_of::<_opaque_pthread_t>(), - 8usize, - concat!("Alignment of ", stringify!(_opaque_pthread_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_t), - "::", - stringify!(__sig) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__cleanup_stack) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_t), - "::", - stringify!(__cleanup_stack) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_opaque_pthread_t), - "::", - stringify!(__opaque) - ) - ); -} -pub type __darwin_pthread_attr_t = _opaque_pthread_attr_t; -pub type __darwin_pthread_cond_t = _opaque_pthread_cond_t; -pub type __darwin_pthread_condattr_t = _opaque_pthread_condattr_t; -pub type __darwin_pthread_key_t = ::std::os::raw::c_ulong; -pub type __darwin_pthread_mutex_t = _opaque_pthread_mutex_t; -pub type __darwin_pthread_mutexattr_t = _opaque_pthread_mutexattr_t; -pub type __darwin_pthread_once_t = _opaque_pthread_once_t; -pub type __darwin_pthread_rwlock_t = _opaque_pthread_rwlock_t; -pub type __darwin_pthread_rwlockattr_t = _opaque_pthread_rwlockattr_t; -pub type __darwin_pthread_t = *mut _opaque_pthread_t; -pub type __darwin_nl_item = ::std::os::raw::c_int; -pub type __darwin_wctrans_t = ::std::os::raw::c_int; -pub type __darwin_wctype_t = __uint32_t; -pub type wchar_t = __darwin_wchar_t; -pub type int_least8_t = i8; -pub type int_least16_t = i16; -pub type int_least32_t = i32; -pub type int_least64_t = i64; -pub type uint_least8_t = u8; -pub type uint_least16_t = u16; -pub type uint_least32_t = u32; -pub type uint_least64_t = u64; -pub type int_fast8_t = i8; -pub type int_fast16_t = i16; -pub type int_fast32_t = i32; -pub type int_fast64_t = i64; -pub type uint_fast8_t = u8; -pub type uint_fast16_t = u16; -pub type uint_fast32_t = u32; -pub type uint_fast64_t = u64; -pub type intmax_t = ::std::os::raw::c_long; -pub type uintmax_t = ::std::os::raw::c_ulong; -extern "C" { - pub fn imaxabs(j: intmax_t) -> intmax_t; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct imaxdiv_t { - pub quot: intmax_t, - pub rem: intmax_t, -} -#[test] -fn bindgen_test_layout_imaxdiv_t() { - const UNINIT: ::std::mem::MaybeUninit<imaxdiv_t> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<imaxdiv_t>(), - 16usize, - concat!("Size of: ", stringify!(imaxdiv_t)) - ); - assert_eq!( - ::std::mem::align_of::<imaxdiv_t>(), - 8usize, - concat!("Alignment of ", stringify!(imaxdiv_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(imaxdiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(imaxdiv_t), - "::", - stringify!(rem) - ) - ); -} -extern "C" { - pub fn imaxdiv(__numer: intmax_t, __denom: intmax_t) -> imaxdiv_t; -} -extern "C" { - pub fn strtoimax( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> intmax_t; -} -extern "C" { - pub fn strtoumax( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> uintmax_t; -} -extern "C" { - pub fn wcstoimax( - __nptr: *const wchar_t, - __endptr: *mut *mut wchar_t, - __base: ::std::os::raw::c_int, - ) -> intmax_t; -} -extern "C" { - pub fn wcstoumax( - __nptr: *const wchar_t, - __endptr: *mut *mut wchar_t, - __base: ::std::os::raw::c_int, - ) -> uintmax_t; -} -pub type u_int8_t = ::std::os::raw::c_uchar; -pub type u_int16_t = ::std::os::raw::c_ushort; -pub type u_int32_t = ::std::os::raw::c_uint; -pub type u_int64_t = ::std::os::raw::c_ulonglong; -pub type register_t = i64; -pub type user_addr_t = u_int64_t; -pub type user_size_t = u_int64_t; -pub type user_ssize_t = i64; -pub type user_long_t = i64; -pub type user_ulong_t = u_int64_t; -pub type user_time_t = i64; -pub type user_off_t = i64; -pub type syscall_arg_t = u_int64_t; -pub type va_list = __darwin_va_list; -extern "C" { - pub fn renameat( - arg1: ::std::os::raw::c_int, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - arg4: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn renamex_np( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_uint, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn renameatx_np( - arg1: ::std::os::raw::c_int, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - arg4: *const ::std::os::raw::c_char, - arg5: ::std::os::raw::c_uint, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn printf(arg1: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -pub type fpos_t = __darwin_off_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sbuf { - pub _base: *mut ::std::os::raw::c_uchar, - pub _size: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout___sbuf() { - const UNINIT: ::std::mem::MaybeUninit<__sbuf> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<__sbuf>(), - 16usize, - concat!("Size of: ", stringify!(__sbuf)) - ); - assert_eq!( - ::std::mem::align_of::<__sbuf>(), - 8usize, - concat!("Alignment of ", stringify!(__sbuf)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._base) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__sbuf), - "::", - stringify!(_base) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._size) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__sbuf), - "::", - stringify!(_size) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sFILEX { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sFILE { - pub _p: *mut ::std::os::raw::c_uchar, - pub _r: ::std::os::raw::c_int, - pub _w: ::std::os::raw::c_int, - pub _flags: ::std::os::raw::c_short, - pub _file: ::std::os::raw::c_short, - pub _bf: __sbuf, - pub _lbfsize: ::std::os::raw::c_int, - pub _cookie: *mut ::std::os::raw::c_void, - pub _close: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, - >, - pub _read: ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: *mut ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, - >, - pub _seek: ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: fpos_t, - arg3: ::std::os::raw::c_int, - ) -> fpos_t, - >, - pub _write: ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, - >, - pub _ub: __sbuf, - pub _extra: *mut __sFILEX, - pub _ur: ::std::os::raw::c_int, - pub _ubuf: [::std::os::raw::c_uchar; 3usize], - pub _nbuf: [::std::os::raw::c_uchar; 1usize], - pub _lb: __sbuf, - pub _blksize: ::std::os::raw::c_int, - pub _offset: fpos_t, -} -#[test] -fn bindgen_test_layout___sFILE() { - const UNINIT: ::std::mem::MaybeUninit<__sFILE> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<__sFILE>(), - 152usize, - concat!("Size of: ", stringify!(__sFILE)) - ); - assert_eq!( - ::std::mem::align_of::<__sFILE>(), - 8usize, - concat!("Alignment of ", stringify!(__sFILE)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._p) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_p) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._r) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_r) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._w) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_w) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._flags) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_flags) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._file) as usize - ptr as usize }, - 18usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_file) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._bf) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_bf) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._lbfsize) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_lbfsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._cookie) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_cookie) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._close) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_close) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._read) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_read) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._seek) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_seek) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._write) as usize - ptr as usize }, - 80usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_write) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._ub) as usize - ptr as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_ub) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._extra) as usize - ptr as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_extra) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._ur) as usize - ptr as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_ur) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._ubuf) as usize - ptr as usize }, - 116usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_ubuf) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._nbuf) as usize - ptr as usize }, - 119usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_nbuf) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._lb) as usize - ptr as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_lb) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._blksize) as usize - ptr as usize }, - 136usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_blksize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr)._offset) as usize - ptr as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(__sFILE), - "::", - stringify!(_offset) - ) - ); -} -pub type FILE = __sFILE; -extern "C" { - pub static mut __stdinp: *mut FILE; -} -extern "C" { - pub static mut __stdoutp: *mut FILE; -} -extern "C" { - pub static mut __stderrp: *mut FILE; -} -extern "C" { - pub fn clearerr(arg1: *mut FILE); -} -extern "C" { - pub fn fclose(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn feof(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ferror(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fflush(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetpos(arg1: *mut FILE, arg2: *mut fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgets( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: *mut FILE, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fopen( - __filename: *const ::std::os::raw::c_char, - __mode: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn fprintf( - arg1: *mut FILE, - arg2: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputs(arg1: *const ::std::os::raw::c_char, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fread( - __ptr: *mut ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - __nitems: ::std::os::raw::c_ulong, - __stream: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn freopen( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: *mut FILE, - ) -> *mut FILE; -} -extern "C" { - pub fn fscanf( - arg1: *mut FILE, - arg2: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fseek( - arg1: *mut FILE, - arg2: ::std::os::raw::c_long, - arg3: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fsetpos(arg1: *mut FILE, arg2: *const fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ftell(arg1: *mut FILE) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn fwrite( - __ptr: *const ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - __nitems: ::std::os::raw::c_ulong, - __stream: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn getc(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getchar() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn gets(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn perror(arg1: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn putc(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn puts(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn remove(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn rename( - __old: *const ::std::os::raw::c_char, - __new: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn rewind(arg1: *mut FILE); -} -extern "C" { - pub fn scanf(arg1: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setbuf(arg1: *mut FILE, arg2: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn setvbuf( - arg1: *mut FILE, - arg2: *mut ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - arg4: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sprintf( - arg1: *mut ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sscanf( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn tmpfile() -> *mut FILE; -} -extern "C" { - pub fn tmpnam(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn ungetc(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfprintf( - arg1: *mut FILE, - arg2: *const ::std::os::raw::c_char, - arg3: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vprintf( - arg1: *const ::std::os::raw::c_char, - arg2: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsprintf( - arg1: *mut ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ctermid(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fdopen(arg1: ::std::os::raw::c_int, arg2: *const ::std::os::raw::c_char) -> *mut FILE; -} -extern "C" { - pub fn fileno(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn pclose(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn popen( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn __srget(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __svfscanf( - arg1: *mut FILE, - arg2: *const ::std::os::raw::c_char, - arg3: va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __swbuf(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn flockfile(arg1: *mut FILE); -} -extern "C" { - pub fn ftrylockfile(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn funlockfile(arg1: *mut FILE); -} -extern "C" { - pub fn getc_unlocked(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getchar_unlocked() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc_unlocked(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar_unlocked(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getw(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putw(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn tempnam( - __dir: *const ::std::os::raw::c_char, - __prefix: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -pub type off_t = __darwin_off_t; -extern "C" { - pub fn fseeko( - __stream: *mut FILE, - __offset: off_t, - __whence: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ftello(__stream: *mut FILE) -> off_t; -} -extern "C" { - pub fn snprintf( - __str: *mut ::std::os::raw::c_char, - __size: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfscanf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - arg1: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vscanf( - __format: *const ::std::os::raw::c_char, - arg1: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsnprintf( - __str: *mut ::std::os::raw::c_char, - __size: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - arg1: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsscanf( - __str: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - arg1: __builtin_va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn dprintf( - arg1: ::std::os::raw::c_int, - arg2: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vdprintf( - arg1: ::std::os::raw::c_int, - arg2: *const ::std::os::raw::c_char, - arg3: va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getdelim( - __linep: *mut *mut ::std::os::raw::c_char, - __linecapp: *mut usize, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> isize; -} -extern "C" { - pub fn getline( - __linep: *mut *mut ::std::os::raw::c_char, - __linecapp: *mut usize, - __stream: *mut FILE, - ) -> isize; -} -extern "C" { - pub fn fmemopen( - __buf: *mut ::std::os::raw::c_void, - __size: usize, - __mode: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn open_memstream( - __bufp: *mut *mut ::std::os::raw::c_char, - __sizep: *mut usize, - ) -> *mut FILE; -} -extern "C" { - pub static sys_nerr: ::std::os::raw::c_int; -} -extern "C" { - pub static sys_errlist: [*const ::std::os::raw::c_char; 0usize]; -} -extern "C" { - pub fn asprintf( - arg1: *mut *mut ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ctermid_r(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fgetln(arg1: *mut FILE, arg2: *mut usize) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fmtcheck( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn fpurge(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setbuffer( - arg1: *mut FILE, - arg2: *mut ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn setlinebuf(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vasprintf( - arg1: *mut *mut ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn funopen( - arg1: *const ::std::os::raw::c_void, - arg2: ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: *mut ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, - >, - arg3: ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, - >, - arg4: ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: fpos_t, - arg3: ::std::os::raw::c_int, - ) -> fpos_t, - >, - arg5: ::std::option::Option< - unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, - >, - ) -> *mut FILE; -} -extern "C" { - pub fn __sprintf_chk( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: usize, - arg4: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __snprintf_chk( - arg1: *mut ::std::os::raw::c_char, - arg2: usize, - arg3: ::std::os::raw::c_int, - arg4: usize, - arg5: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __vsprintf_chk( - arg1: *mut ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - arg3: usize, - arg4: *const ::std::os::raw::c_char, - arg5: va_list, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __vsnprintf_chk( - arg1: *mut ::std::os::raw::c_char, - arg2: usize, - arg3: ::std::os::raw::c_int, - arg4: usize, - arg5: *const ::std::os::raw::c_char, - arg6: va_list, - ) -> ::std::os::raw::c_int; -} -pub type ct_rune_t = __darwin_ct_rune_t; -pub type rune_t = __darwin_rune_t; -pub type wint_t = __darwin_wint_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _RuneEntry { - pub __min: __darwin_rune_t, - pub __max: __darwin_rune_t, - pub __map: __darwin_rune_t, - pub __types: *mut __uint32_t, -} -#[test] -fn bindgen_test_layout__RuneEntry() { - const UNINIT: ::std::mem::MaybeUninit<_RuneEntry> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_RuneEntry>(), - 24usize, - concat!("Size of: ", stringify!(_RuneEntry)) - ); - assert_eq!( - ::std::mem::align_of::<_RuneEntry>(), - 8usize, - concat!("Alignment of ", stringify!(_RuneEntry)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__min) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_RuneEntry), - "::", - stringify!(__min) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__max) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(_RuneEntry), - "::", - stringify!(__max) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__map) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_RuneEntry), - "::", - stringify!(__map) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__types) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_RuneEntry), - "::", - stringify!(__types) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _RuneRange { - pub __nranges: ::std::os::raw::c_int, - pub __ranges: *mut _RuneEntry, -} -#[test] -fn bindgen_test_layout__RuneRange() { - const UNINIT: ::std::mem::MaybeUninit<_RuneRange> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_RuneRange>(), - 16usize, - concat!("Size of: ", stringify!(_RuneRange)) - ); - assert_eq!( - ::std::mem::align_of::<_RuneRange>(), - 8usize, - concat!("Alignment of ", stringify!(_RuneRange)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__nranges) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_RuneRange), - "::", - stringify!(__nranges) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__ranges) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_RuneRange), - "::", - stringify!(__ranges) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _RuneCharClass { - pub __name: [::std::os::raw::c_char; 14usize], - pub __mask: __uint32_t, -} -#[test] -fn bindgen_test_layout__RuneCharClass() { - const UNINIT: ::std::mem::MaybeUninit<_RuneCharClass> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_RuneCharClass>(), - 20usize, - concat!("Size of: ", stringify!(_RuneCharClass)) - ); - assert_eq!( - ::std::mem::align_of::<_RuneCharClass>(), - 4usize, - concat!("Alignment of ", stringify!(_RuneCharClass)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__name) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_RuneCharClass), - "::", - stringify!(__name) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__mask) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_RuneCharClass), - "::", - stringify!(__mask) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _RuneLocale { - pub __magic: [::std::os::raw::c_char; 8usize], - pub __encoding: [::std::os::raw::c_char; 32usize], - pub __sgetrune: ::std::option::Option< - unsafe extern "C" fn( - arg1: *const ::std::os::raw::c_char, - arg2: __darwin_size_t, - arg3: *mut *const ::std::os::raw::c_char, - ) -> __darwin_rune_t, - >, - pub __sputrune: ::std::option::Option< - unsafe extern "C" fn( - arg1: __darwin_rune_t, - arg2: *mut ::std::os::raw::c_char, - arg3: __darwin_size_t, - arg4: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int, - >, - pub __invalid_rune: __darwin_rune_t, - pub __runetype: [__uint32_t; 256usize], - pub __maplower: [__darwin_rune_t; 256usize], - pub __mapupper: [__darwin_rune_t; 256usize], - pub __runetype_ext: _RuneRange, - pub __maplower_ext: _RuneRange, - pub __mapupper_ext: _RuneRange, - pub __variable: *mut ::std::os::raw::c_void, - pub __variable_len: ::std::os::raw::c_int, - pub __ncharclasses: ::std::os::raw::c_int, - pub __charclasses: *mut _RuneCharClass, -} -#[test] -fn bindgen_test_layout__RuneLocale() { - const UNINIT: ::std::mem::MaybeUninit<_RuneLocale> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<_RuneLocale>(), - 3208usize, - concat!("Size of: ", stringify!(_RuneLocale)) - ); - assert_eq!( - ::std::mem::align_of::<_RuneLocale>(), - 8usize, - concat!("Alignment of ", stringify!(_RuneLocale)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__magic) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__magic) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__encoding) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__encoding) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sgetrune) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__sgetrune) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__sputrune) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__sputrune) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__invalid_rune) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__invalid_rune) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__runetype) as usize - ptr as usize }, - 60usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__runetype) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__maplower) as usize - ptr as usize }, - 1084usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__maplower) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__mapupper) as usize - ptr as usize }, - 2108usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__mapupper) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__runetype_ext) as usize - ptr as usize }, - 3136usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__runetype_ext) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__maplower_ext) as usize - ptr as usize }, - 3152usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__maplower_ext) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__mapupper_ext) as usize - ptr as usize }, - 3168usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__mapupper_ext) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__variable) as usize - ptr as usize }, - 3184usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__variable) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__variable_len) as usize - ptr as usize }, - 3192usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__variable_len) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__ncharclasses) as usize - ptr as usize }, - 3196usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__ncharclasses) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).__charclasses) as usize - ptr as usize }, - 3200usize, - concat!( - "Offset of field: ", - stringify!(_RuneLocale), - "::", - stringify!(__charclasses) - ) - ); -} -extern "C" { - pub static mut _DefaultRuneLocale: _RuneLocale; -} -extern "C" { - pub static mut _CurrentRuneLocale: *mut _RuneLocale; -} -extern "C" { - pub fn ___runetype(arg1: __darwin_ct_rune_t) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn ___tolower(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; -} -extern "C" { - pub fn ___toupper(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; -} -extern "C" { - pub fn __maskrune( - arg1: __darwin_ct_rune_t, - arg2: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __toupper(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; -} -extern "C" { - pub fn __tolower(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; -} -extern "C" { - pub fn __assert_rtn( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_int, - arg4: *const ::std::os::raw::c_char, - ) -> !; -} -extern "C" { - pub fn memchr( - __s: *const ::std::os::raw::c_void, - __c: ::std::os::raw::c_int, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn memcmp( - __s1: *const ::std::os::raw::c_void, - __s2: *const ::std::os::raw::c_void, - __n: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn memcpy( - __dst: *mut ::std::os::raw::c_void, - __src: *const ::std::os::raw::c_void, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn memmove( - __dst: *mut ::std::os::raw::c_void, - __src: *const ::std::os::raw::c_void, - __len: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn memset( - __b: *mut ::std::os::raw::c_void, - __c: ::std::os::raw::c_int, - __len: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn strcat( - __s1: *mut ::std::os::raw::c_char, - __s2: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strchr( - __s: *const ::std::os::raw::c_char, - __c: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strcmp( - __s1: *const ::std::os::raw::c_char, - __s2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strcoll( - __s1: *const ::std::os::raw::c_char, - __s2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strcpy( - __dst: *mut ::std::os::raw::c_char, - __src: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strcspn( - __s: *const ::std::os::raw::c_char, - __charset: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strerror(__errnum: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strlen(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strncat( - __s1: *mut ::std::os::raw::c_char, - __s2: *const ::std::os::raw::c_char, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strncmp( - __s1: *const ::std::os::raw::c_char, - __s2: *const ::std::os::raw::c_char, - __n: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strncpy( - __dst: *mut ::std::os::raw::c_char, - __src: *const ::std::os::raw::c_char, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strpbrk( - __s: *const ::std::os::raw::c_char, - __charset: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strrchr( - __s: *const ::std::os::raw::c_char, - __c: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strspn( - __s: *const ::std::os::raw::c_char, - __charset: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strstr( - __big: *const ::std::os::raw::c_char, - __little: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strtok( - __str: *mut ::std::os::raw::c_char, - __sep: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strxfrm( - __s1: *mut ::std::os::raw::c_char, - __s2: *const ::std::os::raw::c_char, - __n: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strtok_r( - __str: *mut ::std::os::raw::c_char, - __sep: *const ::std::os::raw::c_char, - __lasts: *mut *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strerror_r( - __errnum: ::std::os::raw::c_int, - __strerrbuf: *mut ::std::os::raw::c_char, - __buflen: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strdup(__s1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn memccpy( - __dst: *mut ::std::os::raw::c_void, - __src: *const ::std::os::raw::c_void, - __c: ::std::os::raw::c_int, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn stpcpy( - __dst: *mut ::std::os::raw::c_char, - __src: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn stpncpy( - __dst: *mut ::std::os::raw::c_char, - __src: *const ::std::os::raw::c_char, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strndup( - __s1: *const ::std::os::raw::c_char, - __n: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strnlen(__s1: *const ::std::os::raw::c_char, __n: usize) -> usize; -} -extern "C" { - pub fn strsignal(__sig: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; -} -pub type rsize_t = __darwin_size_t; -pub type errno_t = ::std::os::raw::c_int; -extern "C" { - pub fn memset_s( - __s: *mut ::std::os::raw::c_void, - __smax: rsize_t, - __c: ::std::os::raw::c_int, - __n: rsize_t, - ) -> errno_t; -} -extern "C" { - pub fn memmem( - __big: *const ::std::os::raw::c_void, - __big_len: usize, - __little: *const ::std::os::raw::c_void, - __little_len: usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn memset_pattern4( - __b: *mut ::std::os::raw::c_void, - __pattern4: *const ::std::os::raw::c_void, - __len: usize, - ); -} -extern "C" { - pub fn memset_pattern8( - __b: *mut ::std::os::raw::c_void, - __pattern8: *const ::std::os::raw::c_void, - __len: usize, - ); -} -extern "C" { - pub fn memset_pattern16( - __b: *mut ::std::os::raw::c_void, - __pattern16: *const ::std::os::raw::c_void, - __len: usize, - ); -} -extern "C" { - pub fn strcasestr( - __big: *const ::std::os::raw::c_char, - __little: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strnstr( - __big: *const ::std::os::raw::c_char, - __little: *const ::std::os::raw::c_char, - __len: usize, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn strlcat( - __dst: *mut ::std::os::raw::c_char, - __source: *const ::std::os::raw::c_char, - __size: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strlcpy( - __dst: *mut ::std::os::raw::c_char, - __source: *const ::std::os::raw::c_char, - __size: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strmode(__mode: ::std::os::raw::c_int, __bp: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn strsep( - __stringp: *mut *mut ::std::os::raw::c_char, - __delim: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn swab( - arg1: *const ::std::os::raw::c_void, - arg2: *mut ::std::os::raw::c_void, - arg3: isize, - ); -} -extern "C" { - pub fn timingsafe_bcmp( - __b1: *const ::std::os::raw::c_void, - __b2: *const ::std::os::raw::c_void, - __len: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strsignal_r( - __sig: ::std::os::raw::c_int, - __strsignalbuf: *mut ::std::os::raw::c_char, - __buflen: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn bcmp( - arg1: *const ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_void, - arg3: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn bcopy( - arg1: *const ::std::os::raw::c_void, - arg2: *mut ::std::os::raw::c_void, - arg3: usize, - ); -} -extern "C" { - pub fn bzero(arg1: *mut ::std::os::raw::c_void, arg2: ::std::os::raw::c_ulong); -} -extern "C" { - pub fn index( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn rindex( - arg1: *const ::std::os::raw::c_char, - arg2: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn ffs(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strcasecmp( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn strncasecmp( - arg1: *const ::std::os::raw::c_char, - arg2: *const ::std::os::raw::c_char, - arg3: ::std::os::raw::c_ulong, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ffsl(arg1: ::std::os::raw::c_long) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ffsll(arg1: ::std::os::raw::c_longlong) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fls(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn flsl(arg1: ::std::os::raw::c_long) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn flsll(arg1: ::std::os::raw::c_longlong) -> ::std::os::raw::c_int; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct cursor { - pub start: *mut ::std::os::raw::c_uchar, - pub p: *mut ::std::os::raw::c_uchar, - pub end: *mut ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_cursor() { - const UNINIT: ::std::mem::MaybeUninit<cursor> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<cursor>(), - 24usize, - concat!("Size of: ", stringify!(cursor)) - ); - assert_eq!( - ::std::mem::align_of::<cursor>(), - 8usize, - concat!("Alignment of ", stringify!(cursor)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(cursor), - "::", - stringify!(start) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize }, - 8usize, - concat!("Offset of field: ", stringify!(cursor), "::", stringify!(p)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(cursor), - "::", - stringify!(end) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_str_block { - pub str_: *const ::std::os::raw::c_char, - pub len: u32, -} -#[test] -fn bindgen_test_layout_ndb_str_block() { - const UNINIT: ::std::mem::MaybeUninit<ndb_str_block> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_str_block>(), - 16usize, - concat!("Size of: ", stringify!(ndb_str_block)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_str_block>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_str_block)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_str_block), - "::", - stringify!(str_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_str_block), - "::", - stringify!(len) - ) - ); -} -pub type str_block_t = ndb_str_block; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_json_parser { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_blocks { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_note { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_tag { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_tags { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_lmdb { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_packed_str { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bolt11 { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_tag_ptr { - pub ptr: *mut ndb_tag, -} -#[test] -fn bindgen_test_layout_ndb_tag_ptr() { - const UNINIT: ::std::mem::MaybeUninit<ndb_tag_ptr> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_tag_ptr>(), - 8usize, - concat!("Size of: ", stringify!(ndb_tag_ptr)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_tag_ptr>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_tag_ptr)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_tag_ptr), - "::", - stringify!(ptr) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_tags_ptr { - pub ptr: *mut ndb_tags, -} -#[test] -fn bindgen_test_layout_ndb_tags_ptr() { - const UNINIT: ::std::mem::MaybeUninit<ndb_tags_ptr> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_tags_ptr>(), - 8usize, - concat!("Size of: ", stringify!(ndb_tags_ptr)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_tags_ptr>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_tags_ptr)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_tags_ptr), - "::", - stringify!(ptr) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_block_ptr { - pub ptr: *mut ndb_block, -} -#[test] -fn bindgen_test_layout_ndb_block_ptr() { - const UNINIT: ::std::mem::MaybeUninit<ndb_block_ptr> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_block_ptr>(), - 8usize, - concat!("Size of: ", stringify!(ndb_block_ptr)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_block_ptr>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_block_ptr)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block_ptr), - "::", - stringify!(ptr) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_blocks_ptr { - pub ptr: *mut ndb_blocks, -} -#[test] -fn bindgen_test_layout_ndb_blocks_ptr() { - const UNINIT: ::std::mem::MaybeUninit<ndb_blocks_ptr> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_blocks_ptr>(), - 8usize, - concat!("Size of: ", stringify!(ndb_blocks_ptr)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_blocks_ptr>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_blocks_ptr)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_blocks_ptr), - "::", - stringify!(ptr) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_note_ptr { - pub ptr: *mut ndb_note, -} -#[test] -fn bindgen_test_layout_ndb_note_ptr() { - const UNINIT: ::std::mem::MaybeUninit<ndb_note_ptr> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_note_ptr>(), - 8usize, - concat!("Size of: ", stringify!(ndb_note_ptr)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_note_ptr>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_note_ptr)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_note_ptr), - "::", - stringify!(ptr) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_t { - pub ndb: *mut ndb, -} -#[test] -fn bindgen_test_layout_ndb_t() { - const UNINIT: ::std::mem::MaybeUninit<ndb_t> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_t>(), - 8usize, - concat!("Size of: ", stringify!(ndb_t)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_t>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_t)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ndb) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_t), - "::", - stringify!(ndb) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_str { - pub flag: ::std::os::raw::c_uchar, - pub __bindgen_anon_1: ndb_str__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union ndb_str__bindgen_ty_1 { - pub str_: *const ::std::os::raw::c_char, - pub id: *mut ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_ndb_str__bindgen_ty_1() { - const UNINIT: ::std::mem::MaybeUninit<ndb_str__bindgen_ty_1> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_str__bindgen_ty_1>(), - 8usize, - concat!("Size of: ", stringify!(ndb_str__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_str__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_str__bindgen_ty_1)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_str__bindgen_ty_1), - "::", - stringify!(str_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_str__bindgen_ty_1), - "::", - stringify!(id) - ) - ); -} -#[test] -fn bindgen_test_layout_ndb_str() { - const UNINIT: ::std::mem::MaybeUninit<ndb_str> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_str>(), - 16usize, - concat!("Size of: ", stringify!(ndb_str)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_str>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_str)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).flag) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_str), - "::", - stringify!(flag) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_keypair { - pub pubkey: [::std::os::raw::c_uchar; 32usize], - pub secret: [::std::os::raw::c_uchar; 32usize], - pub pair: [::std::os::raw::c_uchar; 96usize], -} -#[test] -fn bindgen_test_layout_ndb_keypair() { - const UNINIT: ::std::mem::MaybeUninit<ndb_keypair> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_keypair>(), - 160usize, - concat!("Size of: ", stringify!(ndb_keypair)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_keypair>(), - 1usize, - concat!("Alignment of ", stringify!(ndb_keypair)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_keypair), - "::", - stringify!(pubkey) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).secret) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ndb_keypair), - "::", - stringify!(secret) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).pair) as usize - ptr as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(ndb_keypair), - "::", - stringify!(pair) - ) - ); -} -pub type ndb_idres = i32; -pub type ndb_id_fn = ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_char, - ) -> ndb_idres, ->; -pub type ndb_sub_fn = - ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, subid: u64)>; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_id_cb { - pub fn_: ndb_id_fn, - pub data: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_ndb_id_cb() { - const UNINIT: ::std::mem::MaybeUninit<ndb_id_cb> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_id_cb>(), - 16usize, - concat!("Size of: ", stringify!(ndb_id_cb)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_id_cb>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_id_cb)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).fn_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_id_cb), - "::", - stringify!(fn_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_id_cb), - "::", - stringify!(data) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_txn { - pub lmdb: *mut ndb_lmdb, - pub mdb_txn: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_ndb_txn() { - const UNINIT: ::std::mem::MaybeUninit<ndb_txn> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_txn>(), - 16usize, - concat!("Size of: ", stringify!(ndb_txn)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_txn>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_txn)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).lmdb) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_txn), - "::", - stringify!(lmdb) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mdb_txn) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_txn), - "::", - stringify!(mdb_txn) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_event { - pub note: *mut ndb_note, -} -#[test] -fn bindgen_test_layout_ndb_event() { - const UNINIT: ::std::mem::MaybeUninit<ndb_event> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_event>(), - 8usize, - concat!("Size of: ", stringify!(ndb_event)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_event>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_event)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_event), - "::", - stringify!(note) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_command_result { - pub ok: ::std::os::raw::c_int, - pub msg: *const ::std::os::raw::c_char, - pub msglen: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_command_result() { - const UNINIT: ::std::mem::MaybeUninit<ndb_command_result> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_command_result>(), - 24usize, - concat!("Size of: ", stringify!(ndb_command_result)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_command_result>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_command_result)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ok) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_command_result), - "::", - stringify!(ok) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).msg) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_command_result), - "::", - stringify!(msg) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).msglen) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_command_result), - "::", - stringify!(msglen) - ) - ); -} -pub const fce_type_NDB_FCE_EVENT: fce_type = 1; -pub type fce_type = ::std::os::raw::c_uint; -pub const tce_type_NDB_TCE_EVENT: tce_type = 1; -pub const tce_type_NDB_TCE_OK: tce_type = 2; -pub const tce_type_NDB_TCE_NOTICE: tce_type = 3; -pub const tce_type_NDB_TCE_EOSE: tce_type = 4; -pub const tce_type_NDB_TCE_AUTH: tce_type = 5; -pub type tce_type = ::std::os::raw::c_uint; -pub const ndb_ingest_filter_action_NDB_INGEST_REJECT: ndb_ingest_filter_action = 0; -pub const ndb_ingest_filter_action_NDB_INGEST_ACCEPT: ndb_ingest_filter_action = 1; -pub const ndb_ingest_filter_action_NDB_INGEST_SKIP_VALIDATION: ndb_ingest_filter_action = 2; -pub type ndb_ingest_filter_action = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_search_key { - pub search: [::std::os::raw::c_char; 24usize], - pub id: [::std::os::raw::c_uchar; 32usize], - pub timestamp: u64, -} -#[test] -fn bindgen_test_layout_ndb_search_key() { - const UNINIT: ::std::mem::MaybeUninit<ndb_search_key> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_search_key>(), - 64usize, - concat!("Size of: ", stringify!(ndb_search_key)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_search_key>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_search_key)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).search) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_search_key), - "::", - stringify!(search) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ndb_search_key), - "::", - stringify!(id) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(ndb_search_key), - "::", - stringify!(timestamp) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_search { - pub key: *mut ndb_search_key, - pub profile_key: u64, - pub cursor: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout_ndb_search() { - const UNINIT: ::std::mem::MaybeUninit<ndb_search> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_search>(), - 24usize, - concat!("Size of: ", stringify!(ndb_search)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_search>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_search)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_search), - "::", - stringify!(key) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).profile_key) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_search), - "::", - stringify!(profile_key) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cursor) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_search), - "::", - stringify!(cursor) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_fce { - pub evtype: fce_type, - pub __bindgen_anon_1: ndb_fce__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union ndb_fce__bindgen_ty_1 { - pub event: ndb_event, -} -#[test] -fn bindgen_test_layout_ndb_fce__bindgen_ty_1() { - const UNINIT: ::std::mem::MaybeUninit<ndb_fce__bindgen_ty_1> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_fce__bindgen_ty_1>(), - 8usize, - concat!("Size of: ", stringify!(ndb_fce__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_fce__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_fce__bindgen_ty_1)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).event) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_fce__bindgen_ty_1), - "::", - stringify!(event) - ) - ); -} -#[test] -fn bindgen_test_layout_ndb_fce() { - const UNINIT: ::std::mem::MaybeUninit<ndb_fce> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_fce>(), - 16usize, - concat!("Size of: ", stringify!(ndb_fce)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_fce>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_fce)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).evtype) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_fce), - "::", - stringify!(evtype) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_tce { - pub evtype: tce_type, - pub subid: *const ::std::os::raw::c_char, - pub subid_len: ::std::os::raw::c_int, - pub __bindgen_anon_1: ndb_tce__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union ndb_tce__bindgen_ty_1 { - pub event: ndb_event, - pub command_result: ndb_command_result, -} -#[test] -fn bindgen_test_layout_ndb_tce__bindgen_ty_1() { - const UNINIT: ::std::mem::MaybeUninit<ndb_tce__bindgen_ty_1> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_tce__bindgen_ty_1>(), - 24usize, - concat!("Size of: ", stringify!(ndb_tce__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_tce__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_tce__bindgen_ty_1)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).event) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_tce__bindgen_ty_1), - "::", - stringify!(event) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).command_result) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_tce__bindgen_ty_1), - "::", - stringify!(command_result) - ) - ); -} -#[test] -fn bindgen_test_layout_ndb_tce() { - const UNINIT: ::std::mem::MaybeUninit<ndb_tce> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_tce>(), - 48usize, - concat!("Size of: ", stringify!(ndb_tce)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_tce>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_tce)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).evtype) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_tce), - "::", - stringify!(evtype) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).subid) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_tce), - "::", - stringify!(subid) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).subid_len) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_tce), - "::", - stringify!(subid_len) - ) - ); -} -pub type ndb_ingest_filter_fn = ::std::option::Option< - unsafe extern "C" fn( - arg1: *mut ::std::os::raw::c_void, - arg2: *mut ndb_note, - ) -> ndb_ingest_filter_action, ->; -pub const ndb_filter_fieldtype_NDB_FILTER_IDS: ndb_filter_fieldtype = 1; -pub const ndb_filter_fieldtype_NDB_FILTER_AUTHORS: ndb_filter_fieldtype = 2; -pub const ndb_filter_fieldtype_NDB_FILTER_KINDS: ndb_filter_fieldtype = 3; -pub const ndb_filter_fieldtype_NDB_FILTER_TAGS: ndb_filter_fieldtype = 4; -pub const ndb_filter_fieldtype_NDB_FILTER_SINCE: ndb_filter_fieldtype = 5; -pub const ndb_filter_fieldtype_NDB_FILTER_UNTIL: ndb_filter_fieldtype = 6; -pub const ndb_filter_fieldtype_NDB_FILTER_LIMIT: ndb_filter_fieldtype = 7; -pub type ndb_filter_fieldtype = ::std::os::raw::c_uint; -pub const ndb_generic_element_type_NDB_ELEMENT_UNKNOWN: ndb_generic_element_type = 0; -pub const ndb_generic_element_type_NDB_ELEMENT_STRING: ndb_generic_element_type = 1; -pub const ndb_generic_element_type_NDB_ELEMENT_ID: ndb_generic_element_type = 2; -pub const ndb_generic_element_type_NDB_ELEMENT_INT: ndb_generic_element_type = 3; -pub type ndb_generic_element_type = ::std::os::raw::c_uint; -pub const ndb_search_order_NDB_ORDER_DESCENDING: ndb_search_order = 0; -pub const ndb_search_order_NDB_ORDER_ASCENDING: ndb_search_order = 1; -pub type ndb_search_order = ::std::os::raw::c_uint; -pub const ndb_dbs_NDB_DB_NOTE: ndb_dbs = 0; -pub const ndb_dbs_NDB_DB_META: ndb_dbs = 1; -pub const ndb_dbs_NDB_DB_PROFILE: ndb_dbs = 2; -pub const ndb_dbs_NDB_DB_NOTE_ID: ndb_dbs = 3; -pub const ndb_dbs_NDB_DB_PROFILE_PK: ndb_dbs = 4; -pub const ndb_dbs_NDB_DB_NDB_META: ndb_dbs = 5; -pub const ndb_dbs_NDB_DB_PROFILE_SEARCH: ndb_dbs = 6; -pub const ndb_dbs_NDB_DB_PROFILE_LAST_FETCH: ndb_dbs = 7; -pub const ndb_dbs_NDB_DB_NOTE_KIND: ndb_dbs = 8; -pub const ndb_dbs_NDB_DB_NOTE_TEXT: ndb_dbs = 9; -pub const ndb_dbs_NDB_DB_NOTE_BLOCKS: ndb_dbs = 10; -pub const ndb_dbs_NDB_DB_NOTE_TAGS: ndb_dbs = 11; -pub const ndb_dbs_NDB_DBS: ndb_dbs = 12; -pub type ndb_dbs = ::std::os::raw::c_uint; -pub const ndb_common_kind_NDB_CKIND_PROFILE: ndb_common_kind = 0; -pub const ndb_common_kind_NDB_CKIND_TEXT: ndb_common_kind = 1; -pub const ndb_common_kind_NDB_CKIND_CONTACTS: ndb_common_kind = 2; -pub const ndb_common_kind_NDB_CKIND_DM: ndb_common_kind = 3; -pub const ndb_common_kind_NDB_CKIND_DELETE: ndb_common_kind = 4; -pub const ndb_common_kind_NDB_CKIND_REPOST: ndb_common_kind = 5; -pub const ndb_common_kind_NDB_CKIND_REACTION: ndb_common_kind = 6; -pub const ndb_common_kind_NDB_CKIND_ZAP: ndb_common_kind = 7; -pub const ndb_common_kind_NDB_CKIND_ZAP_REQUEST: ndb_common_kind = 8; -pub const ndb_common_kind_NDB_CKIND_NWC_REQUEST: ndb_common_kind = 9; -pub const ndb_common_kind_NDB_CKIND_NWC_RESPONSE: ndb_common_kind = 10; -pub const ndb_common_kind_NDB_CKIND_HTTP_AUTH: ndb_common_kind = 11; -pub const ndb_common_kind_NDB_CKIND_LIST: ndb_common_kind = 12; -pub const ndb_common_kind_NDB_CKIND_LONGFORM: ndb_common_kind = 13; -pub const ndb_common_kind_NDB_CKIND_STATUS: ndb_common_kind = 14; -pub const ndb_common_kind_NDB_CKIND_COUNT: ndb_common_kind = 15; -pub type ndb_common_kind = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_builder { - pub mem: cursor, - pub note_cur: cursor, - pub strings: cursor, - pub str_indices: cursor, - pub note: *mut ndb_note, - pub current_tag: *mut ndb_tag, -} -#[test] -fn bindgen_test_layout_ndb_builder() { - const UNINIT: ::std::mem::MaybeUninit<ndb_builder> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_builder>(), - 112usize, - concat!("Size of: ", stringify!(ndb_builder)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_builder>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_builder)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mem) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_builder), - "::", - stringify!(mem) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note_cur) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ndb_builder), - "::", - stringify!(note_cur) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).strings) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(ndb_builder), - "::", - stringify!(strings) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_indices) as usize - ptr as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(ndb_builder), - "::", - stringify!(str_indices) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(ndb_builder), - "::", - stringify!(note) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).current_tag) as usize - ptr as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(ndb_builder), - "::", - stringify!(current_tag) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_iterator { - pub note: *mut ndb_note, - pub tag: *mut ndb_tag, - pub index: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_iterator() { - const UNINIT: ::std::mem::MaybeUninit<ndb_iterator> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_iterator>(), - 24usize, - concat!("Size of: ", stringify!(ndb_iterator)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_iterator>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_iterator)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_iterator), - "::", - stringify!(note) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_iterator), - "::", - stringify!(tag) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).index) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_iterator), - "::", - stringify!(index) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_filter_string { - pub string: *const ::std::os::raw::c_char, - pub len: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_filter_string() { - const UNINIT: ::std::mem::MaybeUninit<ndb_filter_string> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_filter_string>(), - 16usize, - concat!("Size of: ", stringify!(ndb_filter_string)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_filter_string>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_filter_string)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).string) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_string), - "::", - stringify!(string) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_string), - "::", - stringify!(len) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union ndb_filter_element { - pub string: ndb_filter_string, - pub id: *const ::std::os::raw::c_uchar, - pub integer: u64, -} -#[test] -fn bindgen_test_layout_ndb_filter_element() { - const UNINIT: ::std::mem::MaybeUninit<ndb_filter_element> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_filter_element>(), - 16usize, - concat!("Size of: ", stringify!(ndb_filter_element)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_filter_element>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_filter_element)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).string) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_element), - "::", - stringify!(string) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_element), - "::", - stringify!(id) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).integer) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_element), - "::", - stringify!(integer) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_filter_field { - pub type_: ndb_filter_fieldtype, - pub elem_type: ndb_generic_element_type, - pub tag: ::std::os::raw::c_char, -} -#[test] -fn bindgen_test_layout_ndb_filter_field() { - const UNINIT: ::std::mem::MaybeUninit<ndb_filter_field> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_filter_field>(), - 12usize, - concat!("Size of: ", stringify!(ndb_filter_field)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_filter_field>(), - 4usize, - concat!("Alignment of ", stringify!(ndb_filter_field)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_field), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).elem_type) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_field), - "::", - stringify!(elem_type) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_field), - "::", - stringify!(tag) - ) - ); -} -#[repr(C)] -#[derive(Debug)] -pub struct ndb_filter_elements { - pub field: ndb_filter_field, - pub count: ::std::os::raw::c_int, - pub elements: __IncompleteArrayField<u64>, -} -#[test] -fn bindgen_test_layout_ndb_filter_elements() { - const UNINIT: ::std::mem::MaybeUninit<ndb_filter_elements> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_filter_elements>(), - 16usize, - concat!("Size of: ", stringify!(ndb_filter_elements)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_filter_elements>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_filter_elements)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_elements), - "::", - stringify!(field) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_elements), - "::", - stringify!(count) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter_elements), - "::", - stringify!(elements) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_filter { - pub elem_buf: cursor, - pub data_buf: cursor, - pub num_elements: ::std::os::raw::c_int, - pub finalized: ::std::os::raw::c_int, - pub current: ::std::os::raw::c_int, - pub elements: [::std::os::raw::c_int; 7usize], -} -#[test] -fn bindgen_test_layout_ndb_filter() { - const UNINIT: ::std::mem::MaybeUninit<ndb_filter> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_filter>(), - 88usize, - concat!("Size of: ", stringify!(ndb_filter)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_filter>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_filter)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).elem_buf) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter), - "::", - stringify!(elem_buf) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).data_buf) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter), - "::", - stringify!(data_buf) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).num_elements) as usize - ptr as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter), - "::", - stringify!(num_elements) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).finalized) as usize - ptr as usize }, - 52usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter), - "::", - stringify!(finalized) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).current) as usize - ptr as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter), - "::", - stringify!(current) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize }, - 60usize, - concat!( - "Offset of field: ", - stringify!(ndb_filter), - "::", - stringify!(elements) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_config { - pub flags: ::std::os::raw::c_int, - pub ingester_threads: ::std::os::raw::c_int, - pub mapsize: usize, - pub filter_context: *mut ::std::os::raw::c_void, - pub ingest_filter: ndb_ingest_filter_fn, - pub sub_cb_ctx: *mut ::std::os::raw::c_void, - pub sub_cb: ndb_sub_fn, -} -#[test] -fn bindgen_test_layout_ndb_config() { - const UNINIT: ::std::mem::MaybeUninit<ndb_config> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_config>(), - 48usize, - concat!("Size of: ", stringify!(ndb_config)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_config>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_config)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(flags) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ingester_threads) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(ingester_threads) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mapsize) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(mapsize) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).filter_context) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(filter_context) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).ingest_filter) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(ingest_filter) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).sub_cb_ctx) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(sub_cb_ctx) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).sub_cb) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(ndb_config), - "::", - stringify!(sub_cb) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_text_search_config { - pub order: ndb_search_order, - pub limit: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_text_search_config() { - const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_config> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_text_search_config>(), - 8usize, - concat!("Size of: ", stringify!(ndb_text_search_config)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_text_search_config>(), - 4usize, - concat!("Alignment of ", stringify!(ndb_text_search_config)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).order) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_config), - "::", - stringify!(order) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).limit) as usize - ptr as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_config), - "::", - stringify!(limit) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_stat_counts { - pub key_size: usize, - pub value_size: usize, - pub count: usize, -} -#[test] -fn bindgen_test_layout_ndb_stat_counts() { - const UNINIT: ::std::mem::MaybeUninit<ndb_stat_counts> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_stat_counts>(), - 24usize, - concat!("Size of: ", stringify!(ndb_stat_counts)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_stat_counts>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_stat_counts)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).key_size) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_stat_counts), - "::", - stringify!(key_size) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).value_size) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_stat_counts), - "::", - stringify!(value_size) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_stat_counts), - "::", - stringify!(count) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_stat { - pub dbs: [ndb_stat_counts; 12usize], - pub common_kinds: [ndb_stat_counts; 15usize], - pub other_kinds: ndb_stat_counts, -} -#[test] -fn bindgen_test_layout_ndb_stat() { - const UNINIT: ::std::mem::MaybeUninit<ndb_stat> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_stat>(), - 672usize, - concat!("Size of: ", stringify!(ndb_stat)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_stat>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_stat)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).dbs) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_stat), - "::", - stringify!(dbs) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).common_kinds) as usize - ptr as usize }, - 288usize, - concat!( - "Offset of field: ", - stringify!(ndb_stat), - "::", - stringify!(common_kinds) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).other_kinds) as usize - ptr as usize }, - 648usize, - concat!( - "Offset of field: ", - stringify!(ndb_stat), - "::", - stringify!(other_kinds) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_text_search_key { - pub str_len: ::std::os::raw::c_int, - pub str_: *const ::std::os::raw::c_char, - pub timestamp: u64, - pub note_id: u64, - pub word_index: u64, -} -#[test] -fn bindgen_test_layout_ndb_text_search_key() { - const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_key> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_text_search_key>(), - 40usize, - concat!("Size of: ", stringify!(ndb_text_search_key)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_text_search_key>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_text_search_key)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_len) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_key), - "::", - stringify!(str_len) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_key), - "::", - stringify!(str_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_key), - "::", - stringify!(timestamp) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note_id) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_key), - "::", - stringify!(note_id) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).word_index) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_key), - "::", - stringify!(word_index) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_text_search_result { - pub key: ndb_text_search_key, - pub prefix_chars: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_text_search_result() { - const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_result> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_text_search_result>(), - 48usize, - concat!("Size of: ", stringify!(ndb_text_search_result)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_text_search_result>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_text_search_result)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_result), - "::", - stringify!(key) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).prefix_chars) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_result), - "::", - stringify!(prefix_chars) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_text_search_results { - pub results: [ndb_text_search_result; 128usize], - pub num_results: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_text_search_results() { - const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_results> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_text_search_results>(), - 6152usize, - concat!("Size of: ", stringify!(ndb_text_search_results)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_text_search_results>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_text_search_results)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).results) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_results), - "::", - stringify!(results) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).num_results) as usize - ptr as usize }, - 6144usize, - concat!( - "Offset of field: ", - stringify!(ndb_text_search_results), - "::", - stringify!(num_results) - ) - ); -} -pub const ndb_block_type_BLOCK_HASHTAG: ndb_block_type = 1; -pub const ndb_block_type_BLOCK_TEXT: ndb_block_type = 2; -pub const ndb_block_type_BLOCK_MENTION_INDEX: ndb_block_type = 3; -pub const ndb_block_type_BLOCK_MENTION_BECH32: ndb_block_type = 4; -pub const ndb_block_type_BLOCK_URL: ndb_block_type = 5; -pub const ndb_block_type_BLOCK_INVOICE: ndb_block_type = 6; -pub type ndb_block_type = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_relays { - pub relays: [ndb_str_block; 24usize], - pub num_relays: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_ndb_relays() { - const UNINIT: ::std::mem::MaybeUninit<ndb_relays> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_relays>(), - 392usize, - concat!("Size of: ", stringify!(ndb_relays)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_relays>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_relays)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_relays), - "::", - stringify!(relays) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).num_relays) as usize - ptr as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(ndb_relays), - "::", - stringify!(num_relays) - ) - ); -} -pub const nostr_bech32_type_NOSTR_BECH32_NOTE: nostr_bech32_type = 1; -pub const nostr_bech32_type_NOSTR_BECH32_NPUB: nostr_bech32_type = 2; -pub const nostr_bech32_type_NOSTR_BECH32_NPROFILE: nostr_bech32_type = 3; -pub const nostr_bech32_type_NOSTR_BECH32_NEVENT: nostr_bech32_type = 4; -pub const nostr_bech32_type_NOSTR_BECH32_NRELAY: nostr_bech32_type = 5; -pub const nostr_bech32_type_NOSTR_BECH32_NADDR: nostr_bech32_type = 6; -pub const nostr_bech32_type_NOSTR_BECH32_NSEC: nostr_bech32_type = 7; -pub type nostr_bech32_type = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_note { - pub event_id: *const ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_bech32_note() { - const UNINIT: ::std::mem::MaybeUninit<bech32_note> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_note>(), - 8usize, - concat!("Size of: ", stringify!(bech32_note)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_note>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_note)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).event_id) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_note), - "::", - stringify!(event_id) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_npub { - pub pubkey: *const ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_bech32_npub() { - const UNINIT: ::std::mem::MaybeUninit<bech32_npub> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_npub>(), - 8usize, - concat!("Size of: ", stringify!(bech32_npub)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_npub>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_npub)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_npub), - "::", - stringify!(pubkey) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_nsec { - pub nsec: *const ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_bech32_nsec() { - const UNINIT: ::std::mem::MaybeUninit<bech32_nsec> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_nsec>(), - 8usize, - concat!("Size of: ", stringify!(bech32_nsec)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_nsec>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_nsec)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsec) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_nsec), - "::", - stringify!(nsec) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_nevent { - pub relays: ndb_relays, - pub event_id: *const ::std::os::raw::c_uchar, - pub pubkey: *const ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_bech32_nevent() { - const UNINIT: ::std::mem::MaybeUninit<bech32_nevent> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_nevent>(), - 408usize, - concat!("Size of: ", stringify!(bech32_nevent)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_nevent>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_nevent)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_nevent), - "::", - stringify!(relays) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).event_id) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(bech32_nevent), - "::", - stringify!(event_id) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, - 400usize, - concat!( - "Offset of field: ", - stringify!(bech32_nevent), - "::", - stringify!(pubkey) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_nprofile { - pub relays: ndb_relays, - pub pubkey: *const ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_bech32_nprofile() { - const UNINIT: ::std::mem::MaybeUninit<bech32_nprofile> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_nprofile>(), - 400usize, - concat!("Size of: ", stringify!(bech32_nprofile)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_nprofile>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_nprofile)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_nprofile), - "::", - stringify!(relays) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(bech32_nprofile), - "::", - stringify!(pubkey) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_naddr { - pub relays: ndb_relays, - pub identifier: ndb_str_block, - pub pubkey: *const ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_bech32_naddr() { - const UNINIT: ::std::mem::MaybeUninit<bech32_naddr> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_naddr>(), - 416usize, - concat!("Size of: ", stringify!(bech32_naddr)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_naddr>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_naddr)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_naddr), - "::", - stringify!(relays) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).identifier) as usize - ptr as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(bech32_naddr), - "::", - stringify!(identifier) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(bech32_naddr), - "::", - stringify!(pubkey) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct bech32_nrelay { - pub relay: ndb_str_block, -} -#[test] -fn bindgen_test_layout_bech32_nrelay() { - const UNINIT: ::std::mem::MaybeUninit<bech32_nrelay> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<bech32_nrelay>(), - 16usize, - concat!("Size of: ", stringify!(bech32_nrelay)) - ); - assert_eq!( - ::std::mem::align_of::<bech32_nrelay>(), - 8usize, - concat!("Alignment of ", stringify!(bech32_nrelay)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).relay) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(bech32_nrelay), - "::", - stringify!(relay) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct nostr_bech32 { - pub type_: nostr_bech32_type, - pub __bindgen_anon_1: nostr_bech32__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union nostr_bech32__bindgen_ty_1 { - pub note: bech32_note, - pub npub: bech32_npub, - pub nsec: bech32_nsec, - pub nevent: bech32_nevent, - pub nprofile: bech32_nprofile, - pub naddr: bech32_naddr, - pub nrelay: bech32_nrelay, -} -#[test] -fn bindgen_test_layout_nostr_bech32__bindgen_ty_1() { - const UNINIT: ::std::mem::MaybeUninit<nostr_bech32__bindgen_ty_1> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<nostr_bech32__bindgen_ty_1>(), - 416usize, - concat!("Size of: ", stringify!(nostr_bech32__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<nostr_bech32__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(nostr_bech32__bindgen_ty_1)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(note) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).npub) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(npub) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nsec) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(nsec) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nevent) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(nevent) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nprofile) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(nprofile) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).naddr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(naddr) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).nrelay) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32__bindgen_ty_1), - "::", - stringify!(nrelay) - ) - ); -} -#[test] -fn bindgen_test_layout_nostr_bech32() { - const UNINIT: ::std::mem::MaybeUninit<nostr_bech32> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<nostr_bech32>(), - 424usize, - concat!("Size of: ", stringify!(nostr_bech32)) - ); - assert_eq!( - ::std::mem::align_of::<nostr_bech32>(), - 8usize, - concat!("Alignment of ", stringify!(nostr_bech32)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(nostr_bech32), - "::", - stringify!(type_) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_mention_bech32_block { - pub str_: ndb_str_block, - pub bech32: nostr_bech32, -} -#[test] -fn bindgen_test_layout_ndb_mention_bech32_block() { - const UNINIT: ::std::mem::MaybeUninit<ndb_mention_bech32_block> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_mention_bech32_block>(), - 440usize, - concat!("Size of: ", stringify!(ndb_mention_bech32_block)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_mention_bech32_block>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_mention_bech32_block)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_mention_bech32_block), - "::", - stringify!(str_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).bech32) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_mention_bech32_block), - "::", - stringify!(bech32) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_invoice { - pub version: ::std::os::raw::c_uchar, - pub amount: u64, - pub timestamp: u64, - pub expiry: u64, - pub description: *mut ::std::os::raw::c_char, - pub description_hash: *mut ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_ndb_invoice() { - const UNINIT: ::std::mem::MaybeUninit<ndb_invoice> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_invoice>(), - 48usize, - concat!("Size of: ", stringify!(ndb_invoice)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_invoice>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_invoice)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice), - "::", - stringify!(version) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).amount) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice), - "::", - stringify!(amount) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice), - "::", - stringify!(timestamp) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).expiry) as usize - ptr as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice), - "::", - stringify!(expiry) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).description) as usize - ptr as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice), - "::", - stringify!(description) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).description_hash) as usize - ptr as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice), - "::", - stringify!(description_hash) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_invoice_block { - pub invstr: ndb_str_block, - pub invoice: ndb_invoice, -} -#[test] -fn bindgen_test_layout_ndb_invoice_block() { - const UNINIT: ::std::mem::MaybeUninit<ndb_invoice_block> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_invoice_block>(), - 64usize, - concat!("Size of: ", stringify!(ndb_invoice_block)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_invoice_block>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_invoice_block)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).invstr) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice_block), - "::", - stringify!(invstr) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).invoice) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_invoice_block), - "::", - stringify!(invoice) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_block { - pub type_: ndb_block_type, - pub block: ndb_block__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union ndb_block__bindgen_ty_1 { - pub str_: ndb_str_block, - pub invoice: ndb_invoice_block, - pub mention_bech32: ndb_mention_bech32_block, - pub mention_index: u32, -} -#[test] -fn bindgen_test_layout_ndb_block__bindgen_ty_1() { - const UNINIT: ::std::mem::MaybeUninit<ndb_block__bindgen_ty_1> = - ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_block__bindgen_ty_1>(), - 440usize, - concat!("Size of: ", stringify!(ndb_block__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_block__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_block__bindgen_ty_1)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block__bindgen_ty_1), - "::", - stringify!(str_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).invoice) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block__bindgen_ty_1), - "::", - stringify!(invoice) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mention_bech32) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block__bindgen_ty_1), - "::", - stringify!(mention_bech32) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).mention_index) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block__bindgen_ty_1), - "::", - stringify!(mention_index) - ) - ); -} -#[test] -fn bindgen_test_layout_ndb_block() { - const UNINIT: ::std::mem::MaybeUninit<ndb_block> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_block>(), - 448usize, - concat!("Size of: ", stringify!(ndb_block)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_block>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_block)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_block), - "::", - stringify!(block) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct ndb_block_iterator { - pub content: *const ::std::os::raw::c_char, - pub blocks: *mut ndb_blocks, - pub block: ndb_block, - pub p: *mut ::std::os::raw::c_uchar, -} -#[test] -fn bindgen_test_layout_ndb_block_iterator() { - const UNINIT: ::std::mem::MaybeUninit<ndb_block_iterator> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_block_iterator>(), - 472usize, - concat!("Size of: ", stringify!(ndb_block_iterator)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_block_iterator>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_block_iterator)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).content) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_block_iterator), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).blocks) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_block_iterator), - "::", - stringify!(blocks) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_block_iterator), - "::", - stringify!(block) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize }, - 464usize, - concat!( - "Offset of field: ", - stringify!(ndb_block_iterator), - "::", - stringify!(p) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_query_result { - pub note: *mut ndb_note, - pub note_size: u64, - pub note_id: u64, -} -#[test] -fn bindgen_test_layout_ndb_query_result() { - const UNINIT: ::std::mem::MaybeUninit<ndb_query_result> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_query_result>(), - 24usize, - concat!("Size of: ", stringify!(ndb_query_result)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_query_result>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_query_result)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_query_result), - "::", - stringify!(note) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note_size) as usize - ptr as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ndb_query_result), - "::", - stringify!(note_size) - ) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).note_id) as usize - ptr as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(ndb_query_result), - "::", - stringify!(note_id) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ndb_query_results { - pub cur: cursor, -} -#[test] -fn bindgen_test_layout_ndb_query_results() { - const UNINIT: ::std::mem::MaybeUninit<ndb_query_results> = ::std::mem::MaybeUninit::uninit(); - let ptr = UNINIT.as_ptr(); - assert_eq!( - ::std::mem::size_of::<ndb_query_results>(), - 24usize, - concat!("Size of: ", stringify!(ndb_query_results)) - ); - assert_eq!( - ::std::mem::align_of::<ndb_query_results>(), - 8usize, - concat!("Alignment of ", stringify!(ndb_query_results)) - ); - assert_eq!( - unsafe { ::std::ptr::addr_of!((*ptr).cur) as usize - ptr as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ndb_query_results), - "::", - stringify!(cur) - ) - ); -} -extern "C" { - pub fn ndb_default_config(arg1: *mut ndb_config); -} -extern "C" { - pub fn ndb_config_set_ingest_threads(config: *mut ndb_config, threads: ::std::os::raw::c_int); -} -extern "C" { - pub fn ndb_config_set_flags(config: *mut ndb_config, flags: ::std::os::raw::c_int); -} -extern "C" { - pub fn ndb_config_set_mapsize(config: *mut ndb_config, mapsize: usize); -} -extern "C" { - pub fn ndb_config_set_ingest_filter( - config: *mut ndb_config, - fn_: ndb_ingest_filter_fn, - arg1: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn ndb_config_set_subscription_callback( - config: *mut ndb_config, - fn_: ndb_sub_fn, - ctx: *mut ::std::os::raw::c_void, - ); -} -extern "C" { - pub fn ndb_calculate_id( - note: *mut ndb_note, - buf: *mut ::std::os::raw::c_uchar, - buflen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_sign_id( - keypair: *mut ndb_keypair, - id: *mut ::std::os::raw::c_uchar, - sig: *mut ::std::os::raw::c_uchar, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_create_keypair(key: *mut ndb_keypair) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_decode_key( - secstr: *const ::std::os::raw::c_char, - keypair: *mut ndb_keypair, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_note_verify( - secp_ctx: *mut ::std::os::raw::c_void, - pubkey: *mut ::std::os::raw::c_uchar, - id: *mut ::std::os::raw::c_uchar, - signature: *mut ::std::os::raw::c_uchar, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_init( - ndb: *mut *mut ndb, - dbdir: *const ::std::os::raw::c_char, - arg1: *const ndb_config, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_db_version(ndb: *mut ndb) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_process_event( - arg1: *mut ndb, - json: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_process_events( - arg1: *mut ndb, - ldjson: *const ::std::os::raw::c_char, - len: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_process_events_stream(arg1: *mut ndb, fp: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_process_client_event( - arg1: *mut ndb, - json: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_process_client_events( - arg1: *mut ndb, - json: *const ::std::os::raw::c_char, - len: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_begin_query(arg1: *mut ndb, arg2: *mut ndb_txn) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_search_profile( - txn: *mut ndb_txn, - search: *mut ndb_search, - query: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_search_profile_next(search: *mut ndb_search) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_search_profile_end(search: *mut ndb_search); -} -extern "C" { - pub fn ndb_end_query(arg1: *mut ndb_txn) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_write_last_profile_fetch( - ndb: *mut ndb, - pubkey: *const ::std::os::raw::c_uchar, - fetched_at: u64, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_read_last_profile_fetch( - txn: *mut ndb_txn, - pubkey: *const ::std::os::raw::c_uchar, - ) -> u64; -} -extern "C" { - pub fn ndb_get_profile_by_pubkey( - txn: *mut ndb_txn, - pubkey: *const ::std::os::raw::c_uchar, - len: *mut usize, - primkey: *mut u64, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn ndb_get_profile_by_key( - txn: *mut ndb_txn, - key: u64, - len: *mut usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn ndb_get_notekey_by_id(txn: *mut ndb_txn, id: *const ::std::os::raw::c_uchar) -> u64; -} -extern "C" { - pub fn ndb_get_profilekey_by_pubkey( - txn: *mut ndb_txn, - id: *const ::std::os::raw::c_uchar, - ) -> u64; -} -extern "C" { - pub fn ndb_get_note_by_id( - txn: *mut ndb_txn, - id: *const ::std::os::raw::c_uchar, - len: *mut usize, - primkey: *mut u64, - ) -> *mut ndb_note; -} -extern "C" { - pub fn ndb_get_note_by_key(txn: *mut ndb_txn, key: u64, len: *mut usize) -> *mut ndb_note; -} -extern "C" { - pub fn ndb_get_note_meta( - txn: *mut ndb_txn, - id: *const ::std::os::raw::c_uchar, - len: *mut usize, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn ndb_destroy(arg1: *mut ndb); -} -extern "C" { - pub fn ndb_parse_json_note( - arg1: *mut ndb_json_parser, - arg2: *mut *mut ndb_note, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_client_event_from_json( - json: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - fce: *mut ndb_fce, - buf: *mut ::std::os::raw::c_uchar, - bufsize: ::std::os::raw::c_int, - cb: *mut ndb_id_cb, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_ws_event_from_json( - json: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - tce: *mut ndb_tce, - buf: *mut ::std::os::raw::c_uchar, - bufsize: ::std::os::raw::c_int, - arg1: *mut ndb_id_cb, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_note_from_json( - json: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - arg1: *mut *mut ndb_note, - buf: *mut ::std::os::raw::c_uchar, - buflen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_builder_init( - builder: *mut ndb_builder, - buf: *mut ::std::os::raw::c_uchar, - bufsize: usize, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_builder_finalize( - builder: *mut ndb_builder, - note: *mut *mut ndb_note, - privkey: *mut ndb_keypair, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_builder_set_content( - builder: *mut ndb_builder, - content: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_builder_set_created_at(builder: *mut ndb_builder, created_at: u64); -} -extern "C" { - pub fn ndb_builder_set_sig(builder: *mut ndb_builder, sig: *mut ::std::os::raw::c_uchar); -} -extern "C" { - pub fn ndb_builder_set_pubkey(builder: *mut ndb_builder, pubkey: *mut ::std::os::raw::c_uchar); -} -extern "C" { - pub fn ndb_builder_set_id(builder: *mut ndb_builder, id: *mut ::std::os::raw::c_uchar); -} -extern "C" { - pub fn ndb_builder_set_kind(builder: *mut ndb_builder, kind: u32); -} -extern "C" { - pub fn ndb_builder_new_tag(builder: *mut ndb_builder) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_builder_push_tag_str( - builder: *mut ndb_builder, - str_: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_init(arg1: *mut ndb_filter) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_add_id_element( - arg1: *mut ndb_filter, - id: *const ::std::os::raw::c_uchar, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_add_int_element(arg1: *mut ndb_filter, integer: u64) - -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_add_str_element( - arg1: *mut ndb_filter, - str_: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_from_json( - arg1: *const ::std::os::raw::c_char, - len: ::std::os::raw::c_int, - filter: *mut ndb_filter, - buf: *mut ::std::os::raw::c_uchar, - bufsize: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_get_id_element( - arg1: *const ndb_filter, - arg2: *const ndb_filter_elements, - index: ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_uchar; -} -extern "C" { - pub fn ndb_filter_get_string_element( - arg1: *const ndb_filter, - arg2: *const ndb_filter_elements, - index: ::std::os::raw::c_int, - ) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn ndb_filter_get_int_element( - arg1: *const ndb_filter_elements, - index: ::std::os::raw::c_int, - ) -> u64; -} -extern "C" { - pub fn ndb_filter_get_int_element_ptr( - arg1: *mut ndb_filter_elements, - index: ::std::os::raw::c_int, - ) -> *mut u64; -} -extern "C" { - pub fn ndb_filter_current_element(arg1: *const ndb_filter) -> *mut ndb_filter_elements; -} -extern "C" { - pub fn ndb_filter_get_elements( - arg1: *const ndb_filter, - arg2: ::std::os::raw::c_int, - ) -> *mut ndb_filter_elements; -} -extern "C" { - pub fn ndb_filter_start_field( - arg1: *mut ndb_filter, - arg2: ndb_filter_fieldtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_start_tag_field( - arg1: *mut ndb_filter, - tag: ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_matches(arg1: *mut ndb_filter, arg2: *mut ndb_note) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_clone(dst: *mut ndb_filter, src: *mut ndb_filter) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_end(arg1: *mut ndb_filter) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_filter_end_field(arg1: *mut ndb_filter); -} -extern "C" { - pub fn ndb_filter_destroy(arg1: *mut ndb_filter); -} -extern "C" { - pub fn ndb_filter_json( - arg1: *const ndb_filter, - buf: *mut ::std::os::raw::c_char, - buflen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_subscribe( - arg1: *mut ndb, - arg2: *mut ndb_filter, - num_filters: ::std::os::raw::c_int, - ) -> u64; -} -extern "C" { - pub fn ndb_wait_for_notes( - arg1: *mut ndb, - subid: u64, - note_ids: *mut u64, - note_id_capacity: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_poll_for_notes( - arg1: *mut ndb, - subid: u64, - note_ids: *mut u64, - note_id_capacity: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_unsubscribe(arg1: *mut ndb, subid: u64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_num_subscriptions(arg1: *mut ndb) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_text_search( - txn: *mut ndb_txn, - query: *const ::std::os::raw::c_char, - arg1: *mut ndb_text_search_results, - arg2: *mut ndb_text_search_config, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_default_text_search_config(arg1: *mut ndb_text_search_config); -} -extern "C" { - pub fn ndb_text_search_config_set_order( - arg1: *mut ndb_text_search_config, - arg2: ndb_search_order, - ); -} -extern "C" { - pub fn ndb_text_search_config_set_limit( - arg1: *mut ndb_text_search_config, - limit: ::std::os::raw::c_int, - ); -} -extern "C" { - pub fn ndb_query( - txn: *mut ndb_txn, - filters: *mut ndb_filter, - num_filters: ::std::os::raw::c_int, - results: *mut ndb_query_result, - result_capacity: ::std::os::raw::c_int, - count: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_stat(ndb: *mut ndb, stat: *mut ndb_stat) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_stat_counts_init(counts: *mut ndb_stat_counts); -} -extern "C" { - pub fn ndb_note_content(note: *mut ndb_note) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn ndb_note_str(note: *mut ndb_note, pstr: *mut ndb_packed_str) -> ndb_str; -} -extern "C" { - pub fn ndb_note_content_length(note: *mut ndb_note) -> u32; -} -extern "C" { - pub fn ndb_note_created_at(note: *mut ndb_note) -> u32; -} -extern "C" { - pub fn ndb_note_kind(note: *mut ndb_note) -> u32; -} -extern "C" { - pub fn ndb_note_id(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; -} -extern "C" { - pub fn ndb_note_pubkey(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; -} -extern "C" { - pub fn ndb_note_sig(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; -} -extern "C" { - pub fn _ndb_note_set_kind(note: *mut ndb_note, kind: u32); -} -extern "C" { - pub fn ndb_note_tags(note: *mut ndb_note) -> *mut ndb_tags; -} -extern "C" { - pub fn ndb_str_len(str_: *mut ndb_str) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = " write the note as json to a buffer"] - pub fn ndb_note_json( - arg1: *mut ndb_note, - buf: *mut ::std::os::raw::c_char, - buflen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_tags_iterate_start(note: *mut ndb_note, iter: *mut ndb_iterator); -} -extern "C" { - pub fn ndb_tags_count(arg1: *mut ndb_tags) -> u16; -} -extern "C" { - pub fn ndb_tag_count(arg1: *mut ndb_tag) -> u16; -} -extern "C" { - pub fn ndb_tags_iterate_next(iter: *mut ndb_iterator) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_iter_tag_str(iter: *mut ndb_iterator, ind: ::std::os::raw::c_int) -> ndb_str; -} -extern "C" { - pub fn ndb_tag_str( - note: *mut ndb_note, - tag: *mut ndb_tag, - ind: ::std::os::raw::c_int, - ) -> ndb_str; -} -extern "C" { - pub fn ndb_db_name(db: ndb_dbs) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn ndb_kind_name(ck: ndb_common_kind) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn ndb_kind_to_common_kind(kind: ::std::os::raw::c_int) -> ndb_common_kind; -} -extern "C" { - pub fn ndb_parse_content( - buf: *mut ::std::os::raw::c_uchar, - buf_size: ::std::os::raw::c_int, - content: *const ::std::os::raw::c_char, - content_len: ::std::os::raw::c_int, - blocks_p: *mut *mut ndb_blocks, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_get_block_type(block: *mut ndb_block) -> ndb_block_type; -} -extern "C" { - pub fn ndb_blocks_flags(block: *mut ndb_blocks) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ndb_blocks_total_size(blocks: *mut ndb_blocks) -> usize; -} -extern "C" { - pub fn ndb_blocks_word_count(blocks: *mut ndb_blocks) -> ::std::os::raw::c_int; -} -extern "C" { - #[doc = " Free blocks if they are owned, safe to call on unowned blocks as well."] - pub fn ndb_blocks_free(blocks: *mut ndb_blocks); -} -extern "C" { - pub fn ndb_get_blocks_by_key( - ndb: *mut ndb, - txn: *mut ndb_txn, - note_key: u64, - ) -> *mut ndb_blocks; -} -extern "C" { - pub fn ndb_blocks_iterate_start( - arg1: *const ::std::os::raw::c_char, - arg2: *mut ndb_blocks, - arg3: *mut ndb_block_iterator, - ); -} -extern "C" { - pub fn ndb_blocks_iterate_next(arg1: *mut ndb_block_iterator) -> *mut ndb_block; -} -extern "C" { - pub fn ndb_block_str(arg1: *mut ndb_block) -> *mut ndb_str_block; -} -extern "C" { - pub fn ndb_str_block_ptr(arg1: *mut ndb_str_block) -> *const ::std::os::raw::c_char; -} -extern "C" { - pub fn ndb_str_block_len(arg1: *mut ndb_str_block) -> u32; -} -extern "C" { - pub fn ndb_bech32_block(block: *mut ndb_block) -> *mut nostr_bech32; -} -pub type __builtin_va_list = *mut ::std::os::raw::c_char; +#[cfg(not(target_os = "windows"))] +include! {"bindings_posix.rs"} diff --git a/src/bindings_posix.rs b/src/bindings_posix.rs @@ -0,0 +1,6064 @@ +/* automatically generated by rust-bindgen 0.69.2 */ + +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]); +impl<T> __IncompleteArrayField<T> { + #[inline] + pub const fn new() -> Self { + __IncompleteArrayField(::std::marker::PhantomData, []) + } + #[inline] + pub fn as_ptr(&self) -> *const T { + self as *const _ as *const T + } + #[inline] + pub fn as_mut_ptr(&mut self) -> *mut T { + self as *mut _ as *mut T + } + #[inline] + pub unsafe fn as_slice(&self, len: usize) -> &[T] { + ::std::slice::from_raw_parts(self.as_ptr(), len) + } + #[inline] + pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { + ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) + } +} +impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> { + fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + fmt.write_str("__IncompleteArrayField") + } +} +pub const __PRI_8_LENGTH_MODIFIER__: &[u8; 3] = b"hh\0"; +pub const __PRI_64_LENGTH_MODIFIER__: &[u8; 3] = b"ll\0"; +pub const __SCN_64_LENGTH_MODIFIER__: &[u8; 3] = b"ll\0"; +pub const __PRI_MAX_LENGTH_MODIFIER__: &[u8; 2] = b"j\0"; +pub const __SCN_MAX_LENGTH_MODIFIER__: &[u8; 2] = b"j\0"; +pub const PRId8: &[u8; 4] = b"hhd\0"; +pub const PRIi8: &[u8; 4] = b"hhi\0"; +pub const PRIo8: &[u8; 4] = b"hho\0"; +pub const PRIu8: &[u8; 4] = b"hhu\0"; +pub const PRIx8: &[u8; 4] = b"hhx\0"; +pub const PRIX8: &[u8; 4] = b"hhX\0"; +pub const PRId16: &[u8; 3] = b"hd\0"; +pub const PRIi16: &[u8; 3] = b"hi\0"; +pub const PRIo16: &[u8; 3] = b"ho\0"; +pub const PRIu16: &[u8; 3] = b"hu\0"; +pub const PRIx16: &[u8; 3] = b"hx\0"; +pub const PRIX16: &[u8; 3] = b"hX\0"; +pub const PRId32: &[u8; 2] = b"d\0"; +pub const PRIi32: &[u8; 2] = b"i\0"; +pub const PRIo32: &[u8; 2] = b"o\0"; +pub const PRIu32: &[u8; 2] = b"u\0"; +pub const PRIx32: &[u8; 2] = b"x\0"; +pub const PRIX32: &[u8; 2] = b"X\0"; +pub const PRId64: &[u8; 4] = b"lld\0"; +pub const PRIi64: &[u8; 4] = b"lli\0"; +pub const PRIo64: &[u8; 4] = b"llo\0"; +pub const PRIu64: &[u8; 4] = b"llu\0"; +pub const PRIx64: &[u8; 4] = b"llx\0"; +pub const PRIX64: &[u8; 4] = b"llX\0"; +pub const PRIdLEAST8: &[u8; 4] = b"hhd\0"; +pub const PRIiLEAST8: &[u8; 4] = b"hhi\0"; +pub const PRIoLEAST8: &[u8; 4] = b"hho\0"; +pub const PRIuLEAST8: &[u8; 4] = b"hhu\0"; +pub const PRIxLEAST8: &[u8; 4] = b"hhx\0"; +pub const PRIXLEAST8: &[u8; 4] = b"hhX\0"; +pub const PRIdLEAST16: &[u8; 3] = b"hd\0"; +pub const PRIiLEAST16: &[u8; 3] = b"hi\0"; +pub const PRIoLEAST16: &[u8; 3] = b"ho\0"; +pub const PRIuLEAST16: &[u8; 3] = b"hu\0"; +pub const PRIxLEAST16: &[u8; 3] = b"hx\0"; +pub const PRIXLEAST16: &[u8; 3] = b"hX\0"; +pub const PRIdLEAST32: &[u8; 2] = b"d\0"; +pub const PRIiLEAST32: &[u8; 2] = b"i\0"; +pub const PRIoLEAST32: &[u8; 2] = b"o\0"; +pub const PRIuLEAST32: &[u8; 2] = b"u\0"; +pub const PRIxLEAST32: &[u8; 2] = b"x\0"; +pub const PRIXLEAST32: &[u8; 2] = b"X\0"; +pub const PRIdLEAST64: &[u8; 4] = b"lld\0"; +pub const PRIiLEAST64: &[u8; 4] = b"lli\0"; +pub const PRIoLEAST64: &[u8; 4] = b"llo\0"; +pub const PRIuLEAST64: &[u8; 4] = b"llu\0"; +pub const PRIxLEAST64: &[u8; 4] = b"llx\0"; +pub const PRIXLEAST64: &[u8; 4] = b"llX\0"; +pub const PRIdFAST8: &[u8; 4] = b"hhd\0"; +pub const PRIiFAST8: &[u8; 4] = b"hhi\0"; +pub const PRIoFAST8: &[u8; 4] = b"hho\0"; +pub const PRIuFAST8: &[u8; 4] = b"hhu\0"; +pub const PRIxFAST8: &[u8; 4] = b"hhx\0"; +pub const PRIXFAST8: &[u8; 4] = b"hhX\0"; +pub const PRIdFAST16: &[u8; 3] = b"hd\0"; +pub const PRIiFAST16: &[u8; 3] = b"hi\0"; +pub const PRIoFAST16: &[u8; 3] = b"ho\0"; +pub const PRIuFAST16: &[u8; 3] = b"hu\0"; +pub const PRIxFAST16: &[u8; 3] = b"hx\0"; +pub const PRIXFAST16: &[u8; 3] = b"hX\0"; +pub const PRIdFAST32: &[u8; 2] = b"d\0"; +pub const PRIiFAST32: &[u8; 2] = b"i\0"; +pub const PRIoFAST32: &[u8; 2] = b"o\0"; +pub const PRIuFAST32: &[u8; 2] = b"u\0"; +pub const PRIxFAST32: &[u8; 2] = b"x\0"; +pub const PRIXFAST32: &[u8; 2] = b"X\0"; +pub const PRIdFAST64: &[u8; 4] = b"lld\0"; +pub const PRIiFAST64: &[u8; 4] = b"lli\0"; +pub const PRIoFAST64: &[u8; 4] = b"llo\0"; +pub const PRIuFAST64: &[u8; 4] = b"llu\0"; +pub const PRIxFAST64: &[u8; 4] = b"llx\0"; +pub const PRIXFAST64: &[u8; 4] = b"llX\0"; +pub const PRIdPTR: &[u8; 3] = b"ld\0"; +pub const PRIiPTR: &[u8; 3] = b"li\0"; +pub const PRIoPTR: &[u8; 3] = b"lo\0"; +pub const PRIuPTR: &[u8; 3] = b"lu\0"; +pub const PRIxPTR: &[u8; 3] = b"lx\0"; +pub const PRIXPTR: &[u8; 3] = b"lX\0"; +pub const PRIdMAX: &[u8; 3] = b"jd\0"; +pub const PRIiMAX: &[u8; 3] = b"ji\0"; +pub const PRIoMAX: &[u8; 3] = b"jo\0"; +pub const PRIuMAX: &[u8; 3] = b"ju\0"; +pub const PRIxMAX: &[u8; 3] = b"jx\0"; +pub const PRIXMAX: &[u8; 3] = b"jX\0"; +pub const SCNd8: &[u8; 4] = b"hhd\0"; +pub const SCNi8: &[u8; 4] = b"hhi\0"; +pub const SCNo8: &[u8; 4] = b"hho\0"; +pub const SCNu8: &[u8; 4] = b"hhu\0"; +pub const SCNx8: &[u8; 4] = b"hhx\0"; +pub const SCNd16: &[u8; 3] = b"hd\0"; +pub const SCNi16: &[u8; 3] = b"hi\0"; +pub const SCNo16: &[u8; 3] = b"ho\0"; +pub const SCNu16: &[u8; 3] = b"hu\0"; +pub const SCNx16: &[u8; 3] = b"hx\0"; +pub const SCNd32: &[u8; 2] = b"d\0"; +pub const SCNi32: &[u8; 2] = b"i\0"; +pub const SCNo32: &[u8; 2] = b"o\0"; +pub const SCNu32: &[u8; 2] = b"u\0"; +pub const SCNx32: &[u8; 2] = b"x\0"; +pub const SCNd64: &[u8; 4] = b"lld\0"; +pub const SCNi64: &[u8; 4] = b"lli\0"; +pub const SCNo64: &[u8; 4] = b"llo\0"; +pub const SCNu64: &[u8; 4] = b"llu\0"; +pub const SCNx64: &[u8; 4] = b"llx\0"; +pub const SCNdLEAST8: &[u8; 4] = b"hhd\0"; +pub const SCNiLEAST8: &[u8; 4] = b"hhi\0"; +pub const SCNoLEAST8: &[u8; 4] = b"hho\0"; +pub const SCNuLEAST8: &[u8; 4] = b"hhu\0"; +pub const SCNxLEAST8: &[u8; 4] = b"hhx\0"; +pub const SCNdLEAST16: &[u8; 3] = b"hd\0"; +pub const SCNiLEAST16: &[u8; 3] = b"hi\0"; +pub const SCNoLEAST16: &[u8; 3] = b"ho\0"; +pub const SCNuLEAST16: &[u8; 3] = b"hu\0"; +pub const SCNxLEAST16: &[u8; 3] = b"hx\0"; +pub const SCNdLEAST32: &[u8; 2] = b"d\0"; +pub const SCNiLEAST32: &[u8; 2] = b"i\0"; +pub const SCNoLEAST32: &[u8; 2] = b"o\0"; +pub const SCNuLEAST32: &[u8; 2] = b"u\0"; +pub const SCNxLEAST32: &[u8; 2] = b"x\0"; +pub const SCNdLEAST64: &[u8; 4] = b"lld\0"; +pub const SCNiLEAST64: &[u8; 4] = b"lli\0"; +pub const SCNoLEAST64: &[u8; 4] = b"llo\0"; +pub const SCNuLEAST64: &[u8; 4] = b"llu\0"; +pub const SCNxLEAST64: &[u8; 4] = b"llx\0"; +pub const SCNdFAST8: &[u8; 4] = b"hhd\0"; +pub const SCNiFAST8: &[u8; 4] = b"hhi\0"; +pub const SCNoFAST8: &[u8; 4] = b"hho\0"; +pub const SCNuFAST8: &[u8; 4] = b"hhu\0"; +pub const SCNxFAST8: &[u8; 4] = b"hhx\0"; +pub const SCNdFAST16: &[u8; 3] = b"hd\0"; +pub const SCNiFAST16: &[u8; 3] = b"hi\0"; +pub const SCNoFAST16: &[u8; 3] = b"ho\0"; +pub const SCNuFAST16: &[u8; 3] = b"hu\0"; +pub const SCNxFAST16: &[u8; 3] = b"hx\0"; +pub const SCNdFAST32: &[u8; 2] = b"d\0"; +pub const SCNiFAST32: &[u8; 2] = b"i\0"; +pub const SCNoFAST32: &[u8; 2] = b"o\0"; +pub const SCNuFAST32: &[u8; 2] = b"u\0"; +pub const SCNxFAST32: &[u8; 2] = b"x\0"; +pub const SCNdFAST64: &[u8; 4] = b"lld\0"; +pub const SCNiFAST64: &[u8; 4] = b"lli\0"; +pub const SCNoFAST64: &[u8; 4] = b"llo\0"; +pub const SCNuFAST64: &[u8; 4] = b"llu\0"; +pub const SCNxFAST64: &[u8; 4] = b"llx\0"; +pub const SCNdPTR: &[u8; 3] = b"ld\0"; +pub const SCNiPTR: &[u8; 3] = b"li\0"; +pub const SCNoPTR: &[u8; 3] = b"lo\0"; +pub const SCNuPTR: &[u8; 3] = b"lu\0"; +pub const SCNxPTR: &[u8; 3] = b"lx\0"; +pub const SCNdMAX: &[u8; 3] = b"jd\0"; +pub const SCNiMAX: &[u8; 3] = b"ji\0"; +pub const SCNoMAX: &[u8; 3] = b"jo\0"; +pub const SCNuMAX: &[u8; 3] = b"ju\0"; +pub const SCNxMAX: &[u8; 3] = b"jx\0"; +pub const __has_safe_buffers: u32 = 1; +pub const __DARWIN_ONLY_64_BIT_INO_T: u32 = 1; +pub const __DARWIN_ONLY_UNIX_CONFORMANCE: u32 = 1; +pub const __DARWIN_ONLY_VERS_1050: u32 = 1; +pub const __DARWIN_UNIX03: u32 = 1; +pub const __DARWIN_64_BIT_INO_T: u32 = 1; +pub const __DARWIN_VERS_1050: u32 = 1; +pub const __DARWIN_NON_CANCELABLE: u32 = 0; +pub const __DARWIN_SUF_EXTSN: &[u8; 14] = b"$DARWIN_EXTSN\0"; +pub const __DARWIN_C_ANSI: u32 = 4096; +pub const __DARWIN_C_FULL: u32 = 900000; +pub const __DARWIN_C_LEVEL: u32 = 900000; +pub const __STDC_WANT_LIB_EXT1__: u32 = 1; +pub const __DARWIN_NO_LONG_LONG: u32 = 0; +pub const _DARWIN_FEATURE_64_BIT_INODE: u32 = 1; +pub const _DARWIN_FEATURE_ONLY_64_BIT_INODE: u32 = 1; +pub const _DARWIN_FEATURE_ONLY_VERS_1050: u32 = 1; +pub const _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE: u32 = 1; +pub const _DARWIN_FEATURE_UNIX_CONFORMANCE: u32 = 3; +pub const __has_ptrcheck: u32 = 0; +pub const __API_TO_BE_DEPRECATED: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_MACOS: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_IOS: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_MACCATALYST: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_WATCHOS: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_TVOS: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_DRIVERKIT: u32 = 100000; +pub const __API_TO_BE_DEPRECATED_VISIONOS: u32 = 100000; +pub const __MAC_10_0: u32 = 1000; +pub const __MAC_10_1: u32 = 1010; +pub const __MAC_10_2: u32 = 1020; +pub const __MAC_10_3: u32 = 1030; +pub const __MAC_10_4: u32 = 1040; +pub const __MAC_10_5: u32 = 1050; +pub const __MAC_10_6: u32 = 1060; +pub const __MAC_10_7: u32 = 1070; +pub const __MAC_10_8: u32 = 1080; +pub const __MAC_10_9: u32 = 1090; +pub const __MAC_10_10: u32 = 101000; +pub const __MAC_10_10_2: u32 = 101002; +pub const __MAC_10_10_3: u32 = 101003; +pub const __MAC_10_11: u32 = 101100; +pub const __MAC_10_11_2: u32 = 101102; +pub const __MAC_10_11_3: u32 = 101103; +pub const __MAC_10_11_4: u32 = 101104; +pub const __MAC_10_12: u32 = 101200; +pub const __MAC_10_12_1: u32 = 101201; +pub const __MAC_10_12_2: u32 = 101202; +pub const __MAC_10_12_4: u32 = 101204; +pub const __MAC_10_13: u32 = 101300; +pub const __MAC_10_13_1: u32 = 101301; +pub const __MAC_10_13_2: u32 = 101302; +pub const __MAC_10_13_4: u32 = 101304; +pub const __MAC_10_14: u32 = 101400; +pub const __MAC_10_14_1: u32 = 101401; +pub const __MAC_10_14_4: u32 = 101404; +pub const __MAC_10_14_5: u32 = 101405; +pub const __MAC_10_14_6: u32 = 101406; +pub const __MAC_10_15: u32 = 101500; +pub const __MAC_10_15_1: u32 = 101501; +pub const __MAC_10_15_4: u32 = 101504; +pub const __MAC_10_16: u32 = 101600; +pub const __MAC_11_0: u32 = 110000; +pub const __MAC_11_1: u32 = 110100; +pub const __MAC_11_3: u32 = 110300; +pub const __MAC_11_4: u32 = 110400; +pub const __MAC_11_5: u32 = 110500; +pub const __MAC_11_6: u32 = 110600; +pub const __MAC_12_0: u32 = 120000; +pub const __MAC_12_1: u32 = 120100; +pub const __MAC_12_2: u32 = 120200; +pub const __MAC_12_3: u32 = 120300; +pub const __MAC_12_4: u32 = 120400; +pub const __MAC_12_5: u32 = 120500; +pub const __MAC_12_6: u32 = 120600; +pub const __MAC_12_7: u32 = 120700; +pub const __MAC_13_0: u32 = 130000; +pub const __MAC_13_1: u32 = 130100; +pub const __MAC_13_2: u32 = 130200; +pub const __MAC_13_3: u32 = 130300; +pub const __MAC_13_4: u32 = 130400; +pub const __MAC_13_5: u32 = 130500; +pub const __MAC_13_6: u32 = 130600; +pub const __MAC_14_0: u32 = 140000; +pub const __MAC_14_1: u32 = 140100; +pub const __MAC_14_2: u32 = 140200; +pub const __MAC_14_3: u32 = 140300; +pub const __MAC_14_4: u32 = 140400; +pub const __MAC_14_5: u32 = 140500; +pub const __MAC_15_0: u32 = 150000; +pub const __MAC_15_1: u32 = 150100; +pub const __IPHONE_2_0: u32 = 20000; +pub const __IPHONE_2_1: u32 = 20100; +pub const __IPHONE_2_2: u32 = 20200; +pub const __IPHONE_3_0: u32 = 30000; +pub const __IPHONE_3_1: u32 = 30100; +pub const __IPHONE_3_2: u32 = 30200; +pub const __IPHONE_4_0: u32 = 40000; +pub const __IPHONE_4_1: u32 = 40100; +pub const __IPHONE_4_2: u32 = 40200; +pub const __IPHONE_4_3: u32 = 40300; +pub const __IPHONE_5_0: u32 = 50000; +pub const __IPHONE_5_1: u32 = 50100; +pub const __IPHONE_6_0: u32 = 60000; +pub const __IPHONE_6_1: u32 = 60100; +pub const __IPHONE_7_0: u32 = 70000; +pub const __IPHONE_7_1: u32 = 70100; +pub const __IPHONE_8_0: u32 = 80000; +pub const __IPHONE_8_1: u32 = 80100; +pub const __IPHONE_8_2: u32 = 80200; +pub const __IPHONE_8_3: u32 = 80300; +pub const __IPHONE_8_4: u32 = 80400; +pub const __IPHONE_9_0: u32 = 90000; +pub const __IPHONE_9_1: u32 = 90100; +pub const __IPHONE_9_2: u32 = 90200; +pub const __IPHONE_9_3: u32 = 90300; +pub const __IPHONE_10_0: u32 = 100000; +pub const __IPHONE_10_1: u32 = 100100; +pub const __IPHONE_10_2: u32 = 100200; +pub const __IPHONE_10_3: u32 = 100300; +pub const __IPHONE_11_0: u32 = 110000; +pub const __IPHONE_11_1: u32 = 110100; +pub const __IPHONE_11_2: u32 = 110200; +pub const __IPHONE_11_3: u32 = 110300; +pub const __IPHONE_11_4: u32 = 110400; +pub const __IPHONE_12_0: u32 = 120000; +pub const __IPHONE_12_1: u32 = 120100; +pub const __IPHONE_12_2: u32 = 120200; +pub const __IPHONE_12_3: u32 = 120300; +pub const __IPHONE_12_4: u32 = 120400; +pub const __IPHONE_13_0: u32 = 130000; +pub const __IPHONE_13_1: u32 = 130100; +pub const __IPHONE_13_2: u32 = 130200; +pub const __IPHONE_13_3: u32 = 130300; +pub const __IPHONE_13_4: u32 = 130400; +pub const __IPHONE_13_5: u32 = 130500; +pub const __IPHONE_13_6: u32 = 130600; +pub const __IPHONE_13_7: u32 = 130700; +pub const __IPHONE_14_0: u32 = 140000; +pub const __IPHONE_14_1: u32 = 140100; +pub const __IPHONE_14_2: u32 = 140200; +pub const __IPHONE_14_3: u32 = 140300; +pub const __IPHONE_14_5: u32 = 140500; +pub const __IPHONE_14_4: u32 = 140400; +pub const __IPHONE_14_6: u32 = 140600; +pub const __IPHONE_14_7: u32 = 140700; +pub const __IPHONE_14_8: u32 = 140800; +pub const __IPHONE_15_0: u32 = 150000; +pub const __IPHONE_15_1: u32 = 150100; +pub const __IPHONE_15_2: u32 = 150200; +pub const __IPHONE_15_3: u32 = 150300; +pub const __IPHONE_15_4: u32 = 150400; +pub const __IPHONE_15_5: u32 = 150500; +pub const __IPHONE_15_6: u32 = 150600; +pub const __IPHONE_15_7: u32 = 150700; +pub const __IPHONE_15_8: u32 = 150800; +pub const __IPHONE_16_0: u32 = 160000; +pub const __IPHONE_16_1: u32 = 160100; +pub const __IPHONE_16_2: u32 = 160200; +pub const __IPHONE_16_3: u32 = 160300; +pub const __IPHONE_16_4: u32 = 160400; +pub const __IPHONE_16_5: u32 = 160500; +pub const __IPHONE_16_6: u32 = 160600; +pub const __IPHONE_16_7: u32 = 160700; +pub const __IPHONE_17_0: u32 = 170000; +pub const __IPHONE_17_1: u32 = 170100; +pub const __IPHONE_17_2: u32 = 170200; +pub const __IPHONE_17_3: u32 = 170300; +pub const __IPHONE_17_4: u32 = 170400; +pub const __IPHONE_17_5: u32 = 170500; +pub const __IPHONE_18_0: u32 = 180000; +pub const __IPHONE_18_1: u32 = 180100; +pub const __WATCHOS_1_0: u32 = 10000; +pub const __WATCHOS_2_0: u32 = 20000; +pub const __WATCHOS_2_1: u32 = 20100; +pub const __WATCHOS_2_2: u32 = 20200; +pub const __WATCHOS_3_0: u32 = 30000; +pub const __WATCHOS_3_1: u32 = 30100; +pub const __WATCHOS_3_1_1: u32 = 30101; +pub const __WATCHOS_3_2: u32 = 30200; +pub const __WATCHOS_4_0: u32 = 40000; +pub const __WATCHOS_4_1: u32 = 40100; +pub const __WATCHOS_4_2: u32 = 40200; +pub const __WATCHOS_4_3: u32 = 40300; +pub const __WATCHOS_5_0: u32 = 50000; +pub const __WATCHOS_5_1: u32 = 50100; +pub const __WATCHOS_5_2: u32 = 50200; +pub const __WATCHOS_5_3: u32 = 50300; +pub const __WATCHOS_6_0: u32 = 60000; +pub const __WATCHOS_6_1: u32 = 60100; +pub const __WATCHOS_6_2: u32 = 60200; +pub const __WATCHOS_7_0: u32 = 70000; +pub const __WATCHOS_7_1: u32 = 70100; +pub const __WATCHOS_7_2: u32 = 70200; +pub const __WATCHOS_7_3: u32 = 70300; +pub const __WATCHOS_7_4: u32 = 70400; +pub const __WATCHOS_7_5: u32 = 70500; +pub const __WATCHOS_7_6: u32 = 70600; +pub const __WATCHOS_8_0: u32 = 80000; +pub const __WATCHOS_8_1: u32 = 80100; +pub const __WATCHOS_8_3: u32 = 80300; +pub const __WATCHOS_8_4: u32 = 80400; +pub const __WATCHOS_8_5: u32 = 80500; +pub const __WATCHOS_8_6: u32 = 80600; +pub const __WATCHOS_8_7: u32 = 80700; +pub const __WATCHOS_8_8: u32 = 80800; +pub const __WATCHOS_9_0: u32 = 90000; +pub const __WATCHOS_9_1: u32 = 90100; +pub const __WATCHOS_9_2: u32 = 90200; +pub const __WATCHOS_9_3: u32 = 90300; +pub const __WATCHOS_9_4: u32 = 90400; +pub const __WATCHOS_9_5: u32 = 90500; +pub const __WATCHOS_9_6: u32 = 90600; +pub const __WATCHOS_10_0: u32 = 100000; +pub const __WATCHOS_10_1: u32 = 100100; +pub const __WATCHOS_10_2: u32 = 100200; +pub const __WATCHOS_10_3: u32 = 100300; +pub const __WATCHOS_10_4: u32 = 100400; +pub const __WATCHOS_10_5: u32 = 100500; +pub const __WATCHOS_11_0: u32 = 110000; +pub const __WATCHOS_11_1: u32 = 110100; +pub const __TVOS_9_0: u32 = 90000; +pub const __TVOS_9_1: u32 = 90100; +pub const __TVOS_9_2: u32 = 90200; +pub const __TVOS_10_0: u32 = 100000; +pub const __TVOS_10_0_1: u32 = 100001; +pub const __TVOS_10_1: u32 = 100100; +pub const __TVOS_10_2: u32 = 100200; +pub const __TVOS_11_0: u32 = 110000; +pub const __TVOS_11_1: u32 = 110100; +pub const __TVOS_11_2: u32 = 110200; +pub const __TVOS_11_3: u32 = 110300; +pub const __TVOS_11_4: u32 = 110400; +pub const __TVOS_12_0: u32 = 120000; +pub const __TVOS_12_1: u32 = 120100; +pub const __TVOS_12_2: u32 = 120200; +pub const __TVOS_12_3: u32 = 120300; +pub const __TVOS_12_4: u32 = 120400; +pub const __TVOS_13_0: u32 = 130000; +pub const __TVOS_13_2: u32 = 130200; +pub const __TVOS_13_3: u32 = 130300; +pub const __TVOS_13_4: u32 = 130400; +pub const __TVOS_14_0: u32 = 140000; +pub const __TVOS_14_1: u32 = 140100; +pub const __TVOS_14_2: u32 = 140200; +pub const __TVOS_14_3: u32 = 140300; +pub const __TVOS_14_5: u32 = 140500; +pub const __TVOS_14_6: u32 = 140600; +pub const __TVOS_14_7: u32 = 140700; +pub const __TVOS_15_0: u32 = 150000; +pub const __TVOS_15_1: u32 = 150100; +pub const __TVOS_15_2: u32 = 150200; +pub const __TVOS_15_3: u32 = 150300; +pub const __TVOS_15_4: u32 = 150400; +pub const __TVOS_15_5: u32 = 150500; +pub const __TVOS_15_6: u32 = 150600; +pub const __TVOS_16_0: u32 = 160000; +pub const __TVOS_16_1: u32 = 160100; +pub const __TVOS_16_2: u32 = 160200; +pub const __TVOS_16_3: u32 = 160300; +pub const __TVOS_16_4: u32 = 160400; +pub const __TVOS_16_5: u32 = 160500; +pub const __TVOS_16_6: u32 = 160600; +pub const __TVOS_17_0: u32 = 170000; +pub const __TVOS_17_1: u32 = 170100; +pub const __TVOS_17_2: u32 = 170200; +pub const __TVOS_17_3: u32 = 170300; +pub const __TVOS_17_4: u32 = 170400; +pub const __TVOS_17_5: u32 = 170500; +pub const __TVOS_18_0: u32 = 180000; +pub const __TVOS_18_1: u32 = 180100; +pub const __BRIDGEOS_2_0: u32 = 20000; +pub const __BRIDGEOS_3_0: u32 = 30000; +pub const __BRIDGEOS_3_1: u32 = 30100; +pub const __BRIDGEOS_3_4: u32 = 30400; +pub const __BRIDGEOS_4_0: u32 = 40000; +pub const __BRIDGEOS_4_1: u32 = 40100; +pub const __BRIDGEOS_5_0: u32 = 50000; +pub const __BRIDGEOS_5_1: u32 = 50100; +pub const __BRIDGEOS_5_3: u32 = 50300; +pub const __BRIDGEOS_6_0: u32 = 60000; +pub const __BRIDGEOS_6_2: u32 = 60200; +pub const __BRIDGEOS_6_4: u32 = 60400; +pub const __BRIDGEOS_6_5: u32 = 60500; +pub const __BRIDGEOS_6_6: u32 = 60600; +pub const __BRIDGEOS_7_0: u32 = 70000; +pub const __BRIDGEOS_7_1: u32 = 70100; +pub const __BRIDGEOS_7_2: u32 = 70200; +pub const __BRIDGEOS_7_3: u32 = 70300; +pub const __BRIDGEOS_7_4: u32 = 70400; +pub const __BRIDGEOS_7_6: u32 = 70600; +pub const __BRIDGEOS_8_0: u32 = 80000; +pub const __BRIDGEOS_8_1: u32 = 80100; +pub const __BRIDGEOS_8_2: u32 = 80200; +pub const __BRIDGEOS_8_3: u32 = 80300; +pub const __BRIDGEOS_8_4: u32 = 80400; +pub const __BRIDGEOS_8_5: u32 = 80500; +pub const __BRIDGEOS_9_0: u32 = 90000; +pub const __BRIDGEOS_9_1: u32 = 90100; +pub const __DRIVERKIT_19_0: u32 = 190000; +pub const __DRIVERKIT_20_0: u32 = 200000; +pub const __DRIVERKIT_21_0: u32 = 210000; +pub const __DRIVERKIT_22_0: u32 = 220000; +pub const __DRIVERKIT_22_4: u32 = 220400; +pub const __DRIVERKIT_22_5: u32 = 220500; +pub const __DRIVERKIT_22_6: u32 = 220600; +pub const __DRIVERKIT_23_0: u32 = 230000; +pub const __DRIVERKIT_23_1: u32 = 230100; +pub const __DRIVERKIT_23_2: u32 = 230200; +pub const __DRIVERKIT_23_3: u32 = 230300; +pub const __DRIVERKIT_23_4: u32 = 230400; +pub const __DRIVERKIT_23_5: u32 = 230500; +pub const __DRIVERKIT_24_0: u32 = 240000; +pub const __DRIVERKIT_24_1: u32 = 240100; +pub const __VISIONOS_1_0: u32 = 10000; +pub const __VISIONOS_1_1: u32 = 10100; +pub const __VISIONOS_1_2: u32 = 10200; +pub const __VISIONOS_2_0: u32 = 20000; +pub const __VISIONOS_2_1: u32 = 20100; +pub const MAC_OS_X_VERSION_10_0: u32 = 1000; +pub const MAC_OS_X_VERSION_10_1: u32 = 1010; +pub const MAC_OS_X_VERSION_10_2: u32 = 1020; +pub const MAC_OS_X_VERSION_10_3: u32 = 1030; +pub const MAC_OS_X_VERSION_10_4: u32 = 1040; +pub const MAC_OS_X_VERSION_10_5: u32 = 1050; +pub const MAC_OS_X_VERSION_10_6: u32 = 1060; +pub const MAC_OS_X_VERSION_10_7: u32 = 1070; +pub const MAC_OS_X_VERSION_10_8: u32 = 1080; +pub const MAC_OS_X_VERSION_10_9: u32 = 1090; +pub const MAC_OS_X_VERSION_10_10: u32 = 101000; +pub const MAC_OS_X_VERSION_10_10_2: u32 = 101002; +pub const MAC_OS_X_VERSION_10_10_3: u32 = 101003; +pub const MAC_OS_X_VERSION_10_11: u32 = 101100; +pub const MAC_OS_X_VERSION_10_11_2: u32 = 101102; +pub const MAC_OS_X_VERSION_10_11_3: u32 = 101103; +pub const MAC_OS_X_VERSION_10_11_4: u32 = 101104; +pub const MAC_OS_X_VERSION_10_12: u32 = 101200; +pub const MAC_OS_X_VERSION_10_12_1: u32 = 101201; +pub const MAC_OS_X_VERSION_10_12_2: u32 = 101202; +pub const MAC_OS_X_VERSION_10_12_4: u32 = 101204; +pub const MAC_OS_X_VERSION_10_13: u32 = 101300; +pub const MAC_OS_X_VERSION_10_13_1: u32 = 101301; +pub const MAC_OS_X_VERSION_10_13_2: u32 = 101302; +pub const MAC_OS_X_VERSION_10_13_4: u32 = 101304; +pub const MAC_OS_X_VERSION_10_14: u32 = 101400; +pub const MAC_OS_X_VERSION_10_14_1: u32 = 101401; +pub const MAC_OS_X_VERSION_10_14_4: u32 = 101404; +pub const MAC_OS_X_VERSION_10_14_5: u32 = 101405; +pub const MAC_OS_X_VERSION_10_14_6: u32 = 101406; +pub const MAC_OS_X_VERSION_10_15: u32 = 101500; +pub const MAC_OS_X_VERSION_10_15_1: u32 = 101501; +pub const MAC_OS_X_VERSION_10_15_4: u32 = 101504; +pub const MAC_OS_X_VERSION_10_16: u32 = 101600; +pub const MAC_OS_VERSION_11_0: u32 = 110000; +pub const MAC_OS_VERSION_11_1: u32 = 110100; +pub const MAC_OS_VERSION_11_3: u32 = 110300; +pub const MAC_OS_VERSION_11_4: u32 = 110400; +pub const MAC_OS_VERSION_11_5: u32 = 110500; +pub const MAC_OS_VERSION_11_6: u32 = 110600; +pub const MAC_OS_VERSION_12_0: u32 = 120000; +pub const MAC_OS_VERSION_12_1: u32 = 120100; +pub const MAC_OS_VERSION_12_2: u32 = 120200; +pub const MAC_OS_VERSION_12_3: u32 = 120300; +pub const MAC_OS_VERSION_12_4: u32 = 120400; +pub const MAC_OS_VERSION_12_5: u32 = 120500; +pub const MAC_OS_VERSION_12_6: u32 = 120600; +pub const MAC_OS_VERSION_12_7: u32 = 120700; +pub const MAC_OS_VERSION_13_0: u32 = 130000; +pub const MAC_OS_VERSION_13_1: u32 = 130100; +pub const MAC_OS_VERSION_13_2: u32 = 130200; +pub const MAC_OS_VERSION_13_3: u32 = 130300; +pub const MAC_OS_VERSION_13_4: u32 = 130400; +pub const MAC_OS_VERSION_13_5: u32 = 130500; +pub const MAC_OS_VERSION_13_6: u32 = 130600; +pub const MAC_OS_VERSION_14_0: u32 = 140000; +pub const MAC_OS_VERSION_14_1: u32 = 140100; +pub const MAC_OS_VERSION_14_2: u32 = 140200; +pub const MAC_OS_VERSION_14_3: u32 = 140300; +pub const MAC_OS_VERSION_14_4: u32 = 140400; +pub const MAC_OS_VERSION_14_5: u32 = 140500; +pub const MAC_OS_VERSION_15_0: u32 = 150000; +pub const MAC_OS_VERSION_15_1: u32 = 150100; +pub const __MAC_OS_X_VERSION_MAX_ALLOWED: u32 = 150100; +pub const __ENABLE_LEGACY_MAC_AVAILABILITY: u32 = 1; +pub const USE_CLANG_TYPES: u32 = 0; +pub const __PTHREAD_SIZE__: u32 = 8176; +pub const __PTHREAD_ATTR_SIZE__: u32 = 56; +pub const __PTHREAD_MUTEXATTR_SIZE__: u32 = 8; +pub const __PTHREAD_MUTEX_SIZE__: u32 = 56; +pub const __PTHREAD_CONDATTR_SIZE__: u32 = 8; +pub const __PTHREAD_COND_SIZE__: u32 = 40; +pub const __PTHREAD_ONCE_SIZE__: u32 = 8; +pub const __PTHREAD_RWLOCK_SIZE__: u32 = 192; +pub const __PTHREAD_RWLOCKATTR_SIZE__: u32 = 16; +pub const __DARWIN_WCHAR_MIN: i32 = -2147483648; +pub const _FORTIFY_SOURCE: u32 = 2; +pub const USE_CLANG_STDDEF: u32 = 0; +pub const __WORDSIZE: u32 = 64; +pub const INT8_MAX: u32 = 127; +pub const INT16_MAX: u32 = 32767; +pub const INT32_MAX: u32 = 2147483647; +pub const INT64_MAX: u64 = 9223372036854775807; +pub const INT8_MIN: i32 = -128; +pub const INT16_MIN: i32 = -32768; +pub const INT32_MIN: i32 = -2147483648; +pub const INT64_MIN: i64 = -9223372036854775808; +pub const UINT8_MAX: u32 = 255; +pub const UINT16_MAX: u32 = 65535; +pub const UINT32_MAX: u32 = 4294967295; +pub const UINT64_MAX: i32 = -1; +pub const INT_LEAST8_MIN: i32 = -128; +pub const INT_LEAST16_MIN: i32 = -32768; +pub const INT_LEAST32_MIN: i32 = -2147483648; +pub const INT_LEAST64_MIN: i64 = -9223372036854775808; +pub const INT_LEAST8_MAX: u32 = 127; +pub const INT_LEAST16_MAX: u32 = 32767; +pub const INT_LEAST32_MAX: u32 = 2147483647; +pub const INT_LEAST64_MAX: u64 = 9223372036854775807; +pub const UINT_LEAST8_MAX: u32 = 255; +pub const UINT_LEAST16_MAX: u32 = 65535; +pub const UINT_LEAST32_MAX: u32 = 4294967295; +pub const UINT_LEAST64_MAX: i32 = -1; +pub const INT_FAST8_MIN: i32 = -128; +pub const INT_FAST16_MIN: i32 = -32768; +pub const INT_FAST32_MIN: i32 = -2147483648; +pub const INT_FAST64_MIN: i64 = -9223372036854775808; +pub const INT_FAST8_MAX: u32 = 127; +pub const INT_FAST16_MAX: u32 = 32767; +pub const INT_FAST32_MAX: u32 = 2147483647; +pub const INT_FAST64_MAX: u64 = 9223372036854775807; +pub const UINT_FAST8_MAX: u32 = 255; +pub const UINT_FAST16_MAX: u32 = 65535; +pub const UINT_FAST32_MAX: u32 = 4294967295; +pub const UINT_FAST64_MAX: i32 = -1; +pub const INTPTR_MAX: u64 = 9223372036854775807; +pub const INTPTR_MIN: i64 = -9223372036854775808; +pub const UINTPTR_MAX: i32 = -1; +pub const SIZE_MAX: i32 = -1; +pub const RSIZE_MAX: i32 = -1; +pub const WINT_MIN: i32 = -2147483648; +pub const WINT_MAX: u32 = 2147483647; +pub const SIG_ATOMIC_MIN: i32 = -2147483648; +pub const SIG_ATOMIC_MAX: u32 = 2147483647; +pub const CCAN_COMPILER: &[u8; 3] = b"cc\0"; +pub const CCAN_CFLAGS : & [u8 ; 111] = b"-g3 -ggdb -Wall -Wundef -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wold-style-definition\0" ; +pub const CCAN_OUTPUT_EXE_CFLAG: &[u8; 3] = b"-o\0"; +pub const HAVE_CCAN: u32 = 1; +pub const HAVE_UNALIGNED_ACCESS: u32 = 1; +pub const HAVE_TYPEOF: u32 = 1; +pub const HAVE_BIG_ENDIAN: u32 = 0; +pub const HAVE_BYTESWAP_H: u32 = 0; +pub const HAVE_BSWAP_64: u32 = 0; +pub const HAVE_LITTLE_ENDIAN: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; +pub const true_: u32 = 1; +pub const false_: u32 = 0; +pub const USE_CLANG_STDARG: u32 = 0; +pub const RENAME_SECLUDE: u32 = 1; +pub const RENAME_SWAP: u32 = 2; +pub const RENAME_EXCL: u32 = 4; +pub const RENAME_RESERVED1: u32 = 8; +pub const RENAME_NOFOLLOW_ANY: u32 = 16; +pub const SEEK_SET: u32 = 0; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +pub const SEEK_HOLE: u32 = 3; +pub const SEEK_DATA: u32 = 4; +pub const __SLBF: u32 = 1; +pub const __SNBF: u32 = 2; +pub const __SRD: u32 = 4; +pub const __SWR: u32 = 8; +pub const __SRW: u32 = 16; +pub const __SEOF: u32 = 32; +pub const __SERR: u32 = 64; +pub const __SMBF: u32 = 128; +pub const __SAPP: u32 = 256; +pub const __SSTR: u32 = 512; +pub const __SOPT: u32 = 1024; +pub const __SNPT: u32 = 2048; +pub const __SOFF: u32 = 4096; +pub const __SMOD: u32 = 8192; +pub const __SALC: u32 = 16384; +pub const __SIGN: u32 = 32768; +pub const _IOFBF: u32 = 0; +pub const _IOLBF: u32 = 1; +pub const _IONBF: u32 = 2; +pub const BUFSIZ: u32 = 1024; +pub const EOF: i32 = -1; +pub const FOPEN_MAX: u32 = 20; +pub const FILENAME_MAX: u32 = 1024; +pub const P_tmpdir: &[u8; 10] = b"/var/tmp/\0"; +pub const L_tmpnam: u32 = 1024; +pub const TMP_MAX: u32 = 308915776; +pub const L_ctermid: u32 = 1024; +pub const _USE_FORTIFY_LEVEL: u32 = 2; +pub const _CACHED_RUNES: u32 = 256; +pub const _CRMASK: i32 = -256; +pub const _RUNE_MAGIC_A: &[u8; 9] = b"RuneMagA\0"; +pub const _CTYPE_A: u32 = 256; +pub const _CTYPE_C: u32 = 512; +pub const _CTYPE_D: u32 = 1024; +pub const _CTYPE_G: u32 = 2048; +pub const _CTYPE_L: u32 = 4096; +pub const _CTYPE_P: u32 = 8192; +pub const _CTYPE_S: u32 = 16384; +pub const _CTYPE_U: u32 = 32768; +pub const _CTYPE_X: u32 = 65536; +pub const _CTYPE_B: u32 = 131072; +pub const _CTYPE_R: u32 = 262144; +pub const _CTYPE_I: u32 = 524288; +pub const _CTYPE_T: u32 = 1048576; +pub const _CTYPE_Q: u32 = 2097152; +pub const _CTYPE_SW0: u32 = 536870912; +pub const _CTYPE_SW1: u32 = 1073741824; +pub const _CTYPE_SW2: u32 = 2147483648; +pub const _CTYPE_SW3: u32 = 3221225472; +pub const _CTYPE_SWM: u32 = 3758096384; +pub const _CTYPE_SWS: u32 = 30; +pub const __HAS_FIXED_CHK_PROTOTYPES: u32 = 1; +pub const NDB_PACKED_STR: u32 = 1; +pub const NDB_PACKED_ID: u32 = 2; +pub const NDB_FLAG_NOMIGRATE: u32 = 1; +pub const NDB_FLAG_SKIP_NOTE_VERIFY: u32 = 2; +pub const NDB_NUM_FILTERS: u32 = 7; +pub const MAX_TEXT_SEARCH_RESULTS: u32 = 128; +pub const MAX_TEXT_SEARCH_WORDS: u32 = 8; +pub const NDB_NUM_BLOCK_TYPES: u32 = 6; +pub const NDB_MAX_RELAYS: u32 = 24; +pub const NOSTR_BECH32_KNOWN_TYPES: u32 = 7; +pub type __int8_t = ::std::os::raw::c_schar; +pub type __uint8_t = ::std::os::raw::c_uchar; +pub type __int16_t = ::std::os::raw::c_short; +pub type __uint16_t = ::std::os::raw::c_ushort; +pub type __int32_t = ::std::os::raw::c_int; +pub type __uint32_t = ::std::os::raw::c_uint; +pub type __int64_t = ::std::os::raw::c_longlong; +pub type __uint64_t = ::std::os::raw::c_ulonglong; +pub type __darwin_intptr_t = ::std::os::raw::c_long; +pub type __darwin_natural_t = ::std::os::raw::c_uint; +pub type __darwin_ct_rune_t = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Copy, Clone)] +pub union __mbstate_t { + pub __mbstate8: [::std::os::raw::c_char; 128usize], + pub _mbstateL: ::std::os::raw::c_longlong, +} +#[test] +fn bindgen_test_layout___mbstate_t() { + const UNINIT: ::std::mem::MaybeUninit<__mbstate_t> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__mbstate_t>(), + 128usize, + concat!("Size of: ", stringify!(__mbstate_t)) + ); + assert_eq!( + ::std::mem::align_of::<__mbstate_t>(), + 8usize, + concat!("Alignment of ", stringify!(__mbstate_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__mbstate8) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__mbstate_t), + "::", + stringify!(__mbstate8) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._mbstateL) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__mbstate_t), + "::", + stringify!(_mbstateL) + ) + ); +} +pub type __darwin_mbstate_t = __mbstate_t; +pub type __darwin_ptrdiff_t = ::std::os::raw::c_long; +pub type __darwin_size_t = ::std::os::raw::c_ulong; +pub type __darwin_va_list = __builtin_va_list; +pub type __darwin_wchar_t = ::std::os::raw::c_int; +pub type __darwin_rune_t = __darwin_wchar_t; +pub type __darwin_wint_t = ::std::os::raw::c_int; +pub type __darwin_clock_t = ::std::os::raw::c_ulong; +pub type __darwin_socklen_t = __uint32_t; +pub type __darwin_ssize_t = ::std::os::raw::c_long; +pub type __darwin_time_t = ::std::os::raw::c_long; +pub type __darwin_blkcnt_t = __int64_t; +pub type __darwin_blksize_t = __int32_t; +pub type __darwin_dev_t = __int32_t; +pub type __darwin_fsblkcnt_t = ::std::os::raw::c_uint; +pub type __darwin_fsfilcnt_t = ::std::os::raw::c_uint; +pub type __darwin_gid_t = __uint32_t; +pub type __darwin_id_t = __uint32_t; +pub type __darwin_ino64_t = __uint64_t; +pub type __darwin_ino_t = __darwin_ino64_t; +pub type __darwin_mach_port_name_t = __darwin_natural_t; +pub type __darwin_mach_port_t = __darwin_mach_port_name_t; +pub type __darwin_mode_t = __uint16_t; +pub type __darwin_off_t = __int64_t; +pub type __darwin_pid_t = __int32_t; +pub type __darwin_sigset_t = __uint32_t; +pub type __darwin_suseconds_t = __int32_t; +pub type __darwin_uid_t = __uint32_t; +pub type __darwin_useconds_t = __uint32_t; +pub type __darwin_uuid_t = [::std::os::raw::c_uchar; 16usize]; +pub type __darwin_uuid_string_t = [::std::os::raw::c_char; 37usize]; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __darwin_pthread_handler_rec { + pub __routine: ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void)>, + pub __arg: *mut ::std::os::raw::c_void, + pub __next: *mut __darwin_pthread_handler_rec, +} +#[test] +fn bindgen_test_layout___darwin_pthread_handler_rec() { + const UNINIT: ::std::mem::MaybeUninit<__darwin_pthread_handler_rec> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__darwin_pthread_handler_rec>(), + 24usize, + concat!("Size of: ", stringify!(__darwin_pthread_handler_rec)) + ); + assert_eq!( + ::std::mem::align_of::<__darwin_pthread_handler_rec>(), + 8usize, + concat!("Alignment of ", stringify!(__darwin_pthread_handler_rec)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__routine) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__darwin_pthread_handler_rec), + "::", + stringify!(__routine) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__arg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(__darwin_pthread_handler_rec), + "::", + stringify!(__arg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__next) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(__darwin_pthread_handler_rec), + "::", + stringify!(__next) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_attr_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 56usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_attr_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_attr_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_attr_t>(), + 64usize, + concat!("Size of: ", stringify!(_opaque_pthread_attr_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_attr_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_attr_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_attr_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_attr_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_cond_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 40usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_cond_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_cond_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_cond_t>(), + 48usize, + concat!("Size of: ", stringify!(_opaque_pthread_cond_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_cond_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_cond_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_cond_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_cond_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_condattr_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 8usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_condattr_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_condattr_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_condattr_t>(), + 16usize, + concat!("Size of: ", stringify!(_opaque_pthread_condattr_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_condattr_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_condattr_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_condattr_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_condattr_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_mutex_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 56usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_mutex_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutex_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_mutex_t>(), + 64usize, + concat!("Size of: ", stringify!(_opaque_pthread_mutex_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_mutex_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_mutex_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_mutex_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_mutex_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_mutexattr_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 8usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_mutexattr_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_mutexattr_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_mutexattr_t>(), + 16usize, + concat!("Size of: ", stringify!(_opaque_pthread_mutexattr_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_mutexattr_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_mutexattr_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_mutexattr_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_mutexattr_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_once_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 8usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_once_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_once_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_once_t>(), + 16usize, + concat!("Size of: ", stringify!(_opaque_pthread_once_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_once_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_once_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_once_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_once_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_rwlock_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 192usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_rwlock_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlock_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_rwlock_t>(), + 200usize, + concat!("Size of: ", stringify!(_opaque_pthread_rwlock_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_rwlock_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_rwlock_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_rwlock_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_rwlock_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_rwlockattr_t { + pub __sig: ::std::os::raw::c_long, + pub __opaque: [::std::os::raw::c_char; 16usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_rwlockattr_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_rwlockattr_t> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_rwlockattr_t>(), + 24usize, + concat!("Size of: ", stringify!(_opaque_pthread_rwlockattr_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_rwlockattr_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_rwlockattr_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_rwlockattr_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_rwlockattr_t), + "::", + stringify!(__opaque) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _opaque_pthread_t { + pub __sig: ::std::os::raw::c_long, + pub __cleanup_stack: *mut __darwin_pthread_handler_rec, + pub __opaque: [::std::os::raw::c_char; 8176usize], +} +#[test] +fn bindgen_test_layout__opaque_pthread_t() { + const UNINIT: ::std::mem::MaybeUninit<_opaque_pthread_t> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_opaque_pthread_t>(), + 8192usize, + concat!("Size of: ", stringify!(_opaque_pthread_t)) + ); + assert_eq!( + ::std::mem::align_of::<_opaque_pthread_t>(), + 8usize, + concat!("Alignment of ", stringify!(_opaque_pthread_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sig) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_t), + "::", + stringify!(__sig) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__cleanup_stack) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_t), + "::", + stringify!(__cleanup_stack) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__opaque) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_opaque_pthread_t), + "::", + stringify!(__opaque) + ) + ); +} +pub type __darwin_pthread_attr_t = _opaque_pthread_attr_t; +pub type __darwin_pthread_cond_t = _opaque_pthread_cond_t; +pub type __darwin_pthread_condattr_t = _opaque_pthread_condattr_t; +pub type __darwin_pthread_key_t = ::std::os::raw::c_ulong; +pub type __darwin_pthread_mutex_t = _opaque_pthread_mutex_t; +pub type __darwin_pthread_mutexattr_t = _opaque_pthread_mutexattr_t; +pub type __darwin_pthread_once_t = _opaque_pthread_once_t; +pub type __darwin_pthread_rwlock_t = _opaque_pthread_rwlock_t; +pub type __darwin_pthread_rwlockattr_t = _opaque_pthread_rwlockattr_t; +pub type __darwin_pthread_t = *mut _opaque_pthread_t; +pub type __darwin_nl_item = ::std::os::raw::c_int; +pub type __darwin_wctrans_t = ::std::os::raw::c_int; +pub type __darwin_wctype_t = __uint32_t; +pub type wchar_t = __darwin_wchar_t; +pub type int_least8_t = i8; +pub type int_least16_t = i16; +pub type int_least32_t = i32; +pub type int_least64_t = i64; +pub type uint_least8_t = u8; +pub type uint_least16_t = u16; +pub type uint_least32_t = u32; +pub type uint_least64_t = u64; +pub type int_fast8_t = i8; +pub type int_fast16_t = i16; +pub type int_fast32_t = i32; +pub type int_fast64_t = i64; +pub type uint_fast8_t = u8; +pub type uint_fast16_t = u16; +pub type uint_fast32_t = u32; +pub type uint_fast64_t = u64; +pub type intmax_t = ::std::os::raw::c_long; +pub type uintmax_t = ::std::os::raw::c_ulong; +extern "C" { + pub fn imaxabs(j: intmax_t) -> intmax_t; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct imaxdiv_t { + pub quot: intmax_t, + pub rem: intmax_t, +} +#[test] +fn bindgen_test_layout_imaxdiv_t() { + const UNINIT: ::std::mem::MaybeUninit<imaxdiv_t> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<imaxdiv_t>(), + 16usize, + concat!("Size of: ", stringify!(imaxdiv_t)) + ); + assert_eq!( + ::std::mem::align_of::<imaxdiv_t>(), + 8usize, + concat!("Alignment of ", stringify!(imaxdiv_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(imaxdiv_t), + "::", + stringify!(quot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(imaxdiv_t), + "::", + stringify!(rem) + ) + ); +} +extern "C" { + pub fn imaxdiv(__numer: intmax_t, __denom: intmax_t) -> imaxdiv_t; +} +extern "C" { + pub fn strtoimax( + __nptr: *const ::std::os::raw::c_char, + __endptr: *mut *mut ::std::os::raw::c_char, + __base: ::std::os::raw::c_int, + ) -> intmax_t; +} +extern "C" { + pub fn strtoumax( + __nptr: *const ::std::os::raw::c_char, + __endptr: *mut *mut ::std::os::raw::c_char, + __base: ::std::os::raw::c_int, + ) -> uintmax_t; +} +extern "C" { + pub fn wcstoimax( + __nptr: *const wchar_t, + __endptr: *mut *mut wchar_t, + __base: ::std::os::raw::c_int, + ) -> intmax_t; +} +extern "C" { + pub fn wcstoumax( + __nptr: *const wchar_t, + __endptr: *mut *mut wchar_t, + __base: ::std::os::raw::c_int, + ) -> uintmax_t; +} +pub type u_int8_t = ::std::os::raw::c_uchar; +pub type u_int16_t = ::std::os::raw::c_ushort; +pub type u_int32_t = ::std::os::raw::c_uint; +pub type u_int64_t = ::std::os::raw::c_ulonglong; +pub type register_t = i64; +pub type user_addr_t = u_int64_t; +pub type user_size_t = u_int64_t; +pub type user_ssize_t = i64; +pub type user_long_t = i64; +pub type user_ulong_t = u_int64_t; +pub type user_time_t = i64; +pub type user_off_t = i64; +pub type syscall_arg_t = u_int64_t; +pub type va_list = __darwin_va_list; +extern "C" { + pub fn renameat( + arg1: ::std::os::raw::c_int, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + arg4: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn renamex_np( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_uint, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn renameatx_np( + arg1: ::std::os::raw::c_int, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + arg4: *const ::std::os::raw::c_char, + arg5: ::std::os::raw::c_uint, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn printf(arg1: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; +} +pub type fpos_t = __darwin_off_t; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sbuf { + pub _base: *mut ::std::os::raw::c_uchar, + pub _size: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout___sbuf() { + const UNINIT: ::std::mem::MaybeUninit<__sbuf> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__sbuf>(), + 16usize, + concat!("Size of: ", stringify!(__sbuf)) + ); + assert_eq!( + ::std::mem::align_of::<__sbuf>(), + 8usize, + concat!("Alignment of ", stringify!(__sbuf)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._base) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__sbuf), + "::", + stringify!(_base) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._size) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(__sbuf), + "::", + stringify!(_size) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sFILEX { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sFILE { + pub _p: *mut ::std::os::raw::c_uchar, + pub _r: ::std::os::raw::c_int, + pub _w: ::std::os::raw::c_int, + pub _flags: ::std::os::raw::c_short, + pub _file: ::std::os::raw::c_short, + pub _bf: __sbuf, + pub _lbfsize: ::std::os::raw::c_int, + pub _cookie: *mut ::std::os::raw::c_void, + pub _close: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, + >, + pub _read: ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *mut ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int, + >, + pub _seek: ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: fpos_t, + arg3: ::std::os::raw::c_int, + ) -> fpos_t, + >, + pub _write: ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int, + >, + pub _ub: __sbuf, + pub _extra: *mut __sFILEX, + pub _ur: ::std::os::raw::c_int, + pub _ubuf: [::std::os::raw::c_uchar; 3usize], + pub _nbuf: [::std::os::raw::c_uchar; 1usize], + pub _lb: __sbuf, + pub _blksize: ::std::os::raw::c_int, + pub _offset: fpos_t, +} +#[test] +fn bindgen_test_layout___sFILE() { + const UNINIT: ::std::mem::MaybeUninit<__sFILE> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__sFILE>(), + 152usize, + concat!("Size of: ", stringify!(__sFILE)) + ); + assert_eq!( + ::std::mem::align_of::<__sFILE>(), + 8usize, + concat!("Alignment of ", stringify!(__sFILE)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._p) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_p) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._r) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_r) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._w) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_w) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._flags) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_flags) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._file) as usize - ptr as usize }, + 18usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_file) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._bf) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_bf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._lbfsize) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_lbfsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._cookie) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_cookie) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._close) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_close) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._read) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_read) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._seek) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_seek) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._write) as usize - ptr as usize }, + 80usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_write) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._ub) as usize - ptr as usize }, + 88usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_ub) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._extra) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_extra) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._ur) as usize - ptr as usize }, + 112usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_ur) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._ubuf) as usize - ptr as usize }, + 116usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_ubuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._nbuf) as usize - ptr as usize }, + 119usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_nbuf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._lb) as usize - ptr as usize }, + 120usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_lb) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._blksize) as usize - ptr as usize }, + 136usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_blksize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._offset) as usize - ptr as usize }, + 144usize, + concat!( + "Offset of field: ", + stringify!(__sFILE), + "::", + stringify!(_offset) + ) + ); +} +pub type FILE = __sFILE; +extern "C" { + pub static mut __stdinp: *mut FILE; +} +extern "C" { + pub static mut __stdoutp: *mut FILE; +} +extern "C" { + pub static mut __stderrp: *mut FILE; +} +extern "C" { + pub fn clearerr(arg1: *mut FILE); +} +extern "C" { + pub fn fclose(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn feof(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ferror(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fflush(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fgetc(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fgetpos(arg1: *mut FILE, arg2: *mut fpos_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fgets( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: *mut FILE, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn fopen( + __filename: *const ::std::os::raw::c_char, + __mode: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn fprintf( + arg1: *mut FILE, + arg2: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fputc(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fputs(arg1: *const ::std::os::raw::c_char, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fread( + __ptr: *mut ::std::os::raw::c_void, + __size: ::std::os::raw::c_ulong, + __nitems: ::std::os::raw::c_ulong, + __stream: *mut FILE, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn freopen( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: *mut FILE, + ) -> *mut FILE; +} +extern "C" { + pub fn fscanf( + arg1: *mut FILE, + arg2: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fseek( + arg1: *mut FILE, + arg2: ::std::os::raw::c_long, + arg3: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fsetpos(arg1: *mut FILE, arg2: *const fpos_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ftell(arg1: *mut FILE) -> ::std::os::raw::c_long; +} +extern "C" { + pub fn fwrite( + __ptr: *const ::std::os::raw::c_void, + __size: ::std::os::raw::c_ulong, + __nitems: ::std::os::raw::c_ulong, + __stream: *mut FILE, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn getc(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn getchar() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn gets(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn perror(arg1: *const ::std::os::raw::c_char); +} +extern "C" { + pub fn putc(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn putchar(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn puts(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn remove(arg1: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn rename( + __old: *const ::std::os::raw::c_char, + __new: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn rewind(arg1: *mut FILE); +} +extern "C" { + pub fn scanf(arg1: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn setbuf(arg1: *mut FILE, arg2: *mut ::std::os::raw::c_char); +} +extern "C" { + pub fn setvbuf( + arg1: *mut FILE, + arg2: *mut ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + arg4: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn sprintf( + arg1: *mut ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn sscanf( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn tmpfile() -> *mut FILE; +} +extern "C" { + pub fn tmpnam(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn ungetc(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vfprintf( + arg1: *mut FILE, + arg2: *const ::std::os::raw::c_char, + arg3: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vprintf( + arg1: *const ::std::os::raw::c_char, + arg2: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vsprintf( + arg1: *mut ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ctermid(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn fdopen(arg1: ::std::os::raw::c_int, arg2: *const ::std::os::raw::c_char) -> *mut FILE; +} +extern "C" { + pub fn fileno(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn pclose(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn popen( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn __srget(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __svfscanf( + arg1: *mut FILE, + arg2: *const ::std::os::raw::c_char, + arg3: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __swbuf(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn flockfile(arg1: *mut FILE); +} +extern "C" { + pub fn ftrylockfile(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn funlockfile(arg1: *mut FILE); +} +extern "C" { + pub fn getc_unlocked(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn getchar_unlocked() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn putc_unlocked(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn putchar_unlocked(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn getw(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn putw(arg1: ::std::os::raw::c_int, arg2: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn tempnam( + __dir: *const ::std::os::raw::c_char, + __prefix: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +pub type off_t = __darwin_off_t; +extern "C" { + pub fn fseeko( + __stream: *mut FILE, + __offset: off_t, + __whence: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ftello(__stream: *mut FILE) -> off_t; +} +extern "C" { + pub fn snprintf( + __str: *mut ::std::os::raw::c_char, + __size: ::std::os::raw::c_ulong, + __format: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vfscanf( + __stream: *mut FILE, + __format: *const ::std::os::raw::c_char, + arg1: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vscanf( + __format: *const ::std::os::raw::c_char, + arg1: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vsnprintf( + __str: *mut ::std::os::raw::c_char, + __size: ::std::os::raw::c_ulong, + __format: *const ::std::os::raw::c_char, + arg1: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vsscanf( + __str: *const ::std::os::raw::c_char, + __format: *const ::std::os::raw::c_char, + arg1: __builtin_va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn dprintf( + arg1: ::std::os::raw::c_int, + arg2: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vdprintf( + arg1: ::std::os::raw::c_int, + arg2: *const ::std::os::raw::c_char, + arg3: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn getdelim( + __linep: *mut *mut ::std::os::raw::c_char, + __linecapp: *mut usize, + __delimiter: ::std::os::raw::c_int, + __stream: *mut FILE, + ) -> isize; +} +extern "C" { + pub fn getline( + __linep: *mut *mut ::std::os::raw::c_char, + __linecapp: *mut usize, + __stream: *mut FILE, + ) -> isize; +} +extern "C" { + pub fn fmemopen( + __buf: *mut ::std::os::raw::c_void, + __size: usize, + __mode: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn open_memstream( + __bufp: *mut *mut ::std::os::raw::c_char, + __sizep: *mut usize, + ) -> *mut FILE; +} +extern "C" { + pub static sys_nerr: ::std::os::raw::c_int; +} +extern "C" { + pub static sys_errlist: [*const ::std::os::raw::c_char; 0usize]; +} +extern "C" { + pub fn asprintf( + arg1: *mut *mut ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ctermid_r(arg1: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn fgetln(arg1: *mut FILE, arg2: *mut usize) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn fmtcheck( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + ) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn fpurge(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn setbuffer( + arg1: *mut FILE, + arg2: *mut ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + ); +} +extern "C" { + pub fn setlinebuf(arg1: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn vasprintf( + arg1: *mut *mut ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn funopen( + arg1: *const ::std::os::raw::c_void, + arg2: ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *mut ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int, + >, + arg3: ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int, + >, + arg4: ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: fpos_t, + arg3: ::std::os::raw::c_int, + ) -> fpos_t, + >, + arg5: ::std::option::Option< + unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, + >, + ) -> *mut FILE; +} +extern "C" { + pub fn __sprintf_chk( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: usize, + arg4: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __snprintf_chk( + arg1: *mut ::std::os::raw::c_char, + arg2: usize, + arg3: ::std::os::raw::c_int, + arg4: usize, + arg5: *const ::std::os::raw::c_char, + ... + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __vsprintf_chk( + arg1: *mut ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + arg3: usize, + arg4: *const ::std::os::raw::c_char, + arg5: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __vsnprintf_chk( + arg1: *mut ::std::os::raw::c_char, + arg2: usize, + arg3: ::std::os::raw::c_int, + arg4: usize, + arg5: *const ::std::os::raw::c_char, + arg6: va_list, + ) -> ::std::os::raw::c_int; +} +pub type ct_rune_t = __darwin_ct_rune_t; +pub type rune_t = __darwin_rune_t; +pub type wint_t = __darwin_wint_t; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _RuneEntry { + pub __min: __darwin_rune_t, + pub __max: __darwin_rune_t, + pub __map: __darwin_rune_t, + pub __types: *mut __uint32_t, +} +#[test] +fn bindgen_test_layout__RuneEntry() { + const UNINIT: ::std::mem::MaybeUninit<_RuneEntry> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_RuneEntry>(), + 24usize, + concat!("Size of: ", stringify!(_RuneEntry)) + ); + assert_eq!( + ::std::mem::align_of::<_RuneEntry>(), + 8usize, + concat!("Alignment of ", stringify!(_RuneEntry)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__min) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_RuneEntry), + "::", + stringify!(__min) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__max) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_RuneEntry), + "::", + stringify!(__max) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__map) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_RuneEntry), + "::", + stringify!(__map) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__types) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_RuneEntry), + "::", + stringify!(__types) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _RuneRange { + pub __nranges: ::std::os::raw::c_int, + pub __ranges: *mut _RuneEntry, +} +#[test] +fn bindgen_test_layout__RuneRange() { + const UNINIT: ::std::mem::MaybeUninit<_RuneRange> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_RuneRange>(), + 16usize, + concat!("Size of: ", stringify!(_RuneRange)) + ); + assert_eq!( + ::std::mem::align_of::<_RuneRange>(), + 8usize, + concat!("Alignment of ", stringify!(_RuneRange)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__nranges) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_RuneRange), + "::", + stringify!(__nranges) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__ranges) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_RuneRange), + "::", + stringify!(__ranges) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _RuneCharClass { + pub __name: [::std::os::raw::c_char; 14usize], + pub __mask: __uint32_t, +} +#[test] +fn bindgen_test_layout__RuneCharClass() { + const UNINIT: ::std::mem::MaybeUninit<_RuneCharClass> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_RuneCharClass>(), + 20usize, + concat!("Size of: ", stringify!(_RuneCharClass)) + ); + assert_eq!( + ::std::mem::align_of::<_RuneCharClass>(), + 4usize, + concat!("Alignment of ", stringify!(_RuneCharClass)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__name) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_RuneCharClass), + "::", + stringify!(__name) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__mask) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(_RuneCharClass), + "::", + stringify!(__mask) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _RuneLocale { + pub __magic: [::std::os::raw::c_char; 8usize], + pub __encoding: [::std::os::raw::c_char; 32usize], + pub __sgetrune: ::std::option::Option< + unsafe extern "C" fn( + arg1: *const ::std::os::raw::c_char, + arg2: __darwin_size_t, + arg3: *mut *const ::std::os::raw::c_char, + ) -> __darwin_rune_t, + >, + pub __sputrune: ::std::option::Option< + unsafe extern "C" fn( + arg1: __darwin_rune_t, + arg2: *mut ::std::os::raw::c_char, + arg3: __darwin_size_t, + arg4: *mut *mut ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int, + >, + pub __invalid_rune: __darwin_rune_t, + pub __runetype: [__uint32_t; 256usize], + pub __maplower: [__darwin_rune_t; 256usize], + pub __mapupper: [__darwin_rune_t; 256usize], + pub __runetype_ext: _RuneRange, + pub __maplower_ext: _RuneRange, + pub __mapupper_ext: _RuneRange, + pub __variable: *mut ::std::os::raw::c_void, + pub __variable_len: ::std::os::raw::c_int, + pub __ncharclasses: ::std::os::raw::c_int, + pub __charclasses: *mut _RuneCharClass, +} +#[test] +fn bindgen_test_layout__RuneLocale() { + const UNINIT: ::std::mem::MaybeUninit<_RuneLocale> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_RuneLocale>(), + 3208usize, + concat!("Size of: ", stringify!(_RuneLocale)) + ); + assert_eq!( + ::std::mem::align_of::<_RuneLocale>(), + 8usize, + concat!("Alignment of ", stringify!(_RuneLocale)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__magic) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__magic) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__encoding) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__encoding) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sgetrune) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__sgetrune) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__sputrune) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__sputrune) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__invalid_rune) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__invalid_rune) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__runetype) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__runetype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__maplower) as usize - ptr as usize }, + 1084usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__maplower) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__mapupper) as usize - ptr as usize }, + 2108usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__mapupper) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__runetype_ext) as usize - ptr as usize }, + 3136usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__runetype_ext) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__maplower_ext) as usize - ptr as usize }, + 3152usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__maplower_ext) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__mapupper_ext) as usize - ptr as usize }, + 3168usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__mapupper_ext) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__variable) as usize - ptr as usize }, + 3184usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__variable) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__variable_len) as usize - ptr as usize }, + 3192usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__variable_len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__ncharclasses) as usize - ptr as usize }, + 3196usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__ncharclasses) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).__charclasses) as usize - ptr as usize }, + 3200usize, + concat!( + "Offset of field: ", + stringify!(_RuneLocale), + "::", + stringify!(__charclasses) + ) + ); +} +extern "C" { + pub static mut _DefaultRuneLocale: _RuneLocale; +} +extern "C" { + pub static mut _CurrentRuneLocale: *mut _RuneLocale; +} +extern "C" { + pub fn ___runetype(arg1: __darwin_ct_rune_t) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn ___tolower(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; +} +extern "C" { + pub fn ___toupper(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; +} +extern "C" { + pub fn __maskrune( + arg1: __darwin_ct_rune_t, + arg2: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __toupper(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; +} +extern "C" { + pub fn __tolower(arg1: __darwin_ct_rune_t) -> __darwin_ct_rune_t; +} +extern "C" { + pub fn __assert_rtn( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_int, + arg4: *const ::std::os::raw::c_char, + ) -> !; +} +extern "C" { + pub fn memchr( + __s: *const ::std::os::raw::c_void, + __c: ::std::os::raw::c_int, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memcmp( + __s1: *const ::std::os::raw::c_void, + __s2: *const ::std::os::raw::c_void, + __n: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn memcpy( + __dst: *mut ::std::os::raw::c_void, + __src: *const ::std::os::raw::c_void, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memmove( + __dst: *mut ::std::os::raw::c_void, + __src: *const ::std::os::raw::c_void, + __len: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memset( + __b: *mut ::std::os::raw::c_void, + __c: ::std::os::raw::c_int, + __len: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn strcat( + __s1: *mut ::std::os::raw::c_char, + __s2: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strchr( + __s: *const ::std::os::raw::c_char, + __c: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strcmp( + __s1: *const ::std::os::raw::c_char, + __s2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strcoll( + __s1: *const ::std::os::raw::c_char, + __s2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strcpy( + __dst: *mut ::std::os::raw::c_char, + __src: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strcspn( + __s: *const ::std::os::raw::c_char, + __charset: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn strerror(__errnum: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strlen(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn strncat( + __s1: *mut ::std::os::raw::c_char, + __s2: *const ::std::os::raw::c_char, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strncmp( + __s1: *const ::std::os::raw::c_char, + __s2: *const ::std::os::raw::c_char, + __n: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strncpy( + __dst: *mut ::std::os::raw::c_char, + __src: *const ::std::os::raw::c_char, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strpbrk( + __s: *const ::std::os::raw::c_char, + __charset: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strrchr( + __s: *const ::std::os::raw::c_char, + __c: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strspn( + __s: *const ::std::os::raw::c_char, + __charset: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn strstr( + __big: *const ::std::os::raw::c_char, + __little: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strtok( + __str: *mut ::std::os::raw::c_char, + __sep: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strxfrm( + __s1: *mut ::std::os::raw::c_char, + __s2: *const ::std::os::raw::c_char, + __n: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn strtok_r( + __str: *mut ::std::os::raw::c_char, + __sep: *const ::std::os::raw::c_char, + __lasts: *mut *mut ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strerror_r( + __errnum: ::std::os::raw::c_int, + __strerrbuf: *mut ::std::os::raw::c_char, + __buflen: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strdup(__s1: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn memccpy( + __dst: *mut ::std::os::raw::c_void, + __src: *const ::std::os::raw::c_void, + __c: ::std::os::raw::c_int, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn stpcpy( + __dst: *mut ::std::os::raw::c_char, + __src: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn stpncpy( + __dst: *mut ::std::os::raw::c_char, + __src: *const ::std::os::raw::c_char, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strndup( + __s1: *const ::std::os::raw::c_char, + __n: ::std::os::raw::c_ulong, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strnlen(__s1: *const ::std::os::raw::c_char, __n: usize) -> usize; +} +extern "C" { + pub fn strsignal(__sig: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; +} +pub type rsize_t = __darwin_size_t; +pub type errno_t = ::std::os::raw::c_int; +extern "C" { + pub fn memset_s( + __s: *mut ::std::os::raw::c_void, + __smax: rsize_t, + __c: ::std::os::raw::c_int, + __n: rsize_t, + ) -> errno_t; +} +extern "C" { + pub fn memmem( + __big: *const ::std::os::raw::c_void, + __big_len: usize, + __little: *const ::std::os::raw::c_void, + __little_len: usize, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memset_pattern4( + __b: *mut ::std::os::raw::c_void, + __pattern4: *const ::std::os::raw::c_void, + __len: usize, + ); +} +extern "C" { + pub fn memset_pattern8( + __b: *mut ::std::os::raw::c_void, + __pattern8: *const ::std::os::raw::c_void, + __len: usize, + ); +} +extern "C" { + pub fn memset_pattern16( + __b: *mut ::std::os::raw::c_void, + __pattern16: *const ::std::os::raw::c_void, + __len: usize, + ); +} +extern "C" { + pub fn strcasestr( + __big: *const ::std::os::raw::c_char, + __little: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strnstr( + __big: *const ::std::os::raw::c_char, + __little: *const ::std::os::raw::c_char, + __len: usize, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strlcat( + __dst: *mut ::std::os::raw::c_char, + __source: *const ::std::os::raw::c_char, + __size: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn strlcpy( + __dst: *mut ::std::os::raw::c_char, + __source: *const ::std::os::raw::c_char, + __size: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_ulong; +} +extern "C" { + pub fn strmode(__mode: ::std::os::raw::c_int, __bp: *mut ::std::os::raw::c_char); +} +extern "C" { + pub fn strsep( + __stringp: *mut *mut ::std::os::raw::c_char, + __delim: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn swab( + arg1: *const ::std::os::raw::c_void, + arg2: *mut ::std::os::raw::c_void, + arg3: isize, + ); +} +extern "C" { + pub fn timingsafe_bcmp( + __b1: *const ::std::os::raw::c_void, + __b2: *const ::std::os::raw::c_void, + __len: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strsignal_r( + __sig: ::std::os::raw::c_int, + __strsignalbuf: *mut ::std::os::raw::c_char, + __buflen: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn bcmp( + arg1: *const ::std::os::raw::c_void, + arg2: *const ::std::os::raw::c_void, + arg3: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn bcopy( + arg1: *const ::std::os::raw::c_void, + arg2: *mut ::std::os::raw::c_void, + arg3: usize, + ); +} +extern "C" { + pub fn bzero(arg1: *mut ::std::os::raw::c_void, arg2: ::std::os::raw::c_ulong); +} +extern "C" { + pub fn index( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn rindex( + arg1: *const ::std::os::raw::c_char, + arg2: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn ffs(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strcasecmp( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strncasecmp( + arg1: *const ::std::os::raw::c_char, + arg2: *const ::std::os::raw::c_char, + arg3: ::std::os::raw::c_ulong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ffsl(arg1: ::std::os::raw::c_long) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ffsll(arg1: ::std::os::raw::c_longlong) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fls(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn flsl(arg1: ::std::os::raw::c_long) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn flsll(arg1: ::std::os::raw::c_longlong) -> ::std::os::raw::c_int; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cursor { + pub start: *mut ::std::os::raw::c_uchar, + pub p: *mut ::std::os::raw::c_uchar, + pub end: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_cursor() { + const UNINIT: ::std::mem::MaybeUninit<cursor> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<cursor>(), + 24usize, + concat!("Size of: ", stringify!(cursor)) + ); + assert_eq!( + ::std::mem::align_of::<cursor>(), + 8usize, + concat!("Alignment of ", stringify!(cursor)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(cursor), + "::", + stringify!(start) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(cursor), "::", stringify!(p)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(cursor), + "::", + stringify!(end) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_str_block { + pub str_: *const ::std::os::raw::c_char, + pub len: u32, +} +#[test] +fn bindgen_test_layout_ndb_str_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_str_block> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_str_block>(), + 16usize, + concat!("Size of: ", stringify!(ndb_str_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_str_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_str_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str_block), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_str_block), + "::", + stringify!(len) + ) + ); +} +pub type str_block_t = ndb_str_block; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_json_parser { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_blocks { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_note { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tag { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tags { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_lmdb { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_packed_str { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bolt11 { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tag_ptr { + pub ptr: *mut ndb_tag, +} +#[test] +fn bindgen_test_layout_ndb_tag_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tag_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tag_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_tag_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tag_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tag_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tag_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tags_ptr { + pub ptr: *mut ndb_tags, +} +#[test] +fn bindgen_test_layout_ndb_tags_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tags_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tags_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_tags_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tags_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tags_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tags_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_block_ptr { + pub ptr: *mut ndb_block, +} +#[test] +fn bindgen_test_layout_ndb_block_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_block_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_blocks_ptr { + pub ptr: *mut ndb_blocks, +} +#[test] +fn bindgen_test_layout_ndb_blocks_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_blocks_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_blocks_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_blocks_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_blocks_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_blocks_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_blocks_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_note_ptr { + pub ptr: *mut ndb_note, +} +#[test] +fn bindgen_test_layout_ndb_note_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_note_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_note_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_note_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_note_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_note_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_note_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_t { + pub ndb: *mut ndb, +} +#[test] +fn bindgen_test_layout_ndb_t() { + const UNINIT: ::std::mem::MaybeUninit<ndb_t> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_t>(), + 8usize, + concat!("Size of: ", stringify!(ndb_t)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_t>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ndb) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_t), + "::", + stringify!(ndb) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_str { + pub flag: ::std::os::raw::c_uchar, + pub __bindgen_anon_1: ndb_str__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_str__bindgen_ty_1 { + pub str_: *const ::std::os::raw::c_char, + pub id: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_ndb_str__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_str__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_str__bindgen_ty_1>(), + 8usize, + concat!("Size of: ", stringify!(ndb_str__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_str__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_str__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str__bindgen_ty_1), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str__bindgen_ty_1), + "::", + stringify!(id) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_str() { + const UNINIT: ::std::mem::MaybeUninit<ndb_str> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_str>(), + 16usize, + concat!("Size of: ", stringify!(ndb_str)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_str>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_str)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).flag) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str), + "::", + stringify!(flag) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_keypair { + pub pubkey: [::std::os::raw::c_uchar; 32usize], + pub secret: [::std::os::raw::c_uchar; 32usize], + pub pair: [::std::os::raw::c_uchar; 96usize], +} +#[test] +fn bindgen_test_layout_ndb_keypair() { + const UNINIT: ::std::mem::MaybeUninit<ndb_keypair> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_keypair>(), + 160usize, + concat!("Size of: ", stringify!(ndb_keypair)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_keypair>(), + 1usize, + concat!("Alignment of ", stringify!(ndb_keypair)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_keypair), + "::", + stringify!(pubkey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).secret) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_keypair), + "::", + stringify!(secret) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pair) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ndb_keypair), + "::", + stringify!(pair) + ) + ); +} +pub type ndb_idres = i32; +pub type ndb_id_fn = ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *const ::std::os::raw::c_char, + ) -> ndb_idres, +>; +pub type ndb_sub_fn = + ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, subid: u64)>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_id_cb { + pub fn_: ndb_id_fn, + pub data: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ndb_id_cb() { + const UNINIT: ::std::mem::MaybeUninit<ndb_id_cb> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_id_cb>(), + 16usize, + concat!("Size of: ", stringify!(ndb_id_cb)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_id_cb>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_id_cb)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fn_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_id_cb), + "::", + stringify!(fn_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_id_cb), + "::", + stringify!(data) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_txn { + pub lmdb: *mut ndb_lmdb, + pub mdb_txn: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ndb_txn() { + const UNINIT: ::std::mem::MaybeUninit<ndb_txn> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_txn>(), + 16usize, + concat!("Size of: ", stringify!(ndb_txn)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_txn>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_txn)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmdb) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_txn), + "::", + stringify!(lmdb) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mdb_txn) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_txn), + "::", + stringify!(mdb_txn) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_event { + pub note: *mut ndb_note, +} +#[test] +fn bindgen_test_layout_ndb_event() { + const UNINIT: ::std::mem::MaybeUninit<ndb_event> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_event>(), + 8usize, + concat!("Size of: ", stringify!(ndb_event)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_event>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_event)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_event), + "::", + stringify!(note) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_command_result { + pub ok: ::std::os::raw::c_int, + pub msg: *const ::std::os::raw::c_char, + pub msglen: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_command_result() { + const UNINIT: ::std::mem::MaybeUninit<ndb_command_result> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_command_result>(), + 24usize, + concat!("Size of: ", stringify!(ndb_command_result)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_command_result>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_command_result)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ok) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_command_result), + "::", + stringify!(ok) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).msg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_command_result), + "::", + stringify!(msg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).msglen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_command_result), + "::", + stringify!(msglen) + ) + ); +} +pub const fce_type_NDB_FCE_EVENT: fce_type = 1; +pub type fce_type = ::std::os::raw::c_uint; +pub const tce_type_NDB_TCE_EVENT: tce_type = 1; +pub const tce_type_NDB_TCE_OK: tce_type = 2; +pub const tce_type_NDB_TCE_NOTICE: tce_type = 3; +pub const tce_type_NDB_TCE_EOSE: tce_type = 4; +pub const tce_type_NDB_TCE_AUTH: tce_type = 5; +pub type tce_type = ::std::os::raw::c_uint; +pub const ndb_ingest_filter_action_NDB_INGEST_REJECT: ndb_ingest_filter_action = 0; +pub const ndb_ingest_filter_action_NDB_INGEST_ACCEPT: ndb_ingest_filter_action = 1; +pub const ndb_ingest_filter_action_NDB_INGEST_SKIP_VALIDATION: ndb_ingest_filter_action = 2; +pub type ndb_ingest_filter_action = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_search_key { + pub search: [::std::os::raw::c_char; 24usize], + pub id: [::std::os::raw::c_uchar; 32usize], + pub timestamp: u64, +} +#[test] +fn bindgen_test_layout_ndb_search_key() { + const UNINIT: ::std::mem::MaybeUninit<ndb_search_key> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_search_key>(), + 64usize, + concat!("Size of: ", stringify!(ndb_search_key)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_search_key>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_search_key)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).search) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_search_key), + "::", + stringify!(search) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_search_key), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ndb_search_key), + "::", + stringify!(timestamp) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_search { + pub key: *mut ndb_search_key, + pub profile_key: u64, + pub cursor: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ndb_search() { + const UNINIT: ::std::mem::MaybeUninit<ndb_search> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_search>(), + 24usize, + concat!("Size of: ", stringify!(ndb_search)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_search>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_search)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_search), + "::", + stringify!(key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).profile_key) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_search), + "::", + stringify!(profile_key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cursor) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_search), + "::", + stringify!(cursor) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_fce { + pub evtype: fce_type, + pub __bindgen_anon_1: ndb_fce__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_fce__bindgen_ty_1 { + pub event: ndb_event, +} +#[test] +fn bindgen_test_layout_ndb_fce__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_fce__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_fce__bindgen_ty_1>(), + 8usize, + concat!("Size of: ", stringify!(ndb_fce__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_fce__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_fce__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_fce__bindgen_ty_1), + "::", + stringify!(event) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_fce() { + const UNINIT: ::std::mem::MaybeUninit<ndb_fce> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_fce>(), + 16usize, + concat!("Size of: ", stringify!(ndb_fce)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_fce>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_fce)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).evtype) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_fce), + "::", + stringify!(evtype) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_tce { + pub evtype: tce_type, + pub subid: *const ::std::os::raw::c_char, + pub subid_len: ::std::os::raw::c_int, + pub __bindgen_anon_1: ndb_tce__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_tce__bindgen_ty_1 { + pub event: ndb_event, + pub command_result: ndb_command_result, +} +#[test] +fn bindgen_test_layout_ndb_tce__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tce__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tce__bindgen_ty_1>(), + 24usize, + concat!("Size of: ", stringify!(ndb_tce__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tce__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tce__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce__bindgen_ty_1), + "::", + stringify!(event) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).command_result) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce__bindgen_ty_1), + "::", + stringify!(command_result) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_tce() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tce> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tce>(), + 48usize, + concat!("Size of: ", stringify!(ndb_tce)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tce>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tce)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).evtype) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce), + "::", + stringify!(evtype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).subid) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce), + "::", + stringify!(subid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).subid_len) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce), + "::", + stringify!(subid_len) + ) + ); +} +pub type ndb_ingest_filter_fn = ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *mut ndb_note, + ) -> ndb_ingest_filter_action, +>; +pub const ndb_filter_fieldtype_NDB_FILTER_IDS: ndb_filter_fieldtype = 1; +pub const ndb_filter_fieldtype_NDB_FILTER_AUTHORS: ndb_filter_fieldtype = 2; +pub const ndb_filter_fieldtype_NDB_FILTER_KINDS: ndb_filter_fieldtype = 3; +pub const ndb_filter_fieldtype_NDB_FILTER_TAGS: ndb_filter_fieldtype = 4; +pub const ndb_filter_fieldtype_NDB_FILTER_SINCE: ndb_filter_fieldtype = 5; +pub const ndb_filter_fieldtype_NDB_FILTER_UNTIL: ndb_filter_fieldtype = 6; +pub const ndb_filter_fieldtype_NDB_FILTER_LIMIT: ndb_filter_fieldtype = 7; +pub type ndb_filter_fieldtype = ::std::os::raw::c_uint; +pub const ndb_generic_element_type_NDB_ELEMENT_UNKNOWN: ndb_generic_element_type = 0; +pub const ndb_generic_element_type_NDB_ELEMENT_STRING: ndb_generic_element_type = 1; +pub const ndb_generic_element_type_NDB_ELEMENT_ID: ndb_generic_element_type = 2; +pub const ndb_generic_element_type_NDB_ELEMENT_INT: ndb_generic_element_type = 3; +pub type ndb_generic_element_type = ::std::os::raw::c_uint; +pub const ndb_search_order_NDB_ORDER_DESCENDING: ndb_search_order = 0; +pub const ndb_search_order_NDB_ORDER_ASCENDING: ndb_search_order = 1; +pub type ndb_search_order = ::std::os::raw::c_uint; +pub const ndb_dbs_NDB_DB_NOTE: ndb_dbs = 0; +pub const ndb_dbs_NDB_DB_META: ndb_dbs = 1; +pub const ndb_dbs_NDB_DB_PROFILE: ndb_dbs = 2; +pub const ndb_dbs_NDB_DB_NOTE_ID: ndb_dbs = 3; +pub const ndb_dbs_NDB_DB_PROFILE_PK: ndb_dbs = 4; +pub const ndb_dbs_NDB_DB_NDB_META: ndb_dbs = 5; +pub const ndb_dbs_NDB_DB_PROFILE_SEARCH: ndb_dbs = 6; +pub const ndb_dbs_NDB_DB_PROFILE_LAST_FETCH: ndb_dbs = 7; +pub const ndb_dbs_NDB_DB_NOTE_KIND: ndb_dbs = 8; +pub const ndb_dbs_NDB_DB_NOTE_TEXT: ndb_dbs = 9; +pub const ndb_dbs_NDB_DB_NOTE_BLOCKS: ndb_dbs = 10; +pub const ndb_dbs_NDB_DB_NOTE_TAGS: ndb_dbs = 11; +pub const ndb_dbs_NDB_DBS: ndb_dbs = 12; +pub type ndb_dbs = ::std::os::raw::c_uint; +pub const ndb_common_kind_NDB_CKIND_PROFILE: ndb_common_kind = 0; +pub const ndb_common_kind_NDB_CKIND_TEXT: ndb_common_kind = 1; +pub const ndb_common_kind_NDB_CKIND_CONTACTS: ndb_common_kind = 2; +pub const ndb_common_kind_NDB_CKIND_DM: ndb_common_kind = 3; +pub const ndb_common_kind_NDB_CKIND_DELETE: ndb_common_kind = 4; +pub const ndb_common_kind_NDB_CKIND_REPOST: ndb_common_kind = 5; +pub const ndb_common_kind_NDB_CKIND_REACTION: ndb_common_kind = 6; +pub const ndb_common_kind_NDB_CKIND_ZAP: ndb_common_kind = 7; +pub const ndb_common_kind_NDB_CKIND_ZAP_REQUEST: ndb_common_kind = 8; +pub const ndb_common_kind_NDB_CKIND_NWC_REQUEST: ndb_common_kind = 9; +pub const ndb_common_kind_NDB_CKIND_NWC_RESPONSE: ndb_common_kind = 10; +pub const ndb_common_kind_NDB_CKIND_HTTP_AUTH: ndb_common_kind = 11; +pub const ndb_common_kind_NDB_CKIND_LIST: ndb_common_kind = 12; +pub const ndb_common_kind_NDB_CKIND_LONGFORM: ndb_common_kind = 13; +pub const ndb_common_kind_NDB_CKIND_STATUS: ndb_common_kind = 14; +pub const ndb_common_kind_NDB_CKIND_COUNT: ndb_common_kind = 15; +pub type ndb_common_kind = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_builder { + pub mem: cursor, + pub note_cur: cursor, + pub strings: cursor, + pub str_indices: cursor, + pub note: *mut ndb_note, + pub current_tag: *mut ndb_tag, +} +#[test] +fn bindgen_test_layout_ndb_builder() { + const UNINIT: ::std::mem::MaybeUninit<ndb_builder> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_builder>(), + 112usize, + concat!("Size of: ", stringify!(ndb_builder)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_builder>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_builder)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(mem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_cur) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(note_cur) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strings) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(strings) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_indices) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(str_indices) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).current_tag) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(current_tag) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_iterator { + pub note: *mut ndb_note, + pub tag: *mut ndb_tag, + pub index: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_iterator() { + const UNINIT: ::std::mem::MaybeUninit<ndb_iterator> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_iterator>(), + 24usize, + concat!("Size of: ", stringify!(ndb_iterator)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_iterator>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_iterator)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_iterator), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_iterator), + "::", + stringify!(tag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).index) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_iterator), + "::", + stringify!(index) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_filter_string { + pub string: *const ::std::os::raw::c_char, + pub len: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_filter_string() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_string> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_string>(), + 16usize, + concat!("Size of: ", stringify!(ndb_filter_string)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_string>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter_string)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).string) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_string), + "::", + stringify!(string) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_string), + "::", + stringify!(len) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_filter_element { + pub string: ndb_filter_string, + pub id: *const ::std::os::raw::c_uchar, + pub integer: u64, +} +#[test] +fn bindgen_test_layout_ndb_filter_element() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_element> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_element>(), + 16usize, + concat!("Size of: ", stringify!(ndb_filter_element)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_element>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter_element)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).string) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_element), + "::", + stringify!(string) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_element), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).integer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_element), + "::", + stringify!(integer) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_filter_field { + pub type_: ndb_filter_fieldtype, + pub elem_type: ndb_generic_element_type, + pub tag: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_ndb_filter_field() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_field> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_field>(), + 12usize, + concat!("Size of: ", stringify!(ndb_filter_field)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_field>(), + 4usize, + concat!("Alignment of ", stringify!(ndb_filter_field)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_field), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elem_type) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_field), + "::", + stringify!(elem_type) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_field), + "::", + stringify!(tag) + ) + ); +} +#[repr(C)] +#[derive(Debug)] +pub struct ndb_filter_elements { + pub field: ndb_filter_field, + pub count: ::std::os::raw::c_int, + pub elements: __IncompleteArrayField<u64>, +} +#[test] +fn bindgen_test_layout_ndb_filter_elements() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_elements> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_elements>(), + 16usize, + concat!("Size of: ", stringify!(ndb_filter_elements)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_elements>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter_elements)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_elements), + "::", + stringify!(field) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_elements), + "::", + stringify!(count) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_elements), + "::", + stringify!(elements) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_filter { + pub elem_buf: cursor, + pub data_buf: cursor, + pub num_elements: ::std::os::raw::c_int, + pub finalized: ::std::os::raw::c_int, + pub current: ::std::os::raw::c_int, + pub elements: [::std::os::raw::c_int; 7usize], +} +#[test] +fn bindgen_test_layout_ndb_filter() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter>(), + 88usize, + concat!("Size of: ", stringify!(ndb_filter)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elem_buf) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(elem_buf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data_buf) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(data_buf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_elements) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(num_elements) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).finalized) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(finalized) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).current) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(current) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(elements) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_config { + pub flags: ::std::os::raw::c_int, + pub ingester_threads: ::std::os::raw::c_int, + pub mapsize: usize, + pub filter_context: *mut ::std::os::raw::c_void, + pub ingest_filter: ndb_ingest_filter_fn, + pub sub_cb_ctx: *mut ::std::os::raw::c_void, + pub sub_cb: ndb_sub_fn, +} +#[test] +fn bindgen_test_layout_ndb_config() { + const UNINIT: ::std::mem::MaybeUninit<ndb_config> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_config>(), + 48usize, + concat!("Size of: ", stringify!(ndb_config)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_config>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_config)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ingester_threads) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(ingester_threads) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mapsize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(mapsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).filter_context) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(filter_context) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ingest_filter) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(ingest_filter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sub_cb_ctx) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(sub_cb_ctx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sub_cb) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(sub_cb) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_config { + pub order: ndb_search_order, + pub limit: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_text_search_config() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_config> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_config>(), + 8usize, + concat!("Size of: ", stringify!(ndb_text_search_config)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_config>(), + 4usize, + concat!("Alignment of ", stringify!(ndb_text_search_config)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).order) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_config), + "::", + stringify!(order) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).limit) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_config), + "::", + stringify!(limit) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_stat_counts { + pub key_size: usize, + pub value_size: usize, + pub count: usize, +} +#[test] +fn bindgen_test_layout_ndb_stat_counts() { + const UNINIT: ::std::mem::MaybeUninit<ndb_stat_counts> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_stat_counts>(), + 24usize, + concat!("Size of: ", stringify!(ndb_stat_counts)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_stat_counts>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_stat_counts)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key_size) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat_counts), + "::", + stringify!(key_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).value_size) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat_counts), + "::", + stringify!(value_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat_counts), + "::", + stringify!(count) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_stat { + pub dbs: [ndb_stat_counts; 12usize], + pub common_kinds: [ndb_stat_counts; 15usize], + pub other_kinds: ndb_stat_counts, +} +#[test] +fn bindgen_test_layout_ndb_stat() { + const UNINIT: ::std::mem::MaybeUninit<ndb_stat> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_stat>(), + 672usize, + concat!("Size of: ", stringify!(ndb_stat)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_stat>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_stat)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dbs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat), + "::", + stringify!(dbs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).common_kinds) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat), + "::", + stringify!(common_kinds) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).other_kinds) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat), + "::", + stringify!(other_kinds) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_key { + pub str_len: ::std::os::raw::c_int, + pub str_: *const ::std::os::raw::c_char, + pub timestamp: u64, + pub note_id: u64, + pub word_index: u64, +} +#[test] +fn bindgen_test_layout_ndb_text_search_key() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_key> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_key>(), + 40usize, + concat!("Size of: ", stringify!(ndb_text_search_key)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_key>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_text_search_key)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_len) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(str_len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(timestamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_id) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(note_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).word_index) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(word_index) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_result { + pub key: ndb_text_search_key, + pub prefix_chars: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_text_search_result() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_result> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_result>(), + 48usize, + concat!("Size of: ", stringify!(ndb_text_search_result)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_result>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_text_search_result)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_result), + "::", + stringify!(key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).prefix_chars) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_result), + "::", + stringify!(prefix_chars) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_results { + pub results: [ndb_text_search_result; 128usize], + pub num_results: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_text_search_results() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_results> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_results>(), + 6152usize, + concat!("Size of: ", stringify!(ndb_text_search_results)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_results>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_text_search_results)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).results) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_results), + "::", + stringify!(results) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_results) as usize - ptr as usize }, + 6144usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_results), + "::", + stringify!(num_results) + ) + ); +} +pub const ndb_block_type_BLOCK_HASHTAG: ndb_block_type = 1; +pub const ndb_block_type_BLOCK_TEXT: ndb_block_type = 2; +pub const ndb_block_type_BLOCK_MENTION_INDEX: ndb_block_type = 3; +pub const ndb_block_type_BLOCK_MENTION_BECH32: ndb_block_type = 4; +pub const ndb_block_type_BLOCK_URL: ndb_block_type = 5; +pub const ndb_block_type_BLOCK_INVOICE: ndb_block_type = 6; +pub type ndb_block_type = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_relays { + pub relays: [ndb_str_block; 24usize], + pub num_relays: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_relays() { + const UNINIT: ::std::mem::MaybeUninit<ndb_relays> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_relays>(), + 392usize, + concat!("Size of: ", stringify!(ndb_relays)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_relays>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_relays)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_relays), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_relays) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(ndb_relays), + "::", + stringify!(num_relays) + ) + ); +} +pub const nostr_bech32_type_NOSTR_BECH32_NOTE: nostr_bech32_type = 1; +pub const nostr_bech32_type_NOSTR_BECH32_NPUB: nostr_bech32_type = 2; +pub const nostr_bech32_type_NOSTR_BECH32_NPROFILE: nostr_bech32_type = 3; +pub const nostr_bech32_type_NOSTR_BECH32_NEVENT: nostr_bech32_type = 4; +pub const nostr_bech32_type_NOSTR_BECH32_NRELAY: nostr_bech32_type = 5; +pub const nostr_bech32_type_NOSTR_BECH32_NADDR: nostr_bech32_type = 6; +pub const nostr_bech32_type_NOSTR_BECH32_NSEC: nostr_bech32_type = 7; +pub type nostr_bech32_type = ::std::os::raw::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_note { + pub event_id: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_note() { + const UNINIT: ::std::mem::MaybeUninit<bech32_note> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_note>(), + 8usize, + concat!("Size of: ", stringify!(bech32_note)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_note>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_note)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event_id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_note), + "::", + stringify!(event_id) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_npub { + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_npub() { + const UNINIT: ::std::mem::MaybeUninit<bech32_npub> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_npub>(), + 8usize, + concat!("Size of: ", stringify!(bech32_npub)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_npub>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_npub)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_npub), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nsec { + pub nsec: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_nsec() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nsec> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nsec>(), + 8usize, + concat!("Size of: ", stringify!(bech32_nsec)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nsec>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nsec)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsec) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nsec), + "::", + stringify!(nsec) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nevent { + pub relays: ndb_relays, + pub event_id: *const ::std::os::raw::c_uchar, + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_nevent() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nevent> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nevent>(), + 408usize, + concat!("Size of: ", stringify!(bech32_nevent)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nevent>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nevent)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nevent), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event_id) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(bech32_nevent), + "::", + stringify!(event_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(bech32_nevent), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nprofile { + pub relays: ndb_relays, + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_nprofile() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nprofile> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nprofile>(), + 400usize, + concat!("Size of: ", stringify!(bech32_nprofile)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nprofile>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nprofile)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nprofile), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(bech32_nprofile), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_naddr { + pub relays: ndb_relays, + pub identifier: ndb_str_block, + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_naddr() { + const UNINIT: ::std::mem::MaybeUninit<bech32_naddr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_naddr>(), + 416usize, + concat!("Size of: ", stringify!(bech32_naddr)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_naddr>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_naddr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_naddr), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).identifier) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(bech32_naddr), + "::", + stringify!(identifier) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(bech32_naddr), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nrelay { + pub relay: ndb_str_block, +} +#[test] +fn bindgen_test_layout_bech32_nrelay() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nrelay> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nrelay>(), + 16usize, + concat!("Size of: ", stringify!(bech32_nrelay)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nrelay>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nrelay)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nrelay), + "::", + stringify!(relay) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct nostr_bech32 { + pub type_: nostr_bech32_type, + pub __bindgen_anon_1: nostr_bech32__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union nostr_bech32__bindgen_ty_1 { + pub note: bech32_note, + pub npub: bech32_npub, + pub nsec: bech32_nsec, + pub nevent: bech32_nevent, + pub nprofile: bech32_nprofile, + pub naddr: bech32_naddr, + pub nrelay: bech32_nrelay, +} +#[test] +fn bindgen_test_layout_nostr_bech32__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<nostr_bech32__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<nostr_bech32__bindgen_ty_1>(), + 416usize, + concat!("Size of: ", stringify!(nostr_bech32__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<nostr_bech32__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(nostr_bech32__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).npub) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(npub) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsec) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nsec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nevent) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nevent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nprofile) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nprofile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).naddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(naddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nrelay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nrelay) + ) + ); +} +#[test] +fn bindgen_test_layout_nostr_bech32() { + const UNINIT: ::std::mem::MaybeUninit<nostr_bech32> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<nostr_bech32>(), + 424usize, + concat!("Size of: ", stringify!(nostr_bech32)) + ); + assert_eq!( + ::std::mem::align_of::<nostr_bech32>(), + 8usize, + concat!("Alignment of ", stringify!(nostr_bech32)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32), + "::", + stringify!(type_) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_mention_bech32_block { + pub str_: ndb_str_block, + pub bech32: nostr_bech32, +} +#[test] +fn bindgen_test_layout_ndb_mention_bech32_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_mention_bech32_block> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_mention_bech32_block>(), + 440usize, + concat!("Size of: ", stringify!(ndb_mention_bech32_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_mention_bech32_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_mention_bech32_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_mention_bech32_block), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bech32) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_mention_bech32_block), + "::", + stringify!(bech32) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_invoice { + pub version: ::std::os::raw::c_uchar, + pub amount: u64, + pub timestamp: u64, + pub expiry: u64, + pub description: *mut ::std::os::raw::c_char, + pub description_hash: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_ndb_invoice() { + const UNINIT: ::std::mem::MaybeUninit<ndb_invoice> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_invoice>(), + 48usize, + concat!("Size of: ", stringify!(ndb_invoice)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_invoice>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_invoice)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).amount) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(amount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(timestamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).expiry) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(expiry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).description) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(description) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).description_hash) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(description_hash) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_invoice_block { + pub invstr: ndb_str_block, + pub invoice: ndb_invoice, +} +#[test] +fn bindgen_test_layout_ndb_invoice_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_invoice_block> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_invoice_block>(), + 64usize, + concat!("Size of: ", stringify!(ndb_invoice_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_invoice_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_invoice_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).invstr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice_block), + "::", + stringify!(invstr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).invoice) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice_block), + "::", + stringify!(invoice) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_block { + pub type_: ndb_block_type, + pub block: ndb_block__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_block__bindgen_ty_1 { + pub str_: ndb_str_block, + pub invoice: ndb_invoice_block, + pub mention_bech32: ndb_mention_bech32_block, + pub mention_index: u32, +} +#[test] +fn bindgen_test_layout_ndb_block__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block__bindgen_ty_1>(), + 440usize, + concat!("Size of: ", stringify!(ndb_block__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).invoice) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(invoice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mention_bech32) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(mention_bech32) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mention_index) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(mention_index) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block>(), + 448usize, + concat!("Size of: ", stringify!(ndb_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_block), + "::", + stringify!(block) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_block_iterator { + pub content: *const ::std::os::raw::c_char, + pub blocks: *mut ndb_blocks, + pub block: ndb_block, + pub p: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_ndb_block_iterator() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block_iterator> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block_iterator>(), + 472usize, + concat!("Size of: ", stringify!(ndb_block_iterator)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block_iterator>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block_iterator)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).content) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(content) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).blocks) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(blocks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(block) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(p) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_query_result { + pub note: *mut ndb_note, + pub note_size: u64, + pub note_id: u64, +} +#[test] +fn bindgen_test_layout_ndb_query_result() { + const UNINIT: ::std::mem::MaybeUninit<ndb_query_result> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_query_result>(), + 24usize, + concat!("Size of: ", stringify!(ndb_query_result)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_query_result>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_query_result)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_result), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_size) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_result), + "::", + stringify!(note_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_id) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_result), + "::", + stringify!(note_id) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_query_results { + pub cur: cursor, +} +#[test] +fn bindgen_test_layout_ndb_query_results() { + const UNINIT: ::std::mem::MaybeUninit<ndb_query_results> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_query_results>(), + 24usize, + concat!("Size of: ", stringify!(ndb_query_results)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_query_results>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_query_results)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cur) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_results), + "::", + stringify!(cur) + ) + ); +} +extern "C" { + pub fn ndb_default_config(arg1: *mut ndb_config); +} +extern "C" { + pub fn ndb_config_set_ingest_threads(config: *mut ndb_config, threads: ::std::os::raw::c_int); +} +extern "C" { + pub fn ndb_config_set_flags(config: *mut ndb_config, flags: ::std::os::raw::c_int); +} +extern "C" { + pub fn ndb_config_set_mapsize(config: *mut ndb_config, mapsize: usize); +} +extern "C" { + pub fn ndb_config_set_ingest_filter( + config: *mut ndb_config, + fn_: ndb_ingest_filter_fn, + arg1: *mut ::std::os::raw::c_void, + ); +} +extern "C" { + pub fn ndb_config_set_subscription_callback( + config: *mut ndb_config, + fn_: ndb_sub_fn, + ctx: *mut ::std::os::raw::c_void, + ); +} +extern "C" { + pub fn ndb_calculate_id( + note: *mut ndb_note, + buf: *mut ::std::os::raw::c_uchar, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_sign_id( + keypair: *mut ndb_keypair, + id: *mut ::std::os::raw::c_uchar, + sig: *mut ::std::os::raw::c_uchar, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_create_keypair(key: *mut ndb_keypair) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_decode_key( + secstr: *const ::std::os::raw::c_char, + keypair: *mut ndb_keypair, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_note_verify( + secp_ctx: *mut ::std::os::raw::c_void, + pubkey: *mut ::std::os::raw::c_uchar, + id: *mut ::std::os::raw::c_uchar, + signature: *mut ::std::os::raw::c_uchar, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_init( + ndb: *mut *mut ndb, + dbdir: *const ::std::os::raw::c_char, + arg1: *const ndb_config, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_db_version(ndb: *mut ndb) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_event( + arg1: *mut ndb, + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_events( + arg1: *mut ndb, + ldjson: *const ::std::os::raw::c_char, + len: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_events_stream(arg1: *mut ndb, fp: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_client_event( + arg1: *mut ndb, + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_client_events( + arg1: *mut ndb, + json: *const ::std::os::raw::c_char, + len: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_begin_query(arg1: *mut ndb, arg2: *mut ndb_txn) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_search_profile( + txn: *mut ndb_txn, + search: *mut ndb_search, + query: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_search_profile_next(search: *mut ndb_search) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_search_profile_end(search: *mut ndb_search); +} +extern "C" { + pub fn ndb_end_query(arg1: *mut ndb_txn) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_write_last_profile_fetch( + ndb: *mut ndb, + pubkey: *const ::std::os::raw::c_uchar, + fetched_at: u64, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_read_last_profile_fetch( + txn: *mut ndb_txn, + pubkey: *const ::std::os::raw::c_uchar, + ) -> u64; +} +extern "C" { + pub fn ndb_get_profile_by_pubkey( + txn: *mut ndb_txn, + pubkey: *const ::std::os::raw::c_uchar, + len: *mut usize, + primkey: *mut u64, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn ndb_get_profile_by_key( + txn: *mut ndb_txn, + key: u64, + len: *mut usize, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn ndb_get_notekey_by_id(txn: *mut ndb_txn, id: *const ::std::os::raw::c_uchar) -> u64; +} +extern "C" { + pub fn ndb_get_profilekey_by_pubkey( + txn: *mut ndb_txn, + id: *const ::std::os::raw::c_uchar, + ) -> u64; +} +extern "C" { + pub fn ndb_get_note_by_id( + txn: *mut ndb_txn, + id: *const ::std::os::raw::c_uchar, + len: *mut usize, + primkey: *mut u64, + ) -> *mut ndb_note; +} +extern "C" { + pub fn ndb_get_note_by_key(txn: *mut ndb_txn, key: u64, len: *mut usize) -> *mut ndb_note; +} +extern "C" { + pub fn ndb_get_note_meta( + txn: *mut ndb_txn, + id: *const ::std::os::raw::c_uchar, + len: *mut usize, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn ndb_destroy(arg1: *mut ndb); +} +extern "C" { + pub fn ndb_parse_json_note( + arg1: *mut ndb_json_parser, + arg2: *mut *mut ndb_note, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_client_event_from_json( + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + fce: *mut ndb_fce, + buf: *mut ::std::os::raw::c_uchar, + bufsize: ::std::os::raw::c_int, + cb: *mut ndb_id_cb, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_ws_event_from_json( + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + tce: *mut ndb_tce, + buf: *mut ::std::os::raw::c_uchar, + bufsize: ::std::os::raw::c_int, + arg1: *mut ndb_id_cb, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_note_from_json( + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + arg1: *mut *mut ndb_note, + buf: *mut ::std::os::raw::c_uchar, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_init( + builder: *mut ndb_builder, + buf: *mut ::std::os::raw::c_uchar, + bufsize: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_finalize( + builder: *mut ndb_builder, + note: *mut *mut ndb_note, + privkey: *mut ndb_keypair, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_set_content( + builder: *mut ndb_builder, + content: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_set_created_at(builder: *mut ndb_builder, created_at: u64); +} +extern "C" { + pub fn ndb_builder_set_sig(builder: *mut ndb_builder, sig: *mut ::std::os::raw::c_uchar); +} +extern "C" { + pub fn ndb_builder_set_pubkey(builder: *mut ndb_builder, pubkey: *mut ::std::os::raw::c_uchar); +} +extern "C" { + pub fn ndb_builder_set_id(builder: *mut ndb_builder, id: *mut ::std::os::raw::c_uchar); +} +extern "C" { + pub fn ndb_builder_set_kind(builder: *mut ndb_builder, kind: u32); +} +extern "C" { + pub fn ndb_builder_new_tag(builder: *mut ndb_builder) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_push_tag_str( + builder: *mut ndb_builder, + str_: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_init(arg1: *mut ndb_filter) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_add_id_element( + arg1: *mut ndb_filter, + id: *const ::std::os::raw::c_uchar, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_add_int_element(arg1: *mut ndb_filter, integer: u64) + -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_add_str_element( + arg1: *mut ndb_filter, + str_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_eq(arg1: *const ndb_filter, arg2: *const ndb_filter) + -> ::std::os::raw::c_int; +} +extern "C" { + #[doc = " is `a` a subset of `b`"] + pub fn ndb_filter_is_subset_of( + a: *const ndb_filter, + b: *const ndb_filter, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_from_json( + arg1: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + filter: *mut ndb_filter, + buf: *mut ::std::os::raw::c_uchar, + bufsize: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_get_id_element( + arg1: *const ndb_filter, + arg2: *const ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn ndb_filter_get_string_element( + arg1: *const ndb_filter, + arg2: *const ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_filter_get_int_element( + arg1: *const ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> u64; +} +extern "C" { + pub fn ndb_filter_get_int_element_ptr( + arg1: *mut ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> *mut u64; +} +extern "C" { + pub fn ndb_filter_current_element(arg1: *const ndb_filter) -> *mut ndb_filter_elements; +} +extern "C" { + pub fn ndb_filter_get_elements( + arg1: *const ndb_filter, + arg2: ::std::os::raw::c_int, + ) -> *mut ndb_filter_elements; +} +extern "C" { + pub fn ndb_filter_start_field( + arg1: *mut ndb_filter, + arg2: ndb_filter_fieldtype, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_start_tag_field( + arg1: *mut ndb_filter, + tag: ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_matches(arg1: *mut ndb_filter, arg2: *mut ndb_note) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_clone(dst: *mut ndb_filter, src: *mut ndb_filter) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_end(arg1: *mut ndb_filter) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_end_field(arg1: *mut ndb_filter); +} +extern "C" { + pub fn ndb_filter_destroy(arg1: *mut ndb_filter); +} +extern "C" { + pub fn ndb_filter_json( + arg1: *const ndb_filter, + buf: *mut ::std::os::raw::c_char, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_subscribe( + arg1: *mut ndb, + arg2: *mut ndb_filter, + num_filters: ::std::os::raw::c_int, + ) -> u64; +} +extern "C" { + pub fn ndb_wait_for_notes( + arg1: *mut ndb, + subid: u64, + note_ids: *mut u64, + note_id_capacity: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_poll_for_notes( + arg1: *mut ndb, + subid: u64, + note_ids: *mut u64, + note_id_capacity: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_unsubscribe(arg1: *mut ndb, subid: u64) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_num_subscriptions(arg1: *mut ndb) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_subscription_filters( + arg1: *mut ndb, + subid: u64, + filters: *mut ::std::os::raw::c_int, + ) -> *mut ndb_filter; +} +extern "C" { + pub fn ndb_text_search( + txn: *mut ndb_txn, + query: *const ::std::os::raw::c_char, + arg1: *mut ndb_text_search_results, + arg2: *mut ndb_text_search_config, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_default_text_search_config(arg1: *mut ndb_text_search_config); +} +extern "C" { + pub fn ndb_text_search_config_set_order( + arg1: *mut ndb_text_search_config, + arg2: ndb_search_order, + ); +} +extern "C" { + pub fn ndb_text_search_config_set_limit( + arg1: *mut ndb_text_search_config, + limit: ::std::os::raw::c_int, + ); +} +extern "C" { + pub fn ndb_query( + txn: *mut ndb_txn, + filters: *mut ndb_filter, + num_filters: ::std::os::raw::c_int, + results: *mut ndb_query_result, + result_capacity: ::std::os::raw::c_int, + count: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_stat(ndb: *mut ndb, stat: *mut ndb_stat) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_stat_counts_init(counts: *mut ndb_stat_counts); +} +extern "C" { + pub fn ndb_note_content(note: *mut ndb_note) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_note_str(note: *mut ndb_note, pstr: *mut ndb_packed_str) -> ndb_str; +} +extern "C" { + pub fn ndb_note_content_length(note: *mut ndb_note) -> u32; +} +extern "C" { + pub fn ndb_note_created_at(note: *mut ndb_note) -> u32; +} +extern "C" { + pub fn ndb_note_kind(note: *mut ndb_note) -> u32; +} +extern "C" { + pub fn ndb_note_id(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn ndb_note_pubkey(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn ndb_note_sig(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn _ndb_note_set_kind(note: *mut ndb_note, kind: u32); +} +extern "C" { + pub fn ndb_note_tags(note: *mut ndb_note) -> *mut ndb_tags; +} +extern "C" { + pub fn ndb_str_len(str_: *mut ndb_str) -> ::std::os::raw::c_int; +} +extern "C" { + #[doc = " write the note as json to a buffer"] + pub fn ndb_note_json( + arg1: *mut ndb_note, + buf: *mut ::std::os::raw::c_char, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_tags_iterate_start(note: *mut ndb_note, iter: *mut ndb_iterator); +} +extern "C" { + pub fn ndb_tags_count(arg1: *mut ndb_tags) -> u16; +} +extern "C" { + pub fn ndb_tag_count(arg1: *mut ndb_tag) -> u16; +} +extern "C" { + pub fn ndb_tags_iterate_next(iter: *mut ndb_iterator) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_iter_tag_str(iter: *mut ndb_iterator, ind: ::std::os::raw::c_int) -> ndb_str; +} +extern "C" { + pub fn ndb_tag_str( + note: *mut ndb_note, + tag: *mut ndb_tag, + ind: ::std::os::raw::c_int, + ) -> ndb_str; +} +extern "C" { + pub fn ndb_db_name(db: ndb_dbs) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_kind_name(ck: ndb_common_kind) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_kind_to_common_kind(kind: ::std::os::raw::c_int) -> ndb_common_kind; +} +extern "C" { + pub fn ndb_parse_content( + buf: *mut ::std::os::raw::c_uchar, + buf_size: ::std::os::raw::c_int, + content: *const ::std::os::raw::c_char, + content_len: ::std::os::raw::c_int, + blocks_p: *mut *mut ndb_blocks, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_get_block_type(block: *mut ndb_block) -> ndb_block_type; +} +extern "C" { + pub fn ndb_blocks_flags(block: *mut ndb_blocks) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_blocks_total_size(blocks: *mut ndb_blocks) -> usize; +} +extern "C" { + pub fn ndb_blocks_word_count(blocks: *mut ndb_blocks) -> ::std::os::raw::c_int; +} +extern "C" { + #[doc = " Free blocks if they are owned, safe to call on unowned blocks as well."] + pub fn ndb_blocks_free(blocks: *mut ndb_blocks); +} +extern "C" { + pub fn ndb_get_blocks_by_key( + ndb: *mut ndb, + txn: *mut ndb_txn, + note_key: u64, + ) -> *mut ndb_blocks; +} +extern "C" { + pub fn ndb_blocks_iterate_start( + arg1: *const ::std::os::raw::c_char, + arg2: *mut ndb_blocks, + arg3: *mut ndb_block_iterator, + ); +} +extern "C" { + pub fn ndb_blocks_iterate_next(arg1: *mut ndb_block_iterator) -> *mut ndb_block; +} +extern "C" { + pub fn ndb_block_str(arg1: *mut ndb_block) -> *mut ndb_str_block; +} +extern "C" { + pub fn ndb_str_block_ptr(arg1: *mut ndb_str_block) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_str_block_len(arg1: *mut ndb_str_block) -> u32; +} +extern "C" { + pub fn ndb_bech32_block(block: *mut ndb_block) -> *mut nostr_bech32; +} +pub type __builtin_va_list = *mut ::std::os::raw::c_char; diff --git a/src/bindings_win.rs b/src/bindings_win.rs @@ -0,0 +1,5563 @@ +/* automatically generated by rust-bindgen 0.69.4 */ + +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField<T>(::std::marker::PhantomData<T>, [T; 0]); +impl<T> __IncompleteArrayField<T> { + #[inline] + pub const fn new() -> Self { + __IncompleteArrayField(::std::marker::PhantomData, []) + } + #[inline] + pub fn as_ptr(&self) -> *const T { + self as *const _ as *const T + } + #[inline] + pub fn as_mut_ptr(&mut self) -> *mut T { + self as *mut _ as *mut T + } + #[inline] + pub unsafe fn as_slice(&self, len: usize) -> &[T] { + ::std::slice::from_raw_parts(self.as_ptr(), len) + } + #[inline] + pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { + ::std::slice::from_raw_parts_mut(self.as_mut_ptr(), len) + } +} +impl<T> ::std::fmt::Debug for __IncompleteArrayField<T> { + fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result { + fmt.write_str("__IncompleteArrayField") + } +} +pub const _VCRT_COMPILER_PREPROCESSOR: u32 = 1; +pub const _SAL_VERSION: u32 = 20; +pub const __SAL_H_VERSION: u32 = 180000000; +pub const _USE_DECLSPECS_FOR_SAL: u32 = 0; +pub const _USE_ATTRIBUTES_FOR_SAL: u32 = 0; +pub const _CRT_PACKING: u32 = 8; +pub const _HAS_EXCEPTIONS: u32 = 1; +pub const _STL_LANG: u32 = 0; +pub const _HAS_CXX17: u32 = 0; +pub const _HAS_CXX20: u32 = 0; +pub const _HAS_CXX23: u32 = 0; +pub const _HAS_NODISCARD: u32 = 0; +pub const _ARM_WINAPI_PARTITION_DESKTOP_SDK_AVAILABLE: u32 = 1; +pub const _CRT_BUILD_DESKTOP_APP: u32 = 1; +pub const _ARGMAX: u32 = 100; +pub const _CRT_INT_MAX: u32 = 2147483647; +pub const _CRT_FUNCTIONS_REQUIRED: u32 = 1; +pub const _CRT_HAS_CXX17: u32 = 0; +pub const _CRT_HAS_C11: u32 = 1; +pub const _CRT_INTERNAL_NONSTDC_NAMES: u32 = 1; +pub const __STDC_SECURE_LIB__: u32 = 200411; +pub const __GOT_SECURE_LIB__: u32 = 200411; +pub const __STDC_WANT_SECURE_LIB__: u32 = 1; +pub const _SECURECRT_FILL_BUFFER_PATTERN: u32 = 254; +pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES: u32 = 0; +pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT: u32 = 0; +pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES: u32 = 1; +pub const _CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY: u32 = 0; +pub const _CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY: u32 = 0; +pub const WCHAR_MIN: u32 = 0; +pub const WCHAR_MAX: u32 = 65535; +pub const WINT_MIN: u32 = 0; +pub const WINT_MAX: u32 = 65535; +pub const PRId8: &[u8; 4] = b"hhd\0"; +pub const PRId16: &[u8; 3] = b"hd\0"; +pub const PRId32: &[u8; 2] = b"d\0"; +pub const PRId64: &[u8; 4] = b"lld\0"; +pub const PRIdLEAST8: &[u8; 4] = b"hhd\0"; +pub const PRIdLEAST16: &[u8; 3] = b"hd\0"; +pub const PRIdLEAST32: &[u8; 2] = b"d\0"; +pub const PRIdLEAST64: &[u8; 4] = b"lld\0"; +pub const PRIdFAST8: &[u8; 4] = b"hhd\0"; +pub const PRIdFAST16: &[u8; 2] = b"d\0"; +pub const PRIdFAST32: &[u8; 2] = b"d\0"; +pub const PRIdFAST64: &[u8; 4] = b"lld\0"; +pub const PRIdMAX: &[u8; 4] = b"lld\0"; +pub const PRIdPTR: &[u8; 4] = b"lld\0"; +pub const PRIi8: &[u8; 4] = b"hhi\0"; +pub const PRIi16: &[u8; 3] = b"hi\0"; +pub const PRIi32: &[u8; 2] = b"i\0"; +pub const PRIi64: &[u8; 4] = b"lli\0"; +pub const PRIiLEAST8: &[u8; 4] = b"hhi\0"; +pub const PRIiLEAST16: &[u8; 3] = b"hi\0"; +pub const PRIiLEAST32: &[u8; 2] = b"i\0"; +pub const PRIiLEAST64: &[u8; 4] = b"lli\0"; +pub const PRIiFAST8: &[u8; 4] = b"hhi\0"; +pub const PRIiFAST16: &[u8; 2] = b"i\0"; +pub const PRIiFAST32: &[u8; 2] = b"i\0"; +pub const PRIiFAST64: &[u8; 4] = b"lli\0"; +pub const PRIiMAX: &[u8; 4] = b"lli\0"; +pub const PRIiPTR: &[u8; 4] = b"lli\0"; +pub const PRIo8: &[u8; 4] = b"hho\0"; +pub const PRIo16: &[u8; 3] = b"ho\0"; +pub const PRIo32: &[u8; 2] = b"o\0"; +pub const PRIo64: &[u8; 4] = b"llo\0"; +pub const PRIoLEAST8: &[u8; 4] = b"hho\0"; +pub const PRIoLEAST16: &[u8; 3] = b"ho\0"; +pub const PRIoLEAST32: &[u8; 2] = b"o\0"; +pub const PRIoLEAST64: &[u8; 4] = b"llo\0"; +pub const PRIoFAST8: &[u8; 4] = b"hho\0"; +pub const PRIoFAST16: &[u8; 2] = b"o\0"; +pub const PRIoFAST32: &[u8; 2] = b"o\0"; +pub const PRIoFAST64: &[u8; 4] = b"llo\0"; +pub const PRIoMAX: &[u8; 4] = b"llo\0"; +pub const PRIoPTR: &[u8; 4] = b"llo\0"; +pub const PRIu8: &[u8; 4] = b"hhu\0"; +pub const PRIu16: &[u8; 3] = b"hu\0"; +pub const PRIu32: &[u8; 2] = b"u\0"; +pub const PRIu64: &[u8; 4] = b"llu\0"; +pub const PRIuLEAST8: &[u8; 4] = b"hhu\0"; +pub const PRIuLEAST16: &[u8; 3] = b"hu\0"; +pub const PRIuLEAST32: &[u8; 2] = b"u\0"; +pub const PRIuLEAST64: &[u8; 4] = b"llu\0"; +pub const PRIuFAST8: &[u8; 4] = b"hhu\0"; +pub const PRIuFAST16: &[u8; 2] = b"u\0"; +pub const PRIuFAST32: &[u8; 2] = b"u\0"; +pub const PRIuFAST64: &[u8; 4] = b"llu\0"; +pub const PRIuMAX: &[u8; 4] = b"llu\0"; +pub const PRIuPTR: &[u8; 4] = b"llu\0"; +pub const PRIx8: &[u8; 4] = b"hhx\0"; +pub const PRIx16: &[u8; 3] = b"hx\0"; +pub const PRIx32: &[u8; 2] = b"x\0"; +pub const PRIx64: &[u8; 4] = b"llx\0"; +pub const PRIxLEAST8: &[u8; 4] = b"hhx\0"; +pub const PRIxLEAST16: &[u8; 3] = b"hx\0"; +pub const PRIxLEAST32: &[u8; 2] = b"x\0"; +pub const PRIxLEAST64: &[u8; 4] = b"llx\0"; +pub const PRIxFAST8: &[u8; 4] = b"hhx\0"; +pub const PRIxFAST16: &[u8; 2] = b"x\0"; +pub const PRIxFAST32: &[u8; 2] = b"x\0"; +pub const PRIxFAST64: &[u8; 4] = b"llx\0"; +pub const PRIxMAX: &[u8; 4] = b"llx\0"; +pub const PRIxPTR: &[u8; 4] = b"llx\0"; +pub const PRIX8: &[u8; 4] = b"hhX\0"; +pub const PRIX16: &[u8; 3] = b"hX\0"; +pub const PRIX32: &[u8; 2] = b"X\0"; +pub const PRIX64: &[u8; 4] = b"llX\0"; +pub const PRIXLEAST8: &[u8; 4] = b"hhX\0"; +pub const PRIXLEAST16: &[u8; 3] = b"hX\0"; +pub const PRIXLEAST32: &[u8; 2] = b"X\0"; +pub const PRIXLEAST64: &[u8; 4] = b"llX\0"; +pub const PRIXFAST8: &[u8; 4] = b"hhX\0"; +pub const PRIXFAST16: &[u8; 2] = b"X\0"; +pub const PRIXFAST32: &[u8; 2] = b"X\0"; +pub const PRIXFAST64: &[u8; 4] = b"llX\0"; +pub const PRIXMAX: &[u8; 4] = b"llX\0"; +pub const PRIXPTR: &[u8; 4] = b"llX\0"; +pub const SCNd8: &[u8; 4] = b"hhd\0"; +pub const SCNd16: &[u8; 3] = b"hd\0"; +pub const SCNd32: &[u8; 2] = b"d\0"; +pub const SCNd64: &[u8; 4] = b"lld\0"; +pub const SCNdLEAST8: &[u8; 4] = b"hhd\0"; +pub const SCNdLEAST16: &[u8; 3] = b"hd\0"; +pub const SCNdLEAST32: &[u8; 2] = b"d\0"; +pub const SCNdLEAST64: &[u8; 4] = b"lld\0"; +pub const SCNdFAST8: &[u8; 4] = b"hhd\0"; +pub const SCNdFAST16: &[u8; 2] = b"d\0"; +pub const SCNdFAST32: &[u8; 2] = b"d\0"; +pub const SCNdFAST64: &[u8; 4] = b"lld\0"; +pub const SCNdMAX: &[u8; 4] = b"lld\0"; +pub const SCNdPTR: &[u8; 4] = b"lld\0"; +pub const SCNi8: &[u8; 4] = b"hhi\0"; +pub const SCNi16: &[u8; 3] = b"hi\0"; +pub const SCNi32: &[u8; 2] = b"i\0"; +pub const SCNi64: &[u8; 4] = b"lli\0"; +pub const SCNiLEAST8: &[u8; 4] = b"hhi\0"; +pub const SCNiLEAST16: &[u8; 3] = b"hi\0"; +pub const SCNiLEAST32: &[u8; 2] = b"i\0"; +pub const SCNiLEAST64: &[u8; 4] = b"lli\0"; +pub const SCNiFAST8: &[u8; 4] = b"hhi\0"; +pub const SCNiFAST16: &[u8; 2] = b"i\0"; +pub const SCNiFAST32: &[u8; 2] = b"i\0"; +pub const SCNiFAST64: &[u8; 4] = b"lli\0"; +pub const SCNiMAX: &[u8; 4] = b"lli\0"; +pub const SCNiPTR: &[u8; 4] = b"lli\0"; +pub const SCNo8: &[u8; 4] = b"hho\0"; +pub const SCNo16: &[u8; 3] = b"ho\0"; +pub const SCNo32: &[u8; 2] = b"o\0"; +pub const SCNo64: &[u8; 4] = b"llo\0"; +pub const SCNoLEAST8: &[u8; 4] = b"hho\0"; +pub const SCNoLEAST16: &[u8; 3] = b"ho\0"; +pub const SCNoLEAST32: &[u8; 2] = b"o\0"; +pub const SCNoLEAST64: &[u8; 4] = b"llo\0"; +pub const SCNoFAST8: &[u8; 4] = b"hho\0"; +pub const SCNoFAST16: &[u8; 2] = b"o\0"; +pub const SCNoFAST32: &[u8; 2] = b"o\0"; +pub const SCNoFAST64: &[u8; 4] = b"llo\0"; +pub const SCNoMAX: &[u8; 4] = b"llo\0"; +pub const SCNoPTR: &[u8; 4] = b"llo\0"; +pub const SCNu8: &[u8; 4] = b"hhu\0"; +pub const SCNu16: &[u8; 3] = b"hu\0"; +pub const SCNu32: &[u8; 2] = b"u\0"; +pub const SCNu64: &[u8; 4] = b"llu\0"; +pub const SCNuLEAST8: &[u8; 4] = b"hhu\0"; +pub const SCNuLEAST16: &[u8; 3] = b"hu\0"; +pub const SCNuLEAST32: &[u8; 2] = b"u\0"; +pub const SCNuLEAST64: &[u8; 4] = b"llu\0"; +pub const SCNuFAST8: &[u8; 4] = b"hhu\0"; +pub const SCNuFAST16: &[u8; 2] = b"u\0"; +pub const SCNuFAST32: &[u8; 2] = b"u\0"; +pub const SCNuFAST64: &[u8; 4] = b"llu\0"; +pub const SCNuMAX: &[u8; 4] = b"llu\0"; +pub const SCNuPTR: &[u8; 4] = b"llu\0"; +pub const SCNx8: &[u8; 4] = b"hhx\0"; +pub const SCNx16: &[u8; 3] = b"hx\0"; +pub const SCNx32: &[u8; 2] = b"x\0"; +pub const SCNx64: &[u8; 4] = b"llx\0"; +pub const SCNxLEAST8: &[u8; 4] = b"hhx\0"; +pub const SCNxLEAST16: &[u8; 3] = b"hx\0"; +pub const SCNxLEAST32: &[u8; 2] = b"x\0"; +pub const SCNxLEAST64: &[u8; 4] = b"llx\0"; +pub const SCNxFAST8: &[u8; 4] = b"hhx\0"; +pub const SCNxFAST16: &[u8; 2] = b"x\0"; +pub const SCNxFAST32: &[u8; 2] = b"x\0"; +pub const SCNxFAST64: &[u8; 4] = b"llx\0"; +pub const SCNxMAX: &[u8; 4] = b"llx\0"; +pub const SCNxPTR: &[u8; 4] = b"llx\0"; +pub const CCAN_COMPILER: &[u8; 3] = b"cc\0"; +pub const CCAN_CFLAGS : & [u8 ; 111] = b"-g3 -ggdb -Wall -Wundef -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wold-style-definition\0" ; +pub const CCAN_OUTPUT_EXE_CFLAG: &[u8; 3] = b"-o\0"; +pub const HAVE_CCAN: u32 = 1; +pub const HAVE_UNALIGNED_ACCESS: u32 = 1; +pub const HAVE_TYPEOF: u32 = 1; +pub const HAVE_BIG_ENDIAN: u32 = 0; +pub const HAVE_BYTESWAP_H: u32 = 0; +pub const HAVE_BSWAP_64: u32 = 0; +pub const HAVE_LITTLE_ENDIAN: u32 = 1; +pub const __bool_true_false_are_defined: u32 = 1; +pub const false_: u32 = 0; +pub const true_: u32 = 1; +pub const _CRT_INTERNAL_STDIO_SYMBOL_PREFIX: &[u8; 1] = b"\0"; +pub const _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION: u32 = 1; +pub const _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR: u32 = 2; +pub const _CRT_INTERNAL_PRINTF_LEGACY_WIDE_SPECIFIERS: u32 = 4; +pub const _CRT_INTERNAL_PRINTF_LEGACY_MSVCRT_COMPATIBILITY: u32 = 8; +pub const _CRT_INTERNAL_PRINTF_LEGACY_THREE_DIGIT_EXPONENTS: u32 = 16; +pub const _CRT_INTERNAL_PRINTF_STANDARD_ROUNDING: u32 = 32; +pub const _CRT_INTERNAL_SCANF_SECURECRT: u32 = 1; +pub const _CRT_INTERNAL_SCANF_LEGACY_WIDE_SPECIFIERS: u32 = 2; +pub const _CRT_INTERNAL_SCANF_LEGACY_MSVCRT_COMPATIBILITY: u32 = 4; +pub const BUFSIZ: u32 = 512; +pub const _NSTREAM_: u32 = 512; +pub const _IOB_ENTRIES: u32 = 3; +pub const EOF: i32 = -1; +pub const _IOFBF: u32 = 0; +pub const _IOLBF: u32 = 64; +pub const _IONBF: u32 = 4; +pub const L_tmpnam: u32 = 260; +pub const L_tmpnam_s: u32 = 260; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +pub const SEEK_SET: u32 = 0; +pub const FILENAME_MAX: u32 = 260; +pub const FOPEN_MAX: u32 = 20; +pub const _SYS_OPEN: u32 = 20; +pub const TMP_MAX: u32 = 2147483647; +pub const TMP_MAX_S: u32 = 2147483647; +pub const _TMP_MAX_S: u32 = 2147483647; +pub const SYS_OPEN: u32 = 20; +pub const _UPPER: u32 = 1; +pub const _LOWER: u32 = 2; +pub const _DIGIT: u32 = 4; +pub const _SPACE: u32 = 8; +pub const _PUNCT: u32 = 16; +pub const _CONTROL: u32 = 32; +pub const _BLANK: u32 = 64; +pub const _HEX: u32 = 128; +pub const _LEADBYTE: u32 = 32768; +pub const _ALPHA: u32 = 259; +pub const EPERM: u32 = 1; +pub const ENOENT: u32 = 2; +pub const ESRCH: u32 = 3; +pub const EINTR: u32 = 4; +pub const EIO: u32 = 5; +pub const ENXIO: u32 = 6; +pub const E2BIG: u32 = 7; +pub const ENOEXEC: u32 = 8; +pub const EBADF: u32 = 9; +pub const ECHILD: u32 = 10; +pub const EAGAIN: u32 = 11; +pub const ENOMEM: u32 = 12; +pub const EACCES: u32 = 13; +pub const EFAULT: u32 = 14; +pub const EBUSY: u32 = 16; +pub const EEXIST: u32 = 17; +pub const EXDEV: u32 = 18; +pub const ENODEV: u32 = 19; +pub const ENOTDIR: u32 = 20; +pub const EISDIR: u32 = 21; +pub const ENFILE: u32 = 23; +pub const EMFILE: u32 = 24; +pub const ENOTTY: u32 = 25; +pub const EFBIG: u32 = 27; +pub const ENOSPC: u32 = 28; +pub const ESPIPE: u32 = 29; +pub const EROFS: u32 = 30; +pub const EMLINK: u32 = 31; +pub const EPIPE: u32 = 32; +pub const EDOM: u32 = 33; +pub const EDEADLK: u32 = 36; +pub const ENAMETOOLONG: u32 = 38; +pub const ENOLCK: u32 = 39; +pub const ENOSYS: u32 = 40; +pub const ENOTEMPTY: u32 = 41; +pub const EINVAL: u32 = 22; +pub const ERANGE: u32 = 34; +pub const EILSEQ: u32 = 42; +pub const STRUNCATE: u32 = 80; +pub const EDEADLOCK: u32 = 36; +pub const EADDRINUSE: u32 = 100; +pub const EADDRNOTAVAIL: u32 = 101; +pub const EAFNOSUPPORT: u32 = 102; +pub const EALREADY: u32 = 103; +pub const EBADMSG: u32 = 104; +pub const ECANCELED: u32 = 105; +pub const ECONNABORTED: u32 = 106; +pub const ECONNREFUSED: u32 = 107; +pub const ECONNRESET: u32 = 108; +pub const EDESTADDRREQ: u32 = 109; +pub const EHOSTUNREACH: u32 = 110; +pub const EIDRM: u32 = 111; +pub const EINPROGRESS: u32 = 112; +pub const EISCONN: u32 = 113; +pub const ELOOP: u32 = 114; +pub const EMSGSIZE: u32 = 115; +pub const ENETDOWN: u32 = 116; +pub const ENETRESET: u32 = 117; +pub const ENETUNREACH: u32 = 118; +pub const ENOBUFS: u32 = 119; +pub const ENODATA: u32 = 120; +pub const ENOLINK: u32 = 121; +pub const ENOMSG: u32 = 122; +pub const ENOPROTOOPT: u32 = 123; +pub const ENOSR: u32 = 124; +pub const ENOSTR: u32 = 125; +pub const ENOTCONN: u32 = 126; +pub const ENOTRECOVERABLE: u32 = 127; +pub const ENOTSOCK: u32 = 128; +pub const ENOTSUP: u32 = 129; +pub const EOPNOTSUPP: u32 = 130; +pub const EOTHER: u32 = 131; +pub const EOVERFLOW: u32 = 132; +pub const EOWNERDEAD: u32 = 133; +pub const EPROTO: u32 = 134; +pub const EPROTONOSUPPORT: u32 = 135; +pub const EPROTOTYPE: u32 = 136; +pub const ETIME: u32 = 137; +pub const ETIMEDOUT: u32 = 138; +pub const ETXTBSY: u32 = 139; +pub const EWOULDBLOCK: u32 = 140; +pub const _NLSCMPERROR: u32 = 2147483647; +pub const NDB_PACKED_STR: u32 = 1; +pub const NDB_PACKED_ID: u32 = 2; +pub const NDB_FLAG_NOMIGRATE: u32 = 1; +pub const NDB_FLAG_SKIP_NOTE_VERIFY: u32 = 2; +pub const NDB_NUM_FILTERS: u32 = 7; +pub const MAX_TEXT_SEARCH_RESULTS: u32 = 128; +pub const MAX_TEXT_SEARCH_WORDS: u32 = 8; +pub const NDB_NUM_BLOCK_TYPES: u32 = 6; +pub const NDB_MAX_RELAYS: u32 = 24; +pub const NOSTR_BECH32_KNOWN_TYPES: u32 = 7; +pub type va_list = *mut ::std::os::raw::c_char; +extern "C" { + pub fn __va_start(arg1: *mut *mut ::std::os::raw::c_char, ...); +} +pub type __vcrt_bool = bool; +pub type wchar_t = ::std::os::raw::c_ushort; +extern "C" { + pub fn __security_init_cookie(); +} +extern "C" { + pub fn __security_check_cookie(_StackCookie: usize); +} +extern "C" { + pub fn __report_gsfailure(_StackCookie: usize) -> !; +} +extern "C" { + pub static mut __security_cookie: usize; +} +pub type __crt_bool = bool; +extern "C" { + pub fn _invalid_parameter_noinfo(); +} +extern "C" { + pub fn _invalid_parameter_noinfo_noreturn() -> !; +} +extern "C" { + pub fn _invoke_watson( + _Expression: *const wchar_t, + _FunctionName: *const wchar_t, + _FileName: *const wchar_t, + _LineNo: ::std::os::raw::c_uint, + _Reserved: usize, + ) -> !; +} +pub type errno_t = ::std::os::raw::c_int; +pub type wint_t = ::std::os::raw::c_ushort; +pub type wctype_t = ::std::os::raw::c_ushort; +pub type __time32_t = ::std::os::raw::c_long; +pub type __time64_t = ::std::os::raw::c_longlong; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __crt_locale_data_public { + pub _locale_pctype: *const ::std::os::raw::c_ushort, + pub _locale_mb_cur_max: ::std::os::raw::c_int, + pub _locale_lc_codepage: ::std::os::raw::c_uint, +} +#[test] +fn bindgen_test_layout___crt_locale_data_public() { + const UNINIT: ::std::mem::MaybeUninit<__crt_locale_data_public> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__crt_locale_data_public>(), + 16usize, + concat!("Size of: ", stringify!(__crt_locale_data_public)) + ); + assert_eq!( + ::std::mem::align_of::<__crt_locale_data_public>(), + 8usize, + concat!("Alignment of ", stringify!(__crt_locale_data_public)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._locale_pctype) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__crt_locale_data_public), + "::", + stringify!(_locale_pctype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._locale_mb_cur_max) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(__crt_locale_data_public), + "::", + stringify!(_locale_mb_cur_max) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._locale_lc_codepage) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(__crt_locale_data_public), + "::", + stringify!(_locale_lc_codepage) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __crt_locale_pointers { + pub locinfo: *mut __crt_locale_data, + pub mbcinfo: *mut __crt_multibyte_data, +} +#[test] +fn bindgen_test_layout___crt_locale_pointers() { + const UNINIT: ::std::mem::MaybeUninit<__crt_locale_pointers> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<__crt_locale_pointers>(), + 16usize, + concat!("Size of: ", stringify!(__crt_locale_pointers)) + ); + assert_eq!( + ::std::mem::align_of::<__crt_locale_pointers>(), + 8usize, + concat!("Alignment of ", stringify!(__crt_locale_pointers)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).locinfo) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(__crt_locale_pointers), + "::", + stringify!(locinfo) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mbcinfo) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(__crt_locale_pointers), + "::", + stringify!(mbcinfo) + ) + ); +} +pub type _locale_t = *mut __crt_locale_pointers; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _Mbstatet { + pub _Wchar: ::std::os::raw::c_ulong, + pub _Byte: ::std::os::raw::c_ushort, + pub _State: ::std::os::raw::c_ushort, +} +#[test] +fn bindgen_test_layout__Mbstatet() { + const UNINIT: ::std::mem::MaybeUninit<_Mbstatet> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_Mbstatet>(), + 8usize, + concat!("Size of: ", stringify!(_Mbstatet)) + ); + assert_eq!( + ::std::mem::align_of::<_Mbstatet>(), + 4usize, + concat!("Alignment of ", stringify!(_Mbstatet)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._Wchar) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_Mbstatet), + "::", + stringify!(_Wchar) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._Byte) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(_Mbstatet), + "::", + stringify!(_Byte) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._State) as usize - ptr as usize }, + 6usize, + concat!( + "Offset of field: ", + stringify!(_Mbstatet), + "::", + stringify!(_State) + ) + ); +} +pub type mbstate_t = _Mbstatet; +pub type time_t = __time64_t; +pub type rsize_t = usize; +pub type int_least8_t = ::std::os::raw::c_schar; +pub type int_least16_t = ::std::os::raw::c_short; +pub type int_least32_t = ::std::os::raw::c_int; +pub type int_least64_t = ::std::os::raw::c_longlong; +pub type uint_least8_t = ::std::os::raw::c_uchar; +pub type uint_least16_t = ::std::os::raw::c_ushort; +pub type uint_least32_t = ::std::os::raw::c_uint; +pub type uint_least64_t = ::std::os::raw::c_ulonglong; +pub type int_fast8_t = ::std::os::raw::c_schar; +pub type int_fast16_t = ::std::os::raw::c_int; +pub type int_fast32_t = ::std::os::raw::c_int; +pub type int_fast64_t = ::std::os::raw::c_longlong; +pub type uint_fast8_t = ::std::os::raw::c_uchar; +pub type uint_fast16_t = ::std::os::raw::c_uint; +pub type uint_fast32_t = ::std::os::raw::c_uint; +pub type uint_fast64_t = ::std::os::raw::c_ulonglong; +pub type intmax_t = ::std::os::raw::c_longlong; +pub type uintmax_t = ::std::os::raw::c_ulonglong; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _Lldiv_t { + pub quot: intmax_t, + pub rem: intmax_t, +} +#[test] +fn bindgen_test_layout__Lldiv_t() { + const UNINIT: ::std::mem::MaybeUninit<_Lldiv_t> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_Lldiv_t>(), + 16usize, + concat!("Size of: ", stringify!(_Lldiv_t)) + ); + assert_eq!( + ::std::mem::align_of::<_Lldiv_t>(), + 8usize, + concat!("Alignment of ", stringify!(_Lldiv_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).quot) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_Lldiv_t), + "::", + stringify!(quot) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).rem) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(_Lldiv_t), + "::", + stringify!(rem) + ) + ); +} +pub type imaxdiv_t = _Lldiv_t; +extern "C" { + pub fn imaxabs(_Number: intmax_t) -> intmax_t; +} +extern "C" { + pub fn imaxdiv(_Numerator: intmax_t, _Denominator: intmax_t) -> imaxdiv_t; +} +extern "C" { + pub fn strtoimax( + _String: *const ::std::os::raw::c_char, + _EndPtr: *mut *mut ::std::os::raw::c_char, + _Radix: ::std::os::raw::c_int, + ) -> intmax_t; +} +extern "C" { + pub fn _strtoimax_l( + _String: *const ::std::os::raw::c_char, + _EndPtr: *mut *mut ::std::os::raw::c_char, + _Radix: ::std::os::raw::c_int, + _Locale: _locale_t, + ) -> intmax_t; +} +extern "C" { + pub fn strtoumax( + _String: *const ::std::os::raw::c_char, + _EndPtr: *mut *mut ::std::os::raw::c_char, + _Radix: ::std::os::raw::c_int, + ) -> uintmax_t; +} +extern "C" { + pub fn _strtoumax_l( + _String: *const ::std::os::raw::c_char, + _EndPtr: *mut *mut ::std::os::raw::c_char, + _Radix: ::std::os::raw::c_int, + _Locale: _locale_t, + ) -> uintmax_t; +} +extern "C" { + pub fn wcstoimax( + _String: *const wchar_t, + _EndPtr: *mut *mut wchar_t, + _Radix: ::std::os::raw::c_int, + ) -> intmax_t; +} +extern "C" { + pub fn _wcstoimax_l( + _String: *const wchar_t, + _EndPtr: *mut *mut wchar_t, + _Radix: ::std::os::raw::c_int, + _Locale: _locale_t, + ) -> intmax_t; +} +extern "C" { + pub fn wcstoumax( + _String: *const wchar_t, + _EndPtr: *mut *mut wchar_t, + _Radix: ::std::os::raw::c_int, + ) -> uintmax_t; +} +extern "C" { + pub fn _wcstoumax_l( + _String: *const wchar_t, + _EndPtr: *mut *mut wchar_t, + _Radix: ::std::os::raw::c_int, + _Locale: _locale_t, + ) -> uintmax_t; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _iobuf { + pub _Placeholder: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout__iobuf() { + const UNINIT: ::std::mem::MaybeUninit<_iobuf> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<_iobuf>(), + 8usize, + concat!("Size of: ", stringify!(_iobuf)) + ); + assert_eq!( + ::std::mem::align_of::<_iobuf>(), + 8usize, + concat!("Alignment of ", stringify!(_iobuf)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr)._Placeholder) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(_iobuf), + "::", + stringify!(_Placeholder) + ) + ); +} +pub type FILE = _iobuf; +extern "C" { + pub fn __acrt_iob_func(_Ix: ::std::os::raw::c_uint) -> *mut FILE; +} +extern "C" { + pub fn fgetwc(_Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _fgetwchar() -> wint_t; +} +extern "C" { + pub fn fputwc(_Character: wchar_t, _Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _fputwchar(_Character: wchar_t) -> wint_t; +} +extern "C" { + pub fn getwc(_Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn getwchar() -> wint_t; +} +extern "C" { + pub fn fgetws( + _Buffer: *mut wchar_t, + _BufferCount: ::std::os::raw::c_int, + _Stream: *mut FILE, + ) -> *mut wchar_t; +} +extern "C" { + pub fn fputws(_Buffer: *const wchar_t, _Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _getws_s(_Buffer: *mut wchar_t, _BufferCount: usize) -> *mut wchar_t; +} +extern "C" { + pub fn putwc(_Character: wchar_t, _Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn putwchar(_Character: wchar_t) -> wint_t; +} +extern "C" { + pub fn _putws(_Buffer: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ungetwc(_Character: wint_t, _Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _wfdopen(_FileHandle: ::std::os::raw::c_int, _Mode: *const wchar_t) -> *mut FILE; +} +extern "C" { + pub fn _wfopen(_FileName: *const wchar_t, _Mode: *const wchar_t) -> *mut FILE; +} +extern "C" { + pub fn _wfopen_s( + _Stream: *mut *mut FILE, + _FileName: *const wchar_t, + _Mode: *const wchar_t, + ) -> errno_t; +} +extern "C" { + pub fn _wfreopen( + _FileName: *const wchar_t, + _Mode: *const wchar_t, + _OldStream: *mut FILE, + ) -> *mut FILE; +} +extern "C" { + pub fn _wfreopen_s( + _Stream: *mut *mut FILE, + _FileName: *const wchar_t, + _Mode: *const wchar_t, + _OldStream: *mut FILE, + ) -> errno_t; +} +extern "C" { + pub fn _wfsopen( + _FileName: *const wchar_t, + _Mode: *const wchar_t, + _ShFlag: ::std::os::raw::c_int, + ) -> *mut FILE; +} +extern "C" { + pub fn _wperror(_ErrorMessage: *const wchar_t); +} +extern "C" { + pub fn _wpopen(_Command: *const wchar_t, _Mode: *const wchar_t) -> *mut FILE; +} +extern "C" { + pub fn _wremove(_FileName: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wtempnam(_Directory: *const wchar_t, _FilePrefix: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _wtmpnam_s(_Buffer: *mut wchar_t, _BufferCount: usize) -> errno_t; +} +extern "C" { + pub fn _wtmpnam(_Buffer: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _fgetwc_nolock(_Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _fputwc_nolock(_Character: wchar_t, _Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _getwc_nolock(_Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _putwc_nolock(_Character: wchar_t, _Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn _ungetwc_nolock(_Character: wint_t, _Stream: *mut FILE) -> wint_t; +} +extern "C" { + pub fn __stdio_common_vfwprintf( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfwprintf_s( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfwprintf_p( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfwscanf( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vswprintf( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut wchar_t, + _BufferCount: usize, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vswprintf_s( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut wchar_t, + _BufferCount: usize, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vsnwprintf_s( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut wchar_t, + _BufferCount: usize, + _MaxCount: usize, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vswprintf_p( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut wchar_t, + _BufferCount: usize, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vswscanf( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *const wchar_t, + _BufferCount: usize, + _Format: *const wchar_t, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +pub type fpos_t = ::std::os::raw::c_longlong; +extern "C" { + pub fn _get_stream_buffer_pointers( + _Stream: *mut FILE, + _Base: *mut *mut *mut ::std::os::raw::c_char, + _Pointer: *mut *mut *mut ::std::os::raw::c_char, + _Count: *mut *mut ::std::os::raw::c_int, + ) -> errno_t; +} +extern "C" { + pub fn clearerr_s(_Stream: *mut FILE) -> errno_t; +} +extern "C" { + pub fn fopen_s( + _Stream: *mut *mut FILE, + _FileName: *const ::std::os::raw::c_char, + _Mode: *const ::std::os::raw::c_char, + ) -> errno_t; +} +extern "C" { + pub fn fread_s( + _Buffer: *mut ::std::os::raw::c_void, + _BufferSize: usize, + _ElementSize: usize, + _ElementCount: usize, + _Stream: *mut FILE, + ) -> usize; +} +extern "C" { + pub fn freopen_s( + _Stream: *mut *mut FILE, + _FileName: *const ::std::os::raw::c_char, + _Mode: *const ::std::os::raw::c_char, + _OldStream: *mut FILE, + ) -> errno_t; +} +extern "C" { + pub fn gets_s( + _Buffer: *mut ::std::os::raw::c_char, + _Size: rsize_t, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn tmpfile_s(_Stream: *mut *mut FILE) -> errno_t; +} +extern "C" { + pub fn tmpnam_s(_Buffer: *mut ::std::os::raw::c_char, _Size: rsize_t) -> errno_t; +} +extern "C" { + pub fn clearerr(_Stream: *mut FILE); +} +extern "C" { + pub fn fclose(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fcloseall() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fdopen( + _FileHandle: ::std::os::raw::c_int, + _Mode: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn feof(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ferror(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fflush(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fgetc(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fgetchar() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fgetpos(_Stream: *mut FILE, _Position: *mut fpos_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fgets( + _Buffer: *mut ::std::os::raw::c_char, + _MaxCount: ::std::os::raw::c_int, + _Stream: *mut FILE, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _fileno(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _flushall() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fopen( + _FileName: *const ::std::os::raw::c_char, + _Mode: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn fputc(_Character: ::std::os::raw::c_int, _Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fputchar(_Character: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fputs( + _Buffer: *const ::std::os::raw::c_char, + _Stream: *mut FILE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fread( + _Buffer: *mut ::std::os::raw::c_void, + _ElementSize: ::std::os::raw::c_ulonglong, + _ElementCount: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + ) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn freopen( + _FileName: *const ::std::os::raw::c_char, + _Mode: *const ::std::os::raw::c_char, + _Stream: *mut FILE, + ) -> *mut FILE; +} +extern "C" { + pub fn _fsopen( + _FileName: *const ::std::os::raw::c_char, + _Mode: *const ::std::os::raw::c_char, + _ShFlag: ::std::os::raw::c_int, + ) -> *mut FILE; +} +extern "C" { + pub fn fsetpos(_Stream: *mut FILE, _Position: *const fpos_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fseek( + _Stream: *mut FILE, + _Offset: ::std::os::raw::c_long, + _Origin: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fseeki64( + _Stream: *mut FILE, + _Offset: ::std::os::raw::c_longlong, + _Origin: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ftell(_Stream: *mut FILE) -> ::std::os::raw::c_long; +} +extern "C" { + pub fn _ftelli64(_Stream: *mut FILE) -> ::std::os::raw::c_longlong; +} +extern "C" { + pub fn fwrite( + _Buffer: *const ::std::os::raw::c_void, + _ElementSize: ::std::os::raw::c_ulonglong, + _ElementCount: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + ) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn getc(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn getchar() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _getmaxstdio() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _getw(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn perror(_ErrorMessage: *const ::std::os::raw::c_char); +} +extern "C" { + pub fn _pclose(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _popen( + _Command: *const ::std::os::raw::c_char, + _Mode: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn putc(_Character: ::std::os::raw::c_int, _Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn putchar(_Character: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn puts(_Buffer: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _putw(_Word: ::std::os::raw::c_int, _Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn remove(_FileName: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn rename( + _OldFileName: *const ::std::os::raw::c_char, + _NewFileName: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _unlink(_FileName: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn unlink(_FileName: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn rewind(_Stream: *mut FILE); +} +extern "C" { + pub fn _rmtmp() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn setbuf(_Stream: *mut FILE, _Buffer: *mut ::std::os::raw::c_char); +} +extern "C" { + pub fn _setmaxstdio(_Maximum: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn setvbuf( + _Stream: *mut FILE, + _Buffer: *mut ::std::os::raw::c_char, + _Mode: ::std::os::raw::c_int, + _Size: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _tempnam( + _DirectoryName: *const ::std::os::raw::c_char, + _FilePrefix: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn tmpfile() -> *mut FILE; +} +extern "C" { + pub fn tmpnam(_Buffer: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn ungetc(_Character: ::std::os::raw::c_int, _Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _lock_file(_Stream: *mut FILE); +} +extern "C" { + pub fn _unlock_file(_Stream: *mut FILE); +} +extern "C" { + pub fn _fclose_nolock(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fflush_nolock(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fgetc_nolock(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fputc_nolock( + _Character: ::std::os::raw::c_int, + _Stream: *mut FILE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fread_nolock( + _Buffer: *mut ::std::os::raw::c_void, + _ElementSize: usize, + _ElementCount: usize, + _Stream: *mut FILE, + ) -> usize; +} +extern "C" { + pub fn _fread_nolock_s( + _Buffer: *mut ::std::os::raw::c_void, + _BufferSize: usize, + _ElementSize: usize, + _ElementCount: usize, + _Stream: *mut FILE, + ) -> usize; +} +extern "C" { + pub fn _fseek_nolock( + _Stream: *mut FILE, + _Offset: ::std::os::raw::c_long, + _Origin: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _fseeki64_nolock( + _Stream: *mut FILE, + _Offset: ::std::os::raw::c_longlong, + _Origin: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _ftell_nolock(_Stream: *mut FILE) -> ::std::os::raw::c_long; +} +extern "C" { + pub fn _ftelli64_nolock(_Stream: *mut FILE) -> ::std::os::raw::c_longlong; +} +extern "C" { + pub fn _fwrite_nolock( + _Buffer: *const ::std::os::raw::c_void, + _ElementSize: usize, + _ElementCount: usize, + _Stream: *mut FILE, + ) -> usize; +} +extern "C" { + pub fn _getc_nolock(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _putc_nolock( + _Character: ::std::os::raw::c_int, + _Stream: *mut FILE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _ungetc_nolock( + _Character: ::std::os::raw::c_int, + _Stream: *mut FILE, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __p__commode() -> *mut ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfprintf( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfprintf_s( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfprintf_p( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _set_printf_count_output(_Value: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _get_printf_count_output() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vfscanf( + _Options: ::std::os::raw::c_ulonglong, + _Stream: *mut FILE, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _Arglist: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vsprintf( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut ::std::os::raw::c_char, + _BufferCount: usize, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vsprintf_s( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut ::std::os::raw::c_char, + _BufferCount: usize, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vsnprintf_s( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut ::std::os::raw::c_char, + _BufferCount: usize, + _MaxCount: usize, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vsprintf_p( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *mut ::std::os::raw::c_char, + _BufferCount: usize, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __stdio_common_vsscanf( + _Options: ::std::os::raw::c_ulonglong, + _Buffer: *const ::std::os::raw::c_char, + _BufferCount: usize, + _Format: *const ::std::os::raw::c_char, + _Locale: _locale_t, + _ArgList: va_list, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn tempnam( + _Directory: *const ::std::os::raw::c_char, + _FilePrefix: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn fcloseall() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fdopen( + _FileHandle: ::std::os::raw::c_int, + _Format: *const ::std::os::raw::c_char, + ) -> *mut FILE; +} +extern "C" { + pub fn fgetchar() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fileno(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn flushall() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn fputchar(_Ch: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn getw(_Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn putw(_Ch: ::std::os::raw::c_int, _Stream: *mut FILE) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn rmtmp() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __pctype_func() -> *const ::std::os::raw::c_ushort; +} +extern "C" { + pub fn __pwctype_func() -> *const wctype_t; +} +extern "C" { + pub fn iswalnum(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswalpha(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswascii(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswblank(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswcntrl(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswdigit(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswgraph(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswlower(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswprint(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswpunct(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswspace(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswupper(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iswxdigit(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __iswcsymf(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __iswcsym(_C: wint_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswalnum_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswalpha_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswblank_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswcntrl_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswdigit_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswgraph_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswlower_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswprint_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswpunct_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswspace_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswupper_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswxdigit_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswcsymf_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iswcsym_l(_C: wint_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn towupper(_C: wint_t) -> wint_t; +} +extern "C" { + pub fn towlower(_C: wint_t) -> wint_t; +} +extern "C" { + pub fn iswctype(_C: wint_t, _Type: wctype_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _towupper_l(_C: wint_t, _Locale: _locale_t) -> wint_t; +} +extern "C" { + pub fn _towlower_l(_C: wint_t, _Locale: _locale_t) -> wint_t; +} +extern "C" { + pub fn _iswctype_l(_C: wint_t, _Type: wctype_t, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isleadbyte(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isleadbyte_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn is_wctype(_C: wint_t, _Type: wctype_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isctype( + _C: ::std::os::raw::c_int, + _Type: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isctype_l( + _C: ::std::os::raw::c_int, + _Type: ::std::os::raw::c_int, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isalpha(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isalpha_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isupper(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isupper_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn islower(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _islower_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isdigit(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isdigit_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isxdigit(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isxdigit_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isspace(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isspace_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ispunct(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _ispunct_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isblank(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isblank_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isalnum(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isalnum_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isprint(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isprint_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn isgraph(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _isgraph_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn iscntrl(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _iscntrl_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn toupper(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn tolower(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _tolower(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _tolower_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _toupper(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _toupper_l(_C: ::std::os::raw::c_int, _Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __isascii(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __toascii(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __iscsymf(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __iscsym(_C: ::std::os::raw::c_int) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ___mb_cur_max_func() -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ___mb_cur_max_l_func(_Locale: _locale_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wassert(_Message: *const wchar_t, _File: *const wchar_t, _Line: ::std::os::raw::c_uint); +} +extern "C" { + pub fn _errno() -> *mut ::std::os::raw::c_int; +} +extern "C" { + pub fn _set_errno(_Value: ::std::os::raw::c_int) -> errno_t; +} +extern "C" { + pub fn _get_errno(_Value: *mut ::std::os::raw::c_int) -> errno_t; +} +extern "C" { + pub fn __doserrno() -> *mut ::std::os::raw::c_ulong; +} +extern "C" { + pub fn _set_doserrno(_Value: ::std::os::raw::c_ulong) -> errno_t; +} +extern "C" { + pub fn _get_doserrno(_Value: *mut ::std::os::raw::c_ulong) -> errno_t; +} +extern "C" { + pub fn memchr( + _Buf: *const ::std::os::raw::c_void, + _Val: ::std::os::raw::c_int, + _MaxCount: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memcmp( + _Buf1: *const ::std::os::raw::c_void, + _Buf2: *const ::std::os::raw::c_void, + _Size: ::std::os::raw::c_ulonglong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn memcpy( + _Dst: *mut ::std::os::raw::c_void, + _Src: *const ::std::os::raw::c_void, + _Size: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memmove( + _Dst: *mut ::std::os::raw::c_void, + _Src: *const ::std::os::raw::c_void, + _Size: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memset( + _Dst: *mut ::std::os::raw::c_void, + _Val: ::std::os::raw::c_int, + _Size: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn strchr( + _Str: *const ::std::os::raw::c_char, + _Val: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strrchr( + _Str: *const ::std::os::raw::c_char, + _Ch: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strstr( + _Str: *const ::std::os::raw::c_char, + _SubStr: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn wcschr( + _Str: *const ::std::os::raw::c_ushort, + _Ch: ::std::os::raw::c_ushort, + ) -> *mut ::std::os::raw::c_ushort; +} +extern "C" { + pub fn wcsrchr(_Str: *const wchar_t, _Ch: wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsstr(_Str: *const wchar_t, _SubStr: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _memicmp( + _Buf1: *const ::std::os::raw::c_void, + _Buf2: *const ::std::os::raw::c_void, + _Size: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _memicmp_l( + _Buf1: *const ::std::os::raw::c_void, + _Buf2: *const ::std::os::raw::c_void, + _Size: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn memccpy( + _Dst: *mut ::std::os::raw::c_void, + _Src: *const ::std::os::raw::c_void, + _Val: ::std::os::raw::c_int, + _Size: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn memicmp( + _Buf1: *const ::std::os::raw::c_void, + _Buf2: *const ::std::os::raw::c_void, + _Size: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn wcscat_s( + _Destination: *mut wchar_t, + _SizeInWords: rsize_t, + _Source: *const wchar_t, + ) -> errno_t; +} +extern "C" { + pub fn wcscpy_s( + _Destination: *mut wchar_t, + _SizeInWords: rsize_t, + _Source: *const wchar_t, + ) -> errno_t; +} +extern "C" { + pub fn wcsncat_s( + _Destination: *mut wchar_t, + _SizeInWords: rsize_t, + _Source: *const wchar_t, + _MaxCount: rsize_t, + ) -> errno_t; +} +extern "C" { + pub fn wcsncpy_s( + _Destination: *mut wchar_t, + _SizeInWords: rsize_t, + _Source: *const wchar_t, + _MaxCount: rsize_t, + ) -> errno_t; +} +extern "C" { + pub fn wcstok_s( + _String: *mut wchar_t, + _Delimiter: *const wchar_t, + _Context: *mut *mut wchar_t, + ) -> *mut wchar_t; +} +extern "C" { + pub fn _wcsdup(_String: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcscat(_Destination: *mut wchar_t, _Source: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcscmp( + _String1: *const ::std::os::raw::c_ushort, + _String2: *const ::std::os::raw::c_ushort, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn wcscpy(_Destination: *mut wchar_t, _Source: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcscspn(_String: *const wchar_t, _Control: *const wchar_t) -> usize; +} +extern "C" { + pub fn wcslen(_String: *const ::std::os::raw::c_ushort) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn wcsnlen(_Source: *const wchar_t, _MaxCount: usize) -> usize; +} +extern "C" { + pub fn wcsncat( + _Destination: *mut wchar_t, + _Source: *const wchar_t, + _Count: usize, + ) -> *mut wchar_t; +} +extern "C" { + pub fn wcsncmp( + _String1: *const ::std::os::raw::c_ushort, + _String2: *const ::std::os::raw::c_ushort, + _MaxCount: ::std::os::raw::c_ulonglong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn wcsncpy( + _Destination: *mut wchar_t, + _Source: *const wchar_t, + _Count: usize, + ) -> *mut wchar_t; +} +extern "C" { + pub fn wcspbrk(_String: *const wchar_t, _Control: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsspn(_String: *const wchar_t, _Control: *const wchar_t) -> usize; +} +extern "C" { + pub fn wcstok( + _String: *mut wchar_t, + _Delimiter: *const wchar_t, + _Context: *mut *mut wchar_t, + ) -> *mut wchar_t; +} +extern "C" { + pub fn _wcserror(_ErrorNumber: ::std::os::raw::c_int) -> *mut wchar_t; +} +extern "C" { + pub fn _wcserror_s( + _Buffer: *mut wchar_t, + _SizeInWords: usize, + _ErrorNumber: ::std::os::raw::c_int, + ) -> errno_t; +} +extern "C" { + pub fn __wcserror(_String: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn __wcserror_s( + _Buffer: *mut wchar_t, + _SizeInWords: usize, + _ErrorMessage: *const wchar_t, + ) -> errno_t; +} +extern "C" { + pub fn _wcsicmp(_String1: *const wchar_t, _String2: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsicmp_l( + _String1: *const wchar_t, + _String2: *const wchar_t, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsnicmp( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsnicmp_l( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsnset_s( + _Destination: *mut wchar_t, + _SizeInWords: usize, + _Value: wchar_t, + _MaxCount: usize, + ) -> errno_t; +} +extern "C" { + pub fn _wcsnset(_String: *mut wchar_t, _Value: wchar_t, _MaxCount: usize) -> *mut wchar_t; +} +extern "C" { + pub fn _wcsrev(_String: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _wcsset_s(_Destination: *mut wchar_t, _SizeInWords: usize, _Value: wchar_t) -> errno_t; +} +extern "C" { + pub fn _wcsset(_String: *mut wchar_t, _Value: wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _wcslwr_s(_String: *mut wchar_t, _SizeInWords: usize) -> errno_t; +} +extern "C" { + pub fn _wcslwr(_String: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _wcslwr_s_l(_String: *mut wchar_t, _SizeInWords: usize, _Locale: _locale_t) -> errno_t; +} +extern "C" { + pub fn _wcslwr_l(_String: *mut wchar_t, _Locale: _locale_t) -> *mut wchar_t; +} +extern "C" { + pub fn _wcsupr_s(_String: *mut wchar_t, _Size: usize) -> errno_t; +} +extern "C" { + pub fn _wcsupr(_String: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn _wcsupr_s_l(_String: *mut wchar_t, _Size: usize, _Locale: _locale_t) -> errno_t; +} +extern "C" { + pub fn _wcsupr_l(_String: *mut wchar_t, _Locale: _locale_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsxfrm(_Destination: *mut wchar_t, _Source: *const wchar_t, _MaxCount: usize) -> usize; +} +extern "C" { + pub fn _wcsxfrm_l( + _Destination: *mut wchar_t, + _Source: *const wchar_t, + _MaxCount: usize, + _Locale: _locale_t, + ) -> usize; +} +extern "C" { + pub fn wcscoll(_String1: *const wchar_t, _String2: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcscoll_l( + _String1: *const wchar_t, + _String2: *const wchar_t, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsicoll(_String1: *const wchar_t, _String2: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsicoll_l( + _String1: *const wchar_t, + _String2: *const wchar_t, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsncoll( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsncoll_l( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsnicoll( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _wcsnicoll_l( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn wcsdup(_String: *const wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsicmp(_String1: *const wchar_t, _String2: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn wcsnicmp( + _String1: *const wchar_t, + _String2: *const wchar_t, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn wcsnset(_String: *mut wchar_t, _Value: wchar_t, _MaxCount: usize) -> *mut wchar_t; +} +extern "C" { + pub fn wcsrev(_String: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsset(_String: *mut wchar_t, _Value: wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcslwr(_String: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsupr(_String: *mut wchar_t) -> *mut wchar_t; +} +extern "C" { + pub fn wcsicoll(_String1: *const wchar_t, _String2: *const wchar_t) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strcpy_s( + _Destination: *mut ::std::os::raw::c_char, + _SizeInBytes: rsize_t, + _Source: *const ::std::os::raw::c_char, + ) -> errno_t; +} +extern "C" { + pub fn strcat_s( + _Destination: *mut ::std::os::raw::c_char, + _SizeInBytes: rsize_t, + _Source: *const ::std::os::raw::c_char, + ) -> errno_t; +} +extern "C" { + pub fn strerror_s( + _Buffer: *mut ::std::os::raw::c_char, + _SizeInBytes: usize, + _ErrorNumber: ::std::os::raw::c_int, + ) -> errno_t; +} +extern "C" { + pub fn strncat_s( + _Destination: *mut ::std::os::raw::c_char, + _SizeInBytes: rsize_t, + _Source: *const ::std::os::raw::c_char, + _MaxCount: rsize_t, + ) -> errno_t; +} +extern "C" { + pub fn strncpy_s( + _Destination: *mut ::std::os::raw::c_char, + _SizeInBytes: rsize_t, + _Source: *const ::std::os::raw::c_char, + _MaxCount: rsize_t, + ) -> errno_t; +} +extern "C" { + pub fn strtok_s( + _String: *mut ::std::os::raw::c_char, + _Delimiter: *const ::std::os::raw::c_char, + _Context: *mut *mut ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _memccpy( + _Dst: *mut ::std::os::raw::c_void, + _Src: *const ::std::os::raw::c_void, + _Val: ::std::os::raw::c_int, + _MaxCount: usize, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn strcat( + _Destination: *mut ::std::os::raw::c_char, + _Source: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strcmp( + _Str1: *const ::std::os::raw::c_char, + _Str2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strcmpi( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strcoll( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strcoll_l( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strcpy( + _Destination: *mut ::std::os::raw::c_char, + _Source: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strcspn( + _Str: *const ::std::os::raw::c_char, + _Control: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn _strdup(_Source: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strerror(_ErrorMessage: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strerror_s( + _Buffer: *mut ::std::os::raw::c_char, + _SizeInBytes: usize, + _ErrorMessage: *const ::std::os::raw::c_char, + ) -> errno_t; +} +extern "C" { + pub fn strerror(_ErrorMessage: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _stricmp( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _stricoll( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _stricoll_l( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _stricmp_l( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strlen(_Str: *const ::std::os::raw::c_char) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn _strlwr_s(_String: *mut ::std::os::raw::c_char, _Size: usize) -> errno_t; +} +extern "C" { + pub fn _strlwr(_String: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strlwr_s_l( + _String: *mut ::std::os::raw::c_char, + _Size: usize, + _Locale: _locale_t, + ) -> errno_t; +} +extern "C" { + pub fn _strlwr_l( + _String: *mut ::std::os::raw::c_char, + _Locale: _locale_t, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strncat( + _Destination: *mut ::std::os::raw::c_char, + _Source: *const ::std::os::raw::c_char, + _Count: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strncmp( + _Str1: *const ::std::os::raw::c_char, + _Str2: *const ::std::os::raw::c_char, + _MaxCount: ::std::os::raw::c_ulonglong, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strnicmp( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strnicmp_l( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strnicoll( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strnicoll_l( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strncoll( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn _strncoll_l( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + _Locale: _locale_t, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn __strncnt(_String: *const ::std::os::raw::c_char, _Count: usize) -> usize; +} +extern "C" { + pub fn strncpy( + _Destination: *mut ::std::os::raw::c_char, + _Source: *const ::std::os::raw::c_char, + _Count: ::std::os::raw::c_ulonglong, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strnlen(_String: *const ::std::os::raw::c_char, _MaxCount: usize) -> usize; +} +extern "C" { + pub fn _strnset_s( + _String: *mut ::std::os::raw::c_char, + _SizeInBytes: usize, + _Value: ::std::os::raw::c_int, + _MaxCount: usize, + ) -> errno_t; +} +extern "C" { + pub fn _strnset( + _Destination: *mut ::std::os::raw::c_char, + _Value: ::std::os::raw::c_int, + _Count: usize, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strpbrk( + _Str: *const ::std::os::raw::c_char, + _Control: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strrev(_Str: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strset_s( + _Destination: *mut ::std::os::raw::c_char, + _DestinationSize: usize, + _Value: ::std::os::raw::c_int, + ) -> errno_t; +} +extern "C" { + pub fn _strset( + _Destination: *mut ::std::os::raw::c_char, + _Value: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strspn( + _Str: *const ::std::os::raw::c_char, + _Control: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn strtok( + _String: *mut ::std::os::raw::c_char, + _Delimiter: *const ::std::os::raw::c_char, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strupr_s(_String: *mut ::std::os::raw::c_char, _Size: usize) -> errno_t; +} +extern "C" { + pub fn _strupr(_String: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn _strupr_s_l( + _String: *mut ::std::os::raw::c_char, + _Size: usize, + _Locale: _locale_t, + ) -> errno_t; +} +extern "C" { + pub fn _strupr_l( + _String: *mut ::std::os::raw::c_char, + _Locale: _locale_t, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strxfrm( + _Destination: *mut ::std::os::raw::c_char, + _Source: *const ::std::os::raw::c_char, + _MaxCount: ::std::os::raw::c_ulonglong, + ) -> ::std::os::raw::c_ulonglong; +} +extern "C" { + pub fn _strxfrm_l( + _Destination: *mut ::std::os::raw::c_char, + _Source: *const ::std::os::raw::c_char, + _MaxCount: usize, + _Locale: _locale_t, + ) -> usize; +} +extern "C" { + pub fn strdup(_String: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strcmpi( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn stricmp( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strlwr(_String: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strnicmp( + _String1: *const ::std::os::raw::c_char, + _String2: *const ::std::os::raw::c_char, + _MaxCount: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn strnset( + _String: *mut ::std::os::raw::c_char, + _Value: ::std::os::raw::c_int, + _MaxCount: usize, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strrev(_String: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strset( + _String: *mut ::std::os::raw::c_char, + _Value: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_char; +} +extern "C" { + pub fn strupr(_String: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cursor { + pub start: *mut ::std::os::raw::c_uchar, + pub p: *mut ::std::os::raw::c_uchar, + pub end: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_cursor() { + const UNINIT: ::std::mem::MaybeUninit<cursor> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<cursor>(), + 24usize, + concat!("Size of: ", stringify!(cursor)) + ); + assert_eq!( + ::std::mem::align_of::<cursor>(), + 8usize, + concat!("Alignment of ", stringify!(cursor)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).start) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(cursor), + "::", + stringify!(start) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize }, + 8usize, + concat!("Offset of field: ", stringify!(cursor), "::", stringify!(p)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).end) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(cursor), + "::", + stringify!(end) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_str_block { + pub str_: *const ::std::os::raw::c_char, + pub len: u32, +} +#[test] +fn bindgen_test_layout_ndb_str_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_str_block> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_str_block>(), + 16usize, + concat!("Size of: ", stringify!(ndb_str_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_str_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_str_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str_block), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_str_block), + "::", + stringify!(len) + ) + ); +} +pub type str_block_t = ndb_str_block; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_json_parser { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_blocks { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_note { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tag { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tags { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_lmdb { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_packed_str { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bolt11 { + _unused: [u8; 0], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tag_ptr { + pub ptr: *mut ndb_tag, +} +#[test] +fn bindgen_test_layout_ndb_tag_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tag_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tag_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_tag_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tag_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tag_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tag_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_tags_ptr { + pub ptr: *mut ndb_tags, +} +#[test] +fn bindgen_test_layout_ndb_tags_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tags_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tags_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_tags_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tags_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tags_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tags_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_block_ptr { + pub ptr: *mut ndb_block, +} +#[test] +fn bindgen_test_layout_ndb_block_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_block_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_blocks_ptr { + pub ptr: *mut ndb_blocks, +} +#[test] +fn bindgen_test_layout_ndb_blocks_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_blocks_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_blocks_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_blocks_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_blocks_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_blocks_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_blocks_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_note_ptr { + pub ptr: *mut ndb_note, +} +#[test] +fn bindgen_test_layout_ndb_note_ptr() { + const UNINIT: ::std::mem::MaybeUninit<ndb_note_ptr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_note_ptr>(), + 8usize, + concat!("Size of: ", stringify!(ndb_note_ptr)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_note_ptr>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_note_ptr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ptr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_note_ptr), + "::", + stringify!(ptr) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_t { + pub ndb: *mut ndb, +} +#[test] +fn bindgen_test_layout_ndb_t() { + const UNINIT: ::std::mem::MaybeUninit<ndb_t> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_t>(), + 8usize, + concat!("Size of: ", stringify!(ndb_t)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_t>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_t)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ndb) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_t), + "::", + stringify!(ndb) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_str { + pub flag: ::std::os::raw::c_uchar, + pub __bindgen_anon_1: ndb_str__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_str__bindgen_ty_1 { + pub str_: *const ::std::os::raw::c_char, + pub id: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_ndb_str__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_str__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_str__bindgen_ty_1>(), + 8usize, + concat!("Size of: ", stringify!(ndb_str__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_str__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_str__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str__bindgen_ty_1), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str__bindgen_ty_1), + "::", + stringify!(id) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_str() { + const UNINIT: ::std::mem::MaybeUninit<ndb_str> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_str>(), + 16usize, + concat!("Size of: ", stringify!(ndb_str)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_str>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_str)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).flag) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_str), + "::", + stringify!(flag) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_keypair { + pub pubkey: [::std::os::raw::c_uchar; 32usize], + pub secret: [::std::os::raw::c_uchar; 32usize], + pub pair: [::std::os::raw::c_uchar; 96usize], +} +#[test] +fn bindgen_test_layout_ndb_keypair() { + const UNINIT: ::std::mem::MaybeUninit<ndb_keypair> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_keypair>(), + 160usize, + concat!("Size of: ", stringify!(ndb_keypair)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_keypair>(), + 1usize, + concat!("Alignment of ", stringify!(ndb_keypair)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_keypair), + "::", + stringify!(pubkey) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).secret) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_keypair), + "::", + stringify!(secret) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pair) as usize - ptr as usize }, + 64usize, + concat!( + "Offset of field: ", + stringify!(ndb_keypair), + "::", + stringify!(pair) + ) + ); +} +pub type ndb_idres = ::std::os::raw::c_int; +pub type ndb_id_fn = ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *const ::std::os::raw::c_char, + ) -> ndb_idres, +>; +pub type ndb_sub_fn = + ::std::option::Option<unsafe extern "C" fn(arg1: *mut ::std::os::raw::c_void, subid: u64)>; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_id_cb { + pub fn_: ndb_id_fn, + pub data: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ndb_id_cb() { + const UNINIT: ::std::mem::MaybeUninit<ndb_id_cb> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_id_cb>(), + 16usize, + concat!("Size of: ", stringify!(ndb_id_cb)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_id_cb>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_id_cb)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).fn_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_id_cb), + "::", + stringify!(fn_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_id_cb), + "::", + stringify!(data) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_txn { + pub lmdb: *mut ndb_lmdb, + pub mdb_txn: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ndb_txn() { + const UNINIT: ::std::mem::MaybeUninit<ndb_txn> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_txn>(), + 16usize, + concat!("Size of: ", stringify!(ndb_txn)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_txn>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_txn)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).lmdb) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_txn), + "::", + stringify!(lmdb) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mdb_txn) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_txn), + "::", + stringify!(mdb_txn) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_event { + pub note: *mut ndb_note, +} +#[test] +fn bindgen_test_layout_ndb_event() { + const UNINIT: ::std::mem::MaybeUninit<ndb_event> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_event>(), + 8usize, + concat!("Size of: ", stringify!(ndb_event)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_event>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_event)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_event), + "::", + stringify!(note) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_command_result { + pub ok: ::std::os::raw::c_int, + pub msg: *const ::std::os::raw::c_char, + pub msglen: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_command_result() { + const UNINIT: ::std::mem::MaybeUninit<ndb_command_result> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_command_result>(), + 24usize, + concat!("Size of: ", stringify!(ndb_command_result)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_command_result>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_command_result)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ok) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_command_result), + "::", + stringify!(ok) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).msg) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_command_result), + "::", + stringify!(msg) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).msglen) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_command_result), + "::", + stringify!(msglen) + ) + ); +} +pub const fce_type_NDB_FCE_EVENT: fce_type = 1; +pub type fce_type = ::std::os::raw::c_int; +pub const tce_type_NDB_TCE_EVENT: tce_type = 1; +pub const tce_type_NDB_TCE_OK: tce_type = 2; +pub const tce_type_NDB_TCE_NOTICE: tce_type = 3; +pub const tce_type_NDB_TCE_EOSE: tce_type = 4; +pub const tce_type_NDB_TCE_AUTH: tce_type = 5; +pub type tce_type = ::std::os::raw::c_int; +pub const ndb_ingest_filter_action_NDB_INGEST_REJECT: ndb_ingest_filter_action = 0; +pub const ndb_ingest_filter_action_NDB_INGEST_ACCEPT: ndb_ingest_filter_action = 1; +pub const ndb_ingest_filter_action_NDB_INGEST_SKIP_VALIDATION: ndb_ingest_filter_action = 2; +pub type ndb_ingest_filter_action = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_search_key { + pub search: [::std::os::raw::c_char; 24usize], + pub id: [::std::os::raw::c_uchar; 32usize], + pub timestamp: u64, +} +#[test] +fn bindgen_test_layout_ndb_search_key() { + const UNINIT: ::std::mem::MaybeUninit<ndb_search_key> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_search_key>(), + 64usize, + concat!("Size of: ", stringify!(ndb_search_key)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_search_key>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_search_key)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).search) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_search_key), + "::", + stringify!(search) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_search_key), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ndb_search_key), + "::", + stringify!(timestamp) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_search { + pub key: *mut ndb_search_key, + pub profile_key: u64, + pub cursor: *mut ::std::os::raw::c_void, +} +#[test] +fn bindgen_test_layout_ndb_search() { + const UNINIT: ::std::mem::MaybeUninit<ndb_search> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_search>(), + 24usize, + concat!("Size of: ", stringify!(ndb_search)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_search>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_search)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_search), + "::", + stringify!(key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).profile_key) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_search), + "::", + stringify!(profile_key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cursor) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_search), + "::", + stringify!(cursor) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_fce { + pub evtype: fce_type, + pub __bindgen_anon_1: ndb_fce__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_fce__bindgen_ty_1 { + pub event: ndb_event, +} +#[test] +fn bindgen_test_layout_ndb_fce__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_fce__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_fce__bindgen_ty_1>(), + 8usize, + concat!("Size of: ", stringify!(ndb_fce__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_fce__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_fce__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_fce__bindgen_ty_1), + "::", + stringify!(event) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_fce() { + const UNINIT: ::std::mem::MaybeUninit<ndb_fce> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_fce>(), + 16usize, + concat!("Size of: ", stringify!(ndb_fce)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_fce>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_fce)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).evtype) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_fce), + "::", + stringify!(evtype) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_tce { + pub evtype: tce_type, + pub subid: *const ::std::os::raw::c_char, + pub subid_len: ::std::os::raw::c_int, + pub __bindgen_anon_1: ndb_tce__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_tce__bindgen_ty_1 { + pub event: ndb_event, + pub command_result: ndb_command_result, +} +#[test] +fn bindgen_test_layout_ndb_tce__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tce__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tce__bindgen_ty_1>(), + 24usize, + concat!("Size of: ", stringify!(ndb_tce__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tce__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tce__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce__bindgen_ty_1), + "::", + stringify!(event) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).command_result) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce__bindgen_ty_1), + "::", + stringify!(command_result) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_tce() { + const UNINIT: ::std::mem::MaybeUninit<ndb_tce> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_tce>(), + 48usize, + concat!("Size of: ", stringify!(ndb_tce)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_tce>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_tce)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).evtype) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce), + "::", + stringify!(evtype) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).subid) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce), + "::", + stringify!(subid) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).subid_len) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_tce), + "::", + stringify!(subid_len) + ) + ); +} +pub type ndb_ingest_filter_fn = ::std::option::Option< + unsafe extern "C" fn( + arg1: *mut ::std::os::raw::c_void, + arg2: *mut ndb_note, + ) -> ndb_ingest_filter_action, +>; +pub const ndb_filter_fieldtype_NDB_FILTER_IDS: ndb_filter_fieldtype = 1; +pub const ndb_filter_fieldtype_NDB_FILTER_AUTHORS: ndb_filter_fieldtype = 2; +pub const ndb_filter_fieldtype_NDB_FILTER_KINDS: ndb_filter_fieldtype = 3; +pub const ndb_filter_fieldtype_NDB_FILTER_TAGS: ndb_filter_fieldtype = 4; +pub const ndb_filter_fieldtype_NDB_FILTER_SINCE: ndb_filter_fieldtype = 5; +pub const ndb_filter_fieldtype_NDB_FILTER_UNTIL: ndb_filter_fieldtype = 6; +pub const ndb_filter_fieldtype_NDB_FILTER_LIMIT: ndb_filter_fieldtype = 7; +pub type ndb_filter_fieldtype = ::std::os::raw::c_int; +pub const ndb_generic_element_type_NDB_ELEMENT_UNKNOWN: ndb_generic_element_type = 0; +pub const ndb_generic_element_type_NDB_ELEMENT_STRING: ndb_generic_element_type = 1; +pub const ndb_generic_element_type_NDB_ELEMENT_ID: ndb_generic_element_type = 2; +pub const ndb_generic_element_type_NDB_ELEMENT_INT: ndb_generic_element_type = 3; +pub type ndb_generic_element_type = ::std::os::raw::c_int; +pub const ndb_search_order_NDB_ORDER_DESCENDING: ndb_search_order = 0; +pub const ndb_search_order_NDB_ORDER_ASCENDING: ndb_search_order = 1; +pub type ndb_search_order = ::std::os::raw::c_int; +pub const ndb_dbs_NDB_DB_NOTE: ndb_dbs = 0; +pub const ndb_dbs_NDB_DB_META: ndb_dbs = 1; +pub const ndb_dbs_NDB_DB_PROFILE: ndb_dbs = 2; +pub const ndb_dbs_NDB_DB_NOTE_ID: ndb_dbs = 3; +pub const ndb_dbs_NDB_DB_PROFILE_PK: ndb_dbs = 4; +pub const ndb_dbs_NDB_DB_NDB_META: ndb_dbs = 5; +pub const ndb_dbs_NDB_DB_PROFILE_SEARCH: ndb_dbs = 6; +pub const ndb_dbs_NDB_DB_PROFILE_LAST_FETCH: ndb_dbs = 7; +pub const ndb_dbs_NDB_DB_NOTE_KIND: ndb_dbs = 8; +pub const ndb_dbs_NDB_DB_NOTE_TEXT: ndb_dbs = 9; +pub const ndb_dbs_NDB_DB_NOTE_BLOCKS: ndb_dbs = 10; +pub const ndb_dbs_NDB_DB_NOTE_TAGS: ndb_dbs = 11; +pub const ndb_dbs_NDB_DBS: ndb_dbs = 12; +pub type ndb_dbs = ::std::os::raw::c_int; +pub const ndb_common_kind_NDB_CKIND_PROFILE: ndb_common_kind = 0; +pub const ndb_common_kind_NDB_CKIND_TEXT: ndb_common_kind = 1; +pub const ndb_common_kind_NDB_CKIND_CONTACTS: ndb_common_kind = 2; +pub const ndb_common_kind_NDB_CKIND_DM: ndb_common_kind = 3; +pub const ndb_common_kind_NDB_CKIND_DELETE: ndb_common_kind = 4; +pub const ndb_common_kind_NDB_CKIND_REPOST: ndb_common_kind = 5; +pub const ndb_common_kind_NDB_CKIND_REACTION: ndb_common_kind = 6; +pub const ndb_common_kind_NDB_CKIND_ZAP: ndb_common_kind = 7; +pub const ndb_common_kind_NDB_CKIND_ZAP_REQUEST: ndb_common_kind = 8; +pub const ndb_common_kind_NDB_CKIND_NWC_REQUEST: ndb_common_kind = 9; +pub const ndb_common_kind_NDB_CKIND_NWC_RESPONSE: ndb_common_kind = 10; +pub const ndb_common_kind_NDB_CKIND_HTTP_AUTH: ndb_common_kind = 11; +pub const ndb_common_kind_NDB_CKIND_LIST: ndb_common_kind = 12; +pub const ndb_common_kind_NDB_CKIND_LONGFORM: ndb_common_kind = 13; +pub const ndb_common_kind_NDB_CKIND_STATUS: ndb_common_kind = 14; +pub const ndb_common_kind_NDB_CKIND_COUNT: ndb_common_kind = 15; +pub type ndb_common_kind = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_builder { + pub mem: cursor, + pub note_cur: cursor, + pub strings: cursor, + pub str_indices: cursor, + pub note: *mut ndb_note, + pub current_tag: *mut ndb_tag, +} +#[test] +fn bindgen_test_layout_ndb_builder() { + const UNINIT: ::std::mem::MaybeUninit<ndb_builder> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_builder>(), + 112usize, + concat!("Size of: ", stringify!(ndb_builder)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_builder>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_builder)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mem) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(mem) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_cur) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(note_cur) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).strings) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(strings) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_indices) as usize - ptr as usize }, + 72usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(str_indices) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 96usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).current_tag) as usize - ptr as usize }, + 104usize, + concat!( + "Offset of field: ", + stringify!(ndb_builder), + "::", + stringify!(current_tag) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_iterator { + pub note: *mut ndb_note, + pub tag: *mut ndb_tag, + pub index: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_iterator() { + const UNINIT: ::std::mem::MaybeUninit<ndb_iterator> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_iterator>(), + 24usize, + concat!("Size of: ", stringify!(ndb_iterator)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_iterator>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_iterator)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_iterator), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_iterator), + "::", + stringify!(tag) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).index) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_iterator), + "::", + stringify!(index) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_filter_string { + pub string: *const ::std::os::raw::c_char, + pub len: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_filter_string() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_string> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_string>(), + 16usize, + concat!("Size of: ", stringify!(ndb_filter_string)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_string>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter_string)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).string) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_string), + "::", + stringify!(string) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).len) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_string), + "::", + stringify!(len) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_filter_element { + pub string: ndb_filter_string, + pub id: *const ::std::os::raw::c_uchar, + pub integer: u64, +} +#[test] +fn bindgen_test_layout_ndb_filter_element() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_element> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_element>(), + 16usize, + concat!("Size of: ", stringify!(ndb_filter_element)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_element>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter_element)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).string) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_element), + "::", + stringify!(string) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_element), + "::", + stringify!(id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).integer) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_element), + "::", + stringify!(integer) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_filter_field { + pub type_: ndb_filter_fieldtype, + pub elem_type: ndb_generic_element_type, + pub tag: ::std::os::raw::c_char, +} +#[test] +fn bindgen_test_layout_ndb_filter_field() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_field> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_field>(), + 12usize, + concat!("Size of: ", stringify!(ndb_filter_field)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_field>(), + 4usize, + concat!("Alignment of ", stringify!(ndb_filter_field)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_field), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elem_type) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_field), + "::", + stringify!(elem_type) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).tag) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_field), + "::", + stringify!(tag) + ) + ); +} +#[repr(C)] +#[derive(Debug)] +pub struct ndb_filter_elements { + pub field: ndb_filter_field, + pub count: ::std::os::raw::c_int, + pub elements: __IncompleteArrayField<u64>, +} +#[test] +fn bindgen_test_layout_ndb_filter_elements() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter_elements> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter_elements>(), + 16usize, + concat!("Size of: ", stringify!(ndb_filter_elements)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter_elements>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter_elements)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).field) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_elements), + "::", + stringify!(field) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, + 12usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_elements), + "::", + stringify!(count) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter_elements), + "::", + stringify!(elements) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_filter { + pub elem_buf: cursor, + pub data_buf: cursor, + pub num_elements: ::std::os::raw::c_int, + pub finalized: ::std::os::raw::c_int, + pub current: ::std::os::raw::c_int, + pub elements: [::std::os::raw::c_int; 7usize], +} +#[test] +fn bindgen_test_layout_ndb_filter() { + const UNINIT: ::std::mem::MaybeUninit<ndb_filter> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_filter>(), + 88usize, + concat!("Size of: ", stringify!(ndb_filter)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_filter>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_filter)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elem_buf) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(elem_buf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).data_buf) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(data_buf) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_elements) as usize - ptr as usize }, + 48usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(num_elements) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).finalized) as usize - ptr as usize }, + 52usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(finalized) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).current) as usize - ptr as usize }, + 56usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(current) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).elements) as usize - ptr as usize }, + 60usize, + concat!( + "Offset of field: ", + stringify!(ndb_filter), + "::", + stringify!(elements) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_config { + pub flags: ::std::os::raw::c_int, + pub ingester_threads: ::std::os::raw::c_int, + pub mapsize: usize, + pub filter_context: *mut ::std::os::raw::c_void, + pub ingest_filter: ndb_ingest_filter_fn, + pub sub_cb_ctx: *mut ::std::os::raw::c_void, + pub sub_cb: ndb_sub_fn, +} +#[test] +fn bindgen_test_layout_ndb_config() { + const UNINIT: ::std::mem::MaybeUninit<ndb_config> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_config>(), + 48usize, + concat!("Size of: ", stringify!(ndb_config)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_config>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_config)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).flags) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(flags) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ingester_threads) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(ingester_threads) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mapsize) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(mapsize) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).filter_context) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(filter_context) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).ingest_filter) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(ingest_filter) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sub_cb_ctx) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(sub_cb_ctx) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).sub_cb) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ndb_config), + "::", + stringify!(sub_cb) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_config { + pub order: ndb_search_order, + pub limit: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_text_search_config() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_config> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_config>(), + 8usize, + concat!("Size of: ", stringify!(ndb_text_search_config)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_config>(), + 4usize, + concat!("Alignment of ", stringify!(ndb_text_search_config)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).order) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_config), + "::", + stringify!(order) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).limit) as usize - ptr as usize }, + 4usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_config), + "::", + stringify!(limit) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_stat_counts { + pub key_size: usize, + pub value_size: usize, + pub count: usize, +} +#[test] +fn bindgen_test_layout_ndb_stat_counts() { + const UNINIT: ::std::mem::MaybeUninit<ndb_stat_counts> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_stat_counts>(), + 24usize, + concat!("Size of: ", stringify!(ndb_stat_counts)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_stat_counts>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_stat_counts)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key_size) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat_counts), + "::", + stringify!(key_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).value_size) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat_counts), + "::", + stringify!(value_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).count) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat_counts), + "::", + stringify!(count) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_stat { + pub dbs: [ndb_stat_counts; 12usize], + pub common_kinds: [ndb_stat_counts; 15usize], + pub other_kinds: ndb_stat_counts, +} +#[test] +fn bindgen_test_layout_ndb_stat() { + const UNINIT: ::std::mem::MaybeUninit<ndb_stat> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_stat>(), + 672usize, + concat!("Size of: ", stringify!(ndb_stat)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_stat>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_stat)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).dbs) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat), + "::", + stringify!(dbs) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).common_kinds) as usize - ptr as usize }, + 288usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat), + "::", + stringify!(common_kinds) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).other_kinds) as usize - ptr as usize }, + 648usize, + concat!( + "Offset of field: ", + stringify!(ndb_stat), + "::", + stringify!(other_kinds) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_key { + pub str_len: ::std::os::raw::c_int, + pub str_: *const ::std::os::raw::c_char, + pub timestamp: u64, + pub note_id: u64, + pub word_index: u64, +} +#[test] +fn bindgen_test_layout_ndb_text_search_key() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_key> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_key>(), + 40usize, + concat!("Size of: ", stringify!(ndb_text_search_key)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_key>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_text_search_key)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_len) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(str_len) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(timestamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_id) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(note_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).word_index) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_key), + "::", + stringify!(word_index) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_result { + pub key: ndb_text_search_key, + pub prefix_chars: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_text_search_result() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_result> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_result>(), + 48usize, + concat!("Size of: ", stringify!(ndb_text_search_result)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_result>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_text_search_result)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).key) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_result), + "::", + stringify!(key) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).prefix_chars) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_result), + "::", + stringify!(prefix_chars) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_text_search_results { + pub results: [ndb_text_search_result; 128usize], + pub num_results: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_text_search_results() { + const UNINIT: ::std::mem::MaybeUninit<ndb_text_search_results> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_text_search_results>(), + 6152usize, + concat!("Size of: ", stringify!(ndb_text_search_results)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_text_search_results>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_text_search_results)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).results) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_results), + "::", + stringify!(results) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_results) as usize - ptr as usize }, + 6144usize, + concat!( + "Offset of field: ", + stringify!(ndb_text_search_results), + "::", + stringify!(num_results) + ) + ); +} +pub const ndb_block_type_BLOCK_HASHTAG: ndb_block_type = 1; +pub const ndb_block_type_BLOCK_TEXT: ndb_block_type = 2; +pub const ndb_block_type_BLOCK_MENTION_INDEX: ndb_block_type = 3; +pub const ndb_block_type_BLOCK_MENTION_BECH32: ndb_block_type = 4; +pub const ndb_block_type_BLOCK_URL: ndb_block_type = 5; +pub const ndb_block_type_BLOCK_INVOICE: ndb_block_type = 6; +pub type ndb_block_type = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_relays { + pub relays: [ndb_str_block; 24usize], + pub num_relays: ::std::os::raw::c_int, +} +#[test] +fn bindgen_test_layout_ndb_relays() { + const UNINIT: ::std::mem::MaybeUninit<ndb_relays> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_relays>(), + 392usize, + concat!("Size of: ", stringify!(ndb_relays)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_relays>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_relays)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_relays), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).num_relays) as usize - ptr as usize }, + 384usize, + concat!( + "Offset of field: ", + stringify!(ndb_relays), + "::", + stringify!(num_relays) + ) + ); +} +pub const nostr_bech32_type_NOSTR_BECH32_NOTE: nostr_bech32_type = 1; +pub const nostr_bech32_type_NOSTR_BECH32_NPUB: nostr_bech32_type = 2; +pub const nostr_bech32_type_NOSTR_BECH32_NPROFILE: nostr_bech32_type = 3; +pub const nostr_bech32_type_NOSTR_BECH32_NEVENT: nostr_bech32_type = 4; +pub const nostr_bech32_type_NOSTR_BECH32_NRELAY: nostr_bech32_type = 5; +pub const nostr_bech32_type_NOSTR_BECH32_NADDR: nostr_bech32_type = 6; +pub const nostr_bech32_type_NOSTR_BECH32_NSEC: nostr_bech32_type = 7; +pub type nostr_bech32_type = ::std::os::raw::c_int; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_note { + pub event_id: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_note() { + const UNINIT: ::std::mem::MaybeUninit<bech32_note> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_note>(), + 8usize, + concat!("Size of: ", stringify!(bech32_note)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_note>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_note)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event_id) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_note), + "::", + stringify!(event_id) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_npub { + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_npub() { + const UNINIT: ::std::mem::MaybeUninit<bech32_npub> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_npub>(), + 8usize, + concat!("Size of: ", stringify!(bech32_npub)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_npub>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_npub)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_npub), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nsec { + pub nsec: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_nsec() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nsec> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nsec>(), + 8usize, + concat!("Size of: ", stringify!(bech32_nsec)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nsec>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nsec)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsec) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nsec), + "::", + stringify!(nsec) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nevent { + pub relays: ndb_relays, + pub event_id: *const ::std::os::raw::c_uchar, + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_nevent() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nevent> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nevent>(), + 408usize, + concat!("Size of: ", stringify!(bech32_nevent)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nevent>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nevent)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nevent), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).event_id) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(bech32_nevent), + "::", + stringify!(event_id) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 400usize, + concat!( + "Offset of field: ", + stringify!(bech32_nevent), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nprofile { + pub relays: ndb_relays, + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_nprofile() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nprofile> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nprofile>(), + 400usize, + concat!("Size of: ", stringify!(bech32_nprofile)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nprofile>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nprofile)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nprofile), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(bech32_nprofile), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_naddr { + pub relays: ndb_relays, + pub identifier: ndb_str_block, + pub pubkey: *const ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_bech32_naddr() { + const UNINIT: ::std::mem::MaybeUninit<bech32_naddr> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_naddr>(), + 416usize, + concat!("Size of: ", stringify!(bech32_naddr)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_naddr>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_naddr)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relays) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_naddr), + "::", + stringify!(relays) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).identifier) as usize - ptr as usize }, + 392usize, + concat!( + "Offset of field: ", + stringify!(bech32_naddr), + "::", + stringify!(identifier) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).pubkey) as usize - ptr as usize }, + 408usize, + concat!( + "Offset of field: ", + stringify!(bech32_naddr), + "::", + stringify!(pubkey) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct bech32_nrelay { + pub relay: ndb_str_block, +} +#[test] +fn bindgen_test_layout_bech32_nrelay() { + const UNINIT: ::std::mem::MaybeUninit<bech32_nrelay> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<bech32_nrelay>(), + 16usize, + concat!("Size of: ", stringify!(bech32_nrelay)) + ); + assert_eq!( + ::std::mem::align_of::<bech32_nrelay>(), + 8usize, + concat!("Alignment of ", stringify!(bech32_nrelay)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).relay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(bech32_nrelay), + "::", + stringify!(relay) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct nostr_bech32 { + pub type_: nostr_bech32_type, + pub __bindgen_anon_1: nostr_bech32__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union nostr_bech32__bindgen_ty_1 { + pub note: bech32_note, + pub npub: bech32_npub, + pub nsec: bech32_nsec, + pub nevent: bech32_nevent, + pub nprofile: bech32_nprofile, + pub naddr: bech32_naddr, + pub nrelay: bech32_nrelay, +} +#[test] +fn bindgen_test_layout_nostr_bech32__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<nostr_bech32__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<nostr_bech32__bindgen_ty_1>(), + 416usize, + concat!("Size of: ", stringify!(nostr_bech32__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<nostr_bech32__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(nostr_bech32__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).npub) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(npub) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nsec) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nsec) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nevent) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nevent) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nprofile) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nprofile) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).naddr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(naddr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).nrelay) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32__bindgen_ty_1), + "::", + stringify!(nrelay) + ) + ); +} +#[test] +fn bindgen_test_layout_nostr_bech32() { + const UNINIT: ::std::mem::MaybeUninit<nostr_bech32> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<nostr_bech32>(), + 424usize, + concat!("Size of: ", stringify!(nostr_bech32)) + ); + assert_eq!( + ::std::mem::align_of::<nostr_bech32>(), + 8usize, + concat!("Alignment of ", stringify!(nostr_bech32)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(nostr_bech32), + "::", + stringify!(type_) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_mention_bech32_block { + pub str_: ndb_str_block, + pub bech32: nostr_bech32, +} +#[test] +fn bindgen_test_layout_ndb_mention_bech32_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_mention_bech32_block> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_mention_bech32_block>(), + 440usize, + concat!("Size of: ", stringify!(ndb_mention_bech32_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_mention_bech32_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_mention_bech32_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_mention_bech32_block), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).bech32) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_mention_bech32_block), + "::", + stringify!(bech32) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_invoice { + pub version: ::std::os::raw::c_uchar, + pub amount: u64, + pub timestamp: u64, + pub expiry: u64, + pub description: *mut ::std::os::raw::c_char, + pub description_hash: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_ndb_invoice() { + const UNINIT: ::std::mem::MaybeUninit<ndb_invoice> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_invoice>(), + 48usize, + concat!("Size of: ", stringify!(ndb_invoice)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_invoice>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_invoice)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).version) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(version) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).amount) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(amount) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).timestamp) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(timestamp) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).expiry) as usize - ptr as usize }, + 24usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(expiry) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).description) as usize - ptr as usize }, + 32usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(description) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).description_hash) as usize - ptr as usize }, + 40usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice), + "::", + stringify!(description_hash) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_invoice_block { + pub invstr: ndb_str_block, + pub invoice: ndb_invoice, +} +#[test] +fn bindgen_test_layout_ndb_invoice_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_invoice_block> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_invoice_block>(), + 64usize, + concat!("Size of: ", stringify!(ndb_invoice_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_invoice_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_invoice_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).invstr) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice_block), + "::", + stringify!(invstr) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).invoice) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_invoice_block), + "::", + stringify!(invoice) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_block { + pub type_: ndb_block_type, + pub block: ndb_block__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ndb_block__bindgen_ty_1 { + pub str_: ndb_str_block, + pub invoice: ndb_invoice_block, + pub mention_bech32: ndb_mention_bech32_block, + pub mention_index: u32, +} +#[test] +fn bindgen_test_layout_ndb_block__bindgen_ty_1() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block__bindgen_ty_1> = + ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block__bindgen_ty_1>(), + 440usize, + concat!("Size of: ", stringify!(ndb_block__bindgen_ty_1)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block__bindgen_ty_1>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block__bindgen_ty_1)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).str_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(str_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).invoice) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(invoice) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mention_bech32) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(mention_bech32) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).mention_index) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block__bindgen_ty_1), + "::", + stringify!(mention_index) + ) + ); +} +#[test] +fn bindgen_test_layout_ndb_block() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block>(), + 448usize, + concat!("Size of: ", stringify!(ndb_block)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).type_) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block), + "::", + stringify!(type_) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_block), + "::", + stringify!(block) + ) + ); +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ndb_block_iterator { + pub content: *const ::std::os::raw::c_char, + pub blocks: *mut ndb_blocks, + pub block: ndb_block, + pub p: *mut ::std::os::raw::c_uchar, +} +#[test] +fn bindgen_test_layout_ndb_block_iterator() { + const UNINIT: ::std::mem::MaybeUninit<ndb_block_iterator> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_block_iterator>(), + 472usize, + concat!("Size of: ", stringify!(ndb_block_iterator)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_block_iterator>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_block_iterator)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).content) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(content) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).blocks) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(blocks) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).block) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(block) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).p) as usize - ptr as usize }, + 464usize, + concat!( + "Offset of field: ", + stringify!(ndb_block_iterator), + "::", + stringify!(p) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_query_result { + pub note: *mut ndb_note, + pub note_size: u64, + pub note_id: u64, +} +#[test] +fn bindgen_test_layout_ndb_query_result() { + const UNINIT: ::std::mem::MaybeUninit<ndb_query_result> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_query_result>(), + 24usize, + concat!("Size of: ", stringify!(ndb_query_result)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_query_result>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_query_result)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_result), + "::", + stringify!(note) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_size) as usize - ptr as usize }, + 8usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_result), + "::", + stringify!(note_size) + ) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).note_id) as usize - ptr as usize }, + 16usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_result), + "::", + stringify!(note_id) + ) + ); +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndb_query_results { + pub cur: cursor, +} +#[test] +fn bindgen_test_layout_ndb_query_results() { + const UNINIT: ::std::mem::MaybeUninit<ndb_query_results> = ::std::mem::MaybeUninit::uninit(); + let ptr = UNINIT.as_ptr(); + assert_eq!( + ::std::mem::size_of::<ndb_query_results>(), + 24usize, + concat!("Size of: ", stringify!(ndb_query_results)) + ); + assert_eq!( + ::std::mem::align_of::<ndb_query_results>(), + 8usize, + concat!("Alignment of ", stringify!(ndb_query_results)) + ); + assert_eq!( + unsafe { ::std::ptr::addr_of!((*ptr).cur) as usize - ptr as usize }, + 0usize, + concat!( + "Offset of field: ", + stringify!(ndb_query_results), + "::", + stringify!(cur) + ) + ); +} +extern "C" { + pub fn ndb_default_config(arg1: *mut ndb_config); +} +extern "C" { + pub fn ndb_config_set_ingest_threads(config: *mut ndb_config, threads: ::std::os::raw::c_int); +} +extern "C" { + pub fn ndb_config_set_flags(config: *mut ndb_config, flags: ::std::os::raw::c_int); +} +extern "C" { + pub fn ndb_config_set_mapsize(config: *mut ndb_config, mapsize: usize); +} +extern "C" { + pub fn ndb_config_set_ingest_filter( + config: *mut ndb_config, + fn_: ndb_ingest_filter_fn, + arg1: *mut ::std::os::raw::c_void, + ); +} +extern "C" { + pub fn ndb_config_set_subscription_callback( + config: *mut ndb_config, + fn_: ndb_sub_fn, + ctx: *mut ::std::os::raw::c_void, + ); +} +extern "C" { + pub fn ndb_calculate_id( + note: *mut ndb_note, + buf: *mut ::std::os::raw::c_uchar, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_sign_id( + keypair: *mut ndb_keypair, + id: *mut ::std::os::raw::c_uchar, + sig: *mut ::std::os::raw::c_uchar, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_create_keypair(key: *mut ndb_keypair) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_decode_key( + secstr: *const ::std::os::raw::c_char, + keypair: *mut ndb_keypair, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_note_verify( + secp_ctx: *mut ::std::os::raw::c_void, + pubkey: *mut ::std::os::raw::c_uchar, + id: *mut ::std::os::raw::c_uchar, + signature: *mut ::std::os::raw::c_uchar, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_init( + ndb: *mut *mut ndb, + dbdir: *const ::std::os::raw::c_char, + arg1: *const ndb_config, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_db_version(ndb: *mut ndb) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_event( + arg1: *mut ndb, + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_events( + arg1: *mut ndb, + ldjson: *const ::std::os::raw::c_char, + len: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_client_event( + arg1: *mut ndb, + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_process_client_events( + arg1: *mut ndb, + json: *const ::std::os::raw::c_char, + len: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_begin_query(arg1: *mut ndb, arg2: *mut ndb_txn) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_search_profile( + txn: *mut ndb_txn, + search: *mut ndb_search, + query: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_search_profile_next(search: *mut ndb_search) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_search_profile_end(search: *mut ndb_search); +} +extern "C" { + pub fn ndb_end_query(arg1: *mut ndb_txn) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_write_last_profile_fetch( + ndb: *mut ndb, + pubkey: *const ::std::os::raw::c_uchar, + fetched_at: u64, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_read_last_profile_fetch( + txn: *mut ndb_txn, + pubkey: *const ::std::os::raw::c_uchar, + ) -> u64; +} +extern "C" { + pub fn ndb_get_profile_by_pubkey( + txn: *mut ndb_txn, + pubkey: *const ::std::os::raw::c_uchar, + len: *mut usize, + primkey: *mut u64, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn ndb_get_profile_by_key( + txn: *mut ndb_txn, + key: u64, + len: *mut usize, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn ndb_get_notekey_by_id(txn: *mut ndb_txn, id: *const ::std::os::raw::c_uchar) -> u64; +} +extern "C" { + pub fn ndb_get_profilekey_by_pubkey( + txn: *mut ndb_txn, + id: *const ::std::os::raw::c_uchar, + ) -> u64; +} +extern "C" { + pub fn ndb_get_note_by_id( + txn: *mut ndb_txn, + id: *const ::std::os::raw::c_uchar, + len: *mut usize, + primkey: *mut u64, + ) -> *mut ndb_note; +} +extern "C" { + pub fn ndb_get_note_by_key(txn: *mut ndb_txn, key: u64, len: *mut usize) -> *mut ndb_note; +} +extern "C" { + pub fn ndb_get_note_meta( + txn: *mut ndb_txn, + id: *const ::std::os::raw::c_uchar, + len: *mut usize, + ) -> *mut ::std::os::raw::c_void; +} +extern "C" { + pub fn ndb_destroy(arg1: *mut ndb); +} +extern "C" { + pub fn ndb_parse_json_note( + arg1: *mut ndb_json_parser, + arg2: *mut *mut ndb_note, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_client_event_from_json( + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + fce: *mut ndb_fce, + buf: *mut ::std::os::raw::c_uchar, + bufsize: ::std::os::raw::c_int, + cb: *mut ndb_id_cb, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_ws_event_from_json( + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + tce: *mut ndb_tce, + buf: *mut ::std::os::raw::c_uchar, + bufsize: ::std::os::raw::c_int, + arg1: *mut ndb_id_cb, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_note_from_json( + json: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + arg1: *mut *mut ndb_note, + buf: *mut ::std::os::raw::c_uchar, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_init( + builder: *mut ndb_builder, + buf: *mut ::std::os::raw::c_uchar, + bufsize: usize, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_finalize( + builder: *mut ndb_builder, + note: *mut *mut ndb_note, + privkey: *mut ndb_keypair, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_set_content( + builder: *mut ndb_builder, + content: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_set_created_at(builder: *mut ndb_builder, created_at: u64); +} +extern "C" { + pub fn ndb_builder_set_sig(builder: *mut ndb_builder, sig: *mut ::std::os::raw::c_uchar); +} +extern "C" { + pub fn ndb_builder_set_pubkey(builder: *mut ndb_builder, pubkey: *mut ::std::os::raw::c_uchar); +} +extern "C" { + pub fn ndb_builder_set_id(builder: *mut ndb_builder, id: *mut ::std::os::raw::c_uchar); +} +extern "C" { + pub fn ndb_builder_set_kind(builder: *mut ndb_builder, kind: u32); +} +extern "C" { + pub fn ndb_builder_new_tag(builder: *mut ndb_builder) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_builder_push_tag_str( + builder: *mut ndb_builder, + str_: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_init(arg1: *mut ndb_filter) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_add_id_element( + arg1: *mut ndb_filter, + id: *const ::std::os::raw::c_uchar, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_add_int_element(arg1: *mut ndb_filter, integer: u64) + -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_add_str_element( + arg1: *mut ndb_filter, + str_: *const ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_eq(arg1: *const ndb_filter, arg2: *const ndb_filter) + -> ::std::os::raw::c_int; +} +extern "C" { + #[doc = " is `a` a subset of `b`"] + pub fn ndb_filter_is_subset_of( + a: *const ndb_filter, + b: *const ndb_filter, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_from_json( + arg1: *const ::std::os::raw::c_char, + len: ::std::os::raw::c_int, + filter: *mut ndb_filter, + buf: *mut ::std::os::raw::c_uchar, + bufsize: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_get_id_element( + arg1: *const ndb_filter, + arg2: *const ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn ndb_filter_get_string_element( + arg1: *const ndb_filter, + arg2: *const ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_filter_get_int_element( + arg1: *const ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> u64; +} +extern "C" { + pub fn ndb_filter_get_int_element_ptr( + arg1: *mut ndb_filter_elements, + index: ::std::os::raw::c_int, + ) -> *mut u64; +} +extern "C" { + pub fn ndb_filter_current_element(arg1: *const ndb_filter) -> *mut ndb_filter_elements; +} +extern "C" { + pub fn ndb_filter_get_elements( + arg1: *const ndb_filter, + arg2: ::std::os::raw::c_int, + ) -> *mut ndb_filter_elements; +} +extern "C" { + pub fn ndb_filter_start_field( + arg1: *mut ndb_filter, + arg2: ndb_filter_fieldtype, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_start_tag_field( + arg1: *mut ndb_filter, + tag: ::std::os::raw::c_char, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_matches(arg1: *mut ndb_filter, arg2: *mut ndb_note) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_clone(dst: *mut ndb_filter, src: *mut ndb_filter) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_end(arg1: *mut ndb_filter) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_filter_end_field(arg1: *mut ndb_filter); +} +extern "C" { + pub fn ndb_filter_destroy(arg1: *mut ndb_filter); +} +extern "C" { + pub fn ndb_filter_json( + arg1: *const ndb_filter, + buf: *mut ::std::os::raw::c_char, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_subscribe( + arg1: *mut ndb, + arg2: *mut ndb_filter, + num_filters: ::std::os::raw::c_int, + ) -> u64; +} +extern "C" { + pub fn ndb_wait_for_notes( + arg1: *mut ndb, + subid: u64, + note_ids: *mut u64, + note_id_capacity: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_poll_for_notes( + arg1: *mut ndb, + subid: u64, + note_ids: *mut u64, + note_id_capacity: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_unsubscribe(arg1: *mut ndb, subid: u64) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_num_subscriptions(arg1: *mut ndb) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_subscription_filters( + arg1: *mut ndb, + subid: u64, + filters: *mut ::std::os::raw::c_int, + ) -> *mut ndb_filter; +} +extern "C" { + pub fn ndb_text_search( + txn: *mut ndb_txn, + query: *const ::std::os::raw::c_char, + arg1: *mut ndb_text_search_results, + arg2: *mut ndb_text_search_config, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_default_text_search_config(arg1: *mut ndb_text_search_config); +} +extern "C" { + pub fn ndb_text_search_config_set_order( + arg1: *mut ndb_text_search_config, + arg2: ndb_search_order, + ); +} +extern "C" { + pub fn ndb_text_search_config_set_limit( + arg1: *mut ndb_text_search_config, + limit: ::std::os::raw::c_int, + ); +} +extern "C" { + pub fn ndb_query( + txn: *mut ndb_txn, + filters: *mut ndb_filter, + num_filters: ::std::os::raw::c_int, + results: *mut ndb_query_result, + result_capacity: ::std::os::raw::c_int, + count: *mut ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_stat(ndb: *mut ndb, stat: *mut ndb_stat) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_stat_counts_init(counts: *mut ndb_stat_counts); +} +extern "C" { + pub fn ndb_note_content(note: *mut ndb_note) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_note_str(note: *mut ndb_note, pstr: *mut ndb_packed_str) -> ndb_str; +} +extern "C" { + pub fn ndb_note_content_length(note: *mut ndb_note) -> u32; +} +extern "C" { + pub fn ndb_note_created_at(note: *mut ndb_note) -> u32; +} +extern "C" { + pub fn ndb_note_kind(note: *mut ndb_note) -> u32; +} +extern "C" { + pub fn ndb_note_id(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn ndb_note_pubkey(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn ndb_note_sig(note: *mut ndb_note) -> *mut ::std::os::raw::c_uchar; +} +extern "C" { + pub fn _ndb_note_set_kind(note: *mut ndb_note, kind: u32); +} +extern "C" { + pub fn ndb_note_tags(note: *mut ndb_note) -> *mut ndb_tags; +} +extern "C" { + pub fn ndb_str_len(str_: *mut ndb_str) -> ::std::os::raw::c_int; +} +extern "C" { + #[doc = " write the note as json to a buffer"] + pub fn ndb_note_json( + arg1: *mut ndb_note, + buf: *mut ::std::os::raw::c_char, + buflen: ::std::os::raw::c_int, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_tags_iterate_start(note: *mut ndb_note, iter: *mut ndb_iterator); +} +extern "C" { + pub fn ndb_tags_count(arg1: *mut ndb_tags) -> u16; +} +extern "C" { + pub fn ndb_tag_count(arg1: *mut ndb_tag) -> u16; +} +extern "C" { + pub fn ndb_tags_iterate_next(iter: *mut ndb_iterator) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_iter_tag_str(iter: *mut ndb_iterator, ind: ::std::os::raw::c_int) -> ndb_str; +} +extern "C" { + pub fn ndb_tag_str( + note: *mut ndb_note, + tag: *mut ndb_tag, + ind: ::std::os::raw::c_int, + ) -> ndb_str; +} +extern "C" { + pub fn ndb_db_name(db: ndb_dbs) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_kind_name(ck: ndb_common_kind) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_kind_to_common_kind(kind: ::std::os::raw::c_int) -> ndb_common_kind; +} +extern "C" { + pub fn ndb_parse_content( + buf: *mut ::std::os::raw::c_uchar, + buf_size: ::std::os::raw::c_int, + content: *const ::std::os::raw::c_char, + content_len: ::std::os::raw::c_int, + blocks_p: *mut *mut ndb_blocks, + ) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_get_block_type(block: *mut ndb_block) -> ndb_block_type; +} +extern "C" { + pub fn ndb_blocks_flags(block: *mut ndb_blocks) -> ::std::os::raw::c_int; +} +extern "C" { + pub fn ndb_blocks_total_size(blocks: *mut ndb_blocks) -> usize; +} +extern "C" { + pub fn ndb_blocks_word_count(blocks: *mut ndb_blocks) -> ::std::os::raw::c_int; +} +extern "C" { + #[doc = " Free blocks if they are owned, safe to call on unowned blocks as well."] + pub fn ndb_blocks_free(blocks: *mut ndb_blocks); +} +extern "C" { + pub fn ndb_get_blocks_by_key( + ndb: *mut ndb, + txn: *mut ndb_txn, + note_key: u64, + ) -> *mut ndb_blocks; +} +extern "C" { + pub fn ndb_blocks_iterate_start( + arg1: *const ::std::os::raw::c_char, + arg2: *mut ndb_blocks, + arg3: *mut ndb_block_iterator, + ); +} +extern "C" { + pub fn ndb_blocks_iterate_next(arg1: *mut ndb_block_iterator) -> *mut ndb_block; +} +extern "C" { + pub fn ndb_block_str(arg1: *mut ndb_block) -> *mut ndb_str_block; +} +extern "C" { + pub fn ndb_str_block_ptr(arg1: *mut ndb_str_block) -> *const ::std::os::raw::c_char; +} +extern "C" { + pub fn ndb_str_block_len(arg1: *mut ndb_str_block) -> u32; +} +extern "C" { + pub fn ndb_bech32_block(block: *mut ndb_block) -> *mut nostr_bech32; +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __crt_locale_data { + pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __crt_multibyte_data { + pub _address: u8, +} +pub type __builtin_va_list = *mut ::std::os::raw::c_char; diff --git a/src/block.rs b/src/block.rs @@ -221,7 +221,7 @@ impl<'a> Blocks<'a> { } } -impl<'a> Drop for Blocks<'a> { +impl Drop for Blocks<'_> { fn drop(&mut self) { unsafe { bindings::ndb_blocks_free(self.as_ptr()) }; } diff --git a/src/filter.rs b/src/filter.rs @@ -1008,7 +1008,7 @@ impl<'a> IntoIterator for FilterIntElements<'a> { } } -impl<'a> Iterator for FilterIntElemIter<'a> { +impl Iterator for FilterIntElemIter<'_> { type Item = u64; fn next(&mut self) -> Option<u64> { diff --git a/src/ndb.rs b/src/ndb.rs @@ -159,7 +159,11 @@ impl Ndb { vec.into_iter().map(NoteKey::new).collect() } - pub async fn wait_for_notes(&self, sub_id: Subscription, max_notes: u32) -> Result<Vec<NoteKey>> { + pub async fn wait_for_notes( + &self, + sub_id: Subscription, + max_notes: u32, + ) -> Result<Vec<NoteKey>> { let ndb = self.clone(); let handle = task::spawn_blocking(move || { let mut vec: Vec<u64> = vec![]; diff --git a/src/ndb_profile.rs b/src/ndb_profile.rs @@ -1,10 +1,9 @@ // automatically generated by the FlatBuffers compiler, do not modify - // @generated -use core::mem; use core::cmp::Ordering; +use core::mem; extern crate flatbuffers; use self::flatbuffers::{EndianScalar, Follow}; @@ -13,165 +12,228 @@ pub enum NdbProfileOffset {} #[derive(Copy, Clone, PartialEq)] pub struct NdbProfile<'a> { - pub _tab: flatbuffers::Table<'a>, + pub _tab: flatbuffers::Table<'a>, } impl<'a> flatbuffers::Follow<'a> for NdbProfile<'a> { - type Inner = NdbProfile<'a>; - #[inline] - unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { - Self { _tab: flatbuffers::Table::new(buf, loc) } - } + type Inner = NdbProfile<'a>; + #[inline] + unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { + Self { + _tab: flatbuffers::Table::new(buf, loc), + } + } } impl<'a> NdbProfile<'a> { - pub const VT_NAME: flatbuffers::VOffsetT = 4; - pub const VT_WEBSITE: flatbuffers::VOffsetT = 6; - pub const VT_ABOUT: flatbuffers::VOffsetT = 8; - pub const VT_LUD16: flatbuffers::VOffsetT = 10; - pub const VT_BANNER: flatbuffers::VOffsetT = 12; - pub const VT_DISPLAY_NAME: flatbuffers::VOffsetT = 14; - pub const VT_REACTIONS: flatbuffers::VOffsetT = 16; - pub const VT_PICTURE: flatbuffers::VOffsetT = 18; - pub const VT_NIP05: flatbuffers::VOffsetT = 20; - pub const VT_DAMUS_DONATION: flatbuffers::VOffsetT = 22; - pub const VT_DAMUS_DONATION_V2: flatbuffers::VOffsetT = 24; - pub const VT_LUD06: flatbuffers::VOffsetT = 26; - - #[inline] - pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self { - NdbProfile { _tab: table } - } - #[allow(unused_mut)] - pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( - _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, - args: &'args NdbProfileArgs<'args> - ) -> flatbuffers::WIPOffset<NdbProfile<'bldr>> { - let mut builder = NdbProfileBuilder::new(_fbb); - if let Some(x) = args.lud06 { builder.add_lud06(x); } - builder.add_damus_donation_v2(args.damus_donation_v2); - builder.add_damus_donation(args.damus_donation); - if let Some(x) = args.nip05 { builder.add_nip05(x); } - if let Some(x) = args.picture { builder.add_picture(x); } - if let Some(x) = args.display_name { builder.add_display_name(x); } - if let Some(x) = args.banner { builder.add_banner(x); } - if let Some(x) = args.lud16 { builder.add_lud16(x); } - if let Some(x) = args.about { builder.add_about(x); } - if let Some(x) = args.website { builder.add_website(x); } - if let Some(x) = args.name { builder.add_name(x); } - builder.add_reactions(args.reactions); - builder.finish() - } + pub const VT_NAME: flatbuffers::VOffsetT = 4; + pub const VT_WEBSITE: flatbuffers::VOffsetT = 6; + pub const VT_ABOUT: flatbuffers::VOffsetT = 8; + pub const VT_LUD16: flatbuffers::VOffsetT = 10; + pub const VT_BANNER: flatbuffers::VOffsetT = 12; + pub const VT_DISPLAY_NAME: flatbuffers::VOffsetT = 14; + pub const VT_REACTIONS: flatbuffers::VOffsetT = 16; + pub const VT_PICTURE: flatbuffers::VOffsetT = 18; + pub const VT_NIP05: flatbuffers::VOffsetT = 20; + pub const VT_DAMUS_DONATION: flatbuffers::VOffsetT = 22; + pub const VT_DAMUS_DONATION_V2: flatbuffers::VOffsetT = 24; + pub const VT_LUD06: flatbuffers::VOffsetT = 26; + #[inline] + pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self { + NdbProfile { _tab: table } + } + #[allow(unused_mut)] + pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( + _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, + args: &'args NdbProfileArgs<'args>, + ) -> flatbuffers::WIPOffset<NdbProfile<'bldr>> { + let mut builder = NdbProfileBuilder::new(_fbb); + if let Some(x) = args.lud06 { + builder.add_lud06(x); + } + builder.add_damus_donation_v2(args.damus_donation_v2); + builder.add_damus_donation(args.damus_donation); + if let Some(x) = args.nip05 { + builder.add_nip05(x); + } + if let Some(x) = args.picture { + builder.add_picture(x); + } + if let Some(x) = args.display_name { + builder.add_display_name(x); + } + if let Some(x) = args.banner { + builder.add_banner(x); + } + if let Some(x) = args.lud16 { + builder.add_lud16(x); + } + if let Some(x) = args.about { + builder.add_about(x); + } + if let Some(x) = args.website { + builder.add_website(x); + } + if let Some(x) = args.name { + builder.add_name(x); + } + builder.add_reactions(args.reactions); + builder.finish() + } - #[inline] - pub fn name(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_NAME, None)} - } - #[inline] - pub fn website(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_WEBSITE, None)} - } - #[inline] - pub fn about(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_ABOUT, None)} - } - #[inline] - pub fn lud16(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_LUD16, None)} - } - #[inline] - pub fn banner(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_BANNER, None)} - } - #[inline] - pub fn display_name(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_DISPLAY_NAME, None)} - } - #[inline] - pub fn reactions(&self) -> bool { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<bool>(NdbProfile::VT_REACTIONS, Some(true)).unwrap()} - } - #[inline] - pub fn picture(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_PICTURE, None)} - } - #[inline] - pub fn nip05(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_NIP05, None)} - } - #[inline] - pub fn damus_donation(&self) -> i32 { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<i32>(NdbProfile::VT_DAMUS_DONATION, Some(0)).unwrap()} - } - #[inline] - pub fn damus_donation_v2(&self) -> i32 { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<i32>(NdbProfile::VT_DAMUS_DONATION_V2, Some(0)).unwrap()} - } - #[inline] - pub fn lud06(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_LUD06, None)} - } + #[inline] + pub fn name(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_NAME, None) + } + } + #[inline] + pub fn website(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_WEBSITE, None) + } + } + #[inline] + pub fn about(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_ABOUT, None) + } + } + #[inline] + pub fn lud16(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_LUD16, None) + } + } + #[inline] + pub fn banner(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_BANNER, None) + } + } + #[inline] + pub fn display_name(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_DISPLAY_NAME, None) + } + } + #[inline] + pub fn reactions(&self) -> bool { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<bool>(NdbProfile::VT_REACTIONS, Some(true)) + .unwrap() + } + } + #[inline] + pub fn picture(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_PICTURE, None) + } + } + #[inline] + pub fn nip05(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_NIP05, None) + } + } + #[inline] + pub fn damus_donation(&self) -> i32 { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<i32>(NdbProfile::VT_DAMUS_DONATION, Some(0)) + .unwrap() + } + } + #[inline] + pub fn damus_donation_v2(&self) -> i32 { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<i32>(NdbProfile::VT_DAMUS_DONATION_V2, Some(0)) + .unwrap() + } + } + #[inline] + pub fn lud06(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfile::VT_LUD06, None) + } + } } impl flatbuffers::Verifiable for NdbProfile<'_> { - #[inline] - fn run_verifier( - v: &mut flatbuffers::Verifier, pos: usize - ) -> Result<(), flatbuffers::InvalidFlatbuffer> { - use self::flatbuffers::Verifiable; - v.visit_table(pos)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("name", Self::VT_NAME, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("website", Self::VT_WEBSITE, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("about", Self::VT_ABOUT, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("lud16", Self::VT_LUD16, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("banner", Self::VT_BANNER, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("display_name", Self::VT_DISPLAY_NAME, false)? - .visit_field::<bool>("reactions", Self::VT_REACTIONS, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("picture", Self::VT_PICTURE, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("nip05", Self::VT_NIP05, false)? - .visit_field::<i32>("damus_donation", Self::VT_DAMUS_DONATION, false)? - .visit_field::<i32>("damus_donation_v2", Self::VT_DAMUS_DONATION_V2, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("lud06", Self::VT_LUD06, false)? - .finish(); - Ok(()) - } + #[inline] + fn run_verifier( + v: &mut flatbuffers::Verifier, + pos: usize, + ) -> Result<(), flatbuffers::InvalidFlatbuffer> { + use self::flatbuffers::Verifiable; + v.visit_table(pos)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("name", Self::VT_NAME, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("website", Self::VT_WEBSITE, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("about", Self::VT_ABOUT, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("lud16", Self::VT_LUD16, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("banner", Self::VT_BANNER, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>( + "display_name", + Self::VT_DISPLAY_NAME, + false, + )? + .visit_field::<bool>("reactions", Self::VT_REACTIONS, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("picture", Self::VT_PICTURE, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("nip05", Self::VT_NIP05, false)? + .visit_field::<i32>("damus_donation", Self::VT_DAMUS_DONATION, false)? + .visit_field::<i32>("damus_donation_v2", Self::VT_DAMUS_DONATION_V2, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("lud06", Self::VT_LUD06, false)? + .finish(); + Ok(()) + } } pub struct NdbProfileArgs<'a> { pub name: Option<flatbuffers::WIPOffset<&'a str>>, @@ -188,194 +250,232 @@ pub struct NdbProfileArgs<'a> { pub lud06: Option<flatbuffers::WIPOffset<&'a str>>, } impl<'a> Default for NdbProfileArgs<'a> { - #[inline] - fn default() -> Self { - NdbProfileArgs { - name: None, - website: None, - about: None, - lud16: None, - banner: None, - display_name: None, - reactions: true, - picture: None, - nip05: None, - damus_donation: 0, - damus_donation_v2: 0, - lud06: None, - } - } + #[inline] + fn default() -> Self { + NdbProfileArgs { + name: None, + website: None, + about: None, + lud16: None, + banner: None, + display_name: None, + reactions: true, + picture: None, + nip05: None, + damus_donation: 0, + damus_donation_v2: 0, + lud06: None, + } + } } pub struct NdbProfileBuilder<'a: 'b, 'b> { - fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, - start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, + fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, + start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, } impl<'a: 'b, 'b> NdbProfileBuilder<'a, 'b> { - #[inline] - pub fn add_name(&mut self, name: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_NAME, name); - } - #[inline] - pub fn add_website(&mut self, website: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_WEBSITE, website); - } - #[inline] - pub fn add_about(&mut self, about: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_ABOUT, about); - } - #[inline] - pub fn add_lud16(&mut self, lud16: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_LUD16, lud16); - } - #[inline] - pub fn add_banner(&mut self, banner: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_BANNER, banner); - } - #[inline] - pub fn add_display_name(&mut self, display_name: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_DISPLAY_NAME, display_name); - } - #[inline] - pub fn add_reactions(&mut self, reactions: bool) { - self.fbb_.push_slot::<bool>(NdbProfile::VT_REACTIONS, reactions, true); - } - #[inline] - pub fn add_picture(&mut self, picture: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_PICTURE, picture); - } - #[inline] - pub fn add_nip05(&mut self, nip05: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_NIP05, nip05); - } - #[inline] - pub fn add_damus_donation(&mut self, damus_donation: i32) { - self.fbb_.push_slot::<i32>(NdbProfile::VT_DAMUS_DONATION, damus_donation, 0); - } - #[inline] - pub fn add_damus_donation_v2(&mut self, damus_donation_v2: i32) { - self.fbb_.push_slot::<i32>(NdbProfile::VT_DAMUS_DONATION_V2, damus_donation_v2, 0); - } - #[inline] - pub fn add_lud06(&mut self, lud06: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_LUD06, lud06); - } - #[inline] - pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> NdbProfileBuilder<'a, 'b> { - let start = _fbb.start_table(); - NdbProfileBuilder { - fbb_: _fbb, - start_: start, - } - } - #[inline] - pub fn finish(self) -> flatbuffers::WIPOffset<NdbProfile<'a>> { - let o = self.fbb_.end_table(self.start_); - flatbuffers::WIPOffset::new(o.value()) - } + #[inline] + pub fn add_name(&mut self, name: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_NAME, name); + } + #[inline] + pub fn add_website(&mut self, website: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_WEBSITE, website); + } + #[inline] + pub fn add_about(&mut self, about: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_ABOUT, about); + } + #[inline] + pub fn add_lud16(&mut self, lud16: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_LUD16, lud16); + } + #[inline] + pub fn add_banner(&mut self, banner: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_BANNER, banner); + } + #[inline] + pub fn add_display_name(&mut self, display_name: flatbuffers::WIPOffset<&'b str>) { + self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>( + NdbProfile::VT_DISPLAY_NAME, + display_name, + ); + } + #[inline] + pub fn add_reactions(&mut self, reactions: bool) { + self.fbb_ + .push_slot::<bool>(NdbProfile::VT_REACTIONS, reactions, true); + } + #[inline] + pub fn add_picture(&mut self, picture: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_PICTURE, picture); + } + #[inline] + pub fn add_nip05(&mut self, nip05: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_NIP05, nip05); + } + #[inline] + pub fn add_damus_donation(&mut self, damus_donation: i32) { + self.fbb_ + .push_slot::<i32>(NdbProfile::VT_DAMUS_DONATION, damus_donation, 0); + } + #[inline] + pub fn add_damus_donation_v2(&mut self, damus_donation_v2: i32) { + self.fbb_ + .push_slot::<i32>(NdbProfile::VT_DAMUS_DONATION_V2, damus_donation_v2, 0); + } + #[inline] + pub fn add_lud06(&mut self, lud06: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfile::VT_LUD06, lud06); + } + #[inline] + pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> NdbProfileBuilder<'a, 'b> { + let start = _fbb.start_table(); + NdbProfileBuilder { + fbb_: _fbb, + start_: start, + } + } + #[inline] + pub fn finish(self) -> flatbuffers::WIPOffset<NdbProfile<'a>> { + let o = self.fbb_.end_table(self.start_); + flatbuffers::WIPOffset::new(o.value()) + } } impl core::fmt::Debug for NdbProfile<'_> { - fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { - let mut ds = f.debug_struct("NdbProfile"); - ds.field("name", &self.name()); - ds.field("website", &self.website()); - ds.field("about", &self.about()); - ds.field("lud16", &self.lud16()); - ds.field("banner", &self.banner()); - ds.field("display_name", &self.display_name()); - ds.field("reactions", &self.reactions()); - ds.field("picture", &self.picture()); - ds.field("nip05", &self.nip05()); - ds.field("damus_donation", &self.damus_donation()); - ds.field("damus_donation_v2", &self.damus_donation_v2()); - ds.field("lud06", &self.lud06()); - ds.finish() - } + fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { + let mut ds = f.debug_struct("NdbProfile"); + ds.field("name", &self.name()); + ds.field("website", &self.website()); + ds.field("about", &self.about()); + ds.field("lud16", &self.lud16()); + ds.field("banner", &self.banner()); + ds.field("display_name", &self.display_name()); + ds.field("reactions", &self.reactions()); + ds.field("picture", &self.picture()); + ds.field("nip05", &self.nip05()); + ds.field("damus_donation", &self.damus_donation()); + ds.field("damus_donation_v2", &self.damus_donation_v2()); + ds.field("lud06", &self.lud06()); + ds.finish() + } } pub enum NdbProfileRecordOffset {} #[derive(Copy, Clone, PartialEq)] pub struct NdbProfileRecord<'a> { - pub _tab: flatbuffers::Table<'a>, + pub _tab: flatbuffers::Table<'a>, } impl<'a> flatbuffers::Follow<'a> for NdbProfileRecord<'a> { - type Inner = NdbProfileRecord<'a>; - #[inline] - unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { - Self { _tab: flatbuffers::Table::new(buf, loc) } - } + type Inner = NdbProfileRecord<'a>; + #[inline] + unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner { + Self { + _tab: flatbuffers::Table::new(buf, loc), + } + } } impl<'a> NdbProfileRecord<'a> { - pub const VT_PROFILE: flatbuffers::VOffsetT = 4; - pub const VT_RECEIVED_AT: flatbuffers::VOffsetT = 6; - pub const VT_NOTE_KEY: flatbuffers::VOffsetT = 8; - pub const VT_LNURL: flatbuffers::VOffsetT = 10; - - #[inline] - pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self { - NdbProfileRecord { _tab: table } - } - #[allow(unused_mut)] - pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( - _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, - args: &'args NdbProfileRecordArgs<'args> - ) -> flatbuffers::WIPOffset<NdbProfileRecord<'bldr>> { - let mut builder = NdbProfileRecordBuilder::new(_fbb); - builder.add_note_key(args.note_key); - builder.add_received_at(args.received_at); - if let Some(x) = args.lnurl { builder.add_lnurl(x); } - if let Some(x) = args.profile { builder.add_profile(x); } - builder.finish() - } + pub const VT_PROFILE: flatbuffers::VOffsetT = 4; + pub const VT_RECEIVED_AT: flatbuffers::VOffsetT = 6; + pub const VT_NOTE_KEY: flatbuffers::VOffsetT = 8; + pub const VT_LNURL: flatbuffers::VOffsetT = 10; + #[inline] + pub unsafe fn init_from_table(table: flatbuffers::Table<'a>) -> Self { + NdbProfileRecord { _tab: table } + } + #[allow(unused_mut)] + pub fn create<'bldr: 'args, 'args: 'mut_bldr, 'mut_bldr>( + _fbb: &'mut_bldr mut flatbuffers::FlatBufferBuilder<'bldr>, + args: &'args NdbProfileRecordArgs<'args>, + ) -> flatbuffers::WIPOffset<NdbProfileRecord<'bldr>> { + let mut builder = NdbProfileRecordBuilder::new(_fbb); + builder.add_note_key(args.note_key); + builder.add_received_at(args.received_at); + if let Some(x) = args.lnurl { + builder.add_lnurl(x); + } + if let Some(x) = args.profile { + builder.add_profile(x); + } + builder.finish() + } - #[inline] - pub fn profile(&self) -> Option<NdbProfile<'a>> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<NdbProfile>>(NdbProfileRecord::VT_PROFILE, None)} - } - #[inline] - pub fn received_at(&self) -> u64 { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<u64>(NdbProfileRecord::VT_RECEIVED_AT, Some(0)).unwrap()} - } - #[inline] - pub fn note_key(&self) -> u64 { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<u64>(NdbProfileRecord::VT_NOTE_KEY, Some(0)).unwrap()} - } - #[inline] - pub fn lnurl(&self) -> Option<&'a str> { - // Safety: - // Created from valid Table for this object - // which contains a valid value in this slot - unsafe { self._tab.get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfileRecord::VT_LNURL, None)} - } + #[inline] + pub fn profile(&self) -> Option<NdbProfile<'a>> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<NdbProfile>>(NdbProfileRecord::VT_PROFILE, None) + } + } + #[inline] + pub fn received_at(&self) -> u64 { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<u64>(NdbProfileRecord::VT_RECEIVED_AT, Some(0)) + .unwrap() + } + } + #[inline] + pub fn note_key(&self) -> u64 { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<u64>(NdbProfileRecord::VT_NOTE_KEY, Some(0)) + .unwrap() + } + } + #[inline] + pub fn lnurl(&self) -> Option<&'a str> { + // Safety: + // Created from valid Table for this object + // which contains a valid value in this slot + unsafe { + self._tab + .get::<flatbuffers::ForwardsUOffset<&str>>(NdbProfileRecord::VT_LNURL, None) + } + } } impl flatbuffers::Verifiable for NdbProfileRecord<'_> { - #[inline] - fn run_verifier( - v: &mut flatbuffers::Verifier, pos: usize - ) -> Result<(), flatbuffers::InvalidFlatbuffer> { - use self::flatbuffers::Verifiable; - v.visit_table(pos)? - .visit_field::<flatbuffers::ForwardsUOffset<NdbProfile>>("profile", Self::VT_PROFILE, false)? - .visit_field::<u64>("received_at", Self::VT_RECEIVED_AT, false)? - .visit_field::<u64>("note_key", Self::VT_NOTE_KEY, false)? - .visit_field::<flatbuffers::ForwardsUOffset<&str>>("lnurl", Self::VT_LNURL, false)? - .finish(); - Ok(()) - } + #[inline] + fn run_verifier( + v: &mut flatbuffers::Verifier, + pos: usize, + ) -> Result<(), flatbuffers::InvalidFlatbuffer> { + use self::flatbuffers::Verifiable; + v.visit_table(pos)? + .visit_field::<flatbuffers::ForwardsUOffset<NdbProfile>>( + "profile", + Self::VT_PROFILE, + false, + )? + .visit_field::<u64>("received_at", Self::VT_RECEIVED_AT, false)? + .visit_field::<u64>("note_key", Self::VT_NOTE_KEY, false)? + .visit_field::<flatbuffers::ForwardsUOffset<&str>>("lnurl", Self::VT_LNURL, false)? + .finish(); + Ok(()) + } } pub struct NdbProfileRecordArgs<'a> { pub profile: Option<flatbuffers::WIPOffset<NdbProfile<'a>>>, @@ -384,62 +484,71 @@ pub struct NdbProfileRecordArgs<'a> { pub lnurl: Option<flatbuffers::WIPOffset<&'a str>>, } impl<'a> Default for NdbProfileRecordArgs<'a> { - #[inline] - fn default() -> Self { - NdbProfileRecordArgs { - profile: None, - received_at: 0, - note_key: 0, - lnurl: None, - } - } + #[inline] + fn default() -> Self { + NdbProfileRecordArgs { + profile: None, + received_at: 0, + note_key: 0, + lnurl: None, + } + } } pub struct NdbProfileRecordBuilder<'a: 'b, 'b> { - fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, - start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, + fbb_: &'b mut flatbuffers::FlatBufferBuilder<'a>, + start_: flatbuffers::WIPOffset<flatbuffers::TableUnfinishedWIPOffset>, } impl<'a: 'b, 'b> NdbProfileRecordBuilder<'a, 'b> { - #[inline] - pub fn add_profile(&mut self, profile: flatbuffers::WIPOffset<NdbProfile<'b >>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<NdbProfile>>(NdbProfileRecord::VT_PROFILE, profile); - } - #[inline] - pub fn add_received_at(&mut self, received_at: u64) { - self.fbb_.push_slot::<u64>(NdbProfileRecord::VT_RECEIVED_AT, received_at, 0); - } - #[inline] - pub fn add_note_key(&mut self, note_key: u64) { - self.fbb_.push_slot::<u64>(NdbProfileRecord::VT_NOTE_KEY, note_key, 0); - } - #[inline] - pub fn add_lnurl(&mut self, lnurl: flatbuffers::WIPOffset<&'b str>) { - self.fbb_.push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfileRecord::VT_LNURL, lnurl); - } - #[inline] - pub fn new(_fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>) -> NdbProfileRecordBuilder<'a, 'b> { - let start = _fbb.start_table(); - NdbProfileRecordBuilder { - fbb_: _fbb, - start_: start, - } - } - #[inline] - pub fn finish(self) -> flatbuffers::WIPOffset<NdbProfileRecord<'a>> { - let o = self.fbb_.end_table(self.start_); - flatbuffers::WIPOffset::new(o.value()) - } + #[inline] + pub fn add_profile(&mut self, profile: flatbuffers::WIPOffset<NdbProfile<'b>>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<NdbProfile>>( + NdbProfileRecord::VT_PROFILE, + profile, + ); + } + #[inline] + pub fn add_received_at(&mut self, received_at: u64) { + self.fbb_ + .push_slot::<u64>(NdbProfileRecord::VT_RECEIVED_AT, received_at, 0); + } + #[inline] + pub fn add_note_key(&mut self, note_key: u64) { + self.fbb_ + .push_slot::<u64>(NdbProfileRecord::VT_NOTE_KEY, note_key, 0); + } + #[inline] + pub fn add_lnurl(&mut self, lnurl: flatbuffers::WIPOffset<&'b str>) { + self.fbb_ + .push_slot_always::<flatbuffers::WIPOffset<_>>(NdbProfileRecord::VT_LNURL, lnurl); + } + #[inline] + pub fn new( + _fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>, + ) -> NdbProfileRecordBuilder<'a, 'b> { + let start = _fbb.start_table(); + NdbProfileRecordBuilder { + fbb_: _fbb, + start_: start, + } + } + #[inline] + pub fn finish(self) -> flatbuffers::WIPOffset<NdbProfileRecord<'a>> { + let o = self.fbb_.end_table(self.start_); + flatbuffers::WIPOffset::new(o.value()) + } } impl core::fmt::Debug for NdbProfileRecord<'_> { - fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { - let mut ds = f.debug_struct("NdbProfileRecord"); - ds.field("profile", &self.profile()); - ds.field("received_at", &self.received_at()); - ds.field("note_key", &self.note_key()); - ds.field("lnurl", &self.lnurl()); - ds.finish() - } + fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { + let mut ds = f.debug_struct("NdbProfileRecord"); + ds.field("profile", &self.profile()); + ds.field("received_at", &self.received_at()); + ds.field("note_key", &self.note_key()); + ds.field("lnurl", &self.lnurl()); + ds.finish() + } } #[inline] /// Verifies that a buffer of bytes contains a `NdbProfileRecord` @@ -448,8 +557,10 @@ impl core::fmt::Debug for NdbProfileRecord<'_> { /// catch every error, or be maximally performant. For the /// previous, unchecked, behavior use /// `root_as_ndb_profile_record_unchecked`. -pub fn root_as_ndb_profile_record(buf: &[u8]) -> Result<NdbProfileRecord, flatbuffers::InvalidFlatbuffer> { - flatbuffers::root::<NdbProfileRecord>(buf) +pub fn root_as_ndb_profile_record( + buf: &[u8], +) -> Result<NdbProfileRecord, flatbuffers::InvalidFlatbuffer> { + flatbuffers::root::<NdbProfileRecord>(buf) } #[inline] /// Verifies that a buffer of bytes contains a size prefixed @@ -458,8 +569,10 @@ pub fn root_as_ndb_profile_record(buf: &[u8]) -> Result<NdbProfileRecord, flatbu /// catch every error, or be maximally performant. For the /// previous, unchecked, behavior use /// `size_prefixed_root_as_ndb_profile_record_unchecked`. -pub fn size_prefixed_root_as_ndb_profile_record(buf: &[u8]) -> Result<NdbProfileRecord, flatbuffers::InvalidFlatbuffer> { - flatbuffers::size_prefixed_root::<NdbProfileRecord>(buf) +pub fn size_prefixed_root_as_ndb_profile_record( + buf: &[u8], +) -> Result<NdbProfileRecord, flatbuffers::InvalidFlatbuffer> { + flatbuffers::size_prefixed_root::<NdbProfileRecord>(buf) } #[inline] /// Verifies, with the given options, that a buffer of bytes @@ -469,10 +582,10 @@ pub fn size_prefixed_root_as_ndb_profile_record(buf: &[u8]) -> Result<NdbProfile /// previous, unchecked, behavior use /// `root_as_ndb_profile_record_unchecked`. pub fn root_as_ndb_profile_record_with_opts<'b, 'o>( - opts: &'o flatbuffers::VerifierOptions, - buf: &'b [u8], + opts: &'o flatbuffers::VerifierOptions, + buf: &'b [u8], ) -> Result<NdbProfileRecord<'b>, flatbuffers::InvalidFlatbuffer> { - flatbuffers::root_with_opts::<NdbProfileRecord<'b>>(opts, buf) + flatbuffers::root_with_opts::<NdbProfileRecord<'b>>(opts, buf) } #[inline] /// Verifies, with the given verifier options, that a buffer of @@ -482,33 +595,37 @@ pub fn root_as_ndb_profile_record_with_opts<'b, 'o>( /// previous, unchecked, behavior use /// `root_as_ndb_profile_record_unchecked`. pub fn size_prefixed_root_as_ndb_profile_record_with_opts<'b, 'o>( - opts: &'o flatbuffers::VerifierOptions, - buf: &'b [u8], + opts: &'o flatbuffers::VerifierOptions, + buf: &'b [u8], ) -> Result<NdbProfileRecord<'b>, flatbuffers::InvalidFlatbuffer> { - flatbuffers::size_prefixed_root_with_opts::<NdbProfileRecord<'b>>(opts, buf) + flatbuffers::size_prefixed_root_with_opts::<NdbProfileRecord<'b>>(opts, buf) } #[inline] /// Assumes, without verification, that a buffer of bytes contains a NdbProfileRecord and returns it. /// # Safety /// Callers must trust the given bytes do indeed contain a valid `NdbProfileRecord`. pub unsafe fn root_as_ndb_profile_record_unchecked(buf: &[u8]) -> NdbProfileRecord { - flatbuffers::root_unchecked::<NdbProfileRecord>(buf) + flatbuffers::root_unchecked::<NdbProfileRecord>(buf) } #[inline] /// Assumes, without verification, that a buffer of bytes contains a size prefixed NdbProfileRecord and returns it. /// # Safety /// Callers must trust the given bytes do indeed contain a valid size prefixed `NdbProfileRecord`. pub unsafe fn size_prefixed_root_as_ndb_profile_record_unchecked(buf: &[u8]) -> NdbProfileRecord { - flatbuffers::size_prefixed_root_unchecked::<NdbProfileRecord>(buf) + flatbuffers::size_prefixed_root_unchecked::<NdbProfileRecord>(buf) } #[inline] pub fn finish_ndb_profile_record_buffer<'a, 'b>( fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>, - root: flatbuffers::WIPOffset<NdbProfileRecord<'a>>) { - fbb.finish(root, None); + root: flatbuffers::WIPOffset<NdbProfileRecord<'a>>, +) { + fbb.finish(root, None); } #[inline] -pub fn finish_size_prefixed_ndb_profile_record_buffer<'a, 'b>(fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>, root: flatbuffers::WIPOffset<NdbProfileRecord<'a>>) { - fbb.finish_size_prefixed(root, None); +pub fn finish_size_prefixed_ndb_profile_record_buffer<'a, 'b>( + fbb: &'b mut flatbuffers::FlatBufferBuilder<'a>, + root: flatbuffers::WIPOffset<NdbProfileRecord<'a>>, +) { + fbb.finish_size_prefixed(root, None); } diff --git a/src/note.rs b/src/note.rs @@ -25,7 +25,7 @@ pub struct NoteBuildOptions<'a> { pub sign_key: Option<&'a [u8; 32]>, } -impl<'a> Default for NoteBuildOptions<'a> { +impl Default for NoteBuildOptions<'_> { fn default() -> Self { NoteBuildOptions { set_created_at: true, @@ -46,7 +46,7 @@ impl<'a> NoteBuildOptions<'a> { } } -#[derive(Debug, Clone)] +#[derive(Debug)] pub enum Note<'a> { /// A note in-memory outside of nostrdb. This note is a pointer to a note in /// memory and will be free'd when [Drop]ped. Method such as [Note::from_json] @@ -69,6 +69,51 @@ pub enum Note<'a> { }, } +impl Clone for Note<'_> { + fn clone(&self) -> Self { + // TODO (jb55): it is still probably better to just separate owned notes + // into NoteBuf... that way we know exactly what we are cloning + // and when. Owned notes are a bit more expensive to clone, so + // it would be better if API encoded that explicitly. + match self { + Note::Owned { ptr, size } => { + // Allocate memory for the cloned note + let new_ptr = unsafe { libc::malloc(*size) as *mut bindings::ndb_note }; + if new_ptr.is_null() { + panic!("Failed to allocate memory for cloned note"); + } + + // Use memcpy to copy the memory + unsafe { + libc::memcpy( + new_ptr as *mut libc::c_void, + *ptr as *const libc::c_void, + *size, + ); + } + + // Return a new Owned Note + Note::Owned { + ptr: new_ptr, + size: *size, + } + } + + Note::Transactional { + ptr, + size, + key, + transaction, + } => Note::Transactional { + ptr: *ptr, + size: *size, + key: *key, + transaction, + }, + } + } +} + impl<'a> Note<'a> { /// Constructs an owned `Note`. This note is a pointer to a note in /// memory and will be free'd when [Drop]ped. You normally wouldn't @@ -205,7 +250,7 @@ impl<'a> Note<'a> { } } -impl<'a> Drop for Note<'a> { +impl Drop for Note<'_> { fn drop(&mut self) { if let Note::Owned { ptr, .. } = self { unsafe { libc::free((*ptr) as *mut libc::c_void) } @@ -264,7 +309,7 @@ pub struct NoteBuilder<'a> { options: NoteBuildOptions<'a>, } -impl<'a> Default for NoteBuilder<'a> { +impl Default for NoteBuilder<'_> { fn default() -> Self { NoteBuilder::new() } diff --git a/src/subscription.rs b/src/subscription.rs @@ -1,4 +1,3 @@ - #[derive(Debug, Clone, Copy, Eq, PartialEq)] pub struct Subscription(u64); diff --git a/src/util/nip10.rs b/src/util/nip10.rs @@ -16,7 +16,7 @@ pub struct NoteIdRef<'a> { pub marker: Option<Marker>, } -impl<'a> NoteIdRef<'a> { +impl NoteIdRef<'_> { pub fn to_owned(&self) -> NoteIdRefBuf { NoteIdRefBuf { index: self.index,