From e122545cf442097529011cac3d5d5c5b5ce4bda4 Mon Sep 17 00:00:00 2001 From: Arthur Carcano <53921575+krtab@users.noreply.github.com> Date: Sat, 15 May 2021 11:36:24 +0200 Subject: [PATCH] Unify includes and add bindgen in build.rs --- cvode-5-sys/Cargo.toml | 4 + cvode-5-sys/build.rs | 20 +- cvode-5-sys/src/cvode.rs | 6591 ---------------------------- cvode-5-sys/src/include.h | 4 + cvode-5-sys/src/lib.rs | 5 +- cvode-5-sys/src/nvector_serial.rs | 4869 -------------------- cvode-5-sys/src/sunlinsol_dense.rs | 5755 ------------------------ cvode-5-sys/src/sunmatrix_dense.rs | 4914 --------------------- cvode-wrap/src/lib.rs | 55 +- cvode-wrap/src/nvector.rs | 14 +- 10 files changed, 62 insertions(+), 22169 deletions(-) delete mode 100644 cvode-5-sys/src/cvode.rs create mode 100644 cvode-5-sys/src/include.h delete mode 100644 cvode-5-sys/src/nvector_serial.rs delete mode 100644 cvode-5-sys/src/sunlinsol_dense.rs delete mode 100644 cvode-5-sys/src/sunmatrix_dense.rs diff --git a/cvode-5-sys/Cargo.toml b/cvode-5-sys/Cargo.toml index ea8ca62..6340e11 100644 --- a/cvode-5-sys/Cargo.toml +++ b/cvode-5-sys/Cargo.toml @@ -7,3 +7,7 @@ edition = "2018" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] + +[build-dependencies] +bindgen = "0.58.1" +anyhow = "1.0.40" \ No newline at end of file diff --git a/cvode-5-sys/build.rs b/cvode-5-sys/build.rs index b7c9c26..4cf271b 100644 --- a/cvode-5-sys/build.rs +++ b/cvode-5-sys/build.rs @@ -1,5 +1,23 @@ -fn main() -> () { +use bindgen::builder; +use std::env; +use std::path::Path; + +fn main() -> anyhow::Result<()> { for lib in &["sundials_cvodes", "sundials_nvecserial"] { println!("cargo:rustc-link-lib={}", lib); } + + let out_dir = env::var_os("OUT_DIR").unwrap(); + let dest_path = Path::new(&out_dir).join("generated.rs"); + + let bindings = builder() + .header("src/include.h") + .generate() + .map_err(|()| anyhow::anyhow!("Couldn't generate bindings."))?; + + // Write the generated bindings to an output file. + bindings.write_to_file(dest_path)?; + println!("cargo:rerun-if-changed=build.rs"); + println!("cargo:rerun-if-changed=src/include.h"); + Ok(()) } diff --git a/cvode-5-sys/src/cvode.rs b/cvode-5-sys/src/cvode.rs deleted file mode 100644 index f7b520c..0000000 --- a/cvode-5-sys/src/cvode.rs +++ /dev/null @@ -1,6591 +0,0 @@ -/* automatically generated by rust-bindgen 0.55.1 */ - -pub const _STDIO_H: u32 = 1; -pub const _FEATURES_H: u32 = 1; -pub const _DEFAULT_SOURCE: u32 = 1; -pub const __GLIBC_USE_ISOC2X: u32 = 0; -pub const __USE_ISOC11: u32 = 1; -pub const __USE_ISOC99: u32 = 1; -pub const __USE_ISOC95: u32 = 1; -pub const __USE_POSIX_IMPLICITLY: u32 = 1; -pub const _POSIX_SOURCE: u32 = 1; -pub const _POSIX_C_SOURCE: u32 = 200809; -pub const __USE_POSIX: u32 = 1; -pub const __USE_POSIX2: u32 = 1; -pub const __USE_POSIX199309: u32 = 1; -pub const __USE_POSIX199506: u32 = 1; -pub const __USE_XOPEN2K: u32 = 1; -pub const __USE_XOPEN2K8: u32 = 1; -pub const _ATFILE_SOURCE: u32 = 1; -pub const __USE_MISC: u32 = 1; -pub const __USE_ATFILE: u32 = 1; -pub const __USE_FORTIFY_LEVEL: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; -pub const _STDC_PREDEF_H: u32 = 1; -pub const __STDC_IEC_559__: u32 = 1; -pub const __STDC_IEC_559_COMPLEX__: u32 = 1; -pub const __STDC_ISO_10646__: u32 = 201706; -pub const __GNU_LIBRARY__: u32 = 6; -pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 33; -pub const _SYS_CDEFS_H: u32 = 1; -pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; -pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; -pub const __HAVE_GENERIC_SELECTION: u32 = 1; -pub const __GLIBC_USE_LIB_EXT2: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; -pub const _BITS_TYPES_H: u32 = 1; -pub const __TIMESIZE: u32 = 64; -pub const _BITS_TYPESIZES_H: u32 = 1; -pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; -pub const __INO_T_MATCHES_INO64_T: u32 = 1; -pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; -pub const __STATFS_MATCHES_STATFS64: u32 = 1; -pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; -pub const __FD_SETSIZE: u32 = 1024; -pub const _BITS_TIME64_H: u32 = 1; -pub const _____fpos_t_defined: u32 = 1; -pub const ____mbstate_t_defined: u32 = 1; -pub const _____fpos64_t_defined: u32 = 1; -pub const ____FILE_defined: u32 = 1; -pub const __FILE_defined: u32 = 1; -pub const __struct_FILE_defined: u32 = 1; -pub const _IO_EOF_SEEN: u32 = 16; -pub const _IO_ERR_SEEN: u32 = 32; -pub const _IO_USER_LOCK: u32 = 32768; -pub const _IOFBF: u32 = 0; -pub const _IOLBF: u32 = 1; -pub const _IONBF: u32 = 2; -pub const BUFSIZ: u32 = 8192; -pub const EOF: i32 = -1; -pub const SEEK_SET: u32 = 0; -pub const SEEK_CUR: u32 = 1; -pub const SEEK_END: u32 = 2; -pub const P_tmpdir: &'static [u8; 5usize] = b"/tmp\0"; -pub const _BITS_STDIO_LIM_H: u32 = 1; -pub const L_tmpnam: u32 = 20; -pub const TMP_MAX: u32 = 238328; -pub const FILENAME_MAX: u32 = 4096; -pub const L_ctermid: u32 = 9; -pub const FOPEN_MAX: u32 = 16; -pub const __HAVE_FLOAT128: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128: u32 = 0; -pub const __HAVE_FLOAT64X: u32 = 1; -pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1; -pub const __HAVE_FLOAT16: u32 = 0; -pub const __HAVE_FLOAT32: u32 = 1; -pub const __HAVE_FLOAT64: u32 = 1; -pub const __HAVE_FLOAT32X: u32 = 1; -pub const __HAVE_FLOAT128X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT16: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0; -pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0; -pub const _STDLIB_H: u32 = 1; -pub const WNOHANG: u32 = 1; -pub const WUNTRACED: u32 = 2; -pub const WSTOPPED: u32 = 2; -pub const WEXITED: u32 = 4; -pub const WCONTINUED: u32 = 8; -pub const WNOWAIT: u32 = 16777216; -pub const __WNOTHREAD: u32 = 536870912; -pub const __WALL: u32 = 1073741824; -pub const __WCLONE: u32 = 2147483648; -pub const __W_CONTINUED: u32 = 65535; -pub const __WCOREFLAG: u32 = 128; -pub const __ldiv_t_defined: u32 = 1; -pub const __lldiv_t_defined: u32 = 1; -pub const RAND_MAX: u32 = 2147483647; -pub const EXIT_FAILURE: u32 = 1; -pub const EXIT_SUCCESS: u32 = 0; -pub const _SYS_TYPES_H: u32 = 1; -pub const __clock_t_defined: u32 = 1; -pub const __clockid_t_defined: u32 = 1; -pub const __time_t_defined: u32 = 1; -pub const __timer_t_defined: u32 = 1; -pub const _BITS_STDINT_INTN_H: u32 = 1; -pub const __BIT_TYPES_DEFINED__: u32 = 1; -pub const _ENDIAN_H: u32 = 1; -pub const _BITS_ENDIAN_H: u32 = 1; -pub const __LITTLE_ENDIAN: u32 = 1234; -pub const __BIG_ENDIAN: u32 = 4321; -pub const __PDP_ENDIAN: u32 = 3412; -pub const _BITS_ENDIANNESS_H: u32 = 1; -pub const __BYTE_ORDER: u32 = 1234; -pub const __FLOAT_WORD_ORDER: u32 = 1234; -pub const LITTLE_ENDIAN: u32 = 1234; -pub const BIG_ENDIAN: u32 = 4321; -pub const PDP_ENDIAN: u32 = 3412; -pub const BYTE_ORDER: u32 = 1234; -pub const _BITS_BYTESWAP_H: u32 = 1; -pub const _BITS_UINTN_IDENTITY_H: u32 = 1; -pub const _SYS_SELECT_H: u32 = 1; -pub const __sigset_t_defined: u32 = 1; -pub const __timeval_defined: u32 = 1; -pub const _STRUCT_TIMESPEC: u32 = 1; -pub const FD_SETSIZE: u32 = 1024; -pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1; -pub const _THREAD_SHARED_TYPES_H: u32 = 1; -pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1; -pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40; -pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56; -pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; -pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; -pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; -pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1; -pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; -pub const __have_pthread_attr_t: u32 = 1; -pub const _ALLOCA_H: u32 = 1; -pub const SUNDIALS_VERSION: &'static [u8; 6usize] = b"5.7.0\0"; -pub const SUNDIALS_VERSION_MAJOR: u32 = 5; -pub const SUNDIALS_VERSION_MINOR: u32 = 7; -pub const SUNDIALS_VERSION_PATCH: u32 = 0; -pub const SUNDIALS_VERSION_LABEL: &'static [u8; 1usize] = b"\0"; -pub const SUNDIALS_DOUBLE_PRECISION: u32 = 1; -pub const SUNDIALS_INT64_T: u32 = 1; -pub const SUNDIALS_MPI_ENABLED: u32 = 1; -pub const SUNDIALS_ARKODE: u32 = 1; -pub const SUNDIALS_CVODE: u32 = 1; -pub const SUNDIALS_CVODES: u32 = 1; -pub const SUNDIALS_IDA: u32 = 1; -pub const SUNDIALS_IDAS: u32 = 1; -pub const SUNDIALS_KINSOL: u32 = 1; -pub const SUNDIALS_NVECTOR_SERIAL: u32 = 1; -pub const SUNDIALS_NVECTOR_MANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIMANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIPLUSX: u32 = 1; -pub const SUNDIALS_NVECTOR_PARALLEL: u32 = 1; -pub const SUNDIALS_NVECTOR_OPENMP: u32 = 1; -pub const SUNDIALS_NVECTOR_PTHREADS: u32 = 1; -pub const SUNDIALS_SUNMATRIX_BAND: u32 = 1; -pub const SUNDIALS_SUNMATRIX_DENSE: u32 = 1; -pub const SUNDIALS_SUNMATRIX_SPARSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_BAND: u32 = 1; -pub const SUNDIALS_SUNLINSOL_DENSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_PCG: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPBCGS: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPFGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPTFQMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_KLU: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_NEWTON: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_FIXEDPOINT: u32 = 1; -pub const SUNDIALS_MPI_COMM_F2C: u32 = 1; -pub const _STDINT_H: u32 = 1; -pub const _BITS_WCHAR_H: u32 = 1; -pub const _BITS_STDINT_UINTN_H: u32 = 1; -pub const INT8_MIN: i32 = -128; -pub const INT16_MIN: i32 = -32768; -pub const INT32_MIN: i32 = -2147483648; -pub const INT8_MAX: u32 = 127; -pub const INT16_MAX: u32 = 32767; -pub const INT32_MAX: u32 = 2147483647; -pub const UINT8_MAX: u32 = 255; -pub const UINT16_MAX: u32 = 65535; -pub const UINT32_MAX: u32 = 4294967295; -pub const INT_LEAST8_MIN: i32 = -128; -pub const INT_LEAST16_MIN: i32 = -32768; -pub const INT_LEAST32_MIN: i32 = -2147483648; -pub const INT_LEAST8_MAX: u32 = 127; -pub const INT_LEAST16_MAX: u32 = 32767; -pub const INT_LEAST32_MAX: u32 = 2147483647; -pub const UINT_LEAST8_MAX: u32 = 255; -pub const UINT_LEAST16_MAX: u32 = 65535; -pub const UINT_LEAST32_MAX: u32 = 4294967295; -pub const INT_FAST8_MIN: i32 = -128; -pub const INT_FAST16_MIN: i64 = -9223372036854775808; -pub const INT_FAST32_MIN: i64 = -9223372036854775808; -pub const INT_FAST8_MAX: u32 = 127; -pub const INT_FAST16_MAX: u64 = 9223372036854775807; -pub const INT_FAST32_MAX: u64 = 9223372036854775807; -pub const UINT_FAST8_MAX: u32 = 255; -pub const UINT_FAST16_MAX: i32 = -1; -pub const UINT_FAST32_MAX: i32 = -1; -pub const INTPTR_MIN: i64 = -9223372036854775808; -pub const INTPTR_MAX: u64 = 9223372036854775807; -pub const UINTPTR_MAX: i32 = -1; -pub const PTRDIFF_MIN: i64 = -9223372036854775808; -pub const PTRDIFF_MAX: u64 = 9223372036854775807; -pub const SIG_ATOMIC_MIN: i32 = -2147483648; -pub const SIG_ATOMIC_MAX: u32 = 2147483647; -pub const SIZE_MAX: i32 = -1; -pub const WINT_MIN: u32 = 0; -pub const WINT_MAX: u32 = 4294967295; -pub const SUNFALSE: u32 = 0; -pub const SUNTRUE: u32 = 1; -pub const SUN_NLS_SUCCESS: u32 = 0; -pub const SUN_NLS_CONTINUE: u32 = 901; -pub const SUN_NLS_CONV_RECVR: u32 = 902; -pub const SUN_NLS_MEM_NULL: i32 = -901; -pub const SUN_NLS_MEM_FAIL: i32 = -902; -pub const SUN_NLS_ILL_INPUT: i32 = -903; -pub const SUN_NLS_VECTOROP_ERR: i32 = -904; -pub const SUN_NLS_EXT_FAIL: i32 = -905; -pub const SUN_NLS_MSG_RESIDUAL: &'static [u8; 46usize] = - b"\tnonlin. iteration %ld, nonlin. residual: %g\n\0"; -pub const SUNDIALS_DENSE: u32 = 1; -pub const SUNDIALS_BAND: u32 = 2; -pub const SUNMAT_SUCCESS: u32 = 0; -pub const SUNMAT_ILL_INPUT: i32 = -701; -pub const SUNMAT_MEM_FAIL: i32 = -702; -pub const SUNMAT_OPERATION_FAIL: i32 = -703; -pub const SUNMAT_MATVEC_SETUP_REQUIRED: i32 = -704; -pub const SUNLS_SUCCESS: u32 = 0; -pub const SUNLS_MEM_NULL: i32 = -801; -pub const SUNLS_ILL_INPUT: i32 = -802; -pub const SUNLS_MEM_FAIL: i32 = -803; -pub const SUNLS_ATIMES_NULL: i32 = -804; -pub const SUNLS_ATIMES_FAIL_UNREC: i32 = -805; -pub const SUNLS_PSET_FAIL_UNREC: i32 = -806; -pub const SUNLS_PSOLVE_NULL: i32 = -807; -pub const SUNLS_PSOLVE_FAIL_UNREC: i32 = -808; -pub const SUNLS_PACKAGE_FAIL_UNREC: i32 = -809; -pub const SUNLS_GS_FAIL: i32 = -810; -pub const SUNLS_QRSOL_FAIL: i32 = -811; -pub const SUNLS_VECTOROP_ERR: i32 = -812; -pub const SUNLS_RES_REDUCED: u32 = 801; -pub const SUNLS_CONV_FAIL: u32 = 802; -pub const SUNLS_ATIMES_FAIL_REC: u32 = 803; -pub const SUNLS_PSET_FAIL_REC: u32 = 804; -pub const SUNLS_PSOLVE_FAIL_REC: u32 = 805; -pub const SUNLS_PACKAGE_FAIL_REC: u32 = 806; -pub const SUNLS_QRFACT_FAIL: u32 = 807; -pub const SUNLS_LUFACT_FAIL: u32 = 808; -pub const SUNLS_MSG_RESIDUAL: &'static [u8; 41usize] = - b"\t\tlin. iteration %ld, lin. residual: %g\n\0"; -pub const CVLS_SUCCESS: u32 = 0; -pub const CVLS_MEM_NULL: i32 = -1; -pub const CVLS_LMEM_NULL: i32 = -2; -pub const CVLS_ILL_INPUT: i32 = -3; -pub const CVLS_MEM_FAIL: i32 = -4; -pub const CVLS_PMEM_NULL: i32 = -5; -pub const CVLS_JACFUNC_UNRECVR: i32 = -6; -pub const CVLS_JACFUNC_RECVR: i32 = -7; -pub const CVLS_SUNMAT_FAIL: i32 = -8; -pub const CVLS_SUNLS_FAIL: i32 = -9; -pub const CV_ADAMS: u32 = 1; -pub const CV_BDF: u32 = 2; -pub const CV_NORMAL: u32 = 1; -pub const CV_ONE_STEP: u32 = 2; -pub const CV_SUCCESS: u32 = 0; -pub const CV_TSTOP_RETURN: u32 = 1; -pub const CV_ROOT_RETURN: u32 = 2; -pub const CV_WARNING: u32 = 99; -pub const CV_TOO_MUCH_WORK: i32 = -1; -pub const CV_TOO_MUCH_ACC: i32 = -2; -pub const CV_ERR_FAILURE: i32 = -3; -pub const CV_CONV_FAILURE: i32 = -4; -pub const CV_LINIT_FAIL: i32 = -5; -pub const CV_LSETUP_FAIL: i32 = -6; -pub const CV_LSOLVE_FAIL: i32 = -7; -pub const CV_RHSFUNC_FAIL: i32 = -8; -pub const CV_FIRST_RHSFUNC_ERR: i32 = -9; -pub const CV_REPTD_RHSFUNC_ERR: i32 = -10; -pub const CV_UNREC_RHSFUNC_ERR: i32 = -11; -pub const CV_RTFUNC_FAIL: i32 = -12; -pub const CV_NLS_INIT_FAIL: i32 = -13; -pub const CV_NLS_SETUP_FAIL: i32 = -14; -pub const CV_CONSTR_FAIL: i32 = -15; -pub const CV_NLS_FAIL: i32 = -16; -pub const CV_MEM_FAIL: i32 = -20; -pub const CV_MEM_NULL: i32 = -21; -pub const CV_ILL_INPUT: i32 = -22; -pub const CV_NO_MALLOC: i32 = -23; -pub const CV_BAD_K: i32 = -24; -pub const CV_BAD_T: i32 = -25; -pub const CV_BAD_DKY: i32 = -26; -pub const CV_TOO_CLOSE: i32 = -27; -pub const CV_VECTOROP_ERR: i32 = -28; -pub const CV_PROJ_MEM_NULL: i32 = -29; -pub const CV_PROJFUNC_FAIL: i32 = -30; -pub const CV_REPTD_PROJFUNC_ERR: i32 = -31; -pub const CV_UNRECOGNIZED_ERR: i32 = -99; -pub type size_t = ::std::os::raw::c_ulong; -pub type va_list = __builtin_va_list; -pub type __gnuc_va_list = __builtin_va_list; -pub type __u_char = ::std::os::raw::c_uchar; -pub type __u_short = ::std::os::raw::c_ushort; -pub type __u_int = ::std::os::raw::c_uint; -pub type __u_long = ::std::os::raw::c_ulong; -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_long; -pub type __uint64_t = ::std::os::raw::c_ulong; -pub type __int_least8_t = __int8_t; -pub type __uint_least8_t = __uint8_t; -pub type __int_least16_t = __int16_t; -pub type __uint_least16_t = __uint16_t; -pub type __int_least32_t = __int32_t; -pub type __uint_least32_t = __uint32_t; -pub type __int_least64_t = __int64_t; -pub type __uint_least64_t = __uint64_t; -pub type __quad_t = ::std::os::raw::c_long; -pub type __u_quad_t = ::std::os::raw::c_ulong; -pub type __intmax_t = ::std::os::raw::c_long; -pub type __uintmax_t = ::std::os::raw::c_ulong; -pub type __dev_t = ::std::os::raw::c_ulong; -pub type __uid_t = ::std::os::raw::c_uint; -pub type __gid_t = ::std::os::raw::c_uint; -pub type __ino_t = ::std::os::raw::c_ulong; -pub type __ino64_t = ::std::os::raw::c_ulong; -pub type __mode_t = ::std::os::raw::c_uint; -pub type __nlink_t = ::std::os::raw::c_ulong; -pub type __off_t = ::std::os::raw::c_long; -pub type __off64_t = ::std::os::raw::c_long; -pub type __pid_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __fsid_t { - pub __val: [::std::os::raw::c_int; 2usize], -} -#[test] -fn bindgen_test_layout___fsid_t() { - assert_eq!( - ::std::mem::size_of::<__fsid_t>(), - 8usize, - concat!("Size of: ", stringify!(__fsid_t)) - ); - assert_eq!( - ::std::mem::align_of::<__fsid_t>(), - 4usize, - concat!("Alignment of ", stringify!(__fsid_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__fsid_t), - "::", - stringify!(__val) - ) - ); -} -pub type __clock_t = ::std::os::raw::c_long; -pub type __rlim_t = ::std::os::raw::c_ulong; -pub type __rlim64_t = ::std::os::raw::c_ulong; -pub type __id_t = ::std::os::raw::c_uint; -pub type __time_t = ::std::os::raw::c_long; -pub type __useconds_t = ::std::os::raw::c_uint; -pub type __suseconds_t = ::std::os::raw::c_long; -pub type __suseconds64_t = ::std::os::raw::c_long; -pub type __daddr_t = ::std::os::raw::c_int; -pub type __key_t = ::std::os::raw::c_int; -pub type __clockid_t = ::std::os::raw::c_int; -pub type __timer_t = *mut ::std::os::raw::c_void; -pub type __blksize_t = ::std::os::raw::c_long; -pub type __blkcnt_t = ::std::os::raw::c_long; -pub type __blkcnt64_t = ::std::os::raw::c_long; -pub type __fsblkcnt_t = ::std::os::raw::c_ulong; -pub type __fsblkcnt64_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt64_t = ::std::os::raw::c_ulong; -pub type __fsword_t = ::std::os::raw::c_long; -pub type __ssize_t = ::std::os::raw::c_long; -pub type __syscall_slong_t = ::std::os::raw::c_long; -pub type __syscall_ulong_t = ::std::os::raw::c_ulong; -pub type __loff_t = __off64_t; -pub type __caddr_t = *mut ::std::os::raw::c_char; -pub type __intptr_t = ::std::os::raw::c_long; -pub type __socklen_t = ::std::os::raw::c_uint; -pub type __sig_atomic_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __mbstate_t { - pub __count: ::std::os::raw::c_int, - pub __value: __mbstate_t__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __mbstate_t__bindgen_ty_1 { - pub __wch: ::std::os::raw::c_uint, - pub __wchb: [::std::os::raw::c_char; 4usize], - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout___mbstate_t__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wch) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wchb) - ) - ); -} -#[test] -fn bindgen_test_layout___mbstate_t() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t>(), - 8usize, - concat!("Size of: ", stringify!(__mbstate_t)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__count as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__value as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__value) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos_t { - pub __pos: __off_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos_t = _G_fpos_t; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos64_t { - pub __pos: __off64_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos64_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos64_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos64_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos64_t = _G_fpos64_t; -pub type __FILE = _IO_FILE; -pub type FILE = _IO_FILE; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_marker { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_codecvt { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_wide_data { - _unused: [u8; 0], -} -pub type _IO_lock_t = ::std::os::raw::c_void; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_FILE { - pub _flags: ::std::os::raw::c_int, - pub _IO_read_ptr: *mut ::std::os::raw::c_char, - pub _IO_read_end: *mut ::std::os::raw::c_char, - pub _IO_read_base: *mut ::std::os::raw::c_char, - pub _IO_write_base: *mut ::std::os::raw::c_char, - pub _IO_write_ptr: *mut ::std::os::raw::c_char, - pub _IO_write_end: *mut ::std::os::raw::c_char, - pub _IO_buf_base: *mut ::std::os::raw::c_char, - pub _IO_buf_end: *mut ::std::os::raw::c_char, - pub _IO_save_base: *mut ::std::os::raw::c_char, - pub _IO_backup_base: *mut ::std::os::raw::c_char, - pub _IO_save_end: *mut ::std::os::raw::c_char, - pub _markers: *mut _IO_marker, - pub _chain: *mut _IO_FILE, - pub _fileno: ::std::os::raw::c_int, - pub _flags2: ::std::os::raw::c_int, - pub _old_offset: __off_t, - pub _cur_column: ::std::os::raw::c_ushort, - pub _vtable_offset: ::std::os::raw::c_schar, - pub _shortbuf: [::std::os::raw::c_char; 1usize], - pub _lock: *mut _IO_lock_t, - pub _offset: __off64_t, - pub _codecvt: *mut _IO_codecvt, - pub _wide_data: *mut _IO_wide_data, - pub _freeres_list: *mut _IO_FILE, - pub _freeres_buf: *mut ::std::os::raw::c_void, - pub __pad5: size_t, - pub _mode: ::std::os::raw::c_int, - pub _unused2: [::std::os::raw::c_char; 20usize], -} -#[test] -fn bindgen_test_layout__IO_FILE() { - assert_eq!( - ::std::mem::size_of::<_IO_FILE>(), - 216usize, - concat!("Size of: ", stringify!(_IO_FILE)) - ); - assert_eq!( - ::std::mem::align_of::<_IO_FILE>(), - 8usize, - concat!("Alignment of ", stringify!(_IO_FILE)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_backup_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_markers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_chain) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_fileno) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize }, - 116usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_old_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_cur_column) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize }, - 130usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_vtable_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize }, - 131usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_shortbuf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_codecvt) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_wide_data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_list) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_buf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(__pad5) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_mode) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize }, - 196usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_unused2) - ) - ); -} -pub type off_t = __off_t; -pub type ssize_t = __ssize_t; -pub type fpos_t = __fpos_t; -extern "C" { - pub static mut stdin: *mut FILE; -} -extern "C" { - pub static mut stdout: *mut FILE; -} -extern "C" { - pub static mut stderr: *mut FILE; -} -extern "C" { - pub fn remove(__filename: *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 renameat( - __oldfd: ::std::os::raw::c_int, - __old: *const ::std::os::raw::c_char, - __newfd: ::std::os::raw::c_int, - __new: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn tmpfile() -> *mut FILE; -} -extern "C" { - pub fn tmpnam(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tempnam( - __dir: *const ::std::os::raw::c_char, - __pfx: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fclose(__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 fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn freopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - __stream: *mut FILE, - ) -> *mut FILE; -} -extern "C" { - pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char) - -> *mut FILE; -} -extern "C" { - pub fn fmemopen( - __s: *mut ::std::os::raw::c_void, - __len: size_t, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn open_memstream( - __bufloc: *mut *mut ::std::os::raw::c_char, - __sizeloc: *mut size_t, - ) -> *mut FILE; -} -extern "C" { - pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn setvbuf( - __stream: *mut FILE, - __buf: *mut ::std::os::raw::c_char, - __modes: ::std::os::raw::c_int, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: size_t); -} -extern "C" { - pub fn setlinebuf(__stream: *mut FILE); -} -extern "C" { - pub fn fprintf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfprintf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vprintf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn snprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsnprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vdprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn dprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fscanf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -pub type _Float32 = f32; -pub type _Float64 = f64; -pub type _Float32x = f64; -pub type _Float64x = u128; -extern "C" { - #[link_name = "\u{1}__isoc99_fscanf"] - pub fn fscanf1( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_scanf"] - pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_sscanf"] - pub fn sscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfscanf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vscanf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vfscanf"] - pub fn vfscanf1( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vscanf"] - pub fn vscanf1( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vsscanf"] - pub fn vsscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -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 getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getchar_unlocked() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) - -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar_unlocked(__c: ::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(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgets( - __s: *mut ::std::os::raw::c_char, - __n: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn __getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getline( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *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, - __n: ::std::os::raw::c_ulong, - __stream: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fwrite( - __ptr: *const ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - __n: ::std::os::raw::c_ulong, - __s: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fread_unlocked( - __ptr: *mut ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fwrite_unlocked( - __ptr: *const ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fseek( - __stream: *mut FILE, - __off: ::std::os::raw::c_long, - __whence: ::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 rewind(__stream: *mut FILE); -} -extern "C" { - pub fn fseeko( - __stream: *mut FILE, - __off: __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 fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearerr(__stream: *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 clearerr_unlocked(__stream: *mut FILE); -} -extern "C" { - pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn perror(__s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn popen( - __command: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn flockfile(__stream: *mut FILE); -} -extern "C" { - pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn funlockfile(__stream: *mut FILE); -} -extern "C" { - pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -pub type wchar_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct div_t { - pub quot: ::std::os::raw::c_int, - pub rem: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_div_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(div_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(div_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ldiv_t { - pub quot: ::std::os::raw::c_long, - pub rem: ::std::os::raw::c_long, -} -#[test] -fn bindgen_test_layout_ldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(ldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(ldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct lldiv_t { - pub quot: ::std::os::raw::c_longlong, - pub rem: ::std::os::raw::c_longlong, -} -#[test] -fn bindgen_test_layout_lldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(lldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(lldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(rem) - ) - ); -} -extern "C" { - pub fn __ctype_get_mb_cur_max() -> size_t; -} -extern "C" { - pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtod( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f64; -} -extern "C" { - pub fn strtof( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f32; -} -extern "C" { - pub fn strtold( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> u128; -} -extern "C" { - pub fn strtol( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn strtoul( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strtoq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtouq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn strtoll( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtoull( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -pub type u_char = __u_char; -pub type u_short = __u_short; -pub type u_int = __u_int; -pub type u_long = __u_long; -pub type quad_t = __quad_t; -pub type u_quad_t = __u_quad_t; -pub type fsid_t = __fsid_t; -pub type loff_t = __loff_t; -pub type ino_t = __ino_t; -pub type dev_t = __dev_t; -pub type gid_t = __gid_t; -pub type mode_t = __mode_t; -pub type nlink_t = __nlink_t; -pub type uid_t = __uid_t; -pub type pid_t = __pid_t; -pub type id_t = __id_t; -pub type daddr_t = __daddr_t; -pub type caddr_t = __caddr_t; -pub type key_t = __key_t; -pub type clock_t = __clock_t; -pub type clockid_t = __clockid_t; -pub type time_t = __time_t; -pub type timer_t = __timer_t; -pub type ulong = ::std::os::raw::c_ulong; -pub type ushort = ::std::os::raw::c_ushort; -pub type uint = ::std::os::raw::c_uint; -pub type u_int8_t = __uint8_t; -pub type u_int16_t = __uint16_t; -pub type u_int32_t = __uint32_t; -pub type u_int64_t = __uint64_t; -pub type register_t = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sigset_t { - pub __val: [::std::os::raw::c_ulong; 16usize], -} -#[test] -fn bindgen_test_layout___sigset_t() { - assert_eq!( - ::std::mem::size_of::<__sigset_t>(), - 128usize, - concat!("Size of: ", stringify!(__sigset_t)) - ); - assert_eq!( - ::std::mem::align_of::<__sigset_t>(), - 8usize, - concat!("Alignment of ", stringify!(__sigset_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__sigset_t), - "::", - stringify!(__val) - ) - ); -} -pub type sigset_t = __sigset_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timeval { - pub tv_sec: __time_t, - pub tv_usec: __suseconds_t, -} -#[test] -fn bindgen_test_layout_timeval() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timeval)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timeval)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_usec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_usec) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timespec { - pub tv_sec: __time_t, - pub tv_nsec: __syscall_slong_t, -} -#[test] -fn bindgen_test_layout_timespec() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timespec)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timespec)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_nsec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_nsec) - ) - ); -} -pub type suseconds_t = __suseconds_t; -pub type __fd_mask = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct fd_set { - pub __fds_bits: [__fd_mask; 16usize], -} -#[test] -fn bindgen_test_layout_fd_set() { - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(fd_set)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(fd_set)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__fds_bits as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(fd_set), - "::", - stringify!(__fds_bits) - ) - ); -} -pub type fd_mask = __fd_mask; -extern "C" { - pub fn select( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *mut timeval, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn pselect( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *const timespec, - __sigmask: *const __sigset_t, - ) -> ::std::os::raw::c_int; -} -pub type blksize_t = __blksize_t; -pub type blkcnt_t = __blkcnt_t; -pub type fsblkcnt_t = __fsblkcnt_t; -pub type fsfilcnt_t = __fsfilcnt_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_list { - pub __prev: *mut __pthread_internal_list, - pub __next: *mut __pthread_internal_list, -} -#[test] -fn bindgen_test_layout___pthread_internal_list() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_list>(), - 16usize, - concat!("Size of: ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_list>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__prev) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_list_t = __pthread_internal_list; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_slist { - pub __next: *mut __pthread_internal_slist, -} -#[test] -fn bindgen_test_layout___pthread_internal_slist() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_slist>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_slist>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_slist>())).__next as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_slist), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_slist_t = __pthread_internal_slist; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_mutex_s { - pub __lock: ::std::os::raw::c_int, - pub __count: ::std::os::raw::c_uint, - pub __owner: ::std::os::raw::c_int, - pub __nusers: ::std::os::raw::c_uint, - pub __kind: ::std::os::raw::c_int, - pub __spins: ::std::os::raw::c_short, - pub __elision: ::std::os::raw::c_short, - pub __list: __pthread_list_t, -} -#[test] -fn bindgen_test_layout___pthread_mutex_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_mutex_s>(), - 40usize, - concat!("Size of: ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_mutex_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__owner) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__nusers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__kind) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__spins) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize }, - 22usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__elision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__list) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::std::os::raw::c_uint, - pub __writers: ::std::os::raw::c_uint, - pub __wrphase_futex: ::std::os::raw::c_uint, - pub __writers_futex: ::std::os::raw::c_uint, - pub __pad3: ::std::os::raw::c_uint, - pub __pad4: ::std::os::raw::c_uint, - pub __cur_writer: ::std::os::raw::c_int, - pub __shared: ::std::os::raw::c_int, - pub __rwelision: ::std::os::raw::c_schar, - pub __pad1: [::std::os::raw::c_uchar; 7usize], - pub __pad2: ::std::os::raw::c_ulong, - pub __flags: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_rwlock_arch_t() { - assert_eq!( - ::std::mem::size_of::<__pthread_rwlock_arch_t>(), - 56usize, - concat!("Size of: ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_rwlock_arch_t>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__readers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__wrphase_futex) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _ as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers_futex) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad3) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad4) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__cur_writer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__shared) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__rwelision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize }, - 33usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad1) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__flags) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, - pub __g_refs: [::std::os::raw::c_uint; 2usize], - pub __g_size: [::std::os::raw::c_uint; 2usize], - pub __g1_orig_size: ::std::os::raw::c_uint, - pub __wrefs: ::std::os::raw::c_uint, - pub __g_signals: [::std::os::raw::c_uint; 2usize], -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::std::os::raw::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq32) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::std::os::raw::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start32) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s>(), - 48usize, - concat!("Size of: ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_refs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g1_orig_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize }, - 36usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__wrefs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_signals) - ) - ); -} -pub type __tss_t = ::std::os::raw::c_uint; -pub type __thrd_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __once_flag { - pub __data: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout___once_flag() { - assert_eq!( - ::std::mem::size_of::<__once_flag>(), - 4usize, - concat!("Size of: ", stringify!(__once_flag)) - ); - assert_eq!( - ::std::mem::align_of::<__once_flag>(), - 4usize, - concat!("Alignment of ", stringify!(__once_flag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__once_flag>())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__once_flag), - "::", - stringify!(__data) - ) - ); -} -pub type pthread_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutexattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_mutexattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_condattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_condattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_key_t = ::std::os::raw::c_uint; -pub type pthread_once_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_attr_t { - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_attr_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_attr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_attr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutex_t { - pub __data: __pthread_mutex_s, - pub __size: [::std::os::raw::c_char; 40usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 5usize], -} -#[test] -fn bindgen_test_layout_pthread_mutex_t() { - assert_eq!( - ::std::mem::size_of::(), - 40usize, - concat!("Size of: ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_cond_t { - pub __data: __pthread_cond_s, - pub __size: [::std::os::raw::c_char; 48usize], - pub __align: ::std::os::raw::c_longlong, - _bindgen_union_align: [u64; 6usize], -} -#[test] -fn bindgen_test_layout_pthread_cond_t() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(pthread_cond_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_cond_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlock_t { - pub __data: __pthread_rwlock_arch_t, - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_rwlock_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlockattr_t { - pub __size: [::std::os::raw::c_char; 8usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: u64, -} -#[test] -fn bindgen_test_layout_pthread_rwlockattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_spinlock_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrier_t { - pub __size: [::std::os::raw::c_char; 32usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 4usize], -} -#[test] -fn bindgen_test_layout_pthread_barrier_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrierattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_barrierattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__align) - ) - ); -} -extern "C" { - pub fn random() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srandom(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn initstate( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct random_data { - pub fptr: *mut i32, - pub rptr: *mut i32, - pub state: *mut i32, - pub rand_type: ::std::os::raw::c_int, - pub rand_deg: ::std::os::raw::c_int, - pub rand_sep: ::std::os::raw::c_int, - pub end_ptr: *mut i32, -} -#[test] -fn bindgen_test_layout_random_data() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(random_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(random_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).fptr as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(fptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).state as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(state) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_type as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_type) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_deg as *const _ as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_deg) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_sep as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_sep) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).end_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(end_ptr) - ) - ); -} -extern "C" { - pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srandom_r( - __seed: ::std::os::raw::c_uint, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn initstate_r( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setstate_r( - __statebuf: *mut ::std::os::raw::c_char, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn rand() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn drand48() -> f64; -} -extern "C" { - pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64; -} -extern "C" { - pub fn lrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn mrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srand48(__seedval: ::std::os::raw::c_long); -} -extern "C" { - pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort; -} -extern "C" { - pub fn lcong48(__param: *mut ::std::os::raw::c_ushort); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct drand48_data { - pub __x: [::std::os::raw::c_ushort; 3usize], - pub __old_x: [::std::os::raw::c_ushort; 3usize], - pub __c: ::std::os::raw::c_ushort, - pub __init: ::std::os::raw::c_ushort, - pub __a: ::std::os::raw::c_ulonglong, -} -#[test] -fn bindgen_test_layout_drand48_data() { - assert_eq!( - ::std::mem::size_of::(), - 24usize, - concat!("Size of: ", stringify!(drand48_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(drand48_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__x as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__old_x as *const _ as usize }, - 6usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__old_x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__c as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__c) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__init as *const _ as usize }, - 14usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__init) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__a as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__a) - ) - ); -} -extern "C" { - pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn erand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut f64, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn nrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn jrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand48_r( - __seedval: ::std::os::raw::c_long, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn seed48_r( - __seed16v: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lcong48_r( - __param: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn calloc( - __nmemb: ::std::os::raw::c_ulong, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn realloc( - __ptr: *mut ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn reallocarray( - __ptr: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn free(__ptr: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn valloc(__size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn posix_memalign( - __memptr: *mut *mut ::std::os::raw::c_void, - __alignment: size_t, - __size: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn aligned_alloc(__alignment: size_t, __size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn abort(); -} -extern "C" { - pub fn atexit(__func: ::std::option::Option) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn at_quick_exit( - __func: ::std::option::Option, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn on_exit( - __func: ::std::option::Option< - unsafe extern "C" fn( - __status: ::std::os::raw::c_int, - __arg: *mut ::std::os::raw::c_void, - ), - >, - __arg: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn quick_exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn _Exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setenv( - __name: *const ::std::os::raw::c_char, - __value: *const ::std::os::raw::c_char, - __replace: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearenv() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkstemps( - __template: *mut ::std::os::raw::c_char, - __suffixlen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn realpath( - __name: *const ::std::os::raw::c_char, - __resolved: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -pub type __compar_fn_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: *const ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn bsearch( - __key: *const ::std::os::raw::c_void, - __base: *const ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn qsort( - __base: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ); -} -extern "C" { - pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t; -} -extern "C" { - pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t; -} -extern "C" { - pub fn lldiv( - __numer: ::std::os::raw::c_longlong, - __denom: ::std::os::raw::c_longlong, - ) -> lldiv_t; -} -extern "C" { - pub fn ecvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn gcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qecvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qfcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qgcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn ecvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fcvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qecvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qfcvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mblen(__s: *const ::std::os::raw::c_char, __n: size_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbtowc( - __pwc: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbstowcs( - __pwcs: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn wcstombs( - __s: *mut ::std::os::raw::c_char, - __pwcs: *const wchar_t, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getsubopt( - __optionp: *mut *mut ::std::os::raw::c_char, - __tokens: *const *mut ::std::os::raw::c_char, - __valuep: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int) - -> ::std::os::raw::c_int; -} -#[repr(C)] -#[repr(align(16))] -#[derive(Debug, Copy, Clone)] -pub struct max_align_t { - pub __clang_max_align_nonce1: ::std::os::raw::c_longlong, - pub __bindgen_padding_0: u64, - pub __clang_max_align_nonce2: u128, -} -#[test] -fn bindgen_test_layout_max_align_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(max_align_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 16usize, - concat!("Alignment of ", stringify!(max_align_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce1 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce2 as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce2) - ) - ); -} -pub type int_least8_t = __int_least8_t; -pub type int_least16_t = __int_least16_t; -pub type int_least32_t = __int_least32_t; -pub type int_least64_t = __int_least64_t; -pub type uint_least8_t = __uint_least8_t; -pub type uint_least16_t = __uint_least16_t; -pub type uint_least32_t = __uint_least32_t; -pub type uint_least64_t = __uint_least64_t; -pub type int_fast8_t = ::std::os::raw::c_schar; -pub type int_fast16_t = ::std::os::raw::c_long; -pub type int_fast32_t = ::std::os::raw::c_long; -pub type int_fast64_t = ::std::os::raw::c_long; -pub type uint_fast8_t = ::std::os::raw::c_uchar; -pub type uint_fast16_t = ::std::os::raw::c_ulong; -pub type uint_fast32_t = ::std::os::raw::c_ulong; -pub type uint_fast64_t = ::std::os::raw::c_ulong; -pub type intmax_t = __intmax_t; -pub type uintmax_t = __uintmax_t; -pub type realtype = f64; -pub type sunindextype = i64; -pub const N_Vector_ID_SUNDIALS_NVEC_SERIAL: N_Vector_ID = 0; -pub const N_Vector_ID_SUNDIALS_NVEC_PARALLEL: N_Vector_ID = 1; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMP: N_Vector_ID = 2; -pub const N_Vector_ID_SUNDIALS_NVEC_PTHREADS: N_Vector_ID = 3; -pub const N_Vector_ID_SUNDIALS_NVEC_PARHYP: N_Vector_ID = 4; -pub const N_Vector_ID_SUNDIALS_NVEC_PETSC: N_Vector_ID = 5; -pub const N_Vector_ID_SUNDIALS_NVEC_CUDA: N_Vector_ID = 6; -pub const N_Vector_ID_SUNDIALS_NVEC_HIP: N_Vector_ID = 7; -pub const N_Vector_ID_SUNDIALS_NVEC_SYCL: N_Vector_ID = 8; -pub const N_Vector_ID_SUNDIALS_NVEC_RAJA: N_Vector_ID = 9; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMPDEV: N_Vector_ID = 10; -pub const N_Vector_ID_SUNDIALS_NVEC_TRILINOS: N_Vector_ID = 11; -pub const N_Vector_ID_SUNDIALS_NVEC_MANYVECTOR: N_Vector_ID = 12; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIMANYVECTOR: N_Vector_ID = 13; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIPLUSX: N_Vector_ID = 14; -pub const N_Vector_ID_SUNDIALS_NVEC_CUSTOM: N_Vector_ID = 15; -pub type N_Vector_ID = ::std::os::raw::c_uint; -pub type N_Vector_Ops = *mut _generic_N_Vector_Ops; -pub type N_Vector = *mut _generic_N_Vector; -pub type N_Vector_S = *mut N_Vector; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector_Ops { - pub nvgetvectorid: ::std::option::Option N_Vector_ID>, - pub nvclone: ::std::option::Option N_Vector>, - pub nvcloneempty: ::std::option::Option N_Vector>, - pub nvdestroy: ::std::option::Option, - pub nvspace: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype, arg3: *mut sunindextype), - >, - pub nvgetarraypointer: - ::std::option::Option *mut realtype>, - pub nvgetdevicearraypointer: - ::std::option::Option *mut realtype>, - pub nvsetarraypointer: - ::std::option::Option, - pub nvgetcommunicator: - ::std::option::Option *mut ::std::os::raw::c_void>, - pub nvgetlength: ::std::option::Option sunindextype>, - pub nvlinearsum: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: N_Vector, - arg3: realtype, - arg4: N_Vector, - arg5: N_Vector, - ), - >, - pub nvconst: ::std::option::Option, - pub nvprod: - ::std::option::Option, - pub nvdiv: - ::std::option::Option, - pub nvscale: - ::std::option::Option, - pub nvabs: ::std::option::Option, - pub nvinv: ::std::option::Option, - pub nvaddconst: - ::std::option::Option, - pub nvdotprod: - ::std::option::Option realtype>, - pub nvmaxnorm: ::std::option::Option realtype>, - pub nvwrmsnorm: - ::std::option::Option realtype>, - pub nvwrmsnormmask: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvmin: ::std::option::Option realtype>, - pub nvwl2norm: - ::std::option::Option realtype>, - pub nvl1norm: ::std::option::Option realtype>, - pub nvcompare: - ::std::option::Option, - pub nvinvtest: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmask: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotient: - ::std::option::Option realtype>, - pub nvlinearcombination: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: N_Vector, - arg4: *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearsumvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - arg4: realtype, - arg5: *mut N_Vector, - arg6: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscalevectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvconstvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormmaskvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: N_Vector, - arg5: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmultivectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut N_Vector, - arg5: *mut *mut N_Vector, - arg6: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearcombinationvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodlocal: - ::std::option::Option realtype>, - pub nvmaxnormlocal: ::std::option::Option realtype>, - pub nvminlocal: ::std::option::Option realtype>, - pub nvl1normlocal: ::std::option::Option realtype>, - pub nvinvtestlocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmasklocal: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotientlocal: - ::std::option::Option realtype>, - pub nvwsqrsumlocal: - ::std::option::Option realtype>, - pub nvwsqrsummasklocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvbufsize: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype) -> ::std::os::raw::c_int, - >, - pub nvbufpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvbufunpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvprint: ::std::option::Option, - pub nvprintfile: ::std::option::Option, -} -#[test] -fn bindgen_test_layout__generic_N_Vector_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector_Ops>(), - 424usize, - concat!("Size of: ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetvectorid as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetvectorid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvclone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvclone) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcloneempty as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcloneempty) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdestroy as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdestroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvspace as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvspace) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetarraypointer as *const _ as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetdevicearraypointer as *const _ - as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetdevicearraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvsetarraypointer as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvsetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetcommunicator as *const _ as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetcommunicator) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetlength as *const _ as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetlength) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsum as *const _ as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsum) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconst as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprod as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdiv as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdiv) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscale as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscale) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvabs as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvabs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinv as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinv) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvaddconst as *const _ as usize - }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvaddconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprod as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnorm as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnorm as *const _ as usize - }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmask as *const _ as usize - }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmask) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmin as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmin) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwl2norm as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwl2norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1norm as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcompare as *const _ as usize }, - 200usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcompare) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtest as *const _ as usize }, - 208usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtest) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmask as *const _ as usize - }, - 216usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmask) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotient as *const _ as usize - }, - 224usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotient) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombination as *const _ - as usize - }, - 232usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombination) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmulti as *const _ as usize - }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodmulti as *const _ as usize - }, - 248usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsumvectorarray as *const _ - as usize - }, - 256usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsumvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscalevectorarray as *const _ - as usize - }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscalevectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstvectorarray as *const _ - as usize - }, - 272usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormvectorarray as *const _ - as usize - }, - 280usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmaskvectorarray as *const _ - as usize - }, - 288usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmaskvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmultivectorarray as *const _ - as usize - }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmultivectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombinationvectorarray - as *const _ as usize - }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombinationvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodlocal as *const _ as usize - }, - 312usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnormlocal as *const _ as usize - }, - 320usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnormlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminlocal as *const _ as usize - }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1normlocal as *const _ as usize - }, - 336usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1normlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtestlocal as *const _ as usize - }, - 344usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtestlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmasklocal as *const _ as usize - }, - 352usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmasklocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotientlocal as *const _ - as usize - }, - 360usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotientlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsumlocal as *const _ as usize - }, - 368usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsumlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsummasklocal as *const _ - as usize - }, - 376usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsummasklocal) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufsize as *const _ as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufsize) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufpack as *const _ as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufpack) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufunpack as *const _ as usize - }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufunpack) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprint as *const _ as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprint) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprintfile as *const _ as usize - }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprintfile) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector { - pub content: *mut ::std::os::raw::c_void, - pub ops: N_Vector_Ops, -} -#[test] -fn bindgen_test_layout__generic_N_Vector() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector>(), - 16usize, - concat!("Size of: ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn N_VNewEmpty() -> N_Vector; -} -extern "C" { - pub fn N_VFreeEmpty(v: N_Vector); -} -extern "C" { - pub fn N_VCopyOps(w: N_Vector, v: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VGetVectorID(w: N_Vector) -> N_Vector_ID; -} -extern "C" { - pub fn N_VClone(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VCloneEmpty(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VDestroy(v: N_Vector); -} -extern "C" { - pub fn N_VSpace(v: N_Vector, lrw: *mut sunindextype, liw: *mut sunindextype); -} -extern "C" { - pub fn N_VGetArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VGetDeviceArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VSetArrayPointer(v_data: *mut realtype, v: N_Vector); -} -extern "C" { - pub fn N_VGetCommunicator(v: N_Vector) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn N_VGetLength(v: N_Vector) -> sunindextype; -} -extern "C" { - pub fn N_VLinearSum(a: realtype, x: N_Vector, b: realtype, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VConst(c: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VProd(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VDiv(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VScale(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAbs(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInv(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAddConst(x: N_Vector, b: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VDotProd(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNorm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNorm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNormMask(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMin(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWL2Norm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1Norm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VCompare(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInvTest(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMask(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotient(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VLinearCombination( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMulti( - nvec: ::std::os::raw::c_int, - a: *mut realtype, - x: N_Vector, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdMulti( - nvec: ::std::os::raw::c_int, - x: N_Vector, - Y: *mut N_Vector, - dotprods: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearSumVectorArray( - nvec: ::std::os::raw::c_int, - a: realtype, - X: *mut N_Vector, - b: realtype, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleVectorArray( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstVectorArray( - nvec: ::std::os::raw::c_int, - c: realtype, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormMaskVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - id: N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMultiVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - a: *mut realtype, - X: *mut N_Vector, - Y: *mut *mut N_Vector, - Z: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearCombinationVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdLocal(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMinLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1NormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumLocal(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumMaskLocal(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VInvTestLocal(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMaskLocal(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotientLocal(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VBufSize(x: N_Vector, size: *mut sunindextype) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufPack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufUnpack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VNewVectorArray(count: ::std::os::raw::c_int) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneEmptyVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VDestroyVectorArray(vs: *mut N_Vector, count: ::std::os::raw::c_int); -} -extern "C" { - pub fn N_VGetVecAtIndexVectorArray(vs: *mut N_Vector, index: ::std::os::raw::c_int) - -> N_Vector; -} -extern "C" { - pub fn N_VSetVecAtIndexVectorArray( - vs: *mut N_Vector, - index: ::std::os::raw::c_int, - w: N_Vector, - ); -} -extern "C" { - pub fn N_VPrint(v: N_Vector); -} -extern "C" { - pub fn N_VPrintFile(v: N_Vector, outfile: *mut FILE); -} -pub type SUNNonlinearSolver_Ops = *mut _generic_SUNNonlinearSolver_Ops; -pub type SUNNonlinearSolver = *mut _generic_SUNNonlinearSolver; -pub type SUNNonlinSolSysFn = ::std::option::Option< - unsafe extern "C" fn( - y: N_Vector, - F: N_Vector, - mem: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type SUNNonlinSolLSetupFn = ::std::option::Option< - unsafe extern "C" fn( - jbad: ::std::os::raw::c_int, - jcur: *mut ::std::os::raw::c_int, - mem: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type SUNNonlinSolLSolveFn = ::std::option::Option< - unsafe extern "C" fn(b: N_Vector, mem: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, ->; -pub type SUNNonlinSolConvTestFn = ::std::option::Option< - unsafe extern "C" fn( - NLS: SUNNonlinearSolver, - y: N_Vector, - del: N_Vector, - tol: realtype, - ewt: N_Vector, - mem: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub const SUNNonlinearSolver_Type_SUNNONLINEARSOLVER_ROOTFIND: SUNNonlinearSolver_Type = 0; -pub const SUNNonlinearSolver_Type_SUNNONLINEARSOLVER_FIXEDPOINT: SUNNonlinearSolver_Type = 1; -pub type SUNNonlinearSolver_Type = ::std::os::raw::c_uint; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNNonlinearSolver_Ops { - pub gettype: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNNonlinearSolver) -> SUNNonlinearSolver_Type, - >, - pub initialize: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNNonlinearSolver) -> ::std::os::raw::c_int, - >, - pub setup: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: N_Vector, - arg3: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub solve: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: N_Vector, - arg3: N_Vector, - arg4: N_Vector, - arg5: realtype, - arg6: ::std::os::raw::c_int, - arg7: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub free: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNNonlinearSolver) -> ::std::os::raw::c_int, - >, - pub setsysfn: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: SUNNonlinSolSysFn, - ) -> ::std::os::raw::c_int, - >, - pub setlsetupfn: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: SUNNonlinSolLSetupFn, - ) -> ::std::os::raw::c_int, - >, - pub setlsolvefn: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: SUNNonlinSolLSolveFn, - ) -> ::std::os::raw::c_int, - >, - pub setctestfn: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: SUNNonlinSolConvTestFn, - arg3: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub setmaxiters: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, - >, - pub getnumiters: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, - pub getcuriter: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, - >, - pub getnumconvfails: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNNonlinearSolver, - arg2: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, -} -#[test] -fn bindgen_test_layout__generic_SUNNonlinearSolver_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNNonlinearSolver_Ops>(), - 104usize, - concat!("Size of: ", stringify!(_generic_SUNNonlinearSolver_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNNonlinearSolver_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNNonlinearSolver_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).gettype as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(gettype) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).initialize as *const _ - as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(initialize) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).setup as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(setup) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).solve as *const _ as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(solve) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).free as *const _ as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(free) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).setsysfn as *const _ - as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(setsysfn) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).setlsetupfn as *const _ - as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(setlsetupfn) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).setlsolvefn as *const _ - as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(setlsolvefn) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).setctestfn as *const _ - as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(setctestfn) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).setmaxiters as *const _ - as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(setmaxiters) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).getnumiters as *const _ - as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(getnumiters) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).getcuriter as *const _ - as usize - }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(getcuriter) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver_Ops>())).getnumconvfails as *const _ - as usize - }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver_Ops), - "::", - stringify!(getnumconvfails) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNNonlinearSolver { - pub content: *mut ::std::os::raw::c_void, - pub ops: SUNNonlinearSolver_Ops, -} -#[test] -fn bindgen_test_layout__generic_SUNNonlinearSolver() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNNonlinearSolver>(), - 16usize, - concat!("Size of: ", stringify!(_generic_SUNNonlinearSolver)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNNonlinearSolver>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNNonlinearSolver)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNNonlinearSolver>())).content as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNNonlinearSolver>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNNonlinearSolver), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn SUNNonlinSolNewEmpty() -> SUNNonlinearSolver; -} -extern "C" { - pub fn SUNNonlinSolFreeEmpty(NLS: SUNNonlinearSolver); -} -extern "C" { - pub fn SUNNonlinSolGetType(NLS: SUNNonlinearSolver) -> SUNNonlinearSolver_Type; -} -extern "C" { - pub fn SUNNonlinSolInitialize(NLS: SUNNonlinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSetup( - NLS: SUNNonlinearSolver, - y: N_Vector, - mem: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSolve( - NLS: SUNNonlinearSolver, - y0: N_Vector, - y: N_Vector, - w: N_Vector, - tol: realtype, - callLSetup: ::std::os::raw::c_int, - mem: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolFree(NLS: SUNNonlinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSetSysFn( - NLS: SUNNonlinearSolver, - SysFn: SUNNonlinSolSysFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSetLSetupFn( - NLS: SUNNonlinearSolver, - SetupFn: SUNNonlinSolLSetupFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSetLSolveFn( - NLS: SUNNonlinearSolver, - SolveFn: SUNNonlinSolLSolveFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSetConvTestFn( - NLS: SUNNonlinearSolver, - CTestFn: SUNNonlinSolConvTestFn, - ctest_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolSetMaxIters( - NLS: SUNNonlinearSolver, - maxiters: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolGetNumIters( - NLS: SUNNonlinearSolver, - niters: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolGetCurIter( - NLS: SUNNonlinearSolver, - iter: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNNonlinSolGetNumConvFails( - NLS: SUNNonlinearSolver, - nconvfails: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _DlsMat { - pub type_: ::std::os::raw::c_int, - pub M: sunindextype, - pub N: sunindextype, - pub ldim: sunindextype, - pub mu: sunindextype, - pub ml: sunindextype, - pub s_mu: sunindextype, - pub data: *mut realtype, - pub ldata: sunindextype, - pub cols: *mut *mut realtype, -} -#[test] -fn bindgen_test_layout__DlsMat() { - assert_eq!( - ::std::mem::size_of::<_DlsMat>(), - 80usize, - concat!("Size of: ", stringify!(_DlsMat)) - ); - assert_eq!( - ::std::mem::align_of::<_DlsMat>(), - 8usize, - concat!("Alignment of ", stringify!(_DlsMat)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).type_ as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).M as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(M) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).N as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(N) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).ldim as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(ldim) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).mu as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(mu) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).ml as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(ml) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).s_mu as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(s_mu) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).data as *const _ as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).ldata as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(ldata) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).cols as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(cols) - ) - ); -} -pub type DlsMat = *mut _DlsMat; -extern "C" { - pub fn NewDenseMat(M: sunindextype, N: sunindextype) -> DlsMat; -} -extern "C" { - pub fn NewBandMat( - N: sunindextype, - mu: sunindextype, - ml: sunindextype, - smu: sunindextype, - ) -> DlsMat; -} -extern "C" { - pub fn DestroyMat(A: DlsMat); -} -extern "C" { - pub fn NewIntArray(N: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn NewIndexArray(N: sunindextype) -> *mut sunindextype; -} -extern "C" { - pub fn NewRealArray(N: sunindextype) -> *mut realtype; -} -extern "C" { - pub fn DestroyArray(p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn AddIdentity(A: DlsMat); -} -extern "C" { - pub fn SetToZero(A: DlsMat); -} -extern "C" { - pub fn PrintMat(A: DlsMat, outfile: *mut FILE); -} -extern "C" { - pub fn newDenseMat(m: sunindextype, n: sunindextype) -> *mut *mut realtype; -} -extern "C" { - pub fn newBandMat(n: sunindextype, smu: sunindextype, ml: sunindextype) -> *mut *mut realtype; -} -extern "C" { - pub fn destroyMat(a: *mut *mut realtype); -} -extern "C" { - pub fn newIntArray(n: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn newIndexArray(n: sunindextype) -> *mut sunindextype; -} -extern "C" { - pub fn newRealArray(m: sunindextype) -> *mut realtype; -} -extern "C" { - pub fn destroyArray(v: *mut ::std::os::raw::c_void); -} -pub const PREC_NONE: ::std::os::raw::c_uint = 0; -pub const PREC_LEFT: ::std::os::raw::c_uint = 1; -pub const PREC_RIGHT: ::std::os::raw::c_uint = 2; -pub const PREC_BOTH: ::std::os::raw::c_uint = 3; -pub type _bindgen_ty_1 = ::std::os::raw::c_uint; -pub const MODIFIED_GS: ::std::os::raw::c_uint = 1; -pub const CLASSICAL_GS: ::std::os::raw::c_uint = 2; -pub type _bindgen_ty_2 = ::std::os::raw::c_uint; -pub type ATimesFn = ::std::option::Option< - unsafe extern "C" fn( - A_data: *mut ::std::os::raw::c_void, - v: N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int, ->; -pub type PSetupFn = ::std::option::Option< - unsafe extern "C" fn(P_data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, ->; -pub type PSolveFn = ::std::option::Option< - unsafe extern "C" fn( - P_data: *mut ::std::os::raw::c_void, - r: N_Vector, - z: N_Vector, - tol: realtype, - lr: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn ModifiedGS( - v: *mut N_Vector, - h: *mut *mut realtype, - k: ::std::os::raw::c_int, - p: ::std::os::raw::c_int, - new_vk_norm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ClassicalGS( - v: *mut N_Vector, - h: *mut *mut realtype, - k: ::std::os::raw::c_int, - p: ::std::os::raw::c_int, - new_vk_norm: *mut realtype, - stemp: *mut realtype, - vtemp: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn QRfact( - n: ::std::os::raw::c_int, - h: *mut *mut realtype, - q: *mut realtype, - job: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn QRsol( - n: ::std::os::raw::c_int, - h: *mut *mut realtype, - q: *mut realtype, - b: *mut realtype, - ) -> ::std::os::raw::c_int; -} -pub const SUNMatrix_ID_SUNMATRIX_DENSE: SUNMatrix_ID = 0; -pub const SUNMatrix_ID_SUNMATRIX_MAGMADENSE: SUNMatrix_ID = 1; -pub const SUNMatrix_ID_SUNMATRIX_BAND: SUNMatrix_ID = 2; -pub const SUNMatrix_ID_SUNMATRIX_SPARSE: SUNMatrix_ID = 3; -pub const SUNMatrix_ID_SUNMATRIX_SLUNRLOC: SUNMatrix_ID = 4; -pub const SUNMatrix_ID_SUNMATRIX_CUSPARSE: SUNMatrix_ID = 5; -pub const SUNMatrix_ID_SUNMATRIX_CUSTOM: SUNMatrix_ID = 6; -pub type SUNMatrix_ID = ::std::os::raw::c_uint; -pub type SUNMatrix_Ops = *mut _generic_SUNMatrix_Ops; -pub type SUNMatrix = *mut _generic_SUNMatrix; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNMatrix_Ops { - pub getid: ::std::option::Option SUNMatrix_ID>, - pub clone: ::std::option::Option SUNMatrix>, - pub destroy: ::std::option::Option, - pub zero: ::std::option::Option ::std::os::raw::c_int>, - pub copy: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNMatrix, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub scaleadd: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: SUNMatrix, - arg3: SUNMatrix, - ) -> ::std::os::raw::c_int, - >, - pub scaleaddi: ::std::option::Option< - unsafe extern "C" fn(arg1: realtype, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub matvecsetup: - ::std::option::Option ::std::os::raw::c_int>, - pub matvec: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNMatrix, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub space: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNMatrix, - arg2: *mut ::std::os::raw::c_long, - arg3: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, -} -#[test] -fn bindgen_test_layout__generic_SUNMatrix_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNMatrix_Ops>(), - 80usize, - concat!("Size of: ", stringify!(_generic_SUNMatrix_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNMatrix_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNMatrix_Ops)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).getid as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(getid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).clone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(clone) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).destroy as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(destroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).zero as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(zero) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).copy as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(copy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).scaleadd as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(scaleadd) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).scaleaddi as *const _ as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(scaleaddi) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).matvecsetup as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(matvecsetup) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).matvec as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(matvec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).space as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(space) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNMatrix { - pub content: *mut ::std::os::raw::c_void, - pub ops: SUNMatrix_Ops, -} -#[test] -fn bindgen_test_layout__generic_SUNMatrix() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNMatrix>(), - 16usize, - concat!("Size of: ", stringify!(_generic_SUNMatrix)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNMatrix>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNMatrix)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn SUNMatNewEmpty() -> SUNMatrix; -} -extern "C" { - pub fn SUNMatFreeEmpty(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatCopyOps(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatGetID(A: SUNMatrix) -> SUNMatrix_ID; -} -extern "C" { - pub fn SUNMatClone(A: SUNMatrix) -> SUNMatrix; -} -extern "C" { - pub fn SUNMatDestroy(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatZero(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatCopy(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAdd(c: realtype, A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAddI(c: realtype, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvecSetup(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvec(A: SUNMatrix, x: N_Vector, y: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatSpace( - A: SUNMatrix, - lenrw: *mut ::std::os::raw::c_long, - leniw: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -pub const SUNLinearSolver_Type_SUNLINEARSOLVER_DIRECT: SUNLinearSolver_Type = 0; -pub const SUNLinearSolver_Type_SUNLINEARSOLVER_ITERATIVE: SUNLinearSolver_Type = 1; -pub const SUNLinearSolver_Type_SUNLINEARSOLVER_MATRIX_ITERATIVE: SUNLinearSolver_Type = 2; -pub type SUNLinearSolver_Type = ::std::os::raw::c_uint; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_BAND: SUNLinearSolver_ID = 0; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_DENSE: SUNLinearSolver_ID = 1; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_KLU: SUNLinearSolver_ID = 2; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_LAPACKBAND: SUNLinearSolver_ID = 3; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_LAPACKDENSE: SUNLinearSolver_ID = 4; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_PCG: SUNLinearSolver_ID = 5; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPBCGS: SUNLinearSolver_ID = 6; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPFGMR: SUNLinearSolver_ID = 7; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPGMR: SUNLinearSolver_ID = 8; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPTFQMR: SUNLinearSolver_ID = 9; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SUPERLUDIST: SUNLinearSolver_ID = 10; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SUPERLUMT: SUNLinearSolver_ID = 11; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_CUSOLVERSP_BATCHQR: SUNLinearSolver_ID = 12; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_MAGMADENSE: SUNLinearSolver_ID = 13; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_CUSTOM: SUNLinearSolver_ID = 14; -pub type SUNLinearSolver_ID = ::std::os::raw::c_uint; -pub type SUNLinearSolver_Ops = *mut _generic_SUNLinearSolver_Ops; -pub type SUNLinearSolver = *mut _generic_SUNLinearSolver; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNLinearSolver_Ops { - pub gettype: - ::std::option::Option SUNLinearSolver_Type>, - pub getid: - ::std::option::Option SUNLinearSolver_ID>, - pub setatimes: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: *mut ::std::os::raw::c_void, - arg3: ATimesFn, - ) -> ::std::os::raw::c_int, - >, - pub setpreconditioner: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: *mut ::std::os::raw::c_void, - arg3: PSetupFn, - arg4: PSolveFn, - ) -> ::std::os::raw::c_int, - >, - pub setscalingvectors: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub initialize: - ::std::option::Option ::std::os::raw::c_int>, - pub setup: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNLinearSolver, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub solve: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: SUNMatrix, - arg3: N_Vector, - arg4: N_Vector, - arg5: realtype, - ) -> ::std::os::raw::c_int, - >, - pub numiters: - ::std::option::Option ::std::os::raw::c_int>, - pub resnorm: ::std::option::Option realtype>, - pub lastflag: - ::std::option::Option sunindextype>, - pub space: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: *mut ::std::os::raw::c_long, - arg3: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, - pub resid: ::std::option::Option N_Vector>, - pub free: - ::std::option::Option ::std::os::raw::c_int>, -} -#[test] -fn bindgen_test_layout__generic_SUNLinearSolver_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNLinearSolver_Ops>(), - 112usize, - concat!("Size of: ", stringify!(_generic_SUNLinearSolver_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNLinearSolver_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNLinearSolver_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).gettype as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(gettype) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).getid as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(getid) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setatimes as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setatimes) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setpreconditioner as *const _ - as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setpreconditioner) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setscalingvectors as *const _ - as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setscalingvectors) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).initialize as *const _ as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(initialize) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setup as *const _ as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setup) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).solve as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(solve) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).numiters as *const _ as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(numiters) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).resnorm as *const _ as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(resnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).lastflag as *const _ as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(lastflag) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).space as *const _ as usize - }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(space) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).resid as *const _ as usize - }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(resid) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).free as *const _ as usize - }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(free) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNLinearSolver { - pub content: *mut ::std::os::raw::c_void, - pub ops: SUNLinearSolver_Ops, -} -#[test] -fn bindgen_test_layout__generic_SUNLinearSolver() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNLinearSolver>(), - 16usize, - concat!("Size of: ", stringify!(_generic_SUNLinearSolver)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNLinearSolver>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNLinearSolver)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver>())).content as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNLinearSolver>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn SUNLinSolNewEmpty() -> SUNLinearSolver; -} -extern "C" { - pub fn SUNLinSolFreeEmpty(S: SUNLinearSolver); -} -extern "C" { - pub fn SUNLinSolGetType(S: SUNLinearSolver) -> SUNLinearSolver_Type; -} -extern "C" { - pub fn SUNLinSolGetID(S: SUNLinearSolver) -> SUNLinearSolver_ID; -} -extern "C" { - pub fn SUNLinSolSetATimes( - S: SUNLinearSolver, - A_data: *mut ::std::os::raw::c_void, - ATimes: ATimesFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetPreconditioner( - S: SUNLinearSolver, - P_data: *mut ::std::os::raw::c_void, - Pset: PSetupFn, - Psol: PSolveFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetScalingVectors( - S: SUNLinearSolver, - s1: N_Vector, - s2: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolInitialize(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetup(S: SUNLinearSolver, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSolve( - S: SUNLinearSolver, - A: SUNMatrix, - x: N_Vector, - b: N_Vector, - tol: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolNumIters(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolResNorm(S: SUNLinearSolver) -> realtype; -} -extern "C" { - pub fn SUNLinSolResid(S: SUNLinearSolver) -> N_Vector; -} -extern "C" { - pub fn SUNLinSolLastFlag(S: SUNLinearSolver) -> sunindextype; -} -extern "C" { - pub fn SUNLinSolSpace( - S: SUNLinearSolver, - lenrwLS: *mut ::std::os::raw::c_long, - leniwLS: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolFree(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -pub type CVLsJacFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - fy: N_Vector, - Jac: SUNMatrix, - user_data: *mut ::std::os::raw::c_void, - tmp1: N_Vector, - tmp2: N_Vector, - tmp3: N_Vector, - ) -> ::std::os::raw::c_int, ->; -pub type CVLsPrecSetupFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - fy: N_Vector, - jok: ::std::os::raw::c_int, - jcurPtr: *mut ::std::os::raw::c_int, - gamma: realtype, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type CVLsPrecSolveFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - fy: N_Vector, - r: N_Vector, - z: N_Vector, - gamma: realtype, - delta: realtype, - lr: ::std::os::raw::c_int, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type CVLsJacTimesSetupFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - fy: N_Vector, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type CVLsJacTimesVecFn = ::std::option::Option< - unsafe extern "C" fn( - v: N_Vector, - Jv: N_Vector, - t: realtype, - y: N_Vector, - fy: N_Vector, - user_data: *mut ::std::os::raw::c_void, - tmp: N_Vector, - ) -> ::std::os::raw::c_int, ->; -pub type CVLsLinSysFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - fy: N_Vector, - A: SUNMatrix, - jok: ::std::os::raw::c_int, - jcur: *mut ::std::os::raw::c_int, - gamma: realtype, - user_data: *mut ::std::os::raw::c_void, - tmp1: N_Vector, - tmp2: N_Vector, - tmp3: N_Vector, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn CVodeSetLinearSolver( - cvode_mem: *mut ::std::os::raw::c_void, - LS: SUNLinearSolver, - A: SUNMatrix, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetJacFn( - cvode_mem: *mut ::std::os::raw::c_void, - jac: CVLsJacFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetJacEvalFrequency( - cvode_mem: *mut ::std::os::raw::c_void, - msbj: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetLinearSolutionScaling( - cvode_mem: *mut ::std::os::raw::c_void, - onoff: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetEpsLin( - cvode_mem: *mut ::std::os::raw::c_void, - eplifac: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetLSNormFactor( - arkode_mem: *mut ::std::os::raw::c_void, - nrmfac: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetPreconditioner( - cvode_mem: *mut ::std::os::raw::c_void, - pset: CVLsPrecSetupFn, - psolve: CVLsPrecSolveFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetJacTimes( - cvode_mem: *mut ::std::os::raw::c_void, - jtsetup: CVLsJacTimesSetupFn, - jtimes: CVLsJacTimesVecFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetLinSysFn( - cvode_mem: *mut ::std::os::raw::c_void, - linsys: CVLsLinSysFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetLinWorkSpace( - cvode_mem: *mut ::std::os::raw::c_void, - lenrwLS: *mut ::std::os::raw::c_long, - leniwLS: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumJacEvals( - cvode_mem: *mut ::std::os::raw::c_void, - njevals: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumPrecEvals( - cvode_mem: *mut ::std::os::raw::c_void, - npevals: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumPrecSolves( - cvode_mem: *mut ::std::os::raw::c_void, - npsolves: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumLinIters( - cvode_mem: *mut ::std::os::raw::c_void, - nliters: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumLinConvFails( - cvode_mem: *mut ::std::os::raw::c_void, - nlcfails: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumJTSetupEvals( - cvode_mem: *mut ::std::os::raw::c_void, - njtsetups: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumJtimesEvals( - cvode_mem: *mut ::std::os::raw::c_void, - njvevals: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumLinRhsEvals( - cvode_mem: *mut ::std::os::raw::c_void, - nfevalsLS: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetLinSolveStats( - cvode_mem: *mut ::std::os::raw::c_void, - njevals: *mut ::std::os::raw::c_long, - nfevalsLS: *mut ::std::os::raw::c_long, - nliters: *mut ::std::os::raw::c_long, - nlcfails: *mut ::std::os::raw::c_long, - npevals: *mut ::std::os::raw::c_long, - npsolves: *mut ::std::os::raw::c_long, - njtsetups: *mut ::std::os::raw::c_long, - njtimes: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetLastLinFlag( - cvode_mem: *mut ::std::os::raw::c_void, - flag: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetLinReturnFlagName(flag: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn CVodeSetMaxStepsBetweenJac( - cvode_mem: *mut ::std::os::raw::c_void, - msbj: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -pub type CVProjFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - ycur: N_Vector, - corr: N_Vector, - epsProj: realtype, - err: N_Vector, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn CVodeSetProjFn( - cvode_mem: *mut ::std::os::raw::c_void, - pfun: CVProjFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetProjErrEst( - cvode_mem: *mut ::std::os::raw::c_void, - onoff: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetProjFrequency( - cvode_mem: *mut ::std::os::raw::c_void, - proj_freq: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxNumProjFails( - cvode_mem: *mut ::std::os::raw::c_void, - max_fails: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetEpsProj( - cvode_mem: *mut ::std::os::raw::c_void, - eps: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetProjFailEta( - cvode_mem: *mut ::std::os::raw::c_void, - eta: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumProjEvals( - cvode_mem: *mut ::std::os::raw::c_void, - nproj: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumProjFails( - cvode_mem: *mut ::std::os::raw::c_void, - nprf: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -pub type CVRhsFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - ydot: N_Vector, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type CVRootFn = ::std::option::Option< - unsafe extern "C" fn( - t: realtype, - y: N_Vector, - gout: *mut realtype, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type CVEwtFn = ::std::option::Option< - unsafe extern "C" fn( - y: N_Vector, - ewt: N_Vector, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -pub type CVErrHandlerFn = ::std::option::Option< - unsafe extern "C" fn( - error_code: ::std::os::raw::c_int, - module: *const ::std::os::raw::c_char, - function: *const ::std::os::raw::c_char, - msg: *mut ::std::os::raw::c_char, - user_data: *mut ::std::os::raw::c_void, - ), ->; -pub type CVMonitorFn = ::std::option::Option< - unsafe extern "C" fn( - cvode_mem: *mut ::std::os::raw::c_void, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn CVodeCreate(lmm: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn CVodeInit( - cvode_mem: *mut ::std::os::raw::c_void, - f: CVRhsFn, - t0: realtype, - y0: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeReInit( - cvode_mem: *mut ::std::os::raw::c_void, - t0: realtype, - y0: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSStolerances( - cvode_mem: *mut ::std::os::raw::c_void, - reltol: realtype, - abstol: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSVtolerances( - cvode_mem: *mut ::std::os::raw::c_void, - reltol: realtype, - abstol: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeWFtolerances( - cvode_mem: *mut ::std::os::raw::c_void, - efun: CVEwtFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetErrHandlerFn( - cvode_mem: *mut ::std::os::raw::c_void, - ehfun: CVErrHandlerFn, - eh_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetErrFile( - cvode_mem: *mut ::std::os::raw::c_void, - errfp: *mut FILE, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetUserData( - cvode_mem: *mut ::std::os::raw::c_void, - user_data: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMonitorFn( - cvode_mem: *mut ::std::os::raw::c_void, - fn_: CVMonitorFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMonitorFrequency( - cvode_mem: *mut ::std::os::raw::c_void, - nst: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxOrd( - cvode_mem: *mut ::std::os::raw::c_void, - maxord: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxNumSteps( - cvode_mem: *mut ::std::os::raw::c_void, - mxsteps: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxHnilWarns( - cvode_mem: *mut ::std::os::raw::c_void, - mxhnil: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetStabLimDet( - cvode_mem: *mut ::std::os::raw::c_void, - stldet: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetInitStep( - cvode_mem: *mut ::std::os::raw::c_void, - hin: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMinStep( - cvode_mem: *mut ::std::os::raw::c_void, - hmin: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxStep( - cvode_mem: *mut ::std::os::raw::c_void, - hmax: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetStopTime( - cvode_mem: *mut ::std::os::raw::c_void, - tstop: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxErrTestFails( - cvode_mem: *mut ::std::os::raw::c_void, - maxnef: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxNonlinIters( - cvode_mem: *mut ::std::os::raw::c_void, - maxcor: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetMaxConvFails( - cvode_mem: *mut ::std::os::raw::c_void, - maxncf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetNonlinConvCoef( - cvode_mem: *mut ::std::os::raw::c_void, - nlscoef: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetLSetupFrequency( - cvode_mem: *mut ::std::os::raw::c_void, - msbp: ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetConstraints( - cvode_mem: *mut ::std::os::raw::c_void, - constraints: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetNonlinearSolver( - cvode_mem: *mut ::std::os::raw::c_void, - NLS: SUNNonlinearSolver, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetUseIntegratorFusedKernels( - cvode_mem: *mut ::std::os::raw::c_void, - onoff: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeRootInit( - cvode_mem: *mut ::std::os::raw::c_void, - nrtfn: ::std::os::raw::c_int, - g: CVRootFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetRootDirection( - cvode_mem: *mut ::std::os::raw::c_void, - rootdir: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeSetNoInactiveRootWarn( - cvode_mem: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVode( - cvode_mem: *mut ::std::os::raw::c_void, - tout: realtype, - yout: N_Vector, - tret: *mut realtype, - itask: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeComputeState( - cvode_mem: *mut ::std::os::raw::c_void, - ycor: N_Vector, - y: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetDky( - cvode_mem: *mut ::std::os::raw::c_void, - t: realtype, - k: ::std::os::raw::c_int, - dky: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetWorkSpace( - cvode_mem: *mut ::std::os::raw::c_void, - lenrw: *mut ::std::os::raw::c_long, - leniw: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumSteps( - cvode_mem: *mut ::std::os::raw::c_void, - nsteps: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumRhsEvals( - cvode_mem: *mut ::std::os::raw::c_void, - nfevals: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumLinSolvSetups( - cvode_mem: *mut ::std::os::raw::c_void, - nlinsetups: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumErrTestFails( - cvode_mem: *mut ::std::os::raw::c_void, - netfails: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetLastOrder( - cvode_mem: *mut ::std::os::raw::c_void, - qlast: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetCurrentOrder( - cvode_mem: *mut ::std::os::raw::c_void, - qcur: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetCurrentGamma( - cvode_mem: *mut ::std::os::raw::c_void, - gamma: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumStabLimOrderReds( - cvode_mem: *mut ::std::os::raw::c_void, - nslred: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetActualInitStep( - cvode_mem: *mut ::std::os::raw::c_void, - hinused: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetLastStep( - cvode_mem: *mut ::std::os::raw::c_void, - hlast: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetCurrentStep( - cvode_mem: *mut ::std::os::raw::c_void, - hcur: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetCurrentState( - cvode_mem: *mut ::std::os::raw::c_void, - y: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetCurrentTime( - cvode_mem: *mut ::std::os::raw::c_void, - tcur: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetTolScaleFactor( - cvode_mem: *mut ::std::os::raw::c_void, - tolsfac: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetErrWeights( - cvode_mem: *mut ::std::os::raw::c_void, - eweight: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetEstLocalErrors( - cvode_mem: *mut ::std::os::raw::c_void, - ele: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumGEvals( - cvode_mem: *mut ::std::os::raw::c_void, - ngevals: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetRootInfo( - cvode_mem: *mut ::std::os::raw::c_void, - rootsfound: *mut ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetIntegratorStats( - cvode_mem: *mut ::std::os::raw::c_void, - nsteps: *mut ::std::os::raw::c_long, - nfevals: *mut ::std::os::raw::c_long, - nlinsetups: *mut ::std::os::raw::c_long, - netfails: *mut ::std::os::raw::c_long, - qlast: *mut ::std::os::raw::c_int, - qcur: *mut ::std::os::raw::c_int, - hinused: *mut realtype, - hlast: *mut realtype, - hcur: *mut realtype, - tcur: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNonlinearSystemData( - cvode_mem: *mut ::std::os::raw::c_void, - tcur: *mut realtype, - ypred: *mut N_Vector, - yn: *mut N_Vector, - fn_: *mut N_Vector, - gamma: *mut realtype, - rl1: *mut realtype, - zn1: *mut N_Vector, - user_data: *mut *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumNonlinSolvIters( - cvode_mem: *mut ::std::os::raw::c_void, - nniters: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNumNonlinSolvConvFails( - cvode_mem: *mut ::std::os::raw::c_void, - nncfails: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetNonlinSolvStats( - cvode_mem: *mut ::std::os::raw::c_void, - nniters: *mut ::std::os::raw::c_long, - nncfails: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn CVodeGetReturnFlagName(flag: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn CVodeFree(cvode_mem: *mut *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn CVodeSetJacTimesRhsFn( - cvode_mem: *mut ::std::os::raw::c_void, - jtimesRhsFn: CVRhsFn, - ) -> ::std::os::raw::c_int; -} -pub type __builtin_va_list = [__va_list_tag; 1usize]; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __va_list_tag { - pub gp_offset: ::std::os::raw::c_uint, - pub fp_offset: ::std::os::raw::c_uint, - pub overflow_arg_area: *mut ::std::os::raw::c_void, - pub reg_save_area: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout___va_list_tag() { - assert_eq!( - ::std::mem::size_of::<__va_list_tag>(), - 24usize, - concat!("Size of: ", stringify!(__va_list_tag)) - ); - assert_eq!( - ::std::mem::align_of::<__va_list_tag>(), - 8usize, - concat!("Alignment of ", stringify!(__va_list_tag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/cvode-5-sys/src/include.h b/cvode-5-sys/src/include.h new file mode 100644 index 0000000..f0462b8 --- /dev/null +++ b/cvode-5-sys/src/include.h @@ -0,0 +1,4 @@ +#include +#include +#include +#include \ No newline at end of file diff --git a/cvode-5-sys/src/lib.rs b/cvode-5-sys/src/lib.rs index 80bea42..666eb76 100644 --- a/cvode-5-sys/src/lib.rs +++ b/cvode-5-sys/src/lib.rs @@ -5,7 +5,4 @@ improper_ctypes )] -pub mod cvode; -pub mod nvector_serial; -pub mod sunlinsol_dense; -pub mod sunmatrix_dense; +include!(concat!(env!("OUT_DIR"), "/generated.rs")); diff --git a/cvode-5-sys/src/nvector_serial.rs b/cvode-5-sys/src/nvector_serial.rs deleted file mode 100644 index 7bbc875..0000000 --- a/cvode-5-sys/src/nvector_serial.rs +++ /dev/null @@ -1,4869 +0,0 @@ -/* automatically generated by rust-bindgen 0.55.1 */ - -pub const _STDIO_H: u32 = 1; -pub const _FEATURES_H: u32 = 1; -pub const _DEFAULT_SOURCE: u32 = 1; -pub const __GLIBC_USE_ISOC2X: u32 = 0; -pub const __USE_ISOC11: u32 = 1; -pub const __USE_ISOC99: u32 = 1; -pub const __USE_ISOC95: u32 = 1; -pub const __USE_POSIX_IMPLICITLY: u32 = 1; -pub const _POSIX_SOURCE: u32 = 1; -pub const _POSIX_C_SOURCE: u32 = 200809; -pub const __USE_POSIX: u32 = 1; -pub const __USE_POSIX2: u32 = 1; -pub const __USE_POSIX199309: u32 = 1; -pub const __USE_POSIX199506: u32 = 1; -pub const __USE_XOPEN2K: u32 = 1; -pub const __USE_XOPEN2K8: u32 = 1; -pub const _ATFILE_SOURCE: u32 = 1; -pub const __USE_MISC: u32 = 1; -pub const __USE_ATFILE: u32 = 1; -pub const __USE_FORTIFY_LEVEL: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; -pub const _STDC_PREDEF_H: u32 = 1; -pub const __STDC_IEC_559__: u32 = 1; -pub const __STDC_IEC_559_COMPLEX__: u32 = 1; -pub const __STDC_ISO_10646__: u32 = 201706; -pub const __GNU_LIBRARY__: u32 = 6; -pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 33; -pub const _SYS_CDEFS_H: u32 = 1; -pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; -pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; -pub const __HAVE_GENERIC_SELECTION: u32 = 1; -pub const __GLIBC_USE_LIB_EXT2: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; -pub const _BITS_TYPES_H: u32 = 1; -pub const __TIMESIZE: u32 = 64; -pub const _BITS_TYPESIZES_H: u32 = 1; -pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; -pub const __INO_T_MATCHES_INO64_T: u32 = 1; -pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; -pub const __STATFS_MATCHES_STATFS64: u32 = 1; -pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; -pub const __FD_SETSIZE: u32 = 1024; -pub const _BITS_TIME64_H: u32 = 1; -pub const _____fpos_t_defined: u32 = 1; -pub const ____mbstate_t_defined: u32 = 1; -pub const _____fpos64_t_defined: u32 = 1; -pub const ____FILE_defined: u32 = 1; -pub const __FILE_defined: u32 = 1; -pub const __struct_FILE_defined: u32 = 1; -pub const _IO_EOF_SEEN: u32 = 16; -pub const _IO_ERR_SEEN: u32 = 32; -pub const _IO_USER_LOCK: u32 = 32768; -pub const _IOFBF: u32 = 0; -pub const _IOLBF: u32 = 1; -pub const _IONBF: u32 = 2; -pub const BUFSIZ: u32 = 8192; -pub const EOF: i32 = -1; -pub const SEEK_SET: u32 = 0; -pub const SEEK_CUR: u32 = 1; -pub const SEEK_END: u32 = 2; -pub const P_tmpdir: &'static [u8; 5usize] = b"/tmp\0"; -pub const _BITS_STDIO_LIM_H: u32 = 1; -pub const L_tmpnam: u32 = 20; -pub const TMP_MAX: u32 = 238328; -pub const FILENAME_MAX: u32 = 4096; -pub const L_ctermid: u32 = 9; -pub const FOPEN_MAX: u32 = 16; -pub const __HAVE_FLOAT128: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128: u32 = 0; -pub const __HAVE_FLOAT64X: u32 = 1; -pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1; -pub const __HAVE_FLOAT16: u32 = 0; -pub const __HAVE_FLOAT32: u32 = 1; -pub const __HAVE_FLOAT64: u32 = 1; -pub const __HAVE_FLOAT32X: u32 = 1; -pub const __HAVE_FLOAT128X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT16: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0; -pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0; -pub const _STDLIB_H: u32 = 1; -pub const WNOHANG: u32 = 1; -pub const WUNTRACED: u32 = 2; -pub const WSTOPPED: u32 = 2; -pub const WEXITED: u32 = 4; -pub const WCONTINUED: u32 = 8; -pub const WNOWAIT: u32 = 16777216; -pub const __WNOTHREAD: u32 = 536870912; -pub const __WALL: u32 = 1073741824; -pub const __WCLONE: u32 = 2147483648; -pub const __W_CONTINUED: u32 = 65535; -pub const __WCOREFLAG: u32 = 128; -pub const __ldiv_t_defined: u32 = 1; -pub const __lldiv_t_defined: u32 = 1; -pub const RAND_MAX: u32 = 2147483647; -pub const EXIT_FAILURE: u32 = 1; -pub const EXIT_SUCCESS: u32 = 0; -pub const _SYS_TYPES_H: u32 = 1; -pub const __clock_t_defined: u32 = 1; -pub const __clockid_t_defined: u32 = 1; -pub const __time_t_defined: u32 = 1; -pub const __timer_t_defined: u32 = 1; -pub const _BITS_STDINT_INTN_H: u32 = 1; -pub const __BIT_TYPES_DEFINED__: u32 = 1; -pub const _ENDIAN_H: u32 = 1; -pub const _BITS_ENDIAN_H: u32 = 1; -pub const __LITTLE_ENDIAN: u32 = 1234; -pub const __BIG_ENDIAN: u32 = 4321; -pub const __PDP_ENDIAN: u32 = 3412; -pub const _BITS_ENDIANNESS_H: u32 = 1; -pub const __BYTE_ORDER: u32 = 1234; -pub const __FLOAT_WORD_ORDER: u32 = 1234; -pub const LITTLE_ENDIAN: u32 = 1234; -pub const BIG_ENDIAN: u32 = 4321; -pub const PDP_ENDIAN: u32 = 3412; -pub const BYTE_ORDER: u32 = 1234; -pub const _BITS_BYTESWAP_H: u32 = 1; -pub const _BITS_UINTN_IDENTITY_H: u32 = 1; -pub const _SYS_SELECT_H: u32 = 1; -pub const __sigset_t_defined: u32 = 1; -pub const __timeval_defined: u32 = 1; -pub const _STRUCT_TIMESPEC: u32 = 1; -pub const FD_SETSIZE: u32 = 1024; -pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1; -pub const _THREAD_SHARED_TYPES_H: u32 = 1; -pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1; -pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40; -pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56; -pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; -pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; -pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; -pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1; -pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; -pub const __have_pthread_attr_t: u32 = 1; -pub const _ALLOCA_H: u32 = 1; -pub const SUNDIALS_VERSION: &'static [u8; 6usize] = b"5.7.0\0"; -pub const SUNDIALS_VERSION_MAJOR: u32 = 5; -pub const SUNDIALS_VERSION_MINOR: u32 = 7; -pub const SUNDIALS_VERSION_PATCH: u32 = 0; -pub const SUNDIALS_VERSION_LABEL: &'static [u8; 1usize] = b"\0"; -pub const SUNDIALS_DOUBLE_PRECISION: u32 = 1; -pub const SUNDIALS_INT64_T: u32 = 1; -pub const SUNDIALS_MPI_ENABLED: u32 = 1; -pub const SUNDIALS_ARKODE: u32 = 1; -pub const SUNDIALS_CVODE: u32 = 1; -pub const SUNDIALS_CVODES: u32 = 1; -pub const SUNDIALS_IDA: u32 = 1; -pub const SUNDIALS_IDAS: u32 = 1; -pub const SUNDIALS_KINSOL: u32 = 1; -pub const SUNDIALS_NVECTOR_SERIAL: u32 = 1; -pub const SUNDIALS_NVECTOR_MANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIMANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIPLUSX: u32 = 1; -pub const SUNDIALS_NVECTOR_PARALLEL: u32 = 1; -pub const SUNDIALS_NVECTOR_OPENMP: u32 = 1; -pub const SUNDIALS_NVECTOR_PTHREADS: u32 = 1; -pub const SUNDIALS_SUNMATRIX_BAND: u32 = 1; -pub const SUNDIALS_SUNMATRIX_DENSE: u32 = 1; -pub const SUNDIALS_SUNMATRIX_SPARSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_BAND: u32 = 1; -pub const SUNDIALS_SUNLINSOL_DENSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_PCG: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPBCGS: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPFGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPTFQMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_KLU: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_NEWTON: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_FIXEDPOINT: u32 = 1; -pub const SUNDIALS_MPI_COMM_F2C: u32 = 1; -pub const _STDINT_H: u32 = 1; -pub const _BITS_WCHAR_H: u32 = 1; -pub const _BITS_STDINT_UINTN_H: u32 = 1; -pub const INT8_MIN: i32 = -128; -pub const INT16_MIN: i32 = -32768; -pub const INT32_MIN: i32 = -2147483648; -pub const INT8_MAX: u32 = 127; -pub const INT16_MAX: u32 = 32767; -pub const INT32_MAX: u32 = 2147483647; -pub const UINT8_MAX: u32 = 255; -pub const UINT16_MAX: u32 = 65535; -pub const UINT32_MAX: u32 = 4294967295; -pub const INT_LEAST8_MIN: i32 = -128; -pub const INT_LEAST16_MIN: i32 = -32768; -pub const INT_LEAST32_MIN: i32 = -2147483648; -pub const INT_LEAST8_MAX: u32 = 127; -pub const INT_LEAST16_MAX: u32 = 32767; -pub const INT_LEAST32_MAX: u32 = 2147483647; -pub const UINT_LEAST8_MAX: u32 = 255; -pub const UINT_LEAST16_MAX: u32 = 65535; -pub const UINT_LEAST32_MAX: u32 = 4294967295; -pub const INT_FAST8_MIN: i32 = -128; -pub const INT_FAST16_MIN: i64 = -9223372036854775808; -pub const INT_FAST32_MIN: i64 = -9223372036854775808; -pub const INT_FAST8_MAX: u32 = 127; -pub const INT_FAST16_MAX: u64 = 9223372036854775807; -pub const INT_FAST32_MAX: u64 = 9223372036854775807; -pub const UINT_FAST8_MAX: u32 = 255; -pub const UINT_FAST16_MAX: i32 = -1; -pub const UINT_FAST32_MAX: i32 = -1; -pub const INTPTR_MIN: i64 = -9223372036854775808; -pub const INTPTR_MAX: u64 = 9223372036854775807; -pub const UINTPTR_MAX: i32 = -1; -pub const PTRDIFF_MIN: i64 = -9223372036854775808; -pub const PTRDIFF_MAX: u64 = 9223372036854775807; -pub const SIG_ATOMIC_MIN: i32 = -2147483648; -pub const SIG_ATOMIC_MAX: u32 = 2147483647; -pub const SIZE_MAX: i32 = -1; -pub const WINT_MIN: u32 = 0; -pub const WINT_MAX: u32 = 4294967295; -pub const SUNFALSE: u32 = 0; -pub const SUNTRUE: u32 = 1; -pub type size_t = ::std::os::raw::c_ulong; -pub type va_list = __builtin_va_list; -pub type __gnuc_va_list = __builtin_va_list; -pub type __u_char = ::std::os::raw::c_uchar; -pub type __u_short = ::std::os::raw::c_ushort; -pub type __u_int = ::std::os::raw::c_uint; -pub type __u_long = ::std::os::raw::c_ulong; -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_long; -pub type __uint64_t = ::std::os::raw::c_ulong; -pub type __int_least8_t = __int8_t; -pub type __uint_least8_t = __uint8_t; -pub type __int_least16_t = __int16_t; -pub type __uint_least16_t = __uint16_t; -pub type __int_least32_t = __int32_t; -pub type __uint_least32_t = __uint32_t; -pub type __int_least64_t = __int64_t; -pub type __uint_least64_t = __uint64_t; -pub type __quad_t = ::std::os::raw::c_long; -pub type __u_quad_t = ::std::os::raw::c_ulong; -pub type __intmax_t = ::std::os::raw::c_long; -pub type __uintmax_t = ::std::os::raw::c_ulong; -pub type __dev_t = ::std::os::raw::c_ulong; -pub type __uid_t = ::std::os::raw::c_uint; -pub type __gid_t = ::std::os::raw::c_uint; -pub type __ino_t = ::std::os::raw::c_ulong; -pub type __ino64_t = ::std::os::raw::c_ulong; -pub type __mode_t = ::std::os::raw::c_uint; -pub type __nlink_t = ::std::os::raw::c_ulong; -pub type __off_t = ::std::os::raw::c_long; -pub type __off64_t = ::std::os::raw::c_long; -pub type __pid_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __fsid_t { - pub __val: [::std::os::raw::c_int; 2usize], -} -#[test] -fn bindgen_test_layout___fsid_t() { - assert_eq!( - ::std::mem::size_of::<__fsid_t>(), - 8usize, - concat!("Size of: ", stringify!(__fsid_t)) - ); - assert_eq!( - ::std::mem::align_of::<__fsid_t>(), - 4usize, - concat!("Alignment of ", stringify!(__fsid_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__fsid_t), - "::", - stringify!(__val) - ) - ); -} -pub type __clock_t = ::std::os::raw::c_long; -pub type __rlim_t = ::std::os::raw::c_ulong; -pub type __rlim64_t = ::std::os::raw::c_ulong; -pub type __id_t = ::std::os::raw::c_uint; -pub type __time_t = ::std::os::raw::c_long; -pub type __useconds_t = ::std::os::raw::c_uint; -pub type __suseconds_t = ::std::os::raw::c_long; -pub type __suseconds64_t = ::std::os::raw::c_long; -pub type __daddr_t = ::std::os::raw::c_int; -pub type __key_t = ::std::os::raw::c_int; -pub type __clockid_t = ::std::os::raw::c_int; -pub type __timer_t = *mut ::std::os::raw::c_void; -pub type __blksize_t = ::std::os::raw::c_long; -pub type __blkcnt_t = ::std::os::raw::c_long; -pub type __blkcnt64_t = ::std::os::raw::c_long; -pub type __fsblkcnt_t = ::std::os::raw::c_ulong; -pub type __fsblkcnt64_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt64_t = ::std::os::raw::c_ulong; -pub type __fsword_t = ::std::os::raw::c_long; -pub type __ssize_t = ::std::os::raw::c_long; -pub type __syscall_slong_t = ::std::os::raw::c_long; -pub type __syscall_ulong_t = ::std::os::raw::c_ulong; -pub type __loff_t = __off64_t; -pub type __caddr_t = *mut ::std::os::raw::c_char; -pub type __intptr_t = ::std::os::raw::c_long; -pub type __socklen_t = ::std::os::raw::c_uint; -pub type __sig_atomic_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __mbstate_t { - pub __count: ::std::os::raw::c_int, - pub __value: __mbstate_t__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __mbstate_t__bindgen_ty_1 { - pub __wch: ::std::os::raw::c_uint, - pub __wchb: [::std::os::raw::c_char; 4usize], - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout___mbstate_t__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wch) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wchb) - ) - ); -} -#[test] -fn bindgen_test_layout___mbstate_t() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t>(), - 8usize, - concat!("Size of: ", stringify!(__mbstate_t)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__count as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__value as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__value) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos_t { - pub __pos: __off_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos_t = _G_fpos_t; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos64_t { - pub __pos: __off64_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos64_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos64_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos64_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos64_t = _G_fpos64_t; -pub type __FILE = _IO_FILE; -pub type FILE = _IO_FILE; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_marker { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_codecvt { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_wide_data { - _unused: [u8; 0], -} -pub type _IO_lock_t = ::std::os::raw::c_void; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_FILE { - pub _flags: ::std::os::raw::c_int, - pub _IO_read_ptr: *mut ::std::os::raw::c_char, - pub _IO_read_end: *mut ::std::os::raw::c_char, - pub _IO_read_base: *mut ::std::os::raw::c_char, - pub _IO_write_base: *mut ::std::os::raw::c_char, - pub _IO_write_ptr: *mut ::std::os::raw::c_char, - pub _IO_write_end: *mut ::std::os::raw::c_char, - pub _IO_buf_base: *mut ::std::os::raw::c_char, - pub _IO_buf_end: *mut ::std::os::raw::c_char, - pub _IO_save_base: *mut ::std::os::raw::c_char, - pub _IO_backup_base: *mut ::std::os::raw::c_char, - pub _IO_save_end: *mut ::std::os::raw::c_char, - pub _markers: *mut _IO_marker, - pub _chain: *mut _IO_FILE, - pub _fileno: ::std::os::raw::c_int, - pub _flags2: ::std::os::raw::c_int, - pub _old_offset: __off_t, - pub _cur_column: ::std::os::raw::c_ushort, - pub _vtable_offset: ::std::os::raw::c_schar, - pub _shortbuf: [::std::os::raw::c_char; 1usize], - pub _lock: *mut _IO_lock_t, - pub _offset: __off64_t, - pub _codecvt: *mut _IO_codecvt, - pub _wide_data: *mut _IO_wide_data, - pub _freeres_list: *mut _IO_FILE, - pub _freeres_buf: *mut ::std::os::raw::c_void, - pub __pad5: size_t, - pub _mode: ::std::os::raw::c_int, - pub _unused2: [::std::os::raw::c_char; 20usize], -} -#[test] -fn bindgen_test_layout__IO_FILE() { - assert_eq!( - ::std::mem::size_of::<_IO_FILE>(), - 216usize, - concat!("Size of: ", stringify!(_IO_FILE)) - ); - assert_eq!( - ::std::mem::align_of::<_IO_FILE>(), - 8usize, - concat!("Alignment of ", stringify!(_IO_FILE)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_backup_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_markers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_chain) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_fileno) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize }, - 116usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_old_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_cur_column) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize }, - 130usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_vtable_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize }, - 131usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_shortbuf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_codecvt) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_wide_data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_list) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_buf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(__pad5) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_mode) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize }, - 196usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_unused2) - ) - ); -} -pub type off_t = __off_t; -pub type ssize_t = __ssize_t; -pub type fpos_t = __fpos_t; -extern "C" { - pub static mut stdin: *mut FILE; -} -extern "C" { - pub static mut stdout: *mut FILE; -} -extern "C" { - pub static mut stderr: *mut FILE; -} -extern "C" { - pub fn remove(__filename: *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 renameat( - __oldfd: ::std::os::raw::c_int, - __old: *const ::std::os::raw::c_char, - __newfd: ::std::os::raw::c_int, - __new: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn tmpfile() -> *mut FILE; -} -extern "C" { - pub fn tmpnam(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tempnam( - __dir: *const ::std::os::raw::c_char, - __pfx: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fclose(__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 fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn freopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - __stream: *mut FILE, - ) -> *mut FILE; -} -extern "C" { - pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char) - -> *mut FILE; -} -extern "C" { - pub fn fmemopen( - __s: *mut ::std::os::raw::c_void, - __len: size_t, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn open_memstream( - __bufloc: *mut *mut ::std::os::raw::c_char, - __sizeloc: *mut size_t, - ) -> *mut FILE; -} -extern "C" { - pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn setvbuf( - __stream: *mut FILE, - __buf: *mut ::std::os::raw::c_char, - __modes: ::std::os::raw::c_int, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: size_t); -} -extern "C" { - pub fn setlinebuf(__stream: *mut FILE); -} -extern "C" { - pub fn fprintf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfprintf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vprintf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn snprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsnprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vdprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn dprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fscanf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -pub type _Float32 = f32; -pub type _Float64 = f64; -pub type _Float32x = f64; -pub type _Float64x = u128; -extern "C" { - #[link_name = "\u{1}__isoc99_fscanf"] - pub fn fscanf1( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_scanf"] - pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_sscanf"] - pub fn sscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfscanf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vscanf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vfscanf"] - pub fn vfscanf1( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vscanf"] - pub fn vscanf1( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vsscanf"] - pub fn vsscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -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 getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getchar_unlocked() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) - -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar_unlocked(__c: ::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(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgets( - __s: *mut ::std::os::raw::c_char, - __n: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn __getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getline( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *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, - __n: ::std::os::raw::c_ulong, - __stream: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fwrite( - __ptr: *const ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - __n: ::std::os::raw::c_ulong, - __s: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fread_unlocked( - __ptr: *mut ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fwrite_unlocked( - __ptr: *const ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fseek( - __stream: *mut FILE, - __off: ::std::os::raw::c_long, - __whence: ::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 rewind(__stream: *mut FILE); -} -extern "C" { - pub fn fseeko( - __stream: *mut FILE, - __off: __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 fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearerr(__stream: *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 clearerr_unlocked(__stream: *mut FILE); -} -extern "C" { - pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn perror(__s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn popen( - __command: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn flockfile(__stream: *mut FILE); -} -extern "C" { - pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn funlockfile(__stream: *mut FILE); -} -extern "C" { - pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -pub type wchar_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct div_t { - pub quot: ::std::os::raw::c_int, - pub rem: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_div_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(div_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(div_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ldiv_t { - pub quot: ::std::os::raw::c_long, - pub rem: ::std::os::raw::c_long, -} -#[test] -fn bindgen_test_layout_ldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(ldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(ldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct lldiv_t { - pub quot: ::std::os::raw::c_longlong, - pub rem: ::std::os::raw::c_longlong, -} -#[test] -fn bindgen_test_layout_lldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(lldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(lldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(rem) - ) - ); -} -extern "C" { - pub fn __ctype_get_mb_cur_max() -> size_t; -} -extern "C" { - pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtod( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f64; -} -extern "C" { - pub fn strtof( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f32; -} -extern "C" { - pub fn strtold( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> u128; -} -extern "C" { - pub fn strtol( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn strtoul( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strtoq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtouq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn strtoll( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtoull( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -pub type u_char = __u_char; -pub type u_short = __u_short; -pub type u_int = __u_int; -pub type u_long = __u_long; -pub type quad_t = __quad_t; -pub type u_quad_t = __u_quad_t; -pub type fsid_t = __fsid_t; -pub type loff_t = __loff_t; -pub type ino_t = __ino_t; -pub type dev_t = __dev_t; -pub type gid_t = __gid_t; -pub type mode_t = __mode_t; -pub type nlink_t = __nlink_t; -pub type uid_t = __uid_t; -pub type pid_t = __pid_t; -pub type id_t = __id_t; -pub type daddr_t = __daddr_t; -pub type caddr_t = __caddr_t; -pub type key_t = __key_t; -pub type clock_t = __clock_t; -pub type clockid_t = __clockid_t; -pub type time_t = __time_t; -pub type timer_t = __timer_t; -pub type ulong = ::std::os::raw::c_ulong; -pub type ushort = ::std::os::raw::c_ushort; -pub type uint = ::std::os::raw::c_uint; -pub type u_int8_t = __uint8_t; -pub type u_int16_t = __uint16_t; -pub type u_int32_t = __uint32_t; -pub type u_int64_t = __uint64_t; -pub type register_t = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sigset_t { - pub __val: [::std::os::raw::c_ulong; 16usize], -} -#[test] -fn bindgen_test_layout___sigset_t() { - assert_eq!( - ::std::mem::size_of::<__sigset_t>(), - 128usize, - concat!("Size of: ", stringify!(__sigset_t)) - ); - assert_eq!( - ::std::mem::align_of::<__sigset_t>(), - 8usize, - concat!("Alignment of ", stringify!(__sigset_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__sigset_t), - "::", - stringify!(__val) - ) - ); -} -pub type sigset_t = __sigset_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timeval { - pub tv_sec: __time_t, - pub tv_usec: __suseconds_t, -} -#[test] -fn bindgen_test_layout_timeval() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timeval)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timeval)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_usec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_usec) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timespec { - pub tv_sec: __time_t, - pub tv_nsec: __syscall_slong_t, -} -#[test] -fn bindgen_test_layout_timespec() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timespec)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timespec)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_nsec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_nsec) - ) - ); -} -pub type suseconds_t = __suseconds_t; -pub type __fd_mask = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct fd_set { - pub __fds_bits: [__fd_mask; 16usize], -} -#[test] -fn bindgen_test_layout_fd_set() { - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(fd_set)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(fd_set)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__fds_bits as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(fd_set), - "::", - stringify!(__fds_bits) - ) - ); -} -pub type fd_mask = __fd_mask; -extern "C" { - pub fn select( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *mut timeval, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn pselect( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *const timespec, - __sigmask: *const __sigset_t, - ) -> ::std::os::raw::c_int; -} -pub type blksize_t = __blksize_t; -pub type blkcnt_t = __blkcnt_t; -pub type fsblkcnt_t = __fsblkcnt_t; -pub type fsfilcnt_t = __fsfilcnt_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_list { - pub __prev: *mut __pthread_internal_list, - pub __next: *mut __pthread_internal_list, -} -#[test] -fn bindgen_test_layout___pthread_internal_list() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_list>(), - 16usize, - concat!("Size of: ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_list>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__prev) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_list_t = __pthread_internal_list; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_slist { - pub __next: *mut __pthread_internal_slist, -} -#[test] -fn bindgen_test_layout___pthread_internal_slist() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_slist>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_slist>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_slist>())).__next as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_slist), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_slist_t = __pthread_internal_slist; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_mutex_s { - pub __lock: ::std::os::raw::c_int, - pub __count: ::std::os::raw::c_uint, - pub __owner: ::std::os::raw::c_int, - pub __nusers: ::std::os::raw::c_uint, - pub __kind: ::std::os::raw::c_int, - pub __spins: ::std::os::raw::c_short, - pub __elision: ::std::os::raw::c_short, - pub __list: __pthread_list_t, -} -#[test] -fn bindgen_test_layout___pthread_mutex_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_mutex_s>(), - 40usize, - concat!("Size of: ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_mutex_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__owner) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__nusers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__kind) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__spins) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize }, - 22usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__elision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__list) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::std::os::raw::c_uint, - pub __writers: ::std::os::raw::c_uint, - pub __wrphase_futex: ::std::os::raw::c_uint, - pub __writers_futex: ::std::os::raw::c_uint, - pub __pad3: ::std::os::raw::c_uint, - pub __pad4: ::std::os::raw::c_uint, - pub __cur_writer: ::std::os::raw::c_int, - pub __shared: ::std::os::raw::c_int, - pub __rwelision: ::std::os::raw::c_schar, - pub __pad1: [::std::os::raw::c_uchar; 7usize], - pub __pad2: ::std::os::raw::c_ulong, - pub __flags: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_rwlock_arch_t() { - assert_eq!( - ::std::mem::size_of::<__pthread_rwlock_arch_t>(), - 56usize, - concat!("Size of: ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_rwlock_arch_t>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__readers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__wrphase_futex) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _ as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers_futex) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad3) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad4) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__cur_writer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__shared) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__rwelision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize }, - 33usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad1) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__flags) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, - pub __g_refs: [::std::os::raw::c_uint; 2usize], - pub __g_size: [::std::os::raw::c_uint; 2usize], - pub __g1_orig_size: ::std::os::raw::c_uint, - pub __wrefs: ::std::os::raw::c_uint, - pub __g_signals: [::std::os::raw::c_uint; 2usize], -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::std::os::raw::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq32) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::std::os::raw::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start32) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s>(), - 48usize, - concat!("Size of: ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_refs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g1_orig_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize }, - 36usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__wrefs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_signals) - ) - ); -} -pub type __tss_t = ::std::os::raw::c_uint; -pub type __thrd_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __once_flag { - pub __data: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout___once_flag() { - assert_eq!( - ::std::mem::size_of::<__once_flag>(), - 4usize, - concat!("Size of: ", stringify!(__once_flag)) - ); - assert_eq!( - ::std::mem::align_of::<__once_flag>(), - 4usize, - concat!("Alignment of ", stringify!(__once_flag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__once_flag>())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__once_flag), - "::", - stringify!(__data) - ) - ); -} -pub type pthread_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutexattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_mutexattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_condattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_condattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_key_t = ::std::os::raw::c_uint; -pub type pthread_once_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_attr_t { - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_attr_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_attr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_attr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutex_t { - pub __data: __pthread_mutex_s, - pub __size: [::std::os::raw::c_char; 40usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 5usize], -} -#[test] -fn bindgen_test_layout_pthread_mutex_t() { - assert_eq!( - ::std::mem::size_of::(), - 40usize, - concat!("Size of: ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_cond_t { - pub __data: __pthread_cond_s, - pub __size: [::std::os::raw::c_char; 48usize], - pub __align: ::std::os::raw::c_longlong, - _bindgen_union_align: [u64; 6usize], -} -#[test] -fn bindgen_test_layout_pthread_cond_t() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(pthread_cond_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_cond_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlock_t { - pub __data: __pthread_rwlock_arch_t, - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_rwlock_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlockattr_t { - pub __size: [::std::os::raw::c_char; 8usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: u64, -} -#[test] -fn bindgen_test_layout_pthread_rwlockattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_spinlock_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrier_t { - pub __size: [::std::os::raw::c_char; 32usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 4usize], -} -#[test] -fn bindgen_test_layout_pthread_barrier_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrierattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_barrierattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__align) - ) - ); -} -extern "C" { - pub fn random() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srandom(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn initstate( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct random_data { - pub fptr: *mut i32, - pub rptr: *mut i32, - pub state: *mut i32, - pub rand_type: ::std::os::raw::c_int, - pub rand_deg: ::std::os::raw::c_int, - pub rand_sep: ::std::os::raw::c_int, - pub end_ptr: *mut i32, -} -#[test] -fn bindgen_test_layout_random_data() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(random_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(random_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).fptr as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(fptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).state as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(state) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_type as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_type) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_deg as *const _ as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_deg) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_sep as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_sep) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).end_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(end_ptr) - ) - ); -} -extern "C" { - pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srandom_r( - __seed: ::std::os::raw::c_uint, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn initstate_r( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setstate_r( - __statebuf: *mut ::std::os::raw::c_char, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn rand() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn drand48() -> f64; -} -extern "C" { - pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64; -} -extern "C" { - pub fn lrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn mrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srand48(__seedval: ::std::os::raw::c_long); -} -extern "C" { - pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort; -} -extern "C" { - pub fn lcong48(__param: *mut ::std::os::raw::c_ushort); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct drand48_data { - pub __x: [::std::os::raw::c_ushort; 3usize], - pub __old_x: [::std::os::raw::c_ushort; 3usize], - pub __c: ::std::os::raw::c_ushort, - pub __init: ::std::os::raw::c_ushort, - pub __a: ::std::os::raw::c_ulonglong, -} -#[test] -fn bindgen_test_layout_drand48_data() { - assert_eq!( - ::std::mem::size_of::(), - 24usize, - concat!("Size of: ", stringify!(drand48_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(drand48_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__x as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__old_x as *const _ as usize }, - 6usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__old_x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__c as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__c) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__init as *const _ as usize }, - 14usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__init) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__a as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__a) - ) - ); -} -extern "C" { - pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn erand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut f64, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn nrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn jrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand48_r( - __seedval: ::std::os::raw::c_long, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn seed48_r( - __seed16v: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lcong48_r( - __param: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn calloc( - __nmemb: ::std::os::raw::c_ulong, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn realloc( - __ptr: *mut ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn reallocarray( - __ptr: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn free(__ptr: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn valloc(__size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn posix_memalign( - __memptr: *mut *mut ::std::os::raw::c_void, - __alignment: size_t, - __size: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn aligned_alloc(__alignment: size_t, __size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn abort(); -} -extern "C" { - pub fn atexit(__func: ::std::option::Option) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn at_quick_exit( - __func: ::std::option::Option, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn on_exit( - __func: ::std::option::Option< - unsafe extern "C" fn( - __status: ::std::os::raw::c_int, - __arg: *mut ::std::os::raw::c_void, - ), - >, - __arg: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn quick_exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn _Exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setenv( - __name: *const ::std::os::raw::c_char, - __value: *const ::std::os::raw::c_char, - __replace: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearenv() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkstemps( - __template: *mut ::std::os::raw::c_char, - __suffixlen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn realpath( - __name: *const ::std::os::raw::c_char, - __resolved: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -pub type __compar_fn_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: *const ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn bsearch( - __key: *const ::std::os::raw::c_void, - __base: *const ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn qsort( - __base: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ); -} -extern "C" { - pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t; -} -extern "C" { - pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t; -} -extern "C" { - pub fn lldiv( - __numer: ::std::os::raw::c_longlong, - __denom: ::std::os::raw::c_longlong, - ) -> lldiv_t; -} -extern "C" { - pub fn ecvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn gcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qecvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qfcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qgcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn ecvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fcvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qecvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qfcvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mblen(__s: *const ::std::os::raw::c_char, __n: size_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbtowc( - __pwc: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbstowcs( - __pwcs: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn wcstombs( - __s: *mut ::std::os::raw::c_char, - __pwcs: *const wchar_t, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getsubopt( - __optionp: *mut *mut ::std::os::raw::c_char, - __tokens: *const *mut ::std::os::raw::c_char, - __valuep: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int) - -> ::std::os::raw::c_int; -} -#[repr(C)] -#[repr(align(16))] -#[derive(Debug, Copy, Clone)] -pub struct max_align_t { - pub __clang_max_align_nonce1: ::std::os::raw::c_longlong, - pub __bindgen_padding_0: u64, - pub __clang_max_align_nonce2: u128, -} -#[test] -fn bindgen_test_layout_max_align_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(max_align_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 16usize, - concat!("Alignment of ", stringify!(max_align_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce1 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce2 as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce2) - ) - ); -} -pub type int_least8_t = __int_least8_t; -pub type int_least16_t = __int_least16_t; -pub type int_least32_t = __int_least32_t; -pub type int_least64_t = __int_least64_t; -pub type uint_least8_t = __uint_least8_t; -pub type uint_least16_t = __uint_least16_t; -pub type uint_least32_t = __uint_least32_t; -pub type uint_least64_t = __uint_least64_t; -pub type int_fast8_t = ::std::os::raw::c_schar; -pub type int_fast16_t = ::std::os::raw::c_long; -pub type int_fast32_t = ::std::os::raw::c_long; -pub type int_fast64_t = ::std::os::raw::c_long; -pub type uint_fast8_t = ::std::os::raw::c_uchar; -pub type uint_fast16_t = ::std::os::raw::c_ulong; -pub type uint_fast32_t = ::std::os::raw::c_ulong; -pub type uint_fast64_t = ::std::os::raw::c_ulong; -pub type intmax_t = __intmax_t; -pub type uintmax_t = __uintmax_t; -pub type realtype = f64; -pub type sunindextype = i64; -pub const N_Vector_ID_SUNDIALS_NVEC_SERIAL: N_Vector_ID = 0; -pub const N_Vector_ID_SUNDIALS_NVEC_PARALLEL: N_Vector_ID = 1; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMP: N_Vector_ID = 2; -pub const N_Vector_ID_SUNDIALS_NVEC_PTHREADS: N_Vector_ID = 3; -pub const N_Vector_ID_SUNDIALS_NVEC_PARHYP: N_Vector_ID = 4; -pub const N_Vector_ID_SUNDIALS_NVEC_PETSC: N_Vector_ID = 5; -pub const N_Vector_ID_SUNDIALS_NVEC_CUDA: N_Vector_ID = 6; -pub const N_Vector_ID_SUNDIALS_NVEC_HIP: N_Vector_ID = 7; -pub const N_Vector_ID_SUNDIALS_NVEC_SYCL: N_Vector_ID = 8; -pub const N_Vector_ID_SUNDIALS_NVEC_RAJA: N_Vector_ID = 9; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMPDEV: N_Vector_ID = 10; -pub const N_Vector_ID_SUNDIALS_NVEC_TRILINOS: N_Vector_ID = 11; -pub const N_Vector_ID_SUNDIALS_NVEC_MANYVECTOR: N_Vector_ID = 12; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIMANYVECTOR: N_Vector_ID = 13; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIPLUSX: N_Vector_ID = 14; -pub const N_Vector_ID_SUNDIALS_NVEC_CUSTOM: N_Vector_ID = 15; -pub type N_Vector_ID = ::std::os::raw::c_uint; -pub type N_Vector_Ops = *mut _generic_N_Vector_Ops; -pub type N_Vector = *mut _generic_N_Vector; -pub type N_Vector_S = *mut N_Vector; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector_Ops { - pub nvgetvectorid: ::std::option::Option N_Vector_ID>, - pub nvclone: ::std::option::Option N_Vector>, - pub nvcloneempty: ::std::option::Option N_Vector>, - pub nvdestroy: ::std::option::Option, - pub nvspace: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype, arg3: *mut sunindextype), - >, - pub nvgetarraypointer: - ::std::option::Option *mut realtype>, - pub nvgetdevicearraypointer: - ::std::option::Option *mut realtype>, - pub nvsetarraypointer: - ::std::option::Option, - pub nvgetcommunicator: - ::std::option::Option *mut ::std::os::raw::c_void>, - pub nvgetlength: ::std::option::Option sunindextype>, - pub nvlinearsum: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: N_Vector, - arg3: realtype, - arg4: N_Vector, - arg5: N_Vector, - ), - >, - pub nvconst: ::std::option::Option, - pub nvprod: - ::std::option::Option, - pub nvdiv: - ::std::option::Option, - pub nvscale: - ::std::option::Option, - pub nvabs: ::std::option::Option, - pub nvinv: ::std::option::Option, - pub nvaddconst: - ::std::option::Option, - pub nvdotprod: - ::std::option::Option realtype>, - pub nvmaxnorm: ::std::option::Option realtype>, - pub nvwrmsnorm: - ::std::option::Option realtype>, - pub nvwrmsnormmask: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvmin: ::std::option::Option realtype>, - pub nvwl2norm: - ::std::option::Option realtype>, - pub nvl1norm: ::std::option::Option realtype>, - pub nvcompare: - ::std::option::Option, - pub nvinvtest: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmask: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotient: - ::std::option::Option realtype>, - pub nvlinearcombination: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: N_Vector, - arg4: *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearsumvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - arg4: realtype, - arg5: *mut N_Vector, - arg6: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscalevectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvconstvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormmaskvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: N_Vector, - arg5: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmultivectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut N_Vector, - arg5: *mut *mut N_Vector, - arg6: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearcombinationvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodlocal: - ::std::option::Option realtype>, - pub nvmaxnormlocal: ::std::option::Option realtype>, - pub nvminlocal: ::std::option::Option realtype>, - pub nvl1normlocal: ::std::option::Option realtype>, - pub nvinvtestlocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmasklocal: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotientlocal: - ::std::option::Option realtype>, - pub nvwsqrsumlocal: - ::std::option::Option realtype>, - pub nvwsqrsummasklocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvbufsize: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype) -> ::std::os::raw::c_int, - >, - pub nvbufpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvbufunpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvprint: ::std::option::Option, - pub nvprintfile: ::std::option::Option, -} -#[test] -fn bindgen_test_layout__generic_N_Vector_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector_Ops>(), - 424usize, - concat!("Size of: ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetvectorid as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetvectorid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvclone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvclone) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcloneempty as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcloneempty) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdestroy as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdestroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvspace as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvspace) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetarraypointer as *const _ as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetdevicearraypointer as *const _ - as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetdevicearraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvsetarraypointer as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvsetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetcommunicator as *const _ as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetcommunicator) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetlength as *const _ as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetlength) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsum as *const _ as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsum) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconst as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprod as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdiv as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdiv) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscale as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscale) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvabs as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvabs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinv as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinv) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvaddconst as *const _ as usize - }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvaddconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprod as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnorm as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnorm as *const _ as usize - }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmask as *const _ as usize - }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmask) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmin as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmin) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwl2norm as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwl2norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1norm as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcompare as *const _ as usize }, - 200usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcompare) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtest as *const _ as usize }, - 208usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtest) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmask as *const _ as usize - }, - 216usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmask) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotient as *const _ as usize - }, - 224usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotient) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombination as *const _ - as usize - }, - 232usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombination) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmulti as *const _ as usize - }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodmulti as *const _ as usize - }, - 248usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsumvectorarray as *const _ - as usize - }, - 256usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsumvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscalevectorarray as *const _ - as usize - }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscalevectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstvectorarray as *const _ - as usize - }, - 272usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormvectorarray as *const _ - as usize - }, - 280usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmaskvectorarray as *const _ - as usize - }, - 288usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmaskvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmultivectorarray as *const _ - as usize - }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmultivectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombinationvectorarray - as *const _ as usize - }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombinationvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodlocal as *const _ as usize - }, - 312usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnormlocal as *const _ as usize - }, - 320usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnormlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminlocal as *const _ as usize - }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1normlocal as *const _ as usize - }, - 336usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1normlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtestlocal as *const _ as usize - }, - 344usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtestlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmasklocal as *const _ as usize - }, - 352usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmasklocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotientlocal as *const _ - as usize - }, - 360usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotientlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsumlocal as *const _ as usize - }, - 368usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsumlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsummasklocal as *const _ - as usize - }, - 376usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsummasklocal) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufsize as *const _ as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufsize) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufpack as *const _ as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufpack) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufunpack as *const _ as usize - }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufunpack) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprint as *const _ as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprint) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprintfile as *const _ as usize - }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprintfile) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector { - pub content: *mut ::std::os::raw::c_void, - pub ops: N_Vector_Ops, -} -#[test] -fn bindgen_test_layout__generic_N_Vector() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector>(), - 16usize, - concat!("Size of: ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn N_VNewEmpty() -> N_Vector; -} -extern "C" { - pub fn N_VFreeEmpty(v: N_Vector); -} -extern "C" { - pub fn N_VCopyOps(w: N_Vector, v: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VGetVectorID(w: N_Vector) -> N_Vector_ID; -} -extern "C" { - pub fn N_VClone(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VCloneEmpty(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VDestroy(v: N_Vector); -} -extern "C" { - pub fn N_VSpace(v: N_Vector, lrw: *mut sunindextype, liw: *mut sunindextype); -} -extern "C" { - pub fn N_VGetArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VGetDeviceArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VSetArrayPointer(v_data: *mut realtype, v: N_Vector); -} -extern "C" { - pub fn N_VGetCommunicator(v: N_Vector) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn N_VGetLength(v: N_Vector) -> sunindextype; -} -extern "C" { - pub fn N_VLinearSum(a: realtype, x: N_Vector, b: realtype, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VConst(c: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VProd(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VDiv(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VScale(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAbs(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInv(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAddConst(x: N_Vector, b: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VDotProd(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNorm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNorm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNormMask(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMin(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWL2Norm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1Norm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VCompare(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInvTest(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMask(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotient(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VLinearCombination( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMulti( - nvec: ::std::os::raw::c_int, - a: *mut realtype, - x: N_Vector, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdMulti( - nvec: ::std::os::raw::c_int, - x: N_Vector, - Y: *mut N_Vector, - dotprods: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearSumVectorArray( - nvec: ::std::os::raw::c_int, - a: realtype, - X: *mut N_Vector, - b: realtype, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleVectorArray( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstVectorArray( - nvec: ::std::os::raw::c_int, - c: realtype, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormMaskVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - id: N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMultiVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - a: *mut realtype, - X: *mut N_Vector, - Y: *mut *mut N_Vector, - Z: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearCombinationVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdLocal(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMinLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1NormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumLocal(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumMaskLocal(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VInvTestLocal(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMaskLocal(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotientLocal(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VBufSize(x: N_Vector, size: *mut sunindextype) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufPack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufUnpack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VNewVectorArray(count: ::std::os::raw::c_int) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneEmptyVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VDestroyVectorArray(vs: *mut N_Vector, count: ::std::os::raw::c_int); -} -extern "C" { - pub fn N_VGetVecAtIndexVectorArray(vs: *mut N_Vector, index: ::std::os::raw::c_int) - -> N_Vector; -} -extern "C" { - pub fn N_VSetVecAtIndexVectorArray( - vs: *mut N_Vector, - index: ::std::os::raw::c_int, - w: N_Vector, - ); -} -extern "C" { - pub fn N_VPrint(v: N_Vector); -} -extern "C" { - pub fn N_VPrintFile(v: N_Vector, outfile: *mut FILE); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _N_VectorContent_Serial { - pub length: sunindextype, - pub own_data: ::std::os::raw::c_int, - pub data: *mut realtype, -} -#[test] -fn bindgen_test_layout__N_VectorContent_Serial() { - assert_eq!( - ::std::mem::size_of::<_N_VectorContent_Serial>(), - 24usize, - concat!("Size of: ", stringify!(_N_VectorContent_Serial)) - ); - assert_eq!( - ::std::mem::align_of::<_N_VectorContent_Serial>(), - 8usize, - concat!("Alignment of ", stringify!(_N_VectorContent_Serial)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_N_VectorContent_Serial>())).length as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_N_VectorContent_Serial), - "::", - stringify!(length) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_N_VectorContent_Serial>())).own_data as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_N_VectorContent_Serial), - "::", - stringify!(own_data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_N_VectorContent_Serial>())).data as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_N_VectorContent_Serial), - "::", - stringify!(data) - ) - ); -} -pub type N_VectorContent_Serial = *mut _N_VectorContent_Serial; -extern "C" { - pub fn N_VNew_Serial(vec_length: sunindextype) -> N_Vector; -} -extern "C" { - pub fn N_VNewEmpty_Serial(vec_length: sunindextype) -> N_Vector; -} -extern "C" { - pub fn N_VMake_Serial(vec_length: sunindextype, v_data: *mut realtype) -> N_Vector; -} -extern "C" { - pub fn N_VCloneVectorArray_Serial(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneVectorArrayEmpty_Serial( - count: ::std::os::raw::c_int, - w: N_Vector, - ) -> *mut N_Vector; -} -extern "C" { - pub fn N_VDestroyVectorArray_Serial(vs: *mut N_Vector, count: ::std::os::raw::c_int); -} -extern "C" { - pub fn N_VGetLength_Serial(v: N_Vector) -> sunindextype; -} -extern "C" { - pub fn N_VPrint_Serial(v: N_Vector); -} -extern "C" { - pub fn N_VPrintFile_Serial(v: N_Vector, outfile: *mut FILE); -} -extern "C" { - pub fn N_VGetVectorID_Serial(v: N_Vector) -> N_Vector_ID; -} -extern "C" { - pub fn N_VCloneEmpty_Serial(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VClone_Serial(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VDestroy_Serial(v: N_Vector); -} -extern "C" { - pub fn N_VSpace_Serial(v: N_Vector, lrw: *mut sunindextype, liw: *mut sunindextype); -} -extern "C" { - pub fn N_VGetArrayPointer_Serial(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VSetArrayPointer_Serial(v_data: *mut realtype, v: N_Vector); -} -extern "C" { - pub fn N_VLinearSum_Serial(a: realtype, x: N_Vector, b: realtype, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VConst_Serial(c: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VProd_Serial(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VDiv_Serial(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VScale_Serial(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAbs_Serial(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInv_Serial(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAddConst_Serial(x: N_Vector, b: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VDotProd_Serial(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNorm_Serial(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNorm_Serial(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNormMask_Serial(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMin_Serial(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWL2Norm_Serial(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1Norm_Serial(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VCompare_Serial(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInvTest_Serial(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMask_Serial(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotient_Serial(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VLinearCombination_Serial( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - V: *mut N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMulti_Serial( - nvec: ::std::os::raw::c_int, - a: *mut realtype, - x: N_Vector, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdMulti_Serial( - nvec: ::std::os::raw::c_int, - x: N_Vector, - Y: *mut N_Vector, - dotprods: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearSumVectorArray_Serial( - nvec: ::std::os::raw::c_int, - a: realtype, - X: *mut N_Vector, - b: realtype, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleVectorArray_Serial( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstVectorArray_Serial( - nvecs: ::std::os::raw::c_int, - c: realtype, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormVectorArray_Serial( - nvecs: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormMaskVectorArray_Serial( - nvecs: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - id: N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMultiVectorArray_Serial( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - a: *mut realtype, - X: *mut N_Vector, - Y: *mut *mut N_Vector, - Z: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearCombinationVectorArray_Serial( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWSqrSumLocal_Serial(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumMaskLocal_Serial(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VBufSize_Serial(x: N_Vector, size: *mut sunindextype) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufPack_Serial( - x: N_Vector, - buf: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufUnpack_Serial( - x: N_Vector, - buf: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableFusedOps_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableLinearCombination_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableScaleAddMulti_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableDotProdMulti_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableLinearSumVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableScaleVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableConstVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableWrmsNormVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableWrmsNormMaskVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableScaleAddMultiVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VEnableLinearCombinationVectorArray_Serial( - v: N_Vector, - tf: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -pub type __builtin_va_list = [__va_list_tag; 1usize]; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __va_list_tag { - pub gp_offset: ::std::os::raw::c_uint, - pub fp_offset: ::std::os::raw::c_uint, - pub overflow_arg_area: *mut ::std::os::raw::c_void, - pub reg_save_area: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout___va_list_tag() { - assert_eq!( - ::std::mem::size_of::<__va_list_tag>(), - 24usize, - concat!("Size of: ", stringify!(__va_list_tag)) - ); - assert_eq!( - ::std::mem::align_of::<__va_list_tag>(), - 8usize, - concat!("Alignment of ", stringify!(__va_list_tag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/cvode-5-sys/src/sunlinsol_dense.rs b/cvode-5-sys/src/sunlinsol_dense.rs deleted file mode 100644 index 997b0ee..0000000 --- a/cvode-5-sys/src/sunlinsol_dense.rs +++ /dev/null @@ -1,5755 +0,0 @@ -/* automatically generated by rust-bindgen 0.55.1 */ - -pub const SUNDIALS_VERSION: &'static [u8; 6usize] = b"5.7.0\0"; -pub const SUNDIALS_VERSION_MAJOR: u32 = 5; -pub const SUNDIALS_VERSION_MINOR: u32 = 7; -pub const SUNDIALS_VERSION_PATCH: u32 = 0; -pub const SUNDIALS_VERSION_LABEL: &'static [u8; 1usize] = b"\0"; -pub const SUNDIALS_DOUBLE_PRECISION: u32 = 1; -pub const SUNDIALS_INT64_T: u32 = 1; -pub const SUNDIALS_MPI_ENABLED: u32 = 1; -pub const SUNDIALS_ARKODE: u32 = 1; -pub const SUNDIALS_CVODE: u32 = 1; -pub const SUNDIALS_CVODES: u32 = 1; -pub const SUNDIALS_IDA: u32 = 1; -pub const SUNDIALS_IDAS: u32 = 1; -pub const SUNDIALS_KINSOL: u32 = 1; -pub const SUNDIALS_NVECTOR_SERIAL: u32 = 1; -pub const SUNDIALS_NVECTOR_MANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIMANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIPLUSX: u32 = 1; -pub const SUNDIALS_NVECTOR_PARALLEL: u32 = 1; -pub const SUNDIALS_NVECTOR_OPENMP: u32 = 1; -pub const SUNDIALS_NVECTOR_PTHREADS: u32 = 1; -pub const SUNDIALS_SUNMATRIX_BAND: u32 = 1; -pub const SUNDIALS_SUNMATRIX_DENSE: u32 = 1; -pub const SUNDIALS_SUNMATRIX_SPARSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_BAND: u32 = 1; -pub const SUNDIALS_SUNLINSOL_DENSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_PCG: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPBCGS: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPFGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPTFQMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_KLU: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_NEWTON: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_FIXEDPOINT: u32 = 1; -pub const SUNDIALS_MPI_COMM_F2C: u32 = 1; -pub const _STDINT_H: u32 = 1; -pub const _FEATURES_H: u32 = 1; -pub const _DEFAULT_SOURCE: u32 = 1; -pub const __GLIBC_USE_ISOC2X: u32 = 0; -pub const __USE_ISOC11: u32 = 1; -pub const __USE_ISOC99: u32 = 1; -pub const __USE_ISOC95: u32 = 1; -pub const __USE_POSIX_IMPLICITLY: u32 = 1; -pub const _POSIX_SOURCE: u32 = 1; -pub const _POSIX_C_SOURCE: u32 = 200809; -pub const __USE_POSIX: u32 = 1; -pub const __USE_POSIX2: u32 = 1; -pub const __USE_POSIX199309: u32 = 1; -pub const __USE_POSIX199506: u32 = 1; -pub const __USE_XOPEN2K: u32 = 1; -pub const __USE_XOPEN2K8: u32 = 1; -pub const _ATFILE_SOURCE: u32 = 1; -pub const __USE_MISC: u32 = 1; -pub const __USE_ATFILE: u32 = 1; -pub const __USE_FORTIFY_LEVEL: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; -pub const _STDC_PREDEF_H: u32 = 1; -pub const __STDC_IEC_559__: u32 = 1; -pub const __STDC_IEC_559_COMPLEX__: u32 = 1; -pub const __STDC_ISO_10646__: u32 = 201706; -pub const __GNU_LIBRARY__: u32 = 6; -pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 33; -pub const _SYS_CDEFS_H: u32 = 1; -pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; -pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; -pub const __HAVE_GENERIC_SELECTION: u32 = 1; -pub const __GLIBC_USE_LIB_EXT2: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const _BITS_TYPES_H: u32 = 1; -pub const __TIMESIZE: u32 = 64; -pub const _BITS_TYPESIZES_H: u32 = 1; -pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; -pub const __INO_T_MATCHES_INO64_T: u32 = 1; -pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; -pub const __STATFS_MATCHES_STATFS64: u32 = 1; -pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; -pub const __FD_SETSIZE: u32 = 1024; -pub const _BITS_TIME64_H: u32 = 1; -pub const _BITS_WCHAR_H: u32 = 1; -pub const _BITS_STDINT_INTN_H: u32 = 1; -pub const _BITS_STDINT_UINTN_H: u32 = 1; -pub const INT8_MIN: i32 = -128; -pub const INT16_MIN: i32 = -32768; -pub const INT32_MIN: i32 = -2147483648; -pub const INT8_MAX: u32 = 127; -pub const INT16_MAX: u32 = 32767; -pub const INT32_MAX: u32 = 2147483647; -pub const UINT8_MAX: u32 = 255; -pub const UINT16_MAX: u32 = 65535; -pub const UINT32_MAX: u32 = 4294967295; -pub const INT_LEAST8_MIN: i32 = -128; -pub const INT_LEAST16_MIN: i32 = -32768; -pub const INT_LEAST32_MIN: i32 = -2147483648; -pub const INT_LEAST8_MAX: u32 = 127; -pub const INT_LEAST16_MAX: u32 = 32767; -pub const INT_LEAST32_MAX: u32 = 2147483647; -pub const UINT_LEAST8_MAX: u32 = 255; -pub const UINT_LEAST16_MAX: u32 = 65535; -pub const UINT_LEAST32_MAX: u32 = 4294967295; -pub const INT_FAST8_MIN: i32 = -128; -pub const INT_FAST16_MIN: i64 = -9223372036854775808; -pub const INT_FAST32_MIN: i64 = -9223372036854775808; -pub const INT_FAST8_MAX: u32 = 127; -pub const INT_FAST16_MAX: u64 = 9223372036854775807; -pub const INT_FAST32_MAX: u64 = 9223372036854775807; -pub const UINT_FAST8_MAX: u32 = 255; -pub const UINT_FAST16_MAX: i32 = -1; -pub const UINT_FAST32_MAX: i32 = -1; -pub const INTPTR_MIN: i64 = -9223372036854775808; -pub const INTPTR_MAX: u64 = 9223372036854775807; -pub const UINTPTR_MAX: i32 = -1; -pub const PTRDIFF_MIN: i64 = -9223372036854775808; -pub const PTRDIFF_MAX: u64 = 9223372036854775807; -pub const SIG_ATOMIC_MIN: i32 = -2147483648; -pub const SIG_ATOMIC_MAX: u32 = 2147483647; -pub const SIZE_MAX: i32 = -1; -pub const WINT_MIN: u32 = 0; -pub const WINT_MAX: u32 = 4294967295; -pub const SUNFALSE: u32 = 0; -pub const SUNTRUE: u32 = 1; -pub const _STDIO_H: u32 = 1; -pub const __GNUC_VA_LIST: u32 = 1; -pub const _____fpos_t_defined: u32 = 1; -pub const ____mbstate_t_defined: u32 = 1; -pub const _____fpos64_t_defined: u32 = 1; -pub const ____FILE_defined: u32 = 1; -pub const __FILE_defined: u32 = 1; -pub const __struct_FILE_defined: u32 = 1; -pub const _IO_EOF_SEEN: u32 = 16; -pub const _IO_ERR_SEEN: u32 = 32; -pub const _IO_USER_LOCK: u32 = 32768; -pub const _IOFBF: u32 = 0; -pub const _IOLBF: u32 = 1; -pub const _IONBF: u32 = 2; -pub const BUFSIZ: u32 = 8192; -pub const EOF: i32 = -1; -pub const SEEK_SET: u32 = 0; -pub const SEEK_CUR: u32 = 1; -pub const SEEK_END: u32 = 2; -pub const P_tmpdir: &'static [u8; 5usize] = b"/tmp\0"; -pub const _BITS_STDIO_LIM_H: u32 = 1; -pub const L_tmpnam: u32 = 20; -pub const TMP_MAX: u32 = 238328; -pub const FILENAME_MAX: u32 = 4096; -pub const L_ctermid: u32 = 9; -pub const FOPEN_MAX: u32 = 16; -pub const __HAVE_FLOAT128: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128: u32 = 0; -pub const __HAVE_FLOAT64X: u32 = 1; -pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1; -pub const __HAVE_FLOAT16: u32 = 0; -pub const __HAVE_FLOAT32: u32 = 1; -pub const __HAVE_FLOAT64: u32 = 1; -pub const __HAVE_FLOAT32X: u32 = 1; -pub const __HAVE_FLOAT128X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT16: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0; -pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0; -pub const _STDLIB_H: u32 = 1; -pub const WNOHANG: u32 = 1; -pub const WUNTRACED: u32 = 2; -pub const WSTOPPED: u32 = 2; -pub const WEXITED: u32 = 4; -pub const WCONTINUED: u32 = 8; -pub const WNOWAIT: u32 = 16777216; -pub const __WNOTHREAD: u32 = 536870912; -pub const __WALL: u32 = 1073741824; -pub const __WCLONE: u32 = 2147483648; -pub const __W_CONTINUED: u32 = 65535; -pub const __WCOREFLAG: u32 = 128; -pub const __ldiv_t_defined: u32 = 1; -pub const __lldiv_t_defined: u32 = 1; -pub const RAND_MAX: u32 = 2147483647; -pub const EXIT_FAILURE: u32 = 1; -pub const EXIT_SUCCESS: u32 = 0; -pub const _SYS_TYPES_H: u32 = 1; -pub const __clock_t_defined: u32 = 1; -pub const __clockid_t_defined: u32 = 1; -pub const __time_t_defined: u32 = 1; -pub const __timer_t_defined: u32 = 1; -pub const __BIT_TYPES_DEFINED__: u32 = 1; -pub const _ENDIAN_H: u32 = 1; -pub const _BITS_ENDIAN_H: u32 = 1; -pub const __LITTLE_ENDIAN: u32 = 1234; -pub const __BIG_ENDIAN: u32 = 4321; -pub const __PDP_ENDIAN: u32 = 3412; -pub const _BITS_ENDIANNESS_H: u32 = 1; -pub const __BYTE_ORDER: u32 = 1234; -pub const __FLOAT_WORD_ORDER: u32 = 1234; -pub const LITTLE_ENDIAN: u32 = 1234; -pub const BIG_ENDIAN: u32 = 4321; -pub const PDP_ENDIAN: u32 = 3412; -pub const BYTE_ORDER: u32 = 1234; -pub const _BITS_BYTESWAP_H: u32 = 1; -pub const _BITS_UINTN_IDENTITY_H: u32 = 1; -pub const _SYS_SELECT_H: u32 = 1; -pub const __sigset_t_defined: u32 = 1; -pub const __timeval_defined: u32 = 1; -pub const _STRUCT_TIMESPEC: u32 = 1; -pub const FD_SETSIZE: u32 = 1024; -pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1; -pub const _THREAD_SHARED_TYPES_H: u32 = 1; -pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1; -pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40; -pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56; -pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; -pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; -pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; -pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1; -pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; -pub const __have_pthread_attr_t: u32 = 1; -pub const _ALLOCA_H: u32 = 1; -pub const SUNMAT_SUCCESS: u32 = 0; -pub const SUNMAT_ILL_INPUT: i32 = -701; -pub const SUNMAT_MEM_FAIL: i32 = -702; -pub const SUNMAT_OPERATION_FAIL: i32 = -703; -pub const SUNMAT_MATVEC_SETUP_REQUIRED: i32 = -704; -pub const SUNLS_SUCCESS: u32 = 0; -pub const SUNLS_MEM_NULL: i32 = -801; -pub const SUNLS_ILL_INPUT: i32 = -802; -pub const SUNLS_MEM_FAIL: i32 = -803; -pub const SUNLS_ATIMES_NULL: i32 = -804; -pub const SUNLS_ATIMES_FAIL_UNREC: i32 = -805; -pub const SUNLS_PSET_FAIL_UNREC: i32 = -806; -pub const SUNLS_PSOLVE_NULL: i32 = -807; -pub const SUNLS_PSOLVE_FAIL_UNREC: i32 = -808; -pub const SUNLS_PACKAGE_FAIL_UNREC: i32 = -809; -pub const SUNLS_GS_FAIL: i32 = -810; -pub const SUNLS_QRSOL_FAIL: i32 = -811; -pub const SUNLS_VECTOROP_ERR: i32 = -812; -pub const SUNLS_RES_REDUCED: u32 = 801; -pub const SUNLS_CONV_FAIL: u32 = 802; -pub const SUNLS_ATIMES_FAIL_REC: u32 = 803; -pub const SUNLS_PSET_FAIL_REC: u32 = 804; -pub const SUNLS_PSOLVE_FAIL_REC: u32 = 805; -pub const SUNLS_PACKAGE_FAIL_REC: u32 = 806; -pub const SUNLS_QRFACT_FAIL: u32 = 807; -pub const SUNLS_LUFACT_FAIL: u32 = 808; -pub const SUNLS_MSG_RESIDUAL: &'static [u8; 41usize] = - b"\t\tlin. iteration %ld, lin. residual: %g\n\0"; -pub const SUNDIALS_DENSE: u32 = 1; -pub const SUNDIALS_BAND: u32 = 2; -pub type size_t = ::std::os::raw::c_ulong; -pub type wchar_t = ::std::os::raw::c_int; -#[repr(C)] -#[repr(align(16))] -#[derive(Debug, Copy, Clone)] -pub struct max_align_t { - pub __clang_max_align_nonce1: ::std::os::raw::c_longlong, - pub __bindgen_padding_0: u64, - pub __clang_max_align_nonce2: u128, -} -#[test] -fn bindgen_test_layout_max_align_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(max_align_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 16usize, - concat!("Alignment of ", stringify!(max_align_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce1 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce2 as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce2) - ) - ); -} -pub type __u_char = ::std::os::raw::c_uchar; -pub type __u_short = ::std::os::raw::c_ushort; -pub type __u_int = ::std::os::raw::c_uint; -pub type __u_long = ::std::os::raw::c_ulong; -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_long; -pub type __uint64_t = ::std::os::raw::c_ulong; -pub type __int_least8_t = __int8_t; -pub type __uint_least8_t = __uint8_t; -pub type __int_least16_t = __int16_t; -pub type __uint_least16_t = __uint16_t; -pub type __int_least32_t = __int32_t; -pub type __uint_least32_t = __uint32_t; -pub type __int_least64_t = __int64_t; -pub type __uint_least64_t = __uint64_t; -pub type __quad_t = ::std::os::raw::c_long; -pub type __u_quad_t = ::std::os::raw::c_ulong; -pub type __intmax_t = ::std::os::raw::c_long; -pub type __uintmax_t = ::std::os::raw::c_ulong; -pub type __dev_t = ::std::os::raw::c_ulong; -pub type __uid_t = ::std::os::raw::c_uint; -pub type __gid_t = ::std::os::raw::c_uint; -pub type __ino_t = ::std::os::raw::c_ulong; -pub type __ino64_t = ::std::os::raw::c_ulong; -pub type __mode_t = ::std::os::raw::c_uint; -pub type __nlink_t = ::std::os::raw::c_ulong; -pub type __off_t = ::std::os::raw::c_long; -pub type __off64_t = ::std::os::raw::c_long; -pub type __pid_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __fsid_t { - pub __val: [::std::os::raw::c_int; 2usize], -} -#[test] -fn bindgen_test_layout___fsid_t() { - assert_eq!( - ::std::mem::size_of::<__fsid_t>(), - 8usize, - concat!("Size of: ", stringify!(__fsid_t)) - ); - assert_eq!( - ::std::mem::align_of::<__fsid_t>(), - 4usize, - concat!("Alignment of ", stringify!(__fsid_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__fsid_t), - "::", - stringify!(__val) - ) - ); -} -pub type __clock_t = ::std::os::raw::c_long; -pub type __rlim_t = ::std::os::raw::c_ulong; -pub type __rlim64_t = ::std::os::raw::c_ulong; -pub type __id_t = ::std::os::raw::c_uint; -pub type __time_t = ::std::os::raw::c_long; -pub type __useconds_t = ::std::os::raw::c_uint; -pub type __suseconds_t = ::std::os::raw::c_long; -pub type __suseconds64_t = ::std::os::raw::c_long; -pub type __daddr_t = ::std::os::raw::c_int; -pub type __key_t = ::std::os::raw::c_int; -pub type __clockid_t = ::std::os::raw::c_int; -pub type __timer_t = *mut ::std::os::raw::c_void; -pub type __blksize_t = ::std::os::raw::c_long; -pub type __blkcnt_t = ::std::os::raw::c_long; -pub type __blkcnt64_t = ::std::os::raw::c_long; -pub type __fsblkcnt_t = ::std::os::raw::c_ulong; -pub type __fsblkcnt64_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt64_t = ::std::os::raw::c_ulong; -pub type __fsword_t = ::std::os::raw::c_long; -pub type __ssize_t = ::std::os::raw::c_long; -pub type __syscall_slong_t = ::std::os::raw::c_long; -pub type __syscall_ulong_t = ::std::os::raw::c_ulong; -pub type __loff_t = __off64_t; -pub type __caddr_t = *mut ::std::os::raw::c_char; -pub type __intptr_t = ::std::os::raw::c_long; -pub type __socklen_t = ::std::os::raw::c_uint; -pub type __sig_atomic_t = ::std::os::raw::c_int; -pub type int_least8_t = __int_least8_t; -pub type int_least16_t = __int_least16_t; -pub type int_least32_t = __int_least32_t; -pub type int_least64_t = __int_least64_t; -pub type uint_least8_t = __uint_least8_t; -pub type uint_least16_t = __uint_least16_t; -pub type uint_least32_t = __uint_least32_t; -pub type uint_least64_t = __uint_least64_t; -pub type int_fast8_t = ::std::os::raw::c_schar; -pub type int_fast16_t = ::std::os::raw::c_long; -pub type int_fast32_t = ::std::os::raw::c_long; -pub type int_fast64_t = ::std::os::raw::c_long; -pub type uint_fast8_t = ::std::os::raw::c_uchar; -pub type uint_fast16_t = ::std::os::raw::c_ulong; -pub type uint_fast32_t = ::std::os::raw::c_ulong; -pub type uint_fast64_t = ::std::os::raw::c_ulong; -pub type intmax_t = __intmax_t; -pub type uintmax_t = __uintmax_t; -pub type realtype = f64; -pub type sunindextype = i64; -pub type va_list = __builtin_va_list; -pub type __gnuc_va_list = __builtin_va_list; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __mbstate_t { - pub __count: ::std::os::raw::c_int, - pub __value: __mbstate_t__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __mbstate_t__bindgen_ty_1 { - pub __wch: ::std::os::raw::c_uint, - pub __wchb: [::std::os::raw::c_char; 4usize], - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout___mbstate_t__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wch) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wchb) - ) - ); -} -#[test] -fn bindgen_test_layout___mbstate_t() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t>(), - 8usize, - concat!("Size of: ", stringify!(__mbstate_t)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__count as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__value as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__value) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos_t { - pub __pos: __off_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos_t = _G_fpos_t; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos64_t { - pub __pos: __off64_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos64_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos64_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos64_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos64_t = _G_fpos64_t; -pub type __FILE = _IO_FILE; -pub type FILE = _IO_FILE; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_marker { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_codecvt { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_wide_data { - _unused: [u8; 0], -} -pub type _IO_lock_t = ::std::os::raw::c_void; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_FILE { - pub _flags: ::std::os::raw::c_int, - pub _IO_read_ptr: *mut ::std::os::raw::c_char, - pub _IO_read_end: *mut ::std::os::raw::c_char, - pub _IO_read_base: *mut ::std::os::raw::c_char, - pub _IO_write_base: *mut ::std::os::raw::c_char, - pub _IO_write_ptr: *mut ::std::os::raw::c_char, - pub _IO_write_end: *mut ::std::os::raw::c_char, - pub _IO_buf_base: *mut ::std::os::raw::c_char, - pub _IO_buf_end: *mut ::std::os::raw::c_char, - pub _IO_save_base: *mut ::std::os::raw::c_char, - pub _IO_backup_base: *mut ::std::os::raw::c_char, - pub _IO_save_end: *mut ::std::os::raw::c_char, - pub _markers: *mut _IO_marker, - pub _chain: *mut _IO_FILE, - pub _fileno: ::std::os::raw::c_int, - pub _flags2: ::std::os::raw::c_int, - pub _old_offset: __off_t, - pub _cur_column: ::std::os::raw::c_ushort, - pub _vtable_offset: ::std::os::raw::c_schar, - pub _shortbuf: [::std::os::raw::c_char; 1usize], - pub _lock: *mut _IO_lock_t, - pub _offset: __off64_t, - pub _codecvt: *mut _IO_codecvt, - pub _wide_data: *mut _IO_wide_data, - pub _freeres_list: *mut _IO_FILE, - pub _freeres_buf: *mut ::std::os::raw::c_void, - pub __pad5: size_t, - pub _mode: ::std::os::raw::c_int, - pub _unused2: [::std::os::raw::c_char; 20usize], -} -#[test] -fn bindgen_test_layout__IO_FILE() { - assert_eq!( - ::std::mem::size_of::<_IO_FILE>(), - 216usize, - concat!("Size of: ", stringify!(_IO_FILE)) - ); - assert_eq!( - ::std::mem::align_of::<_IO_FILE>(), - 8usize, - concat!("Alignment of ", stringify!(_IO_FILE)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_backup_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_markers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_chain) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_fileno) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize }, - 116usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_old_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_cur_column) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize }, - 130usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_vtable_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize }, - 131usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_shortbuf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_codecvt) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_wide_data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_list) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_buf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(__pad5) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_mode) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize }, - 196usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_unused2) - ) - ); -} -pub type off_t = __off_t; -pub type ssize_t = __ssize_t; -pub type fpos_t = __fpos_t; -extern "C" { - pub static mut stdin: *mut FILE; -} -extern "C" { - pub static mut stdout: *mut FILE; -} -extern "C" { - pub static mut stderr: *mut FILE; -} -extern "C" { - pub fn remove(__filename: *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 renameat( - __oldfd: ::std::os::raw::c_int, - __old: *const ::std::os::raw::c_char, - __newfd: ::std::os::raw::c_int, - __new: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn tmpfile() -> *mut FILE; -} -extern "C" { - pub fn tmpnam(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tempnam( - __dir: *const ::std::os::raw::c_char, - __pfx: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fclose(__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 fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn freopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - __stream: *mut FILE, - ) -> *mut FILE; -} -extern "C" { - pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char) - -> *mut FILE; -} -extern "C" { - pub fn fmemopen( - __s: *mut ::std::os::raw::c_void, - __len: size_t, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn open_memstream( - __bufloc: *mut *mut ::std::os::raw::c_char, - __sizeloc: *mut size_t, - ) -> *mut FILE; -} -extern "C" { - pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn setvbuf( - __stream: *mut FILE, - __buf: *mut ::std::os::raw::c_char, - __modes: ::std::os::raw::c_int, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: size_t); -} -extern "C" { - pub fn setlinebuf(__stream: *mut FILE); -} -extern "C" { - pub fn fprintf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfprintf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vprintf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn snprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsnprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vdprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn dprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fscanf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -pub type _Float32 = f32; -pub type _Float64 = f64; -pub type _Float32x = f64; -pub type _Float64x = u128; -extern "C" { - #[link_name = "\u{1}__isoc99_fscanf"] - pub fn fscanf1( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_scanf"] - pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_sscanf"] - pub fn sscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfscanf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vscanf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vfscanf"] - pub fn vfscanf1( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vscanf"] - pub fn vscanf1( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vsscanf"] - pub fn vsscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -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 getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getchar_unlocked() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) - -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar_unlocked(__c: ::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(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgets( - __s: *mut ::std::os::raw::c_char, - __n: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn __getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getline( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *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, - __n: ::std::os::raw::c_ulong, - __stream: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fwrite( - __ptr: *const ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - __n: ::std::os::raw::c_ulong, - __s: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fread_unlocked( - __ptr: *mut ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fwrite_unlocked( - __ptr: *const ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fseek( - __stream: *mut FILE, - __off: ::std::os::raw::c_long, - __whence: ::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 rewind(__stream: *mut FILE); -} -extern "C" { - pub fn fseeko( - __stream: *mut FILE, - __off: __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 fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearerr(__stream: *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 clearerr_unlocked(__stream: *mut FILE); -} -extern "C" { - pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn perror(__s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn popen( - __command: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn flockfile(__stream: *mut FILE); -} -extern "C" { - pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn funlockfile(__stream: *mut FILE); -} -extern "C" { - pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct div_t { - pub quot: ::std::os::raw::c_int, - pub rem: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_div_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(div_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(div_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ldiv_t { - pub quot: ::std::os::raw::c_long, - pub rem: ::std::os::raw::c_long, -} -#[test] -fn bindgen_test_layout_ldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(ldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(ldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct lldiv_t { - pub quot: ::std::os::raw::c_longlong, - pub rem: ::std::os::raw::c_longlong, -} -#[test] -fn bindgen_test_layout_lldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(lldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(lldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(rem) - ) - ); -} -extern "C" { - pub fn __ctype_get_mb_cur_max() -> size_t; -} -extern "C" { - pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtod( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f64; -} -extern "C" { - pub fn strtof( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f32; -} -extern "C" { - pub fn strtold( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> u128; -} -extern "C" { - pub fn strtol( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn strtoul( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strtoq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtouq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn strtoll( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtoull( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -pub type u_char = __u_char; -pub type u_short = __u_short; -pub type u_int = __u_int; -pub type u_long = __u_long; -pub type quad_t = __quad_t; -pub type u_quad_t = __u_quad_t; -pub type fsid_t = __fsid_t; -pub type loff_t = __loff_t; -pub type ino_t = __ino_t; -pub type dev_t = __dev_t; -pub type gid_t = __gid_t; -pub type mode_t = __mode_t; -pub type nlink_t = __nlink_t; -pub type uid_t = __uid_t; -pub type pid_t = __pid_t; -pub type id_t = __id_t; -pub type daddr_t = __daddr_t; -pub type caddr_t = __caddr_t; -pub type key_t = __key_t; -pub type clock_t = __clock_t; -pub type clockid_t = __clockid_t; -pub type time_t = __time_t; -pub type timer_t = __timer_t; -pub type ulong = ::std::os::raw::c_ulong; -pub type ushort = ::std::os::raw::c_ushort; -pub type uint = ::std::os::raw::c_uint; -pub type u_int8_t = __uint8_t; -pub type u_int16_t = __uint16_t; -pub type u_int32_t = __uint32_t; -pub type u_int64_t = __uint64_t; -pub type register_t = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sigset_t { - pub __val: [::std::os::raw::c_ulong; 16usize], -} -#[test] -fn bindgen_test_layout___sigset_t() { - assert_eq!( - ::std::mem::size_of::<__sigset_t>(), - 128usize, - concat!("Size of: ", stringify!(__sigset_t)) - ); - assert_eq!( - ::std::mem::align_of::<__sigset_t>(), - 8usize, - concat!("Alignment of ", stringify!(__sigset_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__sigset_t), - "::", - stringify!(__val) - ) - ); -} -pub type sigset_t = __sigset_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timeval { - pub tv_sec: __time_t, - pub tv_usec: __suseconds_t, -} -#[test] -fn bindgen_test_layout_timeval() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timeval)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timeval)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_usec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_usec) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timespec { - pub tv_sec: __time_t, - pub tv_nsec: __syscall_slong_t, -} -#[test] -fn bindgen_test_layout_timespec() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timespec)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timespec)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_nsec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_nsec) - ) - ); -} -pub type suseconds_t = __suseconds_t; -pub type __fd_mask = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct fd_set { - pub __fds_bits: [__fd_mask; 16usize], -} -#[test] -fn bindgen_test_layout_fd_set() { - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(fd_set)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(fd_set)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__fds_bits as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(fd_set), - "::", - stringify!(__fds_bits) - ) - ); -} -pub type fd_mask = __fd_mask; -extern "C" { - pub fn select( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *mut timeval, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn pselect( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *const timespec, - __sigmask: *const __sigset_t, - ) -> ::std::os::raw::c_int; -} -pub type blksize_t = __blksize_t; -pub type blkcnt_t = __blkcnt_t; -pub type fsblkcnt_t = __fsblkcnt_t; -pub type fsfilcnt_t = __fsfilcnt_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_list { - pub __prev: *mut __pthread_internal_list, - pub __next: *mut __pthread_internal_list, -} -#[test] -fn bindgen_test_layout___pthread_internal_list() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_list>(), - 16usize, - concat!("Size of: ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_list>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__prev) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_list_t = __pthread_internal_list; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_slist { - pub __next: *mut __pthread_internal_slist, -} -#[test] -fn bindgen_test_layout___pthread_internal_slist() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_slist>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_slist>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_slist>())).__next as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_slist), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_slist_t = __pthread_internal_slist; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_mutex_s { - pub __lock: ::std::os::raw::c_int, - pub __count: ::std::os::raw::c_uint, - pub __owner: ::std::os::raw::c_int, - pub __nusers: ::std::os::raw::c_uint, - pub __kind: ::std::os::raw::c_int, - pub __spins: ::std::os::raw::c_short, - pub __elision: ::std::os::raw::c_short, - pub __list: __pthread_list_t, -} -#[test] -fn bindgen_test_layout___pthread_mutex_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_mutex_s>(), - 40usize, - concat!("Size of: ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_mutex_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__owner) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__nusers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__kind) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__spins) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize }, - 22usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__elision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__list) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::std::os::raw::c_uint, - pub __writers: ::std::os::raw::c_uint, - pub __wrphase_futex: ::std::os::raw::c_uint, - pub __writers_futex: ::std::os::raw::c_uint, - pub __pad3: ::std::os::raw::c_uint, - pub __pad4: ::std::os::raw::c_uint, - pub __cur_writer: ::std::os::raw::c_int, - pub __shared: ::std::os::raw::c_int, - pub __rwelision: ::std::os::raw::c_schar, - pub __pad1: [::std::os::raw::c_uchar; 7usize], - pub __pad2: ::std::os::raw::c_ulong, - pub __flags: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_rwlock_arch_t() { - assert_eq!( - ::std::mem::size_of::<__pthread_rwlock_arch_t>(), - 56usize, - concat!("Size of: ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_rwlock_arch_t>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__readers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__wrphase_futex) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _ as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers_futex) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad3) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad4) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__cur_writer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__shared) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__rwelision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize }, - 33usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad1) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__flags) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, - pub __g_refs: [::std::os::raw::c_uint; 2usize], - pub __g_size: [::std::os::raw::c_uint; 2usize], - pub __g1_orig_size: ::std::os::raw::c_uint, - pub __wrefs: ::std::os::raw::c_uint, - pub __g_signals: [::std::os::raw::c_uint; 2usize], -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::std::os::raw::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq32) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::std::os::raw::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start32) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s>(), - 48usize, - concat!("Size of: ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_refs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g1_orig_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize }, - 36usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__wrefs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_signals) - ) - ); -} -pub type __tss_t = ::std::os::raw::c_uint; -pub type __thrd_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __once_flag { - pub __data: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout___once_flag() { - assert_eq!( - ::std::mem::size_of::<__once_flag>(), - 4usize, - concat!("Size of: ", stringify!(__once_flag)) - ); - assert_eq!( - ::std::mem::align_of::<__once_flag>(), - 4usize, - concat!("Alignment of ", stringify!(__once_flag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__once_flag>())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__once_flag), - "::", - stringify!(__data) - ) - ); -} -pub type pthread_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutexattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_mutexattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_condattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_condattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_key_t = ::std::os::raw::c_uint; -pub type pthread_once_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_attr_t { - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_attr_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_attr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_attr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutex_t { - pub __data: __pthread_mutex_s, - pub __size: [::std::os::raw::c_char; 40usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 5usize], -} -#[test] -fn bindgen_test_layout_pthread_mutex_t() { - assert_eq!( - ::std::mem::size_of::(), - 40usize, - concat!("Size of: ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_cond_t { - pub __data: __pthread_cond_s, - pub __size: [::std::os::raw::c_char; 48usize], - pub __align: ::std::os::raw::c_longlong, - _bindgen_union_align: [u64; 6usize], -} -#[test] -fn bindgen_test_layout_pthread_cond_t() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(pthread_cond_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_cond_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlock_t { - pub __data: __pthread_rwlock_arch_t, - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_rwlock_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlockattr_t { - pub __size: [::std::os::raw::c_char; 8usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: u64, -} -#[test] -fn bindgen_test_layout_pthread_rwlockattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_spinlock_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrier_t { - pub __size: [::std::os::raw::c_char; 32usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 4usize], -} -#[test] -fn bindgen_test_layout_pthread_barrier_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrierattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_barrierattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__align) - ) - ); -} -extern "C" { - pub fn random() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srandom(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn initstate( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct random_data { - pub fptr: *mut i32, - pub rptr: *mut i32, - pub state: *mut i32, - pub rand_type: ::std::os::raw::c_int, - pub rand_deg: ::std::os::raw::c_int, - pub rand_sep: ::std::os::raw::c_int, - pub end_ptr: *mut i32, -} -#[test] -fn bindgen_test_layout_random_data() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(random_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(random_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).fptr as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(fptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).state as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(state) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_type as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_type) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_deg as *const _ as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_deg) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_sep as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_sep) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).end_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(end_ptr) - ) - ); -} -extern "C" { - pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srandom_r( - __seed: ::std::os::raw::c_uint, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn initstate_r( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setstate_r( - __statebuf: *mut ::std::os::raw::c_char, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn rand() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn drand48() -> f64; -} -extern "C" { - pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64; -} -extern "C" { - pub fn lrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn mrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srand48(__seedval: ::std::os::raw::c_long); -} -extern "C" { - pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort; -} -extern "C" { - pub fn lcong48(__param: *mut ::std::os::raw::c_ushort); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct drand48_data { - pub __x: [::std::os::raw::c_ushort; 3usize], - pub __old_x: [::std::os::raw::c_ushort; 3usize], - pub __c: ::std::os::raw::c_ushort, - pub __init: ::std::os::raw::c_ushort, - pub __a: ::std::os::raw::c_ulonglong, -} -#[test] -fn bindgen_test_layout_drand48_data() { - assert_eq!( - ::std::mem::size_of::(), - 24usize, - concat!("Size of: ", stringify!(drand48_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(drand48_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__x as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__old_x as *const _ as usize }, - 6usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__old_x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__c as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__c) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__init as *const _ as usize }, - 14usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__init) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__a as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__a) - ) - ); -} -extern "C" { - pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn erand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut f64, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn nrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn jrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand48_r( - __seedval: ::std::os::raw::c_long, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn seed48_r( - __seed16v: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lcong48_r( - __param: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn calloc( - __nmemb: ::std::os::raw::c_ulong, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn realloc( - __ptr: *mut ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn reallocarray( - __ptr: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn free(__ptr: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn valloc(__size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn posix_memalign( - __memptr: *mut *mut ::std::os::raw::c_void, - __alignment: size_t, - __size: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn aligned_alloc(__alignment: size_t, __size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn abort(); -} -extern "C" { - pub fn atexit(__func: ::std::option::Option) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn at_quick_exit( - __func: ::std::option::Option, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn on_exit( - __func: ::std::option::Option< - unsafe extern "C" fn( - __status: ::std::os::raw::c_int, - __arg: *mut ::std::os::raw::c_void, - ), - >, - __arg: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn quick_exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn _Exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setenv( - __name: *const ::std::os::raw::c_char, - __value: *const ::std::os::raw::c_char, - __replace: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearenv() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkstemps( - __template: *mut ::std::os::raw::c_char, - __suffixlen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn realpath( - __name: *const ::std::os::raw::c_char, - __resolved: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -pub type __compar_fn_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: *const ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn bsearch( - __key: *const ::std::os::raw::c_void, - __base: *const ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn qsort( - __base: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ); -} -extern "C" { - pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t; -} -extern "C" { - pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t; -} -extern "C" { - pub fn lldiv( - __numer: ::std::os::raw::c_longlong, - __denom: ::std::os::raw::c_longlong, - ) -> lldiv_t; -} -extern "C" { - pub fn ecvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn gcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qecvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qfcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qgcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn ecvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fcvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qecvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qfcvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mblen(__s: *const ::std::os::raw::c_char, __n: size_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbtowc( - __pwc: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbstowcs( - __pwcs: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn wcstombs( - __s: *mut ::std::os::raw::c_char, - __pwcs: *const wchar_t, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getsubopt( - __optionp: *mut *mut ::std::os::raw::c_char, - __tokens: *const *mut ::std::os::raw::c_char, - __valuep: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int) - -> ::std::os::raw::c_int; -} -pub const N_Vector_ID_SUNDIALS_NVEC_SERIAL: N_Vector_ID = 0; -pub const N_Vector_ID_SUNDIALS_NVEC_PARALLEL: N_Vector_ID = 1; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMP: N_Vector_ID = 2; -pub const N_Vector_ID_SUNDIALS_NVEC_PTHREADS: N_Vector_ID = 3; -pub const N_Vector_ID_SUNDIALS_NVEC_PARHYP: N_Vector_ID = 4; -pub const N_Vector_ID_SUNDIALS_NVEC_PETSC: N_Vector_ID = 5; -pub const N_Vector_ID_SUNDIALS_NVEC_CUDA: N_Vector_ID = 6; -pub const N_Vector_ID_SUNDIALS_NVEC_HIP: N_Vector_ID = 7; -pub const N_Vector_ID_SUNDIALS_NVEC_SYCL: N_Vector_ID = 8; -pub const N_Vector_ID_SUNDIALS_NVEC_RAJA: N_Vector_ID = 9; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMPDEV: N_Vector_ID = 10; -pub const N_Vector_ID_SUNDIALS_NVEC_TRILINOS: N_Vector_ID = 11; -pub const N_Vector_ID_SUNDIALS_NVEC_MANYVECTOR: N_Vector_ID = 12; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIMANYVECTOR: N_Vector_ID = 13; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIPLUSX: N_Vector_ID = 14; -pub const N_Vector_ID_SUNDIALS_NVEC_CUSTOM: N_Vector_ID = 15; -pub type N_Vector_ID = ::std::os::raw::c_uint; -pub type N_Vector_Ops = *mut _generic_N_Vector_Ops; -pub type N_Vector = *mut _generic_N_Vector; -pub type N_Vector_S = *mut N_Vector; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector_Ops { - pub nvgetvectorid: ::std::option::Option N_Vector_ID>, - pub nvclone: ::std::option::Option N_Vector>, - pub nvcloneempty: ::std::option::Option N_Vector>, - pub nvdestroy: ::std::option::Option, - pub nvspace: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype, arg3: *mut sunindextype), - >, - pub nvgetarraypointer: - ::std::option::Option *mut realtype>, - pub nvgetdevicearraypointer: - ::std::option::Option *mut realtype>, - pub nvsetarraypointer: - ::std::option::Option, - pub nvgetcommunicator: - ::std::option::Option *mut ::std::os::raw::c_void>, - pub nvgetlength: ::std::option::Option sunindextype>, - pub nvlinearsum: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: N_Vector, - arg3: realtype, - arg4: N_Vector, - arg5: N_Vector, - ), - >, - pub nvconst: ::std::option::Option, - pub nvprod: - ::std::option::Option, - pub nvdiv: - ::std::option::Option, - pub nvscale: - ::std::option::Option, - pub nvabs: ::std::option::Option, - pub nvinv: ::std::option::Option, - pub nvaddconst: - ::std::option::Option, - pub nvdotprod: - ::std::option::Option realtype>, - pub nvmaxnorm: ::std::option::Option realtype>, - pub nvwrmsnorm: - ::std::option::Option realtype>, - pub nvwrmsnormmask: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvmin: ::std::option::Option realtype>, - pub nvwl2norm: - ::std::option::Option realtype>, - pub nvl1norm: ::std::option::Option realtype>, - pub nvcompare: - ::std::option::Option, - pub nvinvtest: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmask: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotient: - ::std::option::Option realtype>, - pub nvlinearcombination: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: N_Vector, - arg4: *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearsumvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - arg4: realtype, - arg5: *mut N_Vector, - arg6: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscalevectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvconstvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormmaskvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: N_Vector, - arg5: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmultivectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut N_Vector, - arg5: *mut *mut N_Vector, - arg6: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearcombinationvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodlocal: - ::std::option::Option realtype>, - pub nvmaxnormlocal: ::std::option::Option realtype>, - pub nvminlocal: ::std::option::Option realtype>, - pub nvl1normlocal: ::std::option::Option realtype>, - pub nvinvtestlocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmasklocal: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotientlocal: - ::std::option::Option realtype>, - pub nvwsqrsumlocal: - ::std::option::Option realtype>, - pub nvwsqrsummasklocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvbufsize: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype) -> ::std::os::raw::c_int, - >, - pub nvbufpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvbufunpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvprint: ::std::option::Option, - pub nvprintfile: ::std::option::Option, -} -#[test] -fn bindgen_test_layout__generic_N_Vector_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector_Ops>(), - 424usize, - concat!("Size of: ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetvectorid as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetvectorid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvclone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvclone) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcloneempty as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcloneempty) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdestroy as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdestroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvspace as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvspace) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetarraypointer as *const _ as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetdevicearraypointer as *const _ - as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetdevicearraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvsetarraypointer as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvsetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetcommunicator as *const _ as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetcommunicator) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetlength as *const _ as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetlength) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsum as *const _ as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsum) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconst as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprod as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdiv as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdiv) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscale as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscale) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvabs as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvabs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinv as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinv) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvaddconst as *const _ as usize - }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvaddconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprod as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnorm as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnorm as *const _ as usize - }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmask as *const _ as usize - }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmask) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmin as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmin) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwl2norm as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwl2norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1norm as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcompare as *const _ as usize }, - 200usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcompare) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtest as *const _ as usize }, - 208usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtest) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmask as *const _ as usize - }, - 216usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmask) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotient as *const _ as usize - }, - 224usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotient) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombination as *const _ - as usize - }, - 232usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombination) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmulti as *const _ as usize - }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodmulti as *const _ as usize - }, - 248usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsumvectorarray as *const _ - as usize - }, - 256usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsumvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscalevectorarray as *const _ - as usize - }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscalevectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstvectorarray as *const _ - as usize - }, - 272usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormvectorarray as *const _ - as usize - }, - 280usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmaskvectorarray as *const _ - as usize - }, - 288usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmaskvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmultivectorarray as *const _ - as usize - }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmultivectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombinationvectorarray - as *const _ as usize - }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombinationvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodlocal as *const _ as usize - }, - 312usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnormlocal as *const _ as usize - }, - 320usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnormlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminlocal as *const _ as usize - }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1normlocal as *const _ as usize - }, - 336usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1normlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtestlocal as *const _ as usize - }, - 344usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtestlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmasklocal as *const _ as usize - }, - 352usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmasklocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotientlocal as *const _ - as usize - }, - 360usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotientlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsumlocal as *const _ as usize - }, - 368usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsumlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsummasklocal as *const _ - as usize - }, - 376usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsummasklocal) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufsize as *const _ as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufsize) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufpack as *const _ as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufpack) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufunpack as *const _ as usize - }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufunpack) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprint as *const _ as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprint) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprintfile as *const _ as usize - }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprintfile) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector { - pub content: *mut ::std::os::raw::c_void, - pub ops: N_Vector_Ops, -} -#[test] -fn bindgen_test_layout__generic_N_Vector() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector>(), - 16usize, - concat!("Size of: ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn N_VNewEmpty() -> N_Vector; -} -extern "C" { - pub fn N_VFreeEmpty(v: N_Vector); -} -extern "C" { - pub fn N_VCopyOps(w: N_Vector, v: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VGetVectorID(w: N_Vector) -> N_Vector_ID; -} -extern "C" { - pub fn N_VClone(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VCloneEmpty(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VDestroy(v: N_Vector); -} -extern "C" { - pub fn N_VSpace(v: N_Vector, lrw: *mut sunindextype, liw: *mut sunindextype); -} -extern "C" { - pub fn N_VGetArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VGetDeviceArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VSetArrayPointer(v_data: *mut realtype, v: N_Vector); -} -extern "C" { - pub fn N_VGetCommunicator(v: N_Vector) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn N_VGetLength(v: N_Vector) -> sunindextype; -} -extern "C" { - pub fn N_VLinearSum(a: realtype, x: N_Vector, b: realtype, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VConst(c: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VProd(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VDiv(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VScale(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAbs(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInv(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAddConst(x: N_Vector, b: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VDotProd(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNorm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNorm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNormMask(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMin(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWL2Norm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1Norm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VCompare(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInvTest(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMask(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotient(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VLinearCombination( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMulti( - nvec: ::std::os::raw::c_int, - a: *mut realtype, - x: N_Vector, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdMulti( - nvec: ::std::os::raw::c_int, - x: N_Vector, - Y: *mut N_Vector, - dotprods: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearSumVectorArray( - nvec: ::std::os::raw::c_int, - a: realtype, - X: *mut N_Vector, - b: realtype, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleVectorArray( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstVectorArray( - nvec: ::std::os::raw::c_int, - c: realtype, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormMaskVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - id: N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMultiVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - a: *mut realtype, - X: *mut N_Vector, - Y: *mut *mut N_Vector, - Z: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearCombinationVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdLocal(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMinLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1NormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumLocal(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumMaskLocal(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VInvTestLocal(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMaskLocal(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotientLocal(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VBufSize(x: N_Vector, size: *mut sunindextype) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufPack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufUnpack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VNewVectorArray(count: ::std::os::raw::c_int) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneEmptyVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VDestroyVectorArray(vs: *mut N_Vector, count: ::std::os::raw::c_int); -} -extern "C" { - pub fn N_VGetVecAtIndexVectorArray(vs: *mut N_Vector, index: ::std::os::raw::c_int) - -> N_Vector; -} -extern "C" { - pub fn N_VSetVecAtIndexVectorArray( - vs: *mut N_Vector, - index: ::std::os::raw::c_int, - w: N_Vector, - ); -} -extern "C" { - pub fn N_VPrint(v: N_Vector); -} -extern "C" { - pub fn N_VPrintFile(v: N_Vector, outfile: *mut FILE); -} -pub const PREC_NONE: ::std::os::raw::c_uint = 0; -pub const PREC_LEFT: ::std::os::raw::c_uint = 1; -pub const PREC_RIGHT: ::std::os::raw::c_uint = 2; -pub const PREC_BOTH: ::std::os::raw::c_uint = 3; -pub type _bindgen_ty_1 = ::std::os::raw::c_uint; -pub const MODIFIED_GS: ::std::os::raw::c_uint = 1; -pub const CLASSICAL_GS: ::std::os::raw::c_uint = 2; -pub type _bindgen_ty_2 = ::std::os::raw::c_uint; -pub type ATimesFn = ::std::option::Option< - unsafe extern "C" fn( - A_data: *mut ::std::os::raw::c_void, - v: N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int, ->; -pub type PSetupFn = ::std::option::Option< - unsafe extern "C" fn(P_data: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int, ->; -pub type PSolveFn = ::std::option::Option< - unsafe extern "C" fn( - P_data: *mut ::std::os::raw::c_void, - r: N_Vector, - z: N_Vector, - tol: realtype, - lr: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn ModifiedGS( - v: *mut N_Vector, - h: *mut *mut realtype, - k: ::std::os::raw::c_int, - p: ::std::os::raw::c_int, - new_vk_norm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ClassicalGS( - v: *mut N_Vector, - h: *mut *mut realtype, - k: ::std::os::raw::c_int, - p: ::std::os::raw::c_int, - new_vk_norm: *mut realtype, - stemp: *mut realtype, - vtemp: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn QRfact( - n: ::std::os::raw::c_int, - h: *mut *mut realtype, - q: *mut realtype, - job: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn QRsol( - n: ::std::os::raw::c_int, - h: *mut *mut realtype, - q: *mut realtype, - b: *mut realtype, - ) -> ::std::os::raw::c_int; -} -pub const SUNMatrix_ID_SUNMATRIX_DENSE: SUNMatrix_ID = 0; -pub const SUNMatrix_ID_SUNMATRIX_MAGMADENSE: SUNMatrix_ID = 1; -pub const SUNMatrix_ID_SUNMATRIX_BAND: SUNMatrix_ID = 2; -pub const SUNMatrix_ID_SUNMATRIX_SPARSE: SUNMatrix_ID = 3; -pub const SUNMatrix_ID_SUNMATRIX_SLUNRLOC: SUNMatrix_ID = 4; -pub const SUNMatrix_ID_SUNMATRIX_CUSPARSE: SUNMatrix_ID = 5; -pub const SUNMatrix_ID_SUNMATRIX_CUSTOM: SUNMatrix_ID = 6; -pub type SUNMatrix_ID = ::std::os::raw::c_uint; -pub type SUNMatrix_Ops = *mut _generic_SUNMatrix_Ops; -pub type SUNMatrix = *mut _generic_SUNMatrix; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNMatrix_Ops { - pub getid: ::std::option::Option SUNMatrix_ID>, - pub clone: ::std::option::Option SUNMatrix>, - pub destroy: ::std::option::Option, - pub zero: ::std::option::Option ::std::os::raw::c_int>, - pub copy: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNMatrix, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub scaleadd: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: SUNMatrix, - arg3: SUNMatrix, - ) -> ::std::os::raw::c_int, - >, - pub scaleaddi: ::std::option::Option< - unsafe extern "C" fn(arg1: realtype, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub matvecsetup: - ::std::option::Option ::std::os::raw::c_int>, - pub matvec: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNMatrix, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub space: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNMatrix, - arg2: *mut ::std::os::raw::c_long, - arg3: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, -} -#[test] -fn bindgen_test_layout__generic_SUNMatrix_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNMatrix_Ops>(), - 80usize, - concat!("Size of: ", stringify!(_generic_SUNMatrix_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNMatrix_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNMatrix_Ops)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).getid as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(getid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).clone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(clone) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).destroy as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(destroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).zero as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(zero) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).copy as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(copy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).scaleadd as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(scaleadd) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).scaleaddi as *const _ as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(scaleaddi) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).matvecsetup as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(matvecsetup) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).matvec as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(matvec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).space as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(space) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNMatrix { - pub content: *mut ::std::os::raw::c_void, - pub ops: SUNMatrix_Ops, -} -#[test] -fn bindgen_test_layout__generic_SUNMatrix() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNMatrix>(), - 16usize, - concat!("Size of: ", stringify!(_generic_SUNMatrix)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNMatrix>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNMatrix)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn SUNMatNewEmpty() -> SUNMatrix; -} -extern "C" { - pub fn SUNMatFreeEmpty(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatCopyOps(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatGetID(A: SUNMatrix) -> SUNMatrix_ID; -} -extern "C" { - pub fn SUNMatClone(A: SUNMatrix) -> SUNMatrix; -} -extern "C" { - pub fn SUNMatDestroy(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatZero(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatCopy(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAdd(c: realtype, A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAddI(c: realtype, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvecSetup(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvec(A: SUNMatrix, x: N_Vector, y: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatSpace( - A: SUNMatrix, - lenrw: *mut ::std::os::raw::c_long, - leniw: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -pub const SUNLinearSolver_Type_SUNLINEARSOLVER_DIRECT: SUNLinearSolver_Type = 0; -pub const SUNLinearSolver_Type_SUNLINEARSOLVER_ITERATIVE: SUNLinearSolver_Type = 1; -pub const SUNLinearSolver_Type_SUNLINEARSOLVER_MATRIX_ITERATIVE: SUNLinearSolver_Type = 2; -pub type SUNLinearSolver_Type = ::std::os::raw::c_uint; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_BAND: SUNLinearSolver_ID = 0; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_DENSE: SUNLinearSolver_ID = 1; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_KLU: SUNLinearSolver_ID = 2; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_LAPACKBAND: SUNLinearSolver_ID = 3; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_LAPACKDENSE: SUNLinearSolver_ID = 4; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_PCG: SUNLinearSolver_ID = 5; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPBCGS: SUNLinearSolver_ID = 6; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPFGMR: SUNLinearSolver_ID = 7; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPGMR: SUNLinearSolver_ID = 8; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SPTFQMR: SUNLinearSolver_ID = 9; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SUPERLUDIST: SUNLinearSolver_ID = 10; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_SUPERLUMT: SUNLinearSolver_ID = 11; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_CUSOLVERSP_BATCHQR: SUNLinearSolver_ID = 12; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_MAGMADENSE: SUNLinearSolver_ID = 13; -pub const SUNLinearSolver_ID_SUNLINEARSOLVER_CUSTOM: SUNLinearSolver_ID = 14; -pub type SUNLinearSolver_ID = ::std::os::raw::c_uint; -pub type SUNLinearSolver_Ops = *mut _generic_SUNLinearSolver_Ops; -pub type SUNLinearSolver = *mut _generic_SUNLinearSolver; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNLinearSolver_Ops { - pub gettype: - ::std::option::Option SUNLinearSolver_Type>, - pub getid: - ::std::option::Option SUNLinearSolver_ID>, - pub setatimes: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: *mut ::std::os::raw::c_void, - arg3: ATimesFn, - ) -> ::std::os::raw::c_int, - >, - pub setpreconditioner: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: *mut ::std::os::raw::c_void, - arg3: PSetupFn, - arg4: PSolveFn, - ) -> ::std::os::raw::c_int, - >, - pub setscalingvectors: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub initialize: - ::std::option::Option ::std::os::raw::c_int>, - pub setup: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNLinearSolver, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub solve: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: SUNMatrix, - arg3: N_Vector, - arg4: N_Vector, - arg5: realtype, - ) -> ::std::os::raw::c_int, - >, - pub numiters: - ::std::option::Option ::std::os::raw::c_int>, - pub resnorm: ::std::option::Option realtype>, - pub lastflag: - ::std::option::Option sunindextype>, - pub space: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNLinearSolver, - arg2: *mut ::std::os::raw::c_long, - arg3: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, - pub resid: ::std::option::Option N_Vector>, - pub free: - ::std::option::Option ::std::os::raw::c_int>, -} -#[test] -fn bindgen_test_layout__generic_SUNLinearSolver_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNLinearSolver_Ops>(), - 112usize, - concat!("Size of: ", stringify!(_generic_SUNLinearSolver_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNLinearSolver_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNLinearSolver_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).gettype as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(gettype) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).getid as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(getid) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setatimes as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setatimes) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setpreconditioner as *const _ - as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setpreconditioner) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setscalingvectors as *const _ - as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setscalingvectors) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).initialize as *const _ as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(initialize) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).setup as *const _ as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(setup) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).solve as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(solve) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).numiters as *const _ as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(numiters) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).resnorm as *const _ as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(resnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).lastflag as *const _ as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(lastflag) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).space as *const _ as usize - }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(space) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).resid as *const _ as usize - }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(resid) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver_Ops>())).free as *const _ as usize - }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver_Ops), - "::", - stringify!(free) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNLinearSolver { - pub content: *mut ::std::os::raw::c_void, - pub ops: SUNLinearSolver_Ops, -} -#[test] -fn bindgen_test_layout__generic_SUNLinearSolver() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNLinearSolver>(), - 16usize, - concat!("Size of: ", stringify!(_generic_SUNLinearSolver)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNLinearSolver>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNLinearSolver)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNLinearSolver>())).content as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNLinearSolver>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNLinearSolver), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn SUNLinSolNewEmpty() -> SUNLinearSolver; -} -extern "C" { - pub fn SUNLinSolFreeEmpty(S: SUNLinearSolver); -} -extern "C" { - pub fn SUNLinSolGetType(S: SUNLinearSolver) -> SUNLinearSolver_Type; -} -extern "C" { - pub fn SUNLinSolGetID(S: SUNLinearSolver) -> SUNLinearSolver_ID; -} -extern "C" { - pub fn SUNLinSolSetATimes( - S: SUNLinearSolver, - A_data: *mut ::std::os::raw::c_void, - ATimes: ATimesFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetPreconditioner( - S: SUNLinearSolver, - P_data: *mut ::std::os::raw::c_void, - Pset: PSetupFn, - Psol: PSolveFn, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetScalingVectors( - S: SUNLinearSolver, - s1: N_Vector, - s2: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolInitialize(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetup(S: SUNLinearSolver, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSolve( - S: SUNLinearSolver, - A: SUNMatrix, - x: N_Vector, - b: N_Vector, - tol: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolNumIters(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolResNorm(S: SUNLinearSolver) -> realtype; -} -extern "C" { - pub fn SUNLinSolResid(S: SUNLinearSolver) -> N_Vector; -} -extern "C" { - pub fn SUNLinSolLastFlag(S: SUNLinearSolver) -> sunindextype; -} -extern "C" { - pub fn SUNLinSolSpace( - S: SUNLinearSolver, - lenrwLS: *mut ::std::os::raw::c_long, - leniwLS: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolFree(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _DlsMat { - pub type_: ::std::os::raw::c_int, - pub M: sunindextype, - pub N: sunindextype, - pub ldim: sunindextype, - pub mu: sunindextype, - pub ml: sunindextype, - pub s_mu: sunindextype, - pub data: *mut realtype, - pub ldata: sunindextype, - pub cols: *mut *mut realtype, -} -#[test] -fn bindgen_test_layout__DlsMat() { - assert_eq!( - ::std::mem::size_of::<_DlsMat>(), - 80usize, - concat!("Size of: ", stringify!(_DlsMat)) - ); - assert_eq!( - ::std::mem::align_of::<_DlsMat>(), - 8usize, - concat!("Alignment of ", stringify!(_DlsMat)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).type_ as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(type_) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).M as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(M) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).N as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(N) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).ldim as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(ldim) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).mu as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(mu) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).ml as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(ml) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).s_mu as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(s_mu) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).data as *const _ as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).ldata as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(ldata) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_DlsMat>())).cols as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_DlsMat), - "::", - stringify!(cols) - ) - ); -} -pub type DlsMat = *mut _DlsMat; -extern "C" { - pub fn NewDenseMat(M: sunindextype, N: sunindextype) -> DlsMat; -} -extern "C" { - pub fn NewBandMat( - N: sunindextype, - mu: sunindextype, - ml: sunindextype, - smu: sunindextype, - ) -> DlsMat; -} -extern "C" { - pub fn DestroyMat(A: DlsMat); -} -extern "C" { - pub fn NewIntArray(N: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn NewIndexArray(N: sunindextype) -> *mut sunindextype; -} -extern "C" { - pub fn NewRealArray(N: sunindextype) -> *mut realtype; -} -extern "C" { - pub fn DestroyArray(p: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn AddIdentity(A: DlsMat); -} -extern "C" { - pub fn SetToZero(A: DlsMat); -} -extern "C" { - pub fn PrintMat(A: DlsMat, outfile: *mut FILE); -} -extern "C" { - pub fn newDenseMat(m: sunindextype, n: sunindextype) -> *mut *mut realtype; -} -extern "C" { - pub fn newBandMat(n: sunindextype, smu: sunindextype, ml: sunindextype) -> *mut *mut realtype; -} -extern "C" { - pub fn destroyMat(a: *mut *mut realtype); -} -extern "C" { - pub fn newIntArray(n: ::std::os::raw::c_int) -> *mut ::std::os::raw::c_int; -} -extern "C" { - pub fn newIndexArray(n: sunindextype) -> *mut sunindextype; -} -extern "C" { - pub fn newRealArray(m: sunindextype) -> *mut realtype; -} -extern "C" { - pub fn destroyArray(v: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn DenseGETRF(A: DlsMat, p: *mut sunindextype) -> sunindextype; -} -extern "C" { - pub fn DenseGETRS(A: DlsMat, p: *mut sunindextype, b: *mut realtype); -} -extern "C" { - pub fn denseGETRF( - a: *mut *mut realtype, - m: sunindextype, - n: sunindextype, - p: *mut sunindextype, - ) -> sunindextype; -} -extern "C" { - pub fn denseGETRS( - a: *mut *mut realtype, - n: sunindextype, - p: *mut sunindextype, - b: *mut realtype, - ); -} -extern "C" { - pub fn DensePOTRF(A: DlsMat) -> sunindextype; -} -extern "C" { - pub fn DensePOTRS(A: DlsMat, b: *mut realtype); -} -extern "C" { - pub fn densePOTRF(a: *mut *mut realtype, m: sunindextype) -> sunindextype; -} -extern "C" { - pub fn densePOTRS(a: *mut *mut realtype, m: sunindextype, b: *mut realtype); -} -extern "C" { - pub fn DenseGEQRF(A: DlsMat, beta: *mut realtype, wrk: *mut realtype) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn DenseORMQR( - A: DlsMat, - beta: *mut realtype, - vn: *mut realtype, - vm: *mut realtype, - wrk: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn denseGEQRF( - a: *mut *mut realtype, - m: sunindextype, - n: sunindextype, - beta: *mut realtype, - wrk: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn denseORMQR( - a: *mut *mut realtype, - m: sunindextype, - n: sunindextype, - beta: *mut realtype, - v: *mut realtype, - w: *mut realtype, - wrk: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn DenseCopy(A: DlsMat, B: DlsMat); -} -extern "C" { - pub fn denseCopy( - a: *mut *mut realtype, - b: *mut *mut realtype, - m: sunindextype, - n: sunindextype, - ); -} -extern "C" { - pub fn DenseScale(c: realtype, A: DlsMat); -} -extern "C" { - pub fn denseScale(c: realtype, a: *mut *mut realtype, m: sunindextype, n: sunindextype); -} -extern "C" { - pub fn denseAddIdentity(a: *mut *mut realtype, n: sunindextype); -} -extern "C" { - pub fn DenseMatvec(A: DlsMat, x: *mut realtype, y: *mut realtype); -} -extern "C" { - pub fn denseMatvec( - a: *mut *mut realtype, - x: *mut realtype, - y: *mut realtype, - m: sunindextype, - n: sunindextype, - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _SUNMatrixContent_Dense { - pub M: sunindextype, - pub N: sunindextype, - pub data: *mut realtype, - pub ldata: sunindextype, - pub cols: *mut *mut realtype, -} -#[test] -fn bindgen_test_layout__SUNMatrixContent_Dense() { - assert_eq!( - ::std::mem::size_of::<_SUNMatrixContent_Dense>(), - 40usize, - concat!("Size of: ", stringify!(_SUNMatrixContent_Dense)) - ); - assert_eq!( - ::std::mem::align_of::<_SUNMatrixContent_Dense>(), - 8usize, - concat!("Alignment of ", stringify!(_SUNMatrixContent_Dense)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).M as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(M) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).N as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(N) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).data as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).ldata as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(ldata) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).cols as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(cols) - ) - ); -} -pub type SUNMatrixContent_Dense = *mut _SUNMatrixContent_Dense; -extern "C" { - pub fn SUNDenseMatrix(M: sunindextype, N: sunindextype) -> SUNMatrix; -} -extern "C" { - pub fn SUNDenseMatrix_Print(A: SUNMatrix, outfile: *mut FILE); -} -extern "C" { - pub fn SUNDenseMatrix_Rows(A: SUNMatrix) -> sunindextype; -} -extern "C" { - pub fn SUNDenseMatrix_Columns(A: SUNMatrix) -> sunindextype; -} -extern "C" { - pub fn SUNDenseMatrix_LData(A: SUNMatrix) -> sunindextype; -} -extern "C" { - pub fn SUNDenseMatrix_Data(A: SUNMatrix) -> *mut realtype; -} -extern "C" { - pub fn SUNDenseMatrix_Cols(A: SUNMatrix) -> *mut *mut realtype; -} -extern "C" { - pub fn SUNDenseMatrix_Column(A: SUNMatrix, j: sunindextype) -> *mut realtype; -} -extern "C" { - pub fn SUNMatGetID_Dense(A: SUNMatrix) -> SUNMatrix_ID; -} -extern "C" { - pub fn SUNMatClone_Dense(A: SUNMatrix) -> SUNMatrix; -} -extern "C" { - pub fn SUNMatDestroy_Dense(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatZero_Dense(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatCopy_Dense(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAdd_Dense(c: realtype, A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAddI_Dense(c: realtype, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvec_Dense(A: SUNMatrix, x: N_Vector, y: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatSpace_Dense( - A: SUNMatrix, - lenrw: *mut ::std::os::raw::c_long, - leniw: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _SUNLinearSolverContent_Dense { - pub N: sunindextype, - pub pivots: *mut sunindextype, - pub last_flag: sunindextype, -} -#[test] -fn bindgen_test_layout__SUNLinearSolverContent_Dense() { - assert_eq!( - ::std::mem::size_of::<_SUNLinearSolverContent_Dense>(), - 24usize, - concat!("Size of: ", stringify!(_SUNLinearSolverContent_Dense)) - ); - assert_eq!( - ::std::mem::align_of::<_SUNLinearSolverContent_Dense>(), - 8usize, - concat!("Alignment of ", stringify!(_SUNLinearSolverContent_Dense)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNLinearSolverContent_Dense>())).N as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_SUNLinearSolverContent_Dense), - "::", - stringify!(N) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_SUNLinearSolverContent_Dense>())).pivots as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_SUNLinearSolverContent_Dense), - "::", - stringify!(pivots) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_SUNLinearSolverContent_Dense>())).last_flag as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_SUNLinearSolverContent_Dense), - "::", - stringify!(last_flag) - ) - ); -} -pub type SUNLinearSolverContent_Dense = *mut _SUNLinearSolverContent_Dense; -extern "C" { - pub fn SUNLinSol_Dense(y: N_Vector, A: SUNMatrix) -> SUNLinearSolver; -} -extern "C" { - pub fn SUNDenseLinearSolver(y: N_Vector, A: SUNMatrix) -> SUNLinearSolver; -} -extern "C" { - pub fn SUNLinSolGetType_Dense(S: SUNLinearSolver) -> SUNLinearSolver_Type; -} -extern "C" { - pub fn SUNLinSolGetID_Dense(S: SUNLinearSolver) -> SUNLinearSolver_ID; -} -extern "C" { - pub fn SUNLinSolInitialize_Dense(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSetup_Dense(S: SUNLinearSolver, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolSolve_Dense( - S: SUNLinearSolver, - A: SUNMatrix, - x: N_Vector, - b: N_Vector, - tol: realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolLastFlag_Dense(S: SUNLinearSolver) -> sunindextype; -} -extern "C" { - pub fn SUNLinSolSpace_Dense( - S: SUNLinearSolver, - lenrwLS: *mut ::std::os::raw::c_long, - leniwLS: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNLinSolFree_Dense(S: SUNLinearSolver) -> ::std::os::raw::c_int; -} -pub type __builtin_va_list = [__va_list_tag; 1usize]; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __va_list_tag { - pub gp_offset: ::std::os::raw::c_uint, - pub fp_offset: ::std::os::raw::c_uint, - pub overflow_arg_area: *mut ::std::os::raw::c_void, - pub reg_save_area: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout___va_list_tag() { - assert_eq!( - ::std::mem::size_of::<__va_list_tag>(), - 24usize, - concat!("Size of: ", stringify!(__va_list_tag)) - ); - assert_eq!( - ::std::mem::align_of::<__va_list_tag>(), - 8usize, - concat!("Alignment of ", stringify!(__va_list_tag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/cvode-5-sys/src/sunmatrix_dense.rs b/cvode-5-sys/src/sunmatrix_dense.rs deleted file mode 100644 index d140d1d..0000000 --- a/cvode-5-sys/src/sunmatrix_dense.rs +++ /dev/null @@ -1,4914 +0,0 @@ -/* automatically generated by rust-bindgen 0.55.1 */ - -pub const _STDIO_H: u32 = 1; -pub const _FEATURES_H: u32 = 1; -pub const _DEFAULT_SOURCE: u32 = 1; -pub const __GLIBC_USE_ISOC2X: u32 = 0; -pub const __USE_ISOC11: u32 = 1; -pub const __USE_ISOC99: u32 = 1; -pub const __USE_ISOC95: u32 = 1; -pub const __USE_POSIX_IMPLICITLY: u32 = 1; -pub const _POSIX_SOURCE: u32 = 1; -pub const _POSIX_C_SOURCE: u32 = 200809; -pub const __USE_POSIX: u32 = 1; -pub const __USE_POSIX2: u32 = 1; -pub const __USE_POSIX199309: u32 = 1; -pub const __USE_POSIX199506: u32 = 1; -pub const __USE_XOPEN2K: u32 = 1; -pub const __USE_XOPEN2K8: u32 = 1; -pub const _ATFILE_SOURCE: u32 = 1; -pub const __USE_MISC: u32 = 1; -pub const __USE_ATFILE: u32 = 1; -pub const __USE_FORTIFY_LEVEL: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_GETS: u32 = 0; -pub const __GLIBC_USE_DEPRECATED_SCANF: u32 = 0; -pub const _STDC_PREDEF_H: u32 = 1; -pub const __STDC_IEC_559__: u32 = 1; -pub const __STDC_IEC_559_COMPLEX__: u32 = 1; -pub const __STDC_ISO_10646__: u32 = 201706; -pub const __GNU_LIBRARY__: u32 = 6; -pub const __GLIBC__: u32 = 2; -pub const __GLIBC_MINOR__: u32 = 33; -pub const _SYS_CDEFS_H: u32 = 1; -pub const __glibc_c99_flexarr_available: u32 = 1; -pub const __WORDSIZE: u32 = 64; -pub const __WORDSIZE_TIME64_COMPAT32: u32 = 1; -pub const __SYSCALL_WORDSIZE: u32 = 64; -pub const __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI: u32 = 0; -pub const __HAVE_GENERIC_SELECTION: u32 = 1; -pub const __GLIBC_USE_LIB_EXT2: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_BFP_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT: u32 = 0; -pub const __GLIBC_USE_IEC_60559_FUNCS_EXT_C2X: u32 = 0; -pub const __GLIBC_USE_IEC_60559_TYPES_EXT: u32 = 0; -pub const __GNUC_VA_LIST: u32 = 1; -pub const _BITS_TYPES_H: u32 = 1; -pub const __TIMESIZE: u32 = 64; -pub const _BITS_TYPESIZES_H: u32 = 1; -pub const __OFF_T_MATCHES_OFF64_T: u32 = 1; -pub const __INO_T_MATCHES_INO64_T: u32 = 1; -pub const __RLIM_T_MATCHES_RLIM64_T: u32 = 1; -pub const __STATFS_MATCHES_STATFS64: u32 = 1; -pub const __KERNEL_OLD_TIMEVAL_MATCHES_TIMEVAL64: u32 = 1; -pub const __FD_SETSIZE: u32 = 1024; -pub const _BITS_TIME64_H: u32 = 1; -pub const _____fpos_t_defined: u32 = 1; -pub const ____mbstate_t_defined: u32 = 1; -pub const _____fpos64_t_defined: u32 = 1; -pub const ____FILE_defined: u32 = 1; -pub const __FILE_defined: u32 = 1; -pub const __struct_FILE_defined: u32 = 1; -pub const _IO_EOF_SEEN: u32 = 16; -pub const _IO_ERR_SEEN: u32 = 32; -pub const _IO_USER_LOCK: u32 = 32768; -pub const _IOFBF: u32 = 0; -pub const _IOLBF: u32 = 1; -pub const _IONBF: u32 = 2; -pub const BUFSIZ: u32 = 8192; -pub const EOF: i32 = -1; -pub const SEEK_SET: u32 = 0; -pub const SEEK_CUR: u32 = 1; -pub const SEEK_END: u32 = 2; -pub const P_tmpdir: &'static [u8; 5usize] = b"/tmp\0"; -pub const _BITS_STDIO_LIM_H: u32 = 1; -pub const L_tmpnam: u32 = 20; -pub const TMP_MAX: u32 = 238328; -pub const FILENAME_MAX: u32 = 4096; -pub const L_ctermid: u32 = 9; -pub const FOPEN_MAX: u32 = 16; -pub const __HAVE_FLOAT128: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128: u32 = 0; -pub const __HAVE_FLOAT64X: u32 = 1; -pub const __HAVE_FLOAT64X_LONG_DOUBLE: u32 = 1; -pub const __HAVE_FLOAT16: u32 = 0; -pub const __HAVE_FLOAT32: u32 = 1; -pub const __HAVE_FLOAT64: u32 = 1; -pub const __HAVE_FLOAT32X: u32 = 1; -pub const __HAVE_FLOAT128X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT16: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT32X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT64X: u32 = 0; -pub const __HAVE_DISTINCT_FLOAT128X: u32 = 0; -pub const __HAVE_FLOATN_NOT_TYPEDEF: u32 = 0; -pub const SUNDIALS_VERSION: &'static [u8; 6usize] = b"5.7.0\0"; -pub const SUNDIALS_VERSION_MAJOR: u32 = 5; -pub const SUNDIALS_VERSION_MINOR: u32 = 7; -pub const SUNDIALS_VERSION_PATCH: u32 = 0; -pub const SUNDIALS_VERSION_LABEL: &'static [u8; 1usize] = b"\0"; -pub const SUNDIALS_DOUBLE_PRECISION: u32 = 1; -pub const SUNDIALS_INT64_T: u32 = 1; -pub const SUNDIALS_MPI_ENABLED: u32 = 1; -pub const SUNDIALS_ARKODE: u32 = 1; -pub const SUNDIALS_CVODE: u32 = 1; -pub const SUNDIALS_CVODES: u32 = 1; -pub const SUNDIALS_IDA: u32 = 1; -pub const SUNDIALS_IDAS: u32 = 1; -pub const SUNDIALS_KINSOL: u32 = 1; -pub const SUNDIALS_NVECTOR_SERIAL: u32 = 1; -pub const SUNDIALS_NVECTOR_MANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIMANYVECTOR: u32 = 1; -pub const SUNDIALS_NVECTOR_MPIPLUSX: u32 = 1; -pub const SUNDIALS_NVECTOR_PARALLEL: u32 = 1; -pub const SUNDIALS_NVECTOR_OPENMP: u32 = 1; -pub const SUNDIALS_NVECTOR_PTHREADS: u32 = 1; -pub const SUNDIALS_SUNMATRIX_BAND: u32 = 1; -pub const SUNDIALS_SUNMATRIX_DENSE: u32 = 1; -pub const SUNDIALS_SUNMATRIX_SPARSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_BAND: u32 = 1; -pub const SUNDIALS_SUNLINSOL_DENSE: u32 = 1; -pub const SUNDIALS_SUNLINSOL_PCG: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPBCGS: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPFGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPGMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_SPTFQMR: u32 = 1; -pub const SUNDIALS_SUNLINSOL_KLU: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_NEWTON: u32 = 1; -pub const SUNDIALS_SUNNONLINSOL_FIXEDPOINT: u32 = 1; -pub const SUNDIALS_MPI_COMM_F2C: u32 = 1; -pub const _STDINT_H: u32 = 1; -pub const _BITS_WCHAR_H: u32 = 1; -pub const _BITS_STDINT_INTN_H: u32 = 1; -pub const _BITS_STDINT_UINTN_H: u32 = 1; -pub const INT8_MIN: i32 = -128; -pub const INT16_MIN: i32 = -32768; -pub const INT32_MIN: i32 = -2147483648; -pub const INT8_MAX: u32 = 127; -pub const INT16_MAX: u32 = 32767; -pub const INT32_MAX: u32 = 2147483647; -pub const UINT8_MAX: u32 = 255; -pub const UINT16_MAX: u32 = 65535; -pub const UINT32_MAX: u32 = 4294967295; -pub const INT_LEAST8_MIN: i32 = -128; -pub const INT_LEAST16_MIN: i32 = -32768; -pub const INT_LEAST32_MIN: i32 = -2147483648; -pub const INT_LEAST8_MAX: u32 = 127; -pub const INT_LEAST16_MAX: u32 = 32767; -pub const INT_LEAST32_MAX: u32 = 2147483647; -pub const UINT_LEAST8_MAX: u32 = 255; -pub const UINT_LEAST16_MAX: u32 = 65535; -pub const UINT_LEAST32_MAX: u32 = 4294967295; -pub const INT_FAST8_MIN: i32 = -128; -pub const INT_FAST16_MIN: i64 = -9223372036854775808; -pub const INT_FAST32_MIN: i64 = -9223372036854775808; -pub const INT_FAST8_MAX: u32 = 127; -pub const INT_FAST16_MAX: u64 = 9223372036854775807; -pub const INT_FAST32_MAX: u64 = 9223372036854775807; -pub const UINT_FAST8_MAX: u32 = 255; -pub const UINT_FAST16_MAX: i32 = -1; -pub const UINT_FAST32_MAX: i32 = -1; -pub const INTPTR_MIN: i64 = -9223372036854775808; -pub const INTPTR_MAX: u64 = 9223372036854775807; -pub const UINTPTR_MAX: i32 = -1; -pub const PTRDIFF_MIN: i64 = -9223372036854775808; -pub const PTRDIFF_MAX: u64 = 9223372036854775807; -pub const SIG_ATOMIC_MIN: i32 = -2147483648; -pub const SIG_ATOMIC_MAX: u32 = 2147483647; -pub const SIZE_MAX: i32 = -1; -pub const WINT_MIN: u32 = 0; -pub const WINT_MAX: u32 = 4294967295; -pub const SUNFALSE: u32 = 0; -pub const SUNTRUE: u32 = 1; -pub const _STDLIB_H: u32 = 1; -pub const WNOHANG: u32 = 1; -pub const WUNTRACED: u32 = 2; -pub const WSTOPPED: u32 = 2; -pub const WEXITED: u32 = 4; -pub const WCONTINUED: u32 = 8; -pub const WNOWAIT: u32 = 16777216; -pub const __WNOTHREAD: u32 = 536870912; -pub const __WALL: u32 = 1073741824; -pub const __WCLONE: u32 = 2147483648; -pub const __W_CONTINUED: u32 = 65535; -pub const __WCOREFLAG: u32 = 128; -pub const __ldiv_t_defined: u32 = 1; -pub const __lldiv_t_defined: u32 = 1; -pub const RAND_MAX: u32 = 2147483647; -pub const EXIT_FAILURE: u32 = 1; -pub const EXIT_SUCCESS: u32 = 0; -pub const _SYS_TYPES_H: u32 = 1; -pub const __clock_t_defined: u32 = 1; -pub const __clockid_t_defined: u32 = 1; -pub const __time_t_defined: u32 = 1; -pub const __timer_t_defined: u32 = 1; -pub const __BIT_TYPES_DEFINED__: u32 = 1; -pub const _ENDIAN_H: u32 = 1; -pub const _BITS_ENDIAN_H: u32 = 1; -pub const __LITTLE_ENDIAN: u32 = 1234; -pub const __BIG_ENDIAN: u32 = 4321; -pub const __PDP_ENDIAN: u32 = 3412; -pub const _BITS_ENDIANNESS_H: u32 = 1; -pub const __BYTE_ORDER: u32 = 1234; -pub const __FLOAT_WORD_ORDER: u32 = 1234; -pub const LITTLE_ENDIAN: u32 = 1234; -pub const BIG_ENDIAN: u32 = 4321; -pub const PDP_ENDIAN: u32 = 3412; -pub const BYTE_ORDER: u32 = 1234; -pub const _BITS_BYTESWAP_H: u32 = 1; -pub const _BITS_UINTN_IDENTITY_H: u32 = 1; -pub const _SYS_SELECT_H: u32 = 1; -pub const __sigset_t_defined: u32 = 1; -pub const __timeval_defined: u32 = 1; -pub const _STRUCT_TIMESPEC: u32 = 1; -pub const FD_SETSIZE: u32 = 1024; -pub const _BITS_PTHREADTYPES_COMMON_H: u32 = 1; -pub const _THREAD_SHARED_TYPES_H: u32 = 1; -pub const _BITS_PTHREADTYPES_ARCH_H: u32 = 1; -pub const __SIZEOF_PTHREAD_MUTEX_T: u32 = 40; -pub const __SIZEOF_PTHREAD_ATTR_T: u32 = 56; -pub const __SIZEOF_PTHREAD_RWLOCK_T: u32 = 56; -pub const __SIZEOF_PTHREAD_BARRIER_T: u32 = 32; -pub const __SIZEOF_PTHREAD_MUTEXATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_COND_T: u32 = 48; -pub const __SIZEOF_PTHREAD_CONDATTR_T: u32 = 4; -pub const __SIZEOF_PTHREAD_RWLOCKATTR_T: u32 = 8; -pub const __SIZEOF_PTHREAD_BARRIERATTR_T: u32 = 4; -pub const _THREAD_MUTEX_INTERNAL_H: u32 = 1; -pub const __PTHREAD_MUTEX_HAVE_PREV: u32 = 1; -pub const __have_pthread_attr_t: u32 = 1; -pub const _ALLOCA_H: u32 = 1; -pub const SUNMAT_SUCCESS: u32 = 0; -pub const SUNMAT_ILL_INPUT: i32 = -701; -pub const SUNMAT_MEM_FAIL: i32 = -702; -pub const SUNMAT_OPERATION_FAIL: i32 = -703; -pub const SUNMAT_MATVEC_SETUP_REQUIRED: i32 = -704; -pub type size_t = ::std::os::raw::c_ulong; -pub type va_list = __builtin_va_list; -pub type __gnuc_va_list = __builtin_va_list; -pub type __u_char = ::std::os::raw::c_uchar; -pub type __u_short = ::std::os::raw::c_ushort; -pub type __u_int = ::std::os::raw::c_uint; -pub type __u_long = ::std::os::raw::c_ulong; -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_long; -pub type __uint64_t = ::std::os::raw::c_ulong; -pub type __int_least8_t = __int8_t; -pub type __uint_least8_t = __uint8_t; -pub type __int_least16_t = __int16_t; -pub type __uint_least16_t = __uint16_t; -pub type __int_least32_t = __int32_t; -pub type __uint_least32_t = __uint32_t; -pub type __int_least64_t = __int64_t; -pub type __uint_least64_t = __uint64_t; -pub type __quad_t = ::std::os::raw::c_long; -pub type __u_quad_t = ::std::os::raw::c_ulong; -pub type __intmax_t = ::std::os::raw::c_long; -pub type __uintmax_t = ::std::os::raw::c_ulong; -pub type __dev_t = ::std::os::raw::c_ulong; -pub type __uid_t = ::std::os::raw::c_uint; -pub type __gid_t = ::std::os::raw::c_uint; -pub type __ino_t = ::std::os::raw::c_ulong; -pub type __ino64_t = ::std::os::raw::c_ulong; -pub type __mode_t = ::std::os::raw::c_uint; -pub type __nlink_t = ::std::os::raw::c_ulong; -pub type __off_t = ::std::os::raw::c_long; -pub type __off64_t = ::std::os::raw::c_long; -pub type __pid_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __fsid_t { - pub __val: [::std::os::raw::c_int; 2usize], -} -#[test] -fn bindgen_test_layout___fsid_t() { - assert_eq!( - ::std::mem::size_of::<__fsid_t>(), - 8usize, - concat!("Size of: ", stringify!(__fsid_t)) - ); - assert_eq!( - ::std::mem::align_of::<__fsid_t>(), - 4usize, - concat!("Alignment of ", stringify!(__fsid_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__fsid_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__fsid_t), - "::", - stringify!(__val) - ) - ); -} -pub type __clock_t = ::std::os::raw::c_long; -pub type __rlim_t = ::std::os::raw::c_ulong; -pub type __rlim64_t = ::std::os::raw::c_ulong; -pub type __id_t = ::std::os::raw::c_uint; -pub type __time_t = ::std::os::raw::c_long; -pub type __useconds_t = ::std::os::raw::c_uint; -pub type __suseconds_t = ::std::os::raw::c_long; -pub type __suseconds64_t = ::std::os::raw::c_long; -pub type __daddr_t = ::std::os::raw::c_int; -pub type __key_t = ::std::os::raw::c_int; -pub type __clockid_t = ::std::os::raw::c_int; -pub type __timer_t = *mut ::std::os::raw::c_void; -pub type __blksize_t = ::std::os::raw::c_long; -pub type __blkcnt_t = ::std::os::raw::c_long; -pub type __blkcnt64_t = ::std::os::raw::c_long; -pub type __fsblkcnt_t = ::std::os::raw::c_ulong; -pub type __fsblkcnt64_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt_t = ::std::os::raw::c_ulong; -pub type __fsfilcnt64_t = ::std::os::raw::c_ulong; -pub type __fsword_t = ::std::os::raw::c_long; -pub type __ssize_t = ::std::os::raw::c_long; -pub type __syscall_slong_t = ::std::os::raw::c_long; -pub type __syscall_ulong_t = ::std::os::raw::c_ulong; -pub type __loff_t = __off64_t; -pub type __caddr_t = *mut ::std::os::raw::c_char; -pub type __intptr_t = ::std::os::raw::c_long; -pub type __socklen_t = ::std::os::raw::c_uint; -pub type __sig_atomic_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __mbstate_t { - pub __count: ::std::os::raw::c_int, - pub __value: __mbstate_t__bindgen_ty_1, -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __mbstate_t__bindgen_ty_1 { - pub __wch: ::std::os::raw::c_uint, - pub __wchb: [::std::os::raw::c_char; 4usize], - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout___mbstate_t__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Size of: ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t__bindgen_ty_1>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t__bindgen_ty_1)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wch as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wch) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__mbstate_t__bindgen_ty_1>())).__wchb as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t__bindgen_ty_1), - "::", - stringify!(__wchb) - ) - ); -} -#[test] -fn bindgen_test_layout___mbstate_t() { - assert_eq!( - ::std::mem::size_of::<__mbstate_t>(), - 8usize, - concat!("Size of: ", stringify!(__mbstate_t)) - ); - assert_eq!( - ::std::mem::align_of::<__mbstate_t>(), - 4usize, - concat!("Alignment of ", stringify!(__mbstate_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__count as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__value as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__mbstate_t), - "::", - stringify!(__value) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos_t { - pub __pos: __off_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos_t = _G_fpos_t; -#[repr(C)] -#[derive(Copy, Clone)] -pub struct _G_fpos64_t { - pub __pos: __off64_t, - pub __state: __mbstate_t, -} -#[test] -fn bindgen_test_layout__G_fpos64_t() { - assert_eq!( - ::std::mem::size_of::<_G_fpos64_t>(), - 16usize, - concat!("Size of: ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - ::std::mem::align_of::<_G_fpos64_t>(), - 8usize, - concat!("Alignment of ", stringify!(_G_fpos64_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__pos as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__pos) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_G_fpos64_t>())).__state as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_G_fpos64_t), - "::", - stringify!(__state) - ) - ); -} -pub type __fpos64_t = _G_fpos64_t; -pub type __FILE = _IO_FILE; -pub type FILE = _IO_FILE; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_marker { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_codecvt { - _unused: [u8; 0], -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_wide_data { - _unused: [u8; 0], -} -pub type _IO_lock_t = ::std::os::raw::c_void; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _IO_FILE { - pub _flags: ::std::os::raw::c_int, - pub _IO_read_ptr: *mut ::std::os::raw::c_char, - pub _IO_read_end: *mut ::std::os::raw::c_char, - pub _IO_read_base: *mut ::std::os::raw::c_char, - pub _IO_write_base: *mut ::std::os::raw::c_char, - pub _IO_write_ptr: *mut ::std::os::raw::c_char, - pub _IO_write_end: *mut ::std::os::raw::c_char, - pub _IO_buf_base: *mut ::std::os::raw::c_char, - pub _IO_buf_end: *mut ::std::os::raw::c_char, - pub _IO_save_base: *mut ::std::os::raw::c_char, - pub _IO_backup_base: *mut ::std::os::raw::c_char, - pub _IO_save_end: *mut ::std::os::raw::c_char, - pub _markers: *mut _IO_marker, - pub _chain: *mut _IO_FILE, - pub _fileno: ::std::os::raw::c_int, - pub _flags2: ::std::os::raw::c_int, - pub _old_offset: __off_t, - pub _cur_column: ::std::os::raw::c_ushort, - pub _vtable_offset: ::std::os::raw::c_schar, - pub _shortbuf: [::std::os::raw::c_char; 1usize], - pub _lock: *mut _IO_lock_t, - pub _offset: __off64_t, - pub _codecvt: *mut _IO_codecvt, - pub _wide_data: *mut _IO_wide_data, - pub _freeres_list: *mut _IO_FILE, - pub _freeres_buf: *mut ::std::os::raw::c_void, - pub __pad5: size_t, - pub _mode: ::std::os::raw::c_int, - pub _unused2: [::std::os::raw::c_char; 20usize], -} -#[test] -fn bindgen_test_layout__IO_FILE() { - assert_eq!( - ::std::mem::size_of::<_IO_FILE>(), - 216usize, - concat!("Size of: ", stringify!(_IO_FILE)) - ); - assert_eq!( - ::std::mem::align_of::<_IO_FILE>(), - 8usize, - concat!("Alignment of ", stringify!(_IO_FILE)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_ptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_end as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_read_base as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_read_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_base as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_ptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_write_end as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_write_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_base as *const _ as usize }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_buf_end as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_buf_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_base as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_backup_base as *const _ as usize }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_backup_base) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._IO_save_end as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_IO_save_end) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._markers as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_markers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._chain as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_chain) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._fileno as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_fileno) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._flags2 as *const _ as usize }, - 116usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_flags2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._old_offset as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_old_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._cur_column as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_cur_column) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._vtable_offset as *const _ as usize }, - 130usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_vtable_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._shortbuf as *const _ as usize }, - 131usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_shortbuf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._lock as *const _ as usize }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._offset as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._codecvt as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_codecvt) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._wide_data as *const _ as usize }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_wide_data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_list as *const _ as usize }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_list) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._freeres_buf as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_freeres_buf) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>())).__pad5 as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(__pad5) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._mode as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_mode) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_IO_FILE>()))._unused2 as *const _ as usize }, - 196usize, - concat!( - "Offset of field: ", - stringify!(_IO_FILE), - "::", - stringify!(_unused2) - ) - ); -} -pub type off_t = __off_t; -pub type ssize_t = __ssize_t; -pub type fpos_t = __fpos_t; -extern "C" { - pub static mut stdin: *mut FILE; -} -extern "C" { - pub static mut stdout: *mut FILE; -} -extern "C" { - pub static mut stderr: *mut FILE; -} -extern "C" { - pub fn remove(__filename: *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 renameat( - __oldfd: ::std::os::raw::c_int, - __old: *const ::std::os::raw::c_char, - __newfd: ::std::os::raw::c_int, - __new: *const ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn tmpfile() -> *mut FILE; -} -extern "C" { - pub fn tmpnam(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tmpnam_r(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn tempnam( - __dir: *const ::std::os::raw::c_char, - __pfx: *const ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fclose(__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 fflush_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn freopen( - __filename: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - __stream: *mut FILE, - ) -> *mut FILE; -} -extern "C" { - pub fn fdopen(__fd: ::std::os::raw::c_int, __modes: *const ::std::os::raw::c_char) - -> *mut FILE; -} -extern "C" { - pub fn fmemopen( - __s: *mut ::std::os::raw::c_void, - __len: size_t, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn open_memstream( - __bufloc: *mut *mut ::std::os::raw::c_char, - __sizeloc: *mut size_t, - ) -> *mut FILE; -} -extern "C" { - pub fn setbuf(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char); -} -extern "C" { - pub fn setvbuf( - __stream: *mut FILE, - __buf: *mut ::std::os::raw::c_char, - __modes: ::std::os::raw::c_int, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setbuffer(__stream: *mut FILE, __buf: *mut ::std::os::raw::c_char, __size: size_t); -} -extern "C" { - pub fn setlinebuf(__stream: *mut FILE); -} -extern "C" { - pub fn fprintf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn printf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfprintf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vprintf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsprintf( - __s: *mut ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn snprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsnprintf( - __s: *mut ::std::os::raw::c_char, - __maxlen: ::std::os::raw::c_ulong, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vdprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn dprintf( - __fd: ::std::os::raw::c_int, - __fmt: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fscanf( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn scanf(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn sscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -pub type _Float32 = f32; -pub type _Float64 = f64; -pub type _Float32x = f64; -pub type _Float64x = u128; -extern "C" { - #[link_name = "\u{1}__isoc99_fscanf"] - pub fn fscanf1( - __stream: *mut FILE, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_scanf"] - pub fn scanf1(__format: *const ::std::os::raw::c_char, ...) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_sscanf"] - pub fn sscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - ... - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vfscanf( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vscanf( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn vsscanf( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vfscanf"] - pub fn vfscanf1( - __s: *mut FILE, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vscanf"] - pub fn vscanf1( - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - #[link_name = "\u{1}__isoc99_vsscanf"] - pub fn vsscanf1( - __s: *const ::std::os::raw::c_char, - __format: *const ::std::os::raw::c_char, - __arg: *mut __va_list_tag, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -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 getc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getchar_unlocked() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgetc_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar(__c: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fputc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) - -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putc_unlocked(__c: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn putchar_unlocked(__c: ::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(__w: ::std::os::raw::c_int, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fgets( - __s: *mut ::std::os::raw::c_char, - __n: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn __getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getdelim( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __delimiter: ::std::os::raw::c_int, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn getline( - __lineptr: *mut *mut ::std::os::raw::c_char, - __n: *mut size_t, - __stream: *mut FILE, - ) -> __ssize_t; -} -extern "C" { - pub fn fputs(__s: *const ::std::os::raw::c_char, __stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn puts(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ungetc(__c: ::std::os::raw::c_int, __stream: *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, - __n: ::std::os::raw::c_ulong, - __stream: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fwrite( - __ptr: *const ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - __n: ::std::os::raw::c_ulong, - __s: *mut FILE, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn fread_unlocked( - __ptr: *mut ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fwrite_unlocked( - __ptr: *const ::std::os::raw::c_void, - __size: size_t, - __n: size_t, - __stream: *mut FILE, - ) -> size_t; -} -extern "C" { - pub fn fseek( - __stream: *mut FILE, - __off: ::std::os::raw::c_long, - __whence: ::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 rewind(__stream: *mut FILE); -} -extern "C" { - pub fn fseeko( - __stream: *mut FILE, - __off: __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 fgetpos(__stream: *mut FILE, __pos: *mut fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fsetpos(__stream: *mut FILE, __pos: *const fpos_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearerr(__stream: *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 clearerr_unlocked(__stream: *mut FILE); -} -extern "C" { - pub fn feof_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ferror_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn perror(__s: *const ::std::os::raw::c_char); -} -extern "C" { - pub fn fileno(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fileno_unlocked(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn popen( - __command: *const ::std::os::raw::c_char, - __modes: *const ::std::os::raw::c_char, - ) -> *mut FILE; -} -extern "C" { - pub fn pclose(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn ctermid(__s: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn flockfile(__stream: *mut FILE); -} -extern "C" { - pub fn ftrylockfile(__stream: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn funlockfile(__stream: *mut FILE); -} -extern "C" { - pub fn __uflow(arg1: *mut FILE) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn __overflow(arg1: *mut FILE, arg2: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -pub type wchar_t = ::std::os::raw::c_int; -#[repr(C)] -#[repr(align(16))] -#[derive(Debug, Copy, Clone)] -pub struct max_align_t { - pub __clang_max_align_nonce1: ::std::os::raw::c_longlong, - pub __bindgen_padding_0: u64, - pub __clang_max_align_nonce2: u128, -} -#[test] -fn bindgen_test_layout_max_align_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(max_align_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 16usize, - concat!("Alignment of ", stringify!(max_align_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce1 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::())).__clang_max_align_nonce2 as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(max_align_t), - "::", - stringify!(__clang_max_align_nonce2) - ) - ); -} -pub type int_least8_t = __int_least8_t; -pub type int_least16_t = __int_least16_t; -pub type int_least32_t = __int_least32_t; -pub type int_least64_t = __int_least64_t; -pub type uint_least8_t = __uint_least8_t; -pub type uint_least16_t = __uint_least16_t; -pub type uint_least32_t = __uint_least32_t; -pub type uint_least64_t = __uint_least64_t; -pub type int_fast8_t = ::std::os::raw::c_schar; -pub type int_fast16_t = ::std::os::raw::c_long; -pub type int_fast32_t = ::std::os::raw::c_long; -pub type int_fast64_t = ::std::os::raw::c_long; -pub type uint_fast8_t = ::std::os::raw::c_uchar; -pub type uint_fast16_t = ::std::os::raw::c_ulong; -pub type uint_fast32_t = ::std::os::raw::c_ulong; -pub type uint_fast64_t = ::std::os::raw::c_ulong; -pub type intmax_t = __intmax_t; -pub type uintmax_t = __uintmax_t; -pub type realtype = f64; -pub type sunindextype = i64; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct div_t { - pub quot: ::std::os::raw::c_int, - pub rem: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout_div_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(div_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(div_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(div_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct ldiv_t { - pub quot: ::std::os::raw::c_long, - pub rem: ::std::os::raw::c_long, -} -#[test] -fn bindgen_test_layout_ldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(ldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(ldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(ldiv_t), - "::", - stringify!(rem) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct lldiv_t { - pub quot: ::std::os::raw::c_longlong, - pub rem: ::std::os::raw::c_longlong, -} -#[test] -fn bindgen_test_layout_lldiv_t() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(lldiv_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(lldiv_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).quot as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(quot) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rem as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(lldiv_t), - "::", - stringify!(rem) - ) - ); -} -extern "C" { - pub fn __ctype_get_mb_cur_max() -> size_t; -} -extern "C" { - pub fn atof(__nptr: *const ::std::os::raw::c_char) -> f64; -} -extern "C" { - pub fn atoi(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn atol(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn atoll(__nptr: *const ::std::os::raw::c_char) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtod( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f64; -} -extern "C" { - pub fn strtof( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> f32; -} -extern "C" { - pub fn strtold( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - ) -> u128; -} -extern "C" { - pub fn strtol( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn strtoul( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulong; -} -extern "C" { - pub fn strtoq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtouq( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn strtoll( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn strtoull( - __nptr: *const ::std::os::raw::c_char, - __endptr: *mut *mut ::std::os::raw::c_char, - __base: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_ulonglong; -} -extern "C" { - pub fn l64a(__n: ::std::os::raw::c_long) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn a64l(__s: *const ::std::os::raw::c_char) -> ::std::os::raw::c_long; -} -pub type u_char = __u_char; -pub type u_short = __u_short; -pub type u_int = __u_int; -pub type u_long = __u_long; -pub type quad_t = __quad_t; -pub type u_quad_t = __u_quad_t; -pub type fsid_t = __fsid_t; -pub type loff_t = __loff_t; -pub type ino_t = __ino_t; -pub type dev_t = __dev_t; -pub type gid_t = __gid_t; -pub type mode_t = __mode_t; -pub type nlink_t = __nlink_t; -pub type uid_t = __uid_t; -pub type pid_t = __pid_t; -pub type id_t = __id_t; -pub type daddr_t = __daddr_t; -pub type caddr_t = __caddr_t; -pub type key_t = __key_t; -pub type clock_t = __clock_t; -pub type clockid_t = __clockid_t; -pub type time_t = __time_t; -pub type timer_t = __timer_t; -pub type ulong = ::std::os::raw::c_ulong; -pub type ushort = ::std::os::raw::c_ushort; -pub type uint = ::std::os::raw::c_uint; -pub type u_int8_t = __uint8_t; -pub type u_int16_t = __uint16_t; -pub type u_int32_t = __uint32_t; -pub type u_int64_t = __uint64_t; -pub type register_t = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __sigset_t { - pub __val: [::std::os::raw::c_ulong; 16usize], -} -#[test] -fn bindgen_test_layout___sigset_t() { - assert_eq!( - ::std::mem::size_of::<__sigset_t>(), - 128usize, - concat!("Size of: ", stringify!(__sigset_t)) - ); - assert_eq!( - ::std::mem::align_of::<__sigset_t>(), - 8usize, - concat!("Alignment of ", stringify!(__sigset_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__sigset_t>())).__val as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__sigset_t), - "::", - stringify!(__val) - ) - ); -} -pub type sigset_t = __sigset_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timeval { - pub tv_sec: __time_t, - pub tv_usec: __suseconds_t, -} -#[test] -fn bindgen_test_layout_timeval() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timeval)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timeval)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_usec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timeval), - "::", - stringify!(tv_usec) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct timespec { - pub tv_sec: __time_t, - pub tv_nsec: __syscall_slong_t, -} -#[test] -fn bindgen_test_layout_timespec() { - assert_eq!( - ::std::mem::size_of::(), - 16usize, - concat!("Size of: ", stringify!(timespec)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(timespec)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_sec as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_sec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).tv_nsec as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(timespec), - "::", - stringify!(tv_nsec) - ) - ); -} -pub type suseconds_t = __suseconds_t; -pub type __fd_mask = ::std::os::raw::c_long; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct fd_set { - pub __fds_bits: [__fd_mask; 16usize], -} -#[test] -fn bindgen_test_layout_fd_set() { - assert_eq!( - ::std::mem::size_of::(), - 128usize, - concat!("Size of: ", stringify!(fd_set)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(fd_set)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__fds_bits as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(fd_set), - "::", - stringify!(__fds_bits) - ) - ); -} -pub type fd_mask = __fd_mask; -extern "C" { - pub fn select( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *mut timeval, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn pselect( - __nfds: ::std::os::raw::c_int, - __readfds: *mut fd_set, - __writefds: *mut fd_set, - __exceptfds: *mut fd_set, - __timeout: *const timespec, - __sigmask: *const __sigset_t, - ) -> ::std::os::raw::c_int; -} -pub type blksize_t = __blksize_t; -pub type blkcnt_t = __blkcnt_t; -pub type fsblkcnt_t = __fsblkcnt_t; -pub type fsfilcnt_t = __fsfilcnt_t; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_list { - pub __prev: *mut __pthread_internal_list, - pub __next: *mut __pthread_internal_list, -} -#[test] -fn bindgen_test_layout___pthread_internal_list() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_list>(), - 16usize, - concat!("Size of: ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_list>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_list)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__prev as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__prev) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_list>())).__next as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_list), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_list_t = __pthread_internal_list; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_internal_slist { - pub __next: *mut __pthread_internal_slist, -} -#[test] -fn bindgen_test_layout___pthread_internal_slist() { - assert_eq!( - ::std::mem::size_of::<__pthread_internal_slist>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_internal_slist>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_internal_slist)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_internal_slist>())).__next as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_internal_slist), - "::", - stringify!(__next) - ) - ); -} -pub type __pthread_slist_t = __pthread_internal_slist; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_mutex_s { - pub __lock: ::std::os::raw::c_int, - pub __count: ::std::os::raw::c_uint, - pub __owner: ::std::os::raw::c_int, - pub __nusers: ::std::os::raw::c_uint, - pub __kind: ::std::os::raw::c_int, - pub __spins: ::std::os::raw::c_short, - pub __elision: ::std::os::raw::c_short, - pub __list: __pthread_list_t, -} -#[test] -fn bindgen_test_layout___pthread_mutex_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_mutex_s>(), - 40usize, - concat!("Size of: ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_mutex_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_mutex_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__lock as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__lock) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__count as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__count) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__owner as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__owner) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__nusers as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__nusers) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__kind as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__kind) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__spins as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__spins) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__elision as *const _ as usize }, - 22usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__elision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_mutex_s>())).__list as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_mutex_s), - "::", - stringify!(__list) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_rwlock_arch_t { - pub __readers: ::std::os::raw::c_uint, - pub __writers: ::std::os::raw::c_uint, - pub __wrphase_futex: ::std::os::raw::c_uint, - pub __writers_futex: ::std::os::raw::c_uint, - pub __pad3: ::std::os::raw::c_uint, - pub __pad4: ::std::os::raw::c_uint, - pub __cur_writer: ::std::os::raw::c_int, - pub __shared: ::std::os::raw::c_int, - pub __rwelision: ::std::os::raw::c_schar, - pub __pad1: [::std::os::raw::c_uchar; 7usize], - pub __pad2: ::std::os::raw::c_ulong, - pub __flags: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_rwlock_arch_t() { - assert_eq!( - ::std::mem::size_of::<__pthread_rwlock_arch_t>(), - 56usize, - concat!("Size of: ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_rwlock_arch_t>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_rwlock_arch_t)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__readers as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__readers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__wrphase_futex as *const _ as usize - }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__wrphase_futex) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__writers_futex as *const _ as usize - }, - 12usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__writers_futex) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad3 as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad3) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad4 as *const _ as usize }, - 20usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad4) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__cur_writer as *const _ as usize - }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__cur_writer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__shared as *const _ as usize - }, - 28usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__shared) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__rwelision as *const _ as usize - }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__rwelision) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad1 as *const _ as usize }, - 33usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad1) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__pad2 as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__pad2) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_rwlock_arch_t>())).__flags as *const _ as usize }, - 48usize, - concat!( - "Offset of field: ", - stringify!(__pthread_rwlock_arch_t), - "::", - stringify!(__flags) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub struct __pthread_cond_s { - pub __bindgen_anon_1: __pthread_cond_s__bindgen_ty_1, - pub __bindgen_anon_2: __pthread_cond_s__bindgen_ty_2, - pub __g_refs: [::std::os::raw::c_uint; 2usize], - pub __g_size: [::std::os::raw::c_uint; 2usize], - pub __g1_orig_size: ::std::os::raw::c_uint, - pub __wrefs: ::std::os::raw::c_uint, - pub __g_signals: [::std::os::raw::c_uint; 2usize], -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_1 { - pub __wseq: ::std::os::raw::c_ulonglong, - pub __wseq32: __pthread_cond_s__bindgen_ty_1__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_1__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_1>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_1)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_1>())).__wseq32 as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_1), - "::", - stringify!(__wseq32) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union __pthread_cond_s__bindgen_ty_2 { - pub __g1_start: ::std::os::raw::c_ulonglong, - pub __g1_start32: __pthread_cond_s__bindgen_ty_2__bindgen_ty_1, - _bindgen_union_align: u64, -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __pthread_cond_s__bindgen_ty_2__bindgen_ty_1 { - pub __low: ::std::os::raw::c_uint, - pub __high: ::std::os::raw::c_uint, -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2__bindgen_ty_1() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 8usize, - concat!( - "Size of: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>(), - 4usize, - concat!( - "Alignment of ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__low - as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__low) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2__bindgen_ty_1>())).__high - as *const _ as usize - }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2__bindgen_ty_1), - "::", - stringify!(__high) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s__bindgen_ty_2() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Size of: ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s__bindgen_ty_2>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s__bindgen_ty_2)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<__pthread_cond_s__bindgen_ty_2>())).__g1_start32 as *const _ - as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s__bindgen_ty_2), - "::", - stringify!(__g1_start32) - ) - ); -} -#[test] -fn bindgen_test_layout___pthread_cond_s() { - assert_eq!( - ::std::mem::size_of::<__pthread_cond_s>(), - 48usize, - concat!("Size of: ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - ::std::mem::align_of::<__pthread_cond_s>(), - 8usize, - concat!("Alignment of ", stringify!(__pthread_cond_s)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_refs as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_refs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_size as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g1_orig_size as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g1_orig_size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__wrefs as *const _ as usize }, - 36usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__wrefs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__pthread_cond_s>())).__g_signals as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(__pthread_cond_s), - "::", - stringify!(__g_signals) - ) - ); -} -pub type __tss_t = ::std::os::raw::c_uint; -pub type __thrd_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __once_flag { - pub __data: ::std::os::raw::c_int, -} -#[test] -fn bindgen_test_layout___once_flag() { - assert_eq!( - ::std::mem::size_of::<__once_flag>(), - 4usize, - concat!("Size of: ", stringify!(__once_flag)) - ); - assert_eq!( - ::std::mem::align_of::<__once_flag>(), - 4usize, - concat!("Alignment of ", stringify!(__once_flag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__once_flag>())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__once_flag), - "::", - stringify!(__data) - ) - ); -} -pub type pthread_t = ::std::os::raw::c_ulong; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutexattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_mutexattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_mutexattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutexattr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_condattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_condattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_condattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_condattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_key_t = ::std::os::raw::c_uint; -pub type pthread_once_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_attr_t { - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_attr_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_attr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_attr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_attr_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_mutex_t { - pub __data: __pthread_mutex_s, - pub __size: [::std::os::raw::c_char; 40usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 5usize], -} -#[test] -fn bindgen_test_layout_pthread_mutex_t() { - assert_eq!( - ::std::mem::size_of::(), - 40usize, - concat!("Size of: ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_mutex_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_mutex_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_cond_t { - pub __data: __pthread_cond_s, - pub __size: [::std::os::raw::c_char; 48usize], - pub __align: ::std::os::raw::c_longlong, - _bindgen_union_align: [u64; 6usize], -} -#[test] -fn bindgen_test_layout_pthread_cond_t() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(pthread_cond_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_cond_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_cond_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlock_t { - pub __data: __pthread_rwlock_arch_t, - pub __size: [::std::os::raw::c_char; 56usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 7usize], -} -#[test] -fn bindgen_test_layout_pthread_rwlock_t() { - assert_eq!( - ::std::mem::size_of::(), - 56usize, - concat!("Size of: ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlock_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__data as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlock_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_rwlockattr_t { - pub __size: [::std::os::raw::c_char; 8usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: u64, -} -#[test] -fn bindgen_test_layout_pthread_rwlockattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 8usize, - concat!("Size of: ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_rwlockattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_rwlockattr_t), - "::", - stringify!(__align) - ) - ); -} -pub type pthread_spinlock_t = ::std::os::raw::c_int; -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrier_t { - pub __size: [::std::os::raw::c_char; 32usize], - pub __align: ::std::os::raw::c_long, - _bindgen_union_align: [u64; 4usize], -} -#[test] -fn bindgen_test_layout_pthread_barrier_t() { - assert_eq!( - ::std::mem::size_of::(), - 32usize, - concat!("Size of: ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(pthread_barrier_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrier_t), - "::", - stringify!(__align) - ) - ); -} -#[repr(C)] -#[derive(Copy, Clone)] -pub union pthread_barrierattr_t { - pub __size: [::std::os::raw::c_char; 4usize], - pub __align: ::std::os::raw::c_int, - _bindgen_union_align: u32, -} -#[test] -fn bindgen_test_layout_pthread_barrierattr_t() { - assert_eq!( - ::std::mem::size_of::(), - 4usize, - concat!("Size of: ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - ::std::mem::align_of::(), - 4usize, - concat!("Alignment of ", stringify!(pthread_barrierattr_t)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__size as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__size) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__align as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(pthread_barrierattr_t), - "::", - stringify!(__align) - ) - ); -} -extern "C" { - pub fn random() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srandom(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn initstate( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn setstate(__statebuf: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct random_data { - pub fptr: *mut i32, - pub rptr: *mut i32, - pub state: *mut i32, - pub rand_type: ::std::os::raw::c_int, - pub rand_deg: ::std::os::raw::c_int, - pub rand_sep: ::std::os::raw::c_int, - pub end_ptr: *mut i32, -} -#[test] -fn bindgen_test_layout_random_data() { - assert_eq!( - ::std::mem::size_of::(), - 48usize, - concat!("Size of: ", stringify!(random_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(random_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).fptr as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(fptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rptr as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rptr) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).state as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(state) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_type as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_type) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_deg as *const _ as usize }, - 28usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_deg) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).rand_sep as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(rand_sep) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).end_ptr as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(random_data), - "::", - stringify!(end_ptr) - ) - ); -} -extern "C" { - pub fn random_r(__buf: *mut random_data, __result: *mut i32) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srandom_r( - __seed: ::std::os::raw::c_uint, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn initstate_r( - __seed: ::std::os::raw::c_uint, - __statebuf: *mut ::std::os::raw::c_char, - __statelen: size_t, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setstate_r( - __statebuf: *mut ::std::os::raw::c_char, - __buf: *mut random_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn rand() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand(__seed: ::std::os::raw::c_uint); -} -extern "C" { - pub fn rand_r(__seed: *mut ::std::os::raw::c_uint) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn drand48() -> f64; -} -extern "C" { - pub fn erand48(__xsubi: *mut ::std::os::raw::c_ushort) -> f64; -} -extern "C" { - pub fn lrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn nrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn mrand48() -> ::std::os::raw::c_long; -} -extern "C" { - pub fn jrand48(__xsubi: *mut ::std::os::raw::c_ushort) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn srand48(__seedval: ::std::os::raw::c_long); -} -extern "C" { - pub fn seed48(__seed16v: *mut ::std::os::raw::c_ushort) -> *mut ::std::os::raw::c_ushort; -} -extern "C" { - pub fn lcong48(__param: *mut ::std::os::raw::c_ushort); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct drand48_data { - pub __x: [::std::os::raw::c_ushort; 3usize], - pub __old_x: [::std::os::raw::c_ushort; 3usize], - pub __c: ::std::os::raw::c_ushort, - pub __init: ::std::os::raw::c_ushort, - pub __a: ::std::os::raw::c_ulonglong, -} -#[test] -fn bindgen_test_layout_drand48_data() { - assert_eq!( - ::std::mem::size_of::(), - 24usize, - concat!("Size of: ", stringify!(drand48_data)) - ); - assert_eq!( - ::std::mem::align_of::(), - 8usize, - concat!("Alignment of ", stringify!(drand48_data)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__x as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__old_x as *const _ as usize }, - 6usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__old_x) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__c as *const _ as usize }, - 12usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__c) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__init as *const _ as usize }, - 14usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__init) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::())).__a as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(drand48_data), - "::", - stringify!(__a) - ) - ); -} -extern "C" { - pub fn drand48_r(__buffer: *mut drand48_data, __result: *mut f64) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn erand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut f64, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn nrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mrand48_r( - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn jrand48_r( - __xsubi: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - __result: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn srand48_r( - __seedval: ::std::os::raw::c_long, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn seed48_r( - __seed16v: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn lcong48_r( - __param: *mut ::std::os::raw::c_ushort, - __buffer: *mut drand48_data, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn malloc(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn calloc( - __nmemb: ::std::os::raw::c_ulong, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn realloc( - __ptr: *mut ::std::os::raw::c_void, - __size: ::std::os::raw::c_ulong, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn reallocarray( - __ptr: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn free(__ptr: *mut ::std::os::raw::c_void); -} -extern "C" { - pub fn alloca(__size: ::std::os::raw::c_ulong) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn valloc(__size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn posix_memalign( - __memptr: *mut *mut ::std::os::raw::c_void, - __alignment: size_t, - __size: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn aligned_alloc(__alignment: size_t, __size: size_t) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn abort(); -} -extern "C" { - pub fn atexit(__func: ::std::option::Option) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn at_quick_exit( - __func: ::std::option::Option, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn on_exit( - __func: ::std::option::Option< - unsafe extern "C" fn( - __status: ::std::os::raw::c_int, - __arg: *mut ::std::os::raw::c_void, - ), - >, - __arg: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn quick_exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn _Exit(__status: ::std::os::raw::c_int); -} -extern "C" { - pub fn getenv(__name: *const ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn putenv(__string: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn setenv( - __name: *const ::std::os::raw::c_char, - __value: *const ::std::os::raw::c_char, - __replace: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn unsetenv(__name: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn clearenv() -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mktemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn mkstemp(__template: *mut ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkstemps( - __template: *mut ::std::os::raw::c_char, - __suffixlen: ::std::os::raw::c_int, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mkdtemp(__template: *mut ::std::os::raw::c_char) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn system(__command: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn realpath( - __name: *const ::std::os::raw::c_char, - __resolved: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -pub type __compar_fn_t = ::std::option::Option< - unsafe extern "C" fn( - arg1: *const ::std::os::raw::c_void, - arg2: *const ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, ->; -extern "C" { - pub fn bsearch( - __key: *const ::std::os::raw::c_void, - __base: *const ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn qsort( - __base: *mut ::std::os::raw::c_void, - __nmemb: size_t, - __size: size_t, - __compar: __compar_fn_t, - ); -} -extern "C" { - pub fn abs(__x: ::std::os::raw::c_int) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn labs(__x: ::std::os::raw::c_long) -> ::std::os::raw::c_long; -} -extern "C" { - pub fn llabs(__x: ::std::os::raw::c_longlong) -> ::std::os::raw::c_longlong; -} -extern "C" { - pub fn div(__numer: ::std::os::raw::c_int, __denom: ::std::os::raw::c_int) -> div_t; -} -extern "C" { - pub fn ldiv(__numer: ::std::os::raw::c_long, __denom: ::std::os::raw::c_long) -> ldiv_t; -} -extern "C" { - pub fn lldiv( - __numer: ::std::os::raw::c_longlong, - __denom: ::std::os::raw::c_longlong, - ) -> lldiv_t; -} -extern "C" { - pub fn ecvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn fcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn gcvt( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qecvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qfcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn qgcvt( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - ) -> *mut ::std::os::raw::c_char; -} -extern "C" { - pub fn ecvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn fcvt_r( - __value: f64, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qecvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn qfcvt_r( - __value: u128, - __ndigit: ::std::os::raw::c_int, - __decpt: *mut ::std::os::raw::c_int, - __sign: *mut ::std::os::raw::c_int, - __buf: *mut ::std::os::raw::c_char, - __len: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mblen(__s: *const ::std::os::raw::c_char, __n: size_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbtowc( - __pwc: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn wctomb(__s: *mut ::std::os::raw::c_char, __wchar: wchar_t) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn mbstowcs( - __pwcs: *mut wchar_t, - __s: *const ::std::os::raw::c_char, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn wcstombs( - __s: *mut ::std::os::raw::c_char, - __pwcs: *const wchar_t, - __n: size_t, - ) -> size_t; -} -extern "C" { - pub fn rpmatch(__response: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getsubopt( - __optionp: *mut *mut ::std::os::raw::c_char, - __tokens: *const *mut ::std::os::raw::c_char, - __valuep: *mut *mut ::std::os::raw::c_char, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn getloadavg(__loadavg: *mut f64, __nelem: ::std::os::raw::c_int) - -> ::std::os::raw::c_int; -} -pub const N_Vector_ID_SUNDIALS_NVEC_SERIAL: N_Vector_ID = 0; -pub const N_Vector_ID_SUNDIALS_NVEC_PARALLEL: N_Vector_ID = 1; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMP: N_Vector_ID = 2; -pub const N_Vector_ID_SUNDIALS_NVEC_PTHREADS: N_Vector_ID = 3; -pub const N_Vector_ID_SUNDIALS_NVEC_PARHYP: N_Vector_ID = 4; -pub const N_Vector_ID_SUNDIALS_NVEC_PETSC: N_Vector_ID = 5; -pub const N_Vector_ID_SUNDIALS_NVEC_CUDA: N_Vector_ID = 6; -pub const N_Vector_ID_SUNDIALS_NVEC_HIP: N_Vector_ID = 7; -pub const N_Vector_ID_SUNDIALS_NVEC_SYCL: N_Vector_ID = 8; -pub const N_Vector_ID_SUNDIALS_NVEC_RAJA: N_Vector_ID = 9; -pub const N_Vector_ID_SUNDIALS_NVEC_OPENMPDEV: N_Vector_ID = 10; -pub const N_Vector_ID_SUNDIALS_NVEC_TRILINOS: N_Vector_ID = 11; -pub const N_Vector_ID_SUNDIALS_NVEC_MANYVECTOR: N_Vector_ID = 12; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIMANYVECTOR: N_Vector_ID = 13; -pub const N_Vector_ID_SUNDIALS_NVEC_MPIPLUSX: N_Vector_ID = 14; -pub const N_Vector_ID_SUNDIALS_NVEC_CUSTOM: N_Vector_ID = 15; -pub type N_Vector_ID = ::std::os::raw::c_uint; -pub type N_Vector_Ops = *mut _generic_N_Vector_Ops; -pub type N_Vector = *mut _generic_N_Vector; -pub type N_Vector_S = *mut N_Vector; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector_Ops { - pub nvgetvectorid: ::std::option::Option N_Vector_ID>, - pub nvclone: ::std::option::Option N_Vector>, - pub nvcloneempty: ::std::option::Option N_Vector>, - pub nvdestroy: ::std::option::Option, - pub nvspace: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype, arg3: *mut sunindextype), - >, - pub nvgetarraypointer: - ::std::option::Option *mut realtype>, - pub nvgetdevicearraypointer: - ::std::option::Option *mut realtype>, - pub nvsetarraypointer: - ::std::option::Option, - pub nvgetcommunicator: - ::std::option::Option *mut ::std::os::raw::c_void>, - pub nvgetlength: ::std::option::Option sunindextype>, - pub nvlinearsum: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: N_Vector, - arg3: realtype, - arg4: N_Vector, - arg5: N_Vector, - ), - >, - pub nvconst: ::std::option::Option, - pub nvprod: - ::std::option::Option, - pub nvdiv: - ::std::option::Option, - pub nvscale: - ::std::option::Option, - pub nvabs: ::std::option::Option, - pub nvinv: ::std::option::Option, - pub nvaddconst: - ::std::option::Option, - pub nvdotprod: - ::std::option::Option realtype>, - pub nvmaxnorm: ::std::option::Option realtype>, - pub nvwrmsnorm: - ::std::option::Option realtype>, - pub nvwrmsnormmask: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvmin: ::std::option::Option realtype>, - pub nvwl2norm: - ::std::option::Option realtype>, - pub nvl1norm: ::std::option::Option realtype>, - pub nvcompare: - ::std::option::Option, - pub nvinvtest: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmask: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotient: - ::std::option::Option realtype>, - pub nvlinearcombination: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: N_Vector, - arg4: *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodmulti: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearsumvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - arg4: realtype, - arg5: *mut N_Vector, - arg6: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvscalevectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut realtype, - arg3: *mut N_Vector, - arg4: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvconstvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: realtype, - arg3: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvwrmsnormmaskvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: *mut N_Vector, - arg3: *mut N_Vector, - arg4: N_Vector, - arg5: *mut realtype, - ) -> ::std::os::raw::c_int, - >, - pub nvscaleaddmultivectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut N_Vector, - arg5: *mut *mut N_Vector, - arg6: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvlinearcombinationvectorarray: ::std::option::Option< - unsafe extern "C" fn( - arg1: ::std::os::raw::c_int, - arg2: ::std::os::raw::c_int, - arg3: *mut realtype, - arg4: *mut *mut N_Vector, - arg5: *mut N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvdotprodlocal: - ::std::option::Option realtype>, - pub nvmaxnormlocal: ::std::option::Option realtype>, - pub nvminlocal: ::std::option::Option realtype>, - pub nvl1normlocal: ::std::option::Option realtype>, - pub nvinvtestlocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector) -> ::std::os::raw::c_int, - >, - pub nvconstrmasklocal: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub nvminquotientlocal: - ::std::option::Option realtype>, - pub nvwsqrsumlocal: - ::std::option::Option realtype>, - pub nvwsqrsummasklocal: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: N_Vector, arg3: N_Vector) -> realtype, - >, - pub nvbufsize: ::std::option::Option< - unsafe extern "C" fn(arg1: N_Vector, arg2: *mut sunindextype) -> ::std::os::raw::c_int, - >, - pub nvbufpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvbufunpack: ::std::option::Option< - unsafe extern "C" fn( - arg1: N_Vector, - arg2: *mut ::std::os::raw::c_void, - ) -> ::std::os::raw::c_int, - >, - pub nvprint: ::std::option::Option, - pub nvprintfile: ::std::option::Option, -} -#[test] -fn bindgen_test_layout__generic_N_Vector_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector_Ops>(), - 424usize, - concat!("Size of: ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector_Ops)) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetvectorid as *const _ as usize - }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetvectorid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvclone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvclone) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcloneempty as *const _ as usize - }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcloneempty) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdestroy as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdestroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvspace as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvspace) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetarraypointer as *const _ as usize - }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetdevicearraypointer as *const _ - as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetdevicearraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvsetarraypointer as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvsetarraypointer) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetcommunicator as *const _ as usize - }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetcommunicator) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvgetlength as *const _ as usize - }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvgetlength) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsum as *const _ as usize - }, - 80usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsum) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconst as *const _ as usize }, - 88usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprod as *const _ as usize }, - 96usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdiv as *const _ as usize }, - 104usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdiv) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscale as *const _ as usize }, - 112usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscale) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvabs as *const _ as usize }, - 120usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvabs) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinv as *const _ as usize }, - 128usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinv) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvaddconst as *const _ as usize - }, - 136usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvaddconst) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprod as *const _ as usize }, - 144usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprod) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnorm as *const _ as usize }, - 152usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnorm as *const _ as usize - }, - 160usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnorm) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmask as *const _ as usize - }, - 168usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmask) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmin as *const _ as usize }, - 176usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmin) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwl2norm as *const _ as usize }, - 184usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwl2norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1norm as *const _ as usize }, - 192usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1norm) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvcompare as *const _ as usize }, - 200usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvcompare) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtest as *const _ as usize }, - 208usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtest) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmask as *const _ as usize - }, - 216usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmask) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotient as *const _ as usize - }, - 224usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotient) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombination as *const _ - as usize - }, - 232usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombination) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmulti as *const _ as usize - }, - 240usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodmulti as *const _ as usize - }, - 248usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodmulti) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearsumvectorarray as *const _ - as usize - }, - 256usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearsumvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscalevectorarray as *const _ - as usize - }, - 264usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscalevectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstvectorarray as *const _ - as usize - }, - 272usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormvectorarray as *const _ - as usize - }, - 280usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwrmsnormmaskvectorarray as *const _ - as usize - }, - 288usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwrmsnormmaskvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvscaleaddmultivectorarray as *const _ - as usize - }, - 296usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvscaleaddmultivectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvlinearcombinationvectorarray - as *const _ as usize - }, - 304usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvlinearcombinationvectorarray) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvdotprodlocal as *const _ as usize - }, - 312usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvdotprodlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvmaxnormlocal as *const _ as usize - }, - 320usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvmaxnormlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminlocal as *const _ as usize - }, - 328usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvl1normlocal as *const _ as usize - }, - 336usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvl1normlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvinvtestlocal as *const _ as usize - }, - 344usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvinvtestlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvconstrmasklocal as *const _ as usize - }, - 352usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvconstrmasklocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvminquotientlocal as *const _ - as usize - }, - 360usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvminquotientlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsumlocal as *const _ as usize - }, - 368usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsumlocal) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvwsqrsummasklocal as *const _ - as usize - }, - 376usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvwsqrsummasklocal) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufsize as *const _ as usize }, - 384usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufsize) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufpack as *const _ as usize }, - 392usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufpack) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvbufunpack as *const _ as usize - }, - 400usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvbufunpack) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprint as *const _ as usize }, - 408usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprint) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_N_Vector_Ops>())).nvprintfile as *const _ as usize - }, - 416usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector_Ops), - "::", - stringify!(nvprintfile) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_N_Vector { - pub content: *mut ::std::os::raw::c_void, - pub ops: N_Vector_Ops, -} -#[test] -fn bindgen_test_layout__generic_N_Vector() { - assert_eq!( - ::std::mem::size_of::<_generic_N_Vector>(), - 16usize, - concat!("Size of: ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_N_Vector>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_N_Vector)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_N_Vector>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_N_Vector), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn N_VNewEmpty() -> N_Vector; -} -extern "C" { - pub fn N_VFreeEmpty(v: N_Vector); -} -extern "C" { - pub fn N_VCopyOps(w: N_Vector, v: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VGetVectorID(w: N_Vector) -> N_Vector_ID; -} -extern "C" { - pub fn N_VClone(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VCloneEmpty(w: N_Vector) -> N_Vector; -} -extern "C" { - pub fn N_VDestroy(v: N_Vector); -} -extern "C" { - pub fn N_VSpace(v: N_Vector, lrw: *mut sunindextype, liw: *mut sunindextype); -} -extern "C" { - pub fn N_VGetArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VGetDeviceArrayPointer(v: N_Vector) -> *mut realtype; -} -extern "C" { - pub fn N_VSetArrayPointer(v_data: *mut realtype, v: N_Vector); -} -extern "C" { - pub fn N_VGetCommunicator(v: N_Vector) -> *mut ::std::os::raw::c_void; -} -extern "C" { - pub fn N_VGetLength(v: N_Vector) -> sunindextype; -} -extern "C" { - pub fn N_VLinearSum(a: realtype, x: N_Vector, b: realtype, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VConst(c: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VProd(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VDiv(x: N_Vector, y: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VScale(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAbs(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInv(x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VAddConst(x: N_Vector, b: realtype, z: N_Vector); -} -extern "C" { - pub fn N_VDotProd(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNorm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNorm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWrmsNormMask(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMin(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWL2Norm(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1Norm(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VCompare(c: realtype, x: N_Vector, z: N_Vector); -} -extern "C" { - pub fn N_VInvTest(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMask(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotient(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VLinearCombination( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - z: N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMulti( - nvec: ::std::os::raw::c_int, - a: *mut realtype, - x: N_Vector, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdMulti( - nvec: ::std::os::raw::c_int, - x: N_Vector, - Y: *mut N_Vector, - dotprods: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearSumVectorArray( - nvec: ::std::os::raw::c_int, - a: realtype, - X: *mut N_Vector, - b: realtype, - Y: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleVectorArray( - nvec: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstVectorArray( - nvec: ::std::os::raw::c_int, - c: realtype, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VWrmsNormMaskVectorArray( - nvec: ::std::os::raw::c_int, - X: *mut N_Vector, - W: *mut N_Vector, - id: N_Vector, - nrm: *mut realtype, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VScaleAddMultiVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - a: *mut realtype, - X: *mut N_Vector, - Y: *mut *mut N_Vector, - Z: *mut *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VLinearCombinationVectorArray( - nvec: ::std::os::raw::c_int, - nsum: ::std::os::raw::c_int, - c: *mut realtype, - X: *mut *mut N_Vector, - Z: *mut N_Vector, - ) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VDotProdLocal(x: N_Vector, y: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMaxNormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VMinLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VL1NormLocal(x: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumLocal(x: N_Vector, w: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VWSqrSumMaskLocal(x: N_Vector, w: N_Vector, id: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VInvTestLocal(x: N_Vector, z: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VConstrMaskLocal(c: N_Vector, x: N_Vector, m: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VMinQuotientLocal(num: N_Vector, denom: N_Vector) -> realtype; -} -extern "C" { - pub fn N_VBufSize(x: N_Vector, size: *mut sunindextype) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufPack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VBufUnpack(x: N_Vector, buf: *mut ::std::os::raw::c_void) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn N_VNewVectorArray(count: ::std::os::raw::c_int) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneEmptyVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VCloneVectorArray(count: ::std::os::raw::c_int, w: N_Vector) -> *mut N_Vector; -} -extern "C" { - pub fn N_VDestroyVectorArray(vs: *mut N_Vector, count: ::std::os::raw::c_int); -} -extern "C" { - pub fn N_VGetVecAtIndexVectorArray(vs: *mut N_Vector, index: ::std::os::raw::c_int) - -> N_Vector; -} -extern "C" { - pub fn N_VSetVecAtIndexVectorArray( - vs: *mut N_Vector, - index: ::std::os::raw::c_int, - w: N_Vector, - ); -} -extern "C" { - pub fn N_VPrint(v: N_Vector); -} -extern "C" { - pub fn N_VPrintFile(v: N_Vector, outfile: *mut FILE); -} -pub const SUNMatrix_ID_SUNMATRIX_DENSE: SUNMatrix_ID = 0; -pub const SUNMatrix_ID_SUNMATRIX_MAGMADENSE: SUNMatrix_ID = 1; -pub const SUNMatrix_ID_SUNMATRIX_BAND: SUNMatrix_ID = 2; -pub const SUNMatrix_ID_SUNMATRIX_SPARSE: SUNMatrix_ID = 3; -pub const SUNMatrix_ID_SUNMATRIX_SLUNRLOC: SUNMatrix_ID = 4; -pub const SUNMatrix_ID_SUNMATRIX_CUSPARSE: SUNMatrix_ID = 5; -pub const SUNMatrix_ID_SUNMATRIX_CUSTOM: SUNMatrix_ID = 6; -pub type SUNMatrix_ID = ::std::os::raw::c_uint; -pub type SUNMatrix_Ops = *mut _generic_SUNMatrix_Ops; -pub type SUNMatrix = *mut _generic_SUNMatrix; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNMatrix_Ops { - pub getid: ::std::option::Option SUNMatrix_ID>, - pub clone: ::std::option::Option SUNMatrix>, - pub destroy: ::std::option::Option, - pub zero: ::std::option::Option ::std::os::raw::c_int>, - pub copy: ::std::option::Option< - unsafe extern "C" fn(arg1: SUNMatrix, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub scaleadd: ::std::option::Option< - unsafe extern "C" fn( - arg1: realtype, - arg2: SUNMatrix, - arg3: SUNMatrix, - ) -> ::std::os::raw::c_int, - >, - pub scaleaddi: ::std::option::Option< - unsafe extern "C" fn(arg1: realtype, arg2: SUNMatrix) -> ::std::os::raw::c_int, - >, - pub matvecsetup: - ::std::option::Option ::std::os::raw::c_int>, - pub matvec: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNMatrix, - arg2: N_Vector, - arg3: N_Vector, - ) -> ::std::os::raw::c_int, - >, - pub space: ::std::option::Option< - unsafe extern "C" fn( - arg1: SUNMatrix, - arg2: *mut ::std::os::raw::c_long, - arg3: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int, - >, -} -#[test] -fn bindgen_test_layout__generic_SUNMatrix_Ops() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNMatrix_Ops>(), - 80usize, - concat!("Size of: ", stringify!(_generic_SUNMatrix_Ops)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNMatrix_Ops>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNMatrix_Ops)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).getid as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(getid) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).clone as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(clone) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).destroy as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(destroy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).zero as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(zero) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).copy as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(copy) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).scaleadd as *const _ as usize }, - 40usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(scaleadd) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).scaleaddi as *const _ as usize - }, - 48usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(scaleaddi) - ) - ); - assert_eq!( - unsafe { - &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).matvecsetup as *const _ as usize - }, - 56usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(matvecsetup) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).matvec as *const _ as usize }, - 64usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(matvec) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix_Ops>())).space as *const _ as usize }, - 72usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix_Ops), - "::", - stringify!(space) - ) - ); -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _generic_SUNMatrix { - pub content: *mut ::std::os::raw::c_void, - pub ops: SUNMatrix_Ops, -} -#[test] -fn bindgen_test_layout__generic_SUNMatrix() { - assert_eq!( - ::std::mem::size_of::<_generic_SUNMatrix>(), - 16usize, - concat!("Size of: ", stringify!(_generic_SUNMatrix)) - ); - assert_eq!( - ::std::mem::align_of::<_generic_SUNMatrix>(), - 8usize, - concat!("Alignment of ", stringify!(_generic_SUNMatrix)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix>())).content as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix), - "::", - stringify!(content) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_generic_SUNMatrix>())).ops as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_generic_SUNMatrix), - "::", - stringify!(ops) - ) - ); -} -extern "C" { - pub fn SUNMatNewEmpty() -> SUNMatrix; -} -extern "C" { - pub fn SUNMatFreeEmpty(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatCopyOps(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatGetID(A: SUNMatrix) -> SUNMatrix_ID; -} -extern "C" { - pub fn SUNMatClone(A: SUNMatrix) -> SUNMatrix; -} -extern "C" { - pub fn SUNMatDestroy(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatZero(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatCopy(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAdd(c: realtype, A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAddI(c: realtype, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvecSetup(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvec(A: SUNMatrix, x: N_Vector, y: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatSpace( - A: SUNMatrix, - lenrw: *mut ::std::os::raw::c_long, - leniw: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct _SUNMatrixContent_Dense { - pub M: sunindextype, - pub N: sunindextype, - pub data: *mut realtype, - pub ldata: sunindextype, - pub cols: *mut *mut realtype, -} -#[test] -fn bindgen_test_layout__SUNMatrixContent_Dense() { - assert_eq!( - ::std::mem::size_of::<_SUNMatrixContent_Dense>(), - 40usize, - concat!("Size of: ", stringify!(_SUNMatrixContent_Dense)) - ); - assert_eq!( - ::std::mem::align_of::<_SUNMatrixContent_Dense>(), - 8usize, - concat!("Alignment of ", stringify!(_SUNMatrixContent_Dense)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).M as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(M) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).N as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(N) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).data as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(data) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).ldata as *const _ as usize }, - 24usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(ldata) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<_SUNMatrixContent_Dense>())).cols as *const _ as usize }, - 32usize, - concat!( - "Offset of field: ", - stringify!(_SUNMatrixContent_Dense), - "::", - stringify!(cols) - ) - ); -} -pub type SUNMatrixContent_Dense = *mut _SUNMatrixContent_Dense; -extern "C" { - pub fn SUNDenseMatrix(M: sunindextype, N: sunindextype) -> SUNMatrix; -} -extern "C" { - pub fn SUNDenseMatrix_Print(A: SUNMatrix, outfile: *mut FILE); -} -extern "C" { - pub fn SUNDenseMatrix_Rows(A: SUNMatrix) -> sunindextype; -} -extern "C" { - pub fn SUNDenseMatrix_Columns(A: SUNMatrix) -> sunindextype; -} -extern "C" { - pub fn SUNDenseMatrix_LData(A: SUNMatrix) -> sunindextype; -} -extern "C" { - pub fn SUNDenseMatrix_Data(A: SUNMatrix) -> *mut realtype; -} -extern "C" { - pub fn SUNDenseMatrix_Cols(A: SUNMatrix) -> *mut *mut realtype; -} -extern "C" { - pub fn SUNDenseMatrix_Column(A: SUNMatrix, j: sunindextype) -> *mut realtype; -} -extern "C" { - pub fn SUNMatGetID_Dense(A: SUNMatrix) -> SUNMatrix_ID; -} -extern "C" { - pub fn SUNMatClone_Dense(A: SUNMatrix) -> SUNMatrix; -} -extern "C" { - pub fn SUNMatDestroy_Dense(A: SUNMatrix); -} -extern "C" { - pub fn SUNMatZero_Dense(A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatCopy_Dense(A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAdd_Dense(c: realtype, A: SUNMatrix, B: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatScaleAddI_Dense(c: realtype, A: SUNMatrix) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatMatvec_Dense(A: SUNMatrix, x: N_Vector, y: N_Vector) -> ::std::os::raw::c_int; -} -extern "C" { - pub fn SUNMatSpace_Dense( - A: SUNMatrix, - lenrw: *mut ::std::os::raw::c_long, - leniw: *mut ::std::os::raw::c_long, - ) -> ::std::os::raw::c_int; -} -pub type __builtin_va_list = [__va_list_tag; 1usize]; -#[repr(C)] -#[derive(Debug, Copy, Clone)] -pub struct __va_list_tag { - pub gp_offset: ::std::os::raw::c_uint, - pub fp_offset: ::std::os::raw::c_uint, - pub overflow_arg_area: *mut ::std::os::raw::c_void, - pub reg_save_area: *mut ::std::os::raw::c_void, -} -#[test] -fn bindgen_test_layout___va_list_tag() { - assert_eq!( - ::std::mem::size_of::<__va_list_tag>(), - 24usize, - concat!("Size of: ", stringify!(__va_list_tag)) - ); - assert_eq!( - ::std::mem::align_of::<__va_list_tag>(), - 8usize, - concat!("Alignment of ", stringify!(__va_list_tag)) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).gp_offset as *const _ as usize }, - 0usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(gp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).fp_offset as *const _ as usize }, - 4usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(fp_offset) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).overflow_arg_area as *const _ as usize }, - 8usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(overflow_arg_area) - ) - ); - assert_eq!( - unsafe { &(*(::std::ptr::null::<__va_list_tag>())).reg_save_area as *const _ as usize }, - 16usize, - concat!( - "Offset of field: ", - stringify!(__va_list_tag), - "::", - stringify!(reg_save_area) - ) - ); -} diff --git a/cvode-wrap/src/lib.rs b/cvode-wrap/src/lib.rs index e8f3e07..5b63b95 100644 --- a/cvode-wrap/src/lib.rs +++ b/cvode-wrap/src/lib.rs @@ -3,10 +3,9 @@ use std::{convert::TryInto, pin::Pin}; use std::{ffi::c_void, intrinsics::transmute, os::raw::c_int, ptr::NonNull}; -use cvode::SUNMatrix; use cvode_5_sys::{ - cvode::{self, realtype, SUNLinearSolver}, - nvector_serial::N_VGetArrayPointer, + realtype, SUNLinearSolver, SUNMatrix, + N_VGetArrayPointer, }; mod nvector; @@ -17,8 +16,8 @@ pub type Realtype = realtype; #[repr(u32)] #[derive(Debug)] pub enum LinearMultistepMethod { - ADAMS = cvode::CV_ADAMS, - BDF = cvode::CV_BDF, + ADAMS = cvode_5_sys::CV_ADAMS, + BDF = cvode_5_sys::CV_BDF, } #[repr(C)] @@ -117,8 +116,8 @@ macro_rules! wrap { #[repr(u32)] pub enum StepKind { - Normal = cvode::CV_NORMAL, - OneStep = cvode::CV_ONE_STEP, + Normal = cvode_5_sys::CV_NORMAL, + OneStep = cvode_5_sys::CV_ONE_STEP, } #[derive(Debug)] @@ -134,7 +133,7 @@ fn check_non_null(ptr: *mut T, func_id: &'static str) -> Result> { } fn check_flag_is_succes(flag: c_int, func_id: &'static str) -> Result<()> { - if flag == cvode::CV_SUCCESS as i32 { + if flag == cvode_5_sys::CV_SUCCESS as i32 { Ok(()) } else { Err(Error::ErrorCode { flag, func_id }) @@ -169,13 +168,13 @@ impl Solver { ) -> Result { assert_eq!(y0.len(), N); let mem: CvodeMemoryBlockNonNullPtr = { - let mem_maybenull = unsafe { cvode::CVodeCreate(method as c_int) }; + let mem_maybenull = unsafe { cvode_5_sys::CVodeCreate(method as c_int) }; check_non_null(mem_maybenull as *mut CvodeMemoryBlock, "CVodeCreate")?.into() }; let y0 = NVectorSerialHeapAlloced::new_from(y0); let matrix = { let matrix = unsafe { - cvode_5_sys::sunmatrix_dense::SUNDenseMatrix( + cvode_5_sys::SUNDenseMatrix( N.try_into().unwrap(), N.try_into().unwrap(), ) @@ -184,9 +183,9 @@ impl Solver { }; let linsolver = { let linsolver = unsafe { - cvode_5_sys::sunlinsol_dense::SUNDenseLinearSolver( - y0.as_raw() as _, - matrix.as_ptr() as _, + cvode_5_sys::SUNDenseLinearSolver( + y0.as_raw(), + matrix.as_ptr(), ) }; check_non_null(linsolver, "SUNDenseLinearSolver")? @@ -195,46 +194,46 @@ impl Solver { let res = Solver { mem, y0, - sunmatrix: matrix.as_ptr() as _, - linsolver: linsolver.as_ptr() as _, + sunmatrix: matrix.as_ptr(), + linsolver: linsolver.as_ptr(), atol, user_data, }; { let flag = unsafe { - cvode::CVodeInit( + cvode_5_sys::CVodeInit( mem.as_raw(), Some(std::mem::transmute(f)), t0, - res.y0.as_raw() as _, + res.y0.as_raw(), ) }; check_flag_is_succes(flag, "CVodeInit")?; } match &res.atol { &AbsTolerance::Scalar(atol) => { - let flag = unsafe { cvode::CVodeSStolerances(mem.as_raw(), rtol, atol) }; + let flag = unsafe { cvode_5_sys::CVodeSStolerances(mem.as_raw(), rtol, atol) }; check_flag_is_succes(flag, "CVodeSStolerances")?; } AbsTolerance::Vector(atol) => { let flag = - unsafe { cvode::CVodeSVtolerances(mem.as_raw(), rtol, atol.as_raw() as _) }; + unsafe { cvode_5_sys::CVodeSVtolerances(mem.as_raw(), rtol, atol.as_raw()) }; check_flag_is_succes(flag, "CVodeSVtolerances")?; } } { let flag = unsafe { - cvode::CVodeSetLinearSolver( + cvode_5_sys::CVodeSetLinearSolver( mem.as_raw(), - linsolver.as_ptr() as _, - matrix.as_ptr() as _, + linsolver.as_ptr(), + matrix.as_ptr(), ) }; check_flag_is_succes(flag, "CVodeSetLinearSolver")?; } { let flag = unsafe { - cvode::CVodeSetUserData( + cvode_5_sys::CVodeSetUserData( mem.as_raw(), std::mem::transmute(res.user_data.as_ref().get_ref()), ) @@ -251,10 +250,10 @@ impl Solver { ) -> Result<(Realtype, &[Realtype; N])> { let mut tret = 0.; let flag = unsafe { - cvode::CVode( + cvode_5_sys::CVode( self.mem.as_raw(), tout, - self.y0.as_raw() as _, + self.y0.as_raw(), &mut tret, step_kind as c_int, ) @@ -266,9 +265,9 @@ impl Solver { impl Drop for Solver { fn drop(&mut self) { - unsafe { cvode::CVodeFree(&mut self.mem.as_raw()) } - unsafe { cvode::SUNLinSolFree(self.linsolver) }; - unsafe { cvode::SUNMatDestroy(self.sunmatrix) }; + unsafe { cvode_5_sys::CVodeFree(&mut self.mem.as_raw()) } + unsafe { cvode_5_sys::SUNLinSolFree(self.linsolver) }; + unsafe { cvode_5_sys::SUNMatDestroy(self.sunmatrix) }; } } diff --git a/cvode-wrap/src/nvector.rs b/cvode-wrap/src/nvector.rs index 17aafbf..3a7854f 100644 --- a/cvode-wrap/src/nvector.rs +++ b/cvode-wrap/src/nvector.rs @@ -5,25 +5,25 @@ use std::{ ptr::NonNull, }; -use cvode_5_sys::{cvode::realtype, nvector_serial}; +use cvode_5_sys::realtype; #[repr(transparent)] #[derive(Debug)] pub struct NVectorSerial { - inner: nvector_serial::_generic_N_Vector, + inner: cvode_5_sys::_generic_N_Vector, } impl NVectorSerial { - pub unsafe fn as_raw(&self) -> nvector_serial::N_Vector { + pub unsafe fn as_raw(&self) -> cvode_5_sys::N_Vector { std::mem::transmute(&self.inner) } pub fn as_slice(&self) -> &[realtype; SIZE] { - unsafe { transmute(nvector_serial::N_VGetArrayPointer_Serial(self.as_raw())) } + unsafe { transmute(cvode_5_sys::N_VGetArrayPointer_Serial(self.as_raw())) } } pub fn as_slice_mut(&mut self) -> &mut [realtype; SIZE] { - unsafe { transmute(nvector_serial::N_VGetArrayPointer_Serial(self.as_raw())) } + unsafe { transmute(cvode_5_sys::N_VGetArrayPointer_Serial(self.as_raw())) } } } @@ -49,7 +49,7 @@ impl DerefMut for NVectorSerialHeapAlloced { impl NVectorSerialHeapAlloced { pub fn new() -> Self { - let raw_c = unsafe { nvector_serial::N_VNew_Serial(SIZE.try_into().unwrap()) }; + let raw_c = unsafe { cvode_5_sys::N_VNew_Serial(SIZE.try_into().unwrap()) }; Self { inner: NonNull::new(raw_c as *mut NVectorSerial).unwrap(), } @@ -64,6 +64,6 @@ impl NVectorSerialHeapAlloced { impl Drop for NVectorSerialHeapAlloced { fn drop(&mut self) { - unsafe { nvector_serial::N_VDestroy(self.as_raw()) } + unsafe { cvode_5_sys::N_VDestroy(self.as_raw()) } } }