/* automatically generated by rust-bindgen 0.58.1 */ pub const WolframLibraryVersion: u32 = 6; pub const __WORDSIZE: u32 = 64; pub const __DARWIN_ONLY_64_BIT_INO_T: u32 = 0; pub const __DARWIN_ONLY_VERS_1050: u32 = 0; pub const __DARWIN_ONLY_UNIX_CONFORMANCE: u32 = 1; pub const __DARWIN_UNIX03: u32 = 1; pub const __DARWIN_64_BIT_INO_T: u32 = 1; pub const __DARWIN_VERS_1050: u32 = 1; pub const __DARWIN_NON_CANCELABLE: u32 = 0; pub const __DARWIN_SUF_64_BIT_INO_T: &'static [u8; 9usize] = b"$INODE64\0"; pub const __DARWIN_SUF_1050: &'static [u8; 6usize] = b"$1050\0"; pub const __DARWIN_SUF_EXTSN: &'static [u8; 14usize] = b"$DARWIN_EXTSN\0"; pub const __DARWIN_C_ANSI: u32 = 4096; pub const __DARWIN_C_FULL: u32 = 900000; pub const __DARWIN_C_LEVEL: u32 = 900000; pub const __STDC_WANT_LIB_EXT1__: u32 = 1; pub const __DARWIN_NO_LONG_LONG: u32 = 0; pub const _DARWIN_FEATURE_64_BIT_INODE: u32 = 1; pub const _DARWIN_FEATURE_ONLY_UNIX_CONFORMANCE: u32 = 1; pub const _DARWIN_FEATURE_UNIX_CONFORMANCE: u32 = 3; pub const __PTHREAD_SIZE__: u32 = 8176; pub const __PTHREAD_ATTR_SIZE__: u32 = 56; pub const __PTHREAD_MUTEXATTR_SIZE__: u32 = 8; pub const __PTHREAD_MUTEX_SIZE__: u32 = 56; pub const __PTHREAD_CONDATTR_SIZE__: u32 = 8; pub const __PTHREAD_COND_SIZE__: u32 = 40; pub const __PTHREAD_ONCE_SIZE__: u32 = 8; pub const __PTHREAD_RWLOCK_SIZE__: u32 = 192; pub const __PTHREAD_RWLOCKATTR_SIZE__: u32 = 16; pub const INT8_MAX: u32 = 127; pub const INT16_MAX: u32 = 32767; pub const INT32_MAX: u32 = 2147483647; pub const INT64_MAX: u64 = 9223372036854775807; pub const INT8_MIN: i32 = -128; pub const INT16_MIN: i32 = -32768; pub const INT32_MIN: i32 = -2147483648; pub const INT64_MIN: i64 = -9223372036854775808; pub const UINT8_MAX: u32 = 255; pub const UINT16_MAX: u32 = 65535; pub const UINT32_MAX: u32 = 4294967295; pub const UINT64_MAX: i32 = -1; pub const INT_LEAST8_MIN: i32 = -128; pub const INT_LEAST16_MIN: i32 = -32768; pub const INT_LEAST32_MIN: i32 = -2147483648; pub const INT_LEAST64_MIN: i64 = -9223372036854775808; pub const INT_LEAST8_MAX: u32 = 127; pub const INT_LEAST16_MAX: u32 = 32767; pub const INT_LEAST32_MAX: u32 = 2147483647; pub const INT_LEAST64_MAX: u64 = 9223372036854775807; pub const UINT_LEAST8_MAX: u32 = 255; pub const UINT_LEAST16_MAX: u32 = 65535; pub const UINT_LEAST32_MAX: u32 = 4294967295; pub const UINT_LEAST64_MAX: i32 = -1; pub const INT_FAST8_MIN: i32 = -128; pub const INT_FAST16_MIN: i32 = -32768; pub const INT_FAST32_MIN: i32 = -2147483648; pub const INT_FAST64_MIN: i64 = -9223372036854775808; pub const INT_FAST8_MAX: u32 = 127; pub const INT_FAST16_MAX: u32 = 32767; pub const INT_FAST32_MAX: u32 = 2147483647; pub const INT_FAST64_MAX: u64 = 9223372036854775807; pub const UINT_FAST8_MAX: u32 = 255; pub const UINT_FAST16_MAX: u32 = 65535; pub const UINT_FAST32_MAX: u32 = 4294967295; pub const UINT_FAST64_MAX: i32 = -1; pub const INTPTR_MAX: u64 = 9223372036854775807; pub const INTPTR_MIN: i64 = -9223372036854775808; pub const UINTPTR_MAX: i32 = -1; pub const SIZE_MAX: i32 = -1; pub const RSIZE_MAX: i32 = -1; pub const WINT_MIN: i32 = -2147483648; pub const WINT_MAX: u32 = 2147483647; pub const SIG_ATOMIC_MIN: i32 = -2147483648; pub const SIG_ATOMIC_MAX: u32 = 2147483647; pub const True: u32 = 1; pub const False: u32 = 0; pub const MType_Integer: u32 = 2; pub const MType_Real: u32 = 3; pub const MType_Complex: u32 = 4; pub const MType_Undef: u32 = 0; pub const MType_Boolean: u32 = 1; pub const MType_Tensor: u32 = 5; pub const MType_SparseArray: u32 = 6; pub const MType_NumericArray: u32 = 7; pub const MType_Image: u32 = 8; pub const MType_UTF8String: u32 = 9; pub const MType_DataStore: u32 = 10; pub type size_t = ::std::os::raw::c_ulong; pub type wchar_t = ::std::os::raw::c_int; pub type max_align_t = u128; #[doc = " 7.18.1.2 Minimum-width integer types"] pub type int_least8_t = i8; pub type int_least16_t = i16; pub type int_least32_t = i32; pub type int_least64_t = i64; pub type uint_least8_t = u8; pub type uint_least16_t = u16; pub type uint_least32_t = u32; pub type uint_least64_t = u64; #[doc = " 7.18.1.3 Fastest-width integer types"] pub type int_fast8_t = i8; pub type int_fast16_t = i16; pub type int_fast32_t = i32; pub type int_fast64_t = i64; pub type uint_fast8_t = u8; pub type uint_fast16_t = u16; pub type uint_fast32_t = u32; pub type uint_fast64_t = u64; pub type __int8_t = ::std::os::raw::c_schar; pub type __uint8_t = ::std::os::raw::c_uchar; pub type __int16_t = ::std::os::raw::c_short; pub type __uint16_t = ::std::os::raw::c_ushort; pub type __int32_t = ::std::os::raw::c_int; pub type __uint32_t = ::std::os::raw::c_uint; pub type __int64_t = ::std::os::raw::c_longlong; pub type __uint64_t = ::std::os::raw::c_ulonglong; pub type __darwin_intptr_t = ::std::os::raw::c_long; pub type __darwin_natural_t = ::std::os::raw::c_uint; #[doc = " The rune type below is declared to be an ``int'' instead of the more natural"] #[doc = " ``unsigned long'' or ``long''. Two things are happening here. It is not"] #[doc = " unsigned so that EOF (-1) can be naturally assigned to it and used. Also,"] #[doc = " it looks like 10646 will be a 31 bit standard. This means that if your"] #[doc = " ints cannot hold 32 bits, you will be in trouble. The reason an int was"] #[doc = " chosen over a long is that the is*() and to*() routines take ints (says"] #[doc = " ANSI C), but they use __darwin_ct_rune_t instead of int. By changing it"] #[doc = " here, you lose a bit of ANSI conformance, but your programs will still"] #[doc = " work."] #[doc = ""] #[doc = " NOTE: rune_t is not covered by ANSI nor other standards, and should not"] #[doc = " be instantiated outside of lib/libc/locale. Use wchar_t. wchar_t and"] #[doc = " rune_t must be the same type. Also wint_t must be no narrower than"] #[doc = " wchar_t, and should also be able to hold all members of the largest"] #[doc = " character set plus one extra value (WEOF). wint_t must be at least 16 bits."] pub type __darwin_ct_rune_t = ::std::os::raw::c_int; #[doc = " mbstate_t is an opaque object to keep conversion state, during multibyte"] #[doc = " stream conversions. The content must not be referenced by user programs."] #[repr(C)] #[derive(Copy, Clone)] pub union __mbstate_t { pub __mbstate8: [::std::os::raw::c_char; 128usize], #[doc = " for alignment"] pub _mbstateL: ::std::os::raw::c_longlong, } #[test] fn bindgen_test_layout___mbstate_t() { assert_eq!( ::std::mem::size_of::<__mbstate_t>(), 128usize, concat!("Size of: ", stringify!(__mbstate_t)) ); assert_eq!( ::std::mem::align_of::<__mbstate_t>(), 8usize, concat!("Alignment of ", stringify!(__mbstate_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<__mbstate_t>())).__mbstate8 as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(__mbstate_t), "::", stringify!(__mbstate8) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<__mbstate_t>()))._mbstateL as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(__mbstate_t), "::", stringify!(_mbstateL) ) ); } pub type __darwin_mbstate_t = __mbstate_t; pub type __darwin_ptrdiff_t = ::std::os::raw::c_long; pub type __darwin_size_t = ::std::os::raw::c_ulong; pub type __darwin_va_list = __builtin_va_list; pub type __darwin_wchar_t = ::std::os::raw::c_int; pub type __darwin_rune_t = __darwin_wchar_t; pub type __darwin_wint_t = ::std::os::raw::c_int; pub type __darwin_clock_t = ::std::os::raw::c_ulong; pub type __darwin_socklen_t = __uint32_t; pub type __darwin_ssize_t = ::std::os::raw::c_long; pub type __darwin_time_t = ::std::os::raw::c_long; pub type __darwin_blkcnt_t = __int64_t; pub type __darwin_blksize_t = __int32_t; pub type __darwin_dev_t = __int32_t; pub type __darwin_fsblkcnt_t = ::std::os::raw::c_uint; pub type __darwin_fsfilcnt_t = ::std::os::raw::c_uint; pub type __darwin_gid_t = __uint32_t; pub type __darwin_id_t = __uint32_t; pub type __darwin_ino64_t = __uint64_t; pub type __darwin_ino_t = __darwin_ino64_t; pub type __darwin_mach_port_name_t = __darwin_natural_t; pub type __darwin_mach_port_t = __darwin_mach_port_name_t; pub type __darwin_mode_t = __uint16_t; pub type __darwin_off_t = __int64_t; pub type __darwin_pid_t = __int32_t; pub type __darwin_sigset_t = __uint32_t; pub type __darwin_suseconds_t = __int32_t; pub type __darwin_uid_t = __uint32_t; pub type __darwin_useconds_t = __uint32_t; pub type __darwin_uuid_t = [::std::os::raw::c_uchar; 16usize]; pub type __darwin_uuid_string_t = [::std::os::raw::c_char; 37usize]; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct __darwin_pthread_handler_rec { #[doc = " Routine to call"] pub __routine: ::std::option::Option, #[doc = " Argument to pass"] pub __arg: *mut ::std::os::raw::c_void, pub __next: *mut __darwin_pthread_handler_rec, } #[test] fn bindgen_test_layout___darwin_pthread_handler_rec() { assert_eq!( ::std::mem::size_of::<__darwin_pthread_handler_rec>(), 24usize, concat!("Size of: ", stringify!(__darwin_pthread_handler_rec)) ); assert_eq!( ::std::mem::align_of::<__darwin_pthread_handler_rec>(), 8usize, concat!("Alignment of ", stringify!(__darwin_pthread_handler_rec)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<__darwin_pthread_handler_rec>())).__routine as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(__darwin_pthread_handler_rec), "::", stringify!(__routine) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<__darwin_pthread_handler_rec>())).__arg as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(__darwin_pthread_handler_rec), "::", stringify!(__arg) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<__darwin_pthread_handler_rec>())).__next as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(__darwin_pthread_handler_rec), "::", stringify!(__next) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct _opaque_pthread_attr_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 56usize], } #[test] fn bindgen_test_layout__opaque_pthread_attr_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_attr_t>(), 64usize, concat!("Size of: ", stringify!(_opaque_pthread_attr_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_attr_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_attr_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_attr_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_attr_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_attr_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_attr_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct _opaque_pthread_cond_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 40usize], } #[test] fn bindgen_test_layout__opaque_pthread_cond_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_cond_t>(), 48usize, concat!("Size of: ", stringify!(_opaque_pthread_cond_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_cond_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_cond_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_cond_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_cond_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_cond_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_cond_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _opaque_pthread_condattr_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 8usize], } #[test] fn bindgen_test_layout__opaque_pthread_condattr_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_condattr_t>(), 16usize, concat!("Size of: ", stringify!(_opaque_pthread_condattr_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_condattr_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_condattr_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_condattr_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_condattr_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_condattr_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_condattr_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct _opaque_pthread_mutex_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 56usize], } #[test] fn bindgen_test_layout__opaque_pthread_mutex_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_mutex_t>(), 64usize, concat!("Size of: ", stringify!(_opaque_pthread_mutex_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_mutex_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_mutex_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_mutex_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_mutex_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_mutex_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_mutex_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _opaque_pthread_mutexattr_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 8usize], } #[test] fn bindgen_test_layout__opaque_pthread_mutexattr_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_mutexattr_t>(), 16usize, concat!("Size of: ", stringify!(_opaque_pthread_mutexattr_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_mutexattr_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_mutexattr_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_mutexattr_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_mutexattr_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_mutexattr_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_mutexattr_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _opaque_pthread_once_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 8usize], } #[test] fn bindgen_test_layout__opaque_pthread_once_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_once_t>(), 16usize, concat!("Size of: ", stringify!(_opaque_pthread_once_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_once_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_once_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_once_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_once_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_once_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_once_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct _opaque_pthread_rwlock_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 192usize], } #[test] fn bindgen_test_layout__opaque_pthread_rwlock_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_rwlock_t>(), 200usize, concat!("Size of: ", stringify!(_opaque_pthread_rwlock_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_rwlock_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_rwlock_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_rwlock_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_rwlock_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_rwlock_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_rwlock_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _opaque_pthread_rwlockattr_t { pub __sig: ::std::os::raw::c_long, pub __opaque: [::std::os::raw::c_char; 16usize], } #[test] fn bindgen_test_layout__opaque_pthread_rwlockattr_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_rwlockattr_t>(), 24usize, concat!("Size of: ", stringify!(_opaque_pthread_rwlockattr_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_rwlockattr_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_rwlockattr_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_rwlockattr_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_rwlockattr_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_rwlockattr_t>())).__opaque as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_rwlockattr_t), "::", stringify!(__opaque) ) ); } #[repr(C)] #[derive(Copy, Clone)] pub struct _opaque_pthread_t { pub __sig: ::std::os::raw::c_long, pub __cleanup_stack: *mut __darwin_pthread_handler_rec, pub __opaque: [::std::os::raw::c_char; 8176usize], } #[test] fn bindgen_test_layout__opaque_pthread_t() { assert_eq!( ::std::mem::size_of::<_opaque_pthread_t>(), 8192usize, concat!("Size of: ", stringify!(_opaque_pthread_t)) ); assert_eq!( ::std::mem::align_of::<_opaque_pthread_t>(), 8usize, concat!("Alignment of ", stringify!(_opaque_pthread_t)) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_t>())).__sig as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_t), "::", stringify!(__sig) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_t>())).__cleanup_stack as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_t), "::", stringify!(__cleanup_stack) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::<_opaque_pthread_t>())).__opaque as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(_opaque_pthread_t), "::", stringify!(__opaque) ) ); } pub type __darwin_pthread_attr_t = _opaque_pthread_attr_t; pub type __darwin_pthread_cond_t = _opaque_pthread_cond_t; pub type __darwin_pthread_condattr_t = _opaque_pthread_condattr_t; pub type __darwin_pthread_key_t = ::std::os::raw::c_ulong; pub type __darwin_pthread_mutex_t = _opaque_pthread_mutex_t; pub type __darwin_pthread_mutexattr_t = _opaque_pthread_mutexattr_t; pub type __darwin_pthread_once_t = _opaque_pthread_once_t; pub type __darwin_pthread_rwlock_t = _opaque_pthread_rwlock_t; pub type __darwin_pthread_rwlockattr_t = _opaque_pthread_rwlockattr_t; pub type __darwin_pthread_t = *mut _opaque_pthread_t; pub type u_int8_t = ::std::os::raw::c_uchar; pub type u_int16_t = ::std::os::raw::c_ushort; pub type u_int32_t = ::std::os::raw::c_uint; pub type u_int64_t = ::std::os::raw::c_ulonglong; pub type register_t = i64; #[doc = " These types are used for reserving the largest possible size."] pub type user_addr_t = u_int64_t; pub type user_size_t = u_int64_t; pub type user_ssize_t = i64; pub type user_long_t = i64; pub type user_ulong_t = u_int64_t; pub type user_time_t = i64; pub type user_off_t = i64; #[doc = " This defines the size of syscall arguments after copying into the kernel:"] pub type syscall_arg_t = u_int64_t; pub type intmax_t = ::std::os::raw::c_long; pub type uintmax_t = ::std::os::raw::c_ulong; pub type mint = i64; pub type umint = u64; pub type mbool = ::std::os::raw::c_int; pub type mreal = f64; pub type type_t = ::std::os::raw::c_int; pub type errcode_t = ::std::os::raw::c_int; pub type UBIT32 = u32; pub type UBIT64 = u64; #[doc = " Platform specific variants in mcomplex.h"] #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct mcomplex { pub ri: [mreal; 2usize], } #[test] fn bindgen_test_layout_mcomplex() { assert_eq!( ::std::mem::size_of::(), 16usize, concat!("Size of: ", stringify!(mcomplex)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(mcomplex)) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).ri as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(mcomplex), "::", stringify!(ri) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_MNumericArray { _unused: [u8; 0], } #[doc = " Incomplete types"] pub type MTensor = *mut st_MNumericArray; pub type MRawArray = *mut st_MNumericArray; pub type MNumericArray = *mut st_MNumericArray; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct MSparseArray_struct { _unused: [u8; 0], } pub type MSparseArray = *mut MSparseArray_struct; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct IMAGEOBJ_ENTRY { _unused: [u8; 0], } pub type MImage = *mut IMAGEOBJ_ENTRY; #[repr(C)] #[derive(Copy, Clone)] pub union MArgument { pub boolean: *mut mbool, pub integer: *mut mint, pub real: *mut mreal, pub cmplex: *mut mcomplex, pub tensor: *mut MTensor, pub sparse: *mut MSparseArray, pub numeric: *mut MNumericArray, pub image: *mut MImage, pub utf8string: *mut *mut ::std::os::raw::c_char, } #[test] fn bindgen_test_layout_MArgument() { assert_eq!( ::std::mem::size_of::(), 8usize, concat!("Size of: ", stringify!(MArgument)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(MArgument)) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).boolean as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(boolean) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).integer as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(integer) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).real as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(real) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).cmplex as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(cmplex) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).tensor as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(tensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).sparse as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(sparse) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).numeric as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(numeric) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).image as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(image) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).utf8string as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(MArgument), "::", stringify!(utf8string) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct MLink { _unused: [u8; 0], } pub type MLINK = *mut MLink; pub type WSLINK = *mut MLink; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct ml_environment { _unused: [u8; 0], } pub type MLENV = *mut ml_environment; pub type MLEnvironment = MLENV; pub type WSENV = *mut ml_environment; pub type WSEnvironment = WSENV; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_MInputStream { _unused: [u8; 0], } pub type MInputStream = *mut st_MInputStream; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_MOutputStream { _unused: [u8; 0], } pub type MOutputStream = *mut st_MOutputStream; pub const LIBRARY_NO_ERROR: ::std::os::raw::c_uint = 0; pub const LIBRARY_TYPE_ERROR: ::std::os::raw::c_uint = 1; pub const LIBRARY_RANK_ERROR: ::std::os::raw::c_uint = 2; pub const LIBRARY_DIMENSION_ERROR: ::std::os::raw::c_uint = 3; pub const LIBRARY_NUMERICAL_ERROR: ::std::os::raw::c_uint = 4; pub const LIBRARY_MEMORY_ERROR: ::std::os::raw::c_uint = 5; pub const LIBRARY_FUNCTION_ERROR: ::std::os::raw::c_uint = 6; pub const LIBRARY_VERSION_ERROR: ::std::os::raw::c_uint = 7; #[doc = " Error types for LibraryErrorHandler"] pub type _bindgen_ty_1 = ::std::os::raw::c_uint; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_DataStore { _unused: [u8; 0], } pub type DataStore = *mut st_DataStore; pub type WolframLibraryData = *mut st_WolframLibraryData; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframLibraryData { pub UTF8String_disown: ::std::option::Option, pub MTensor_new: ::std::option::Option< unsafe extern "C" fn( arg1: mint, arg2: mint, arg3: *const mint, arg4: *mut MTensor, ) -> ::std::os::raw::c_int, >, pub MTensor_free: ::std::option::Option, pub MTensor_clone: ::std::option::Option< unsafe extern "C" fn(arg1: MTensor, arg2: *mut MTensor) -> ::std::os::raw::c_int, >, pub MTensor_shareCount: ::std::option::Option mint>, pub MTensor_disown: ::std::option::Option, pub MTensor_disownAll: ::std::option::Option, pub MTensor_setInteger: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: mint, ) -> ::std::os::raw::c_int, >, pub MTensor_setReal: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: mreal, ) -> ::std::os::raw::c_int, >, pub MTensor_setComplex: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: mcomplex, ) -> ::std::os::raw::c_int, >, pub MTensor_setMTensor: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: MTensor, arg3: *mut mint, arg4: mint, ) -> ::std::os::raw::c_int, >, pub MTensor_getInteger: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: *mut mint, ) -> ::std::os::raw::c_int, >, pub MTensor_getReal: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: *mut mreal, ) -> ::std::os::raw::c_int, >, pub MTensor_getComplex: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: *mut mcomplex, ) -> ::std::os::raw::c_int, >, pub MTensor_getMTensor: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: *mut mint, arg3: mint, arg4: *mut MTensor, ) -> ::std::os::raw::c_int, >, pub MTensor_getRank: ::std::option::Option mint>, pub MTensor_getDimensions: ::std::option::Option *const mint>, pub MTensor_getType: ::std::option::Option mint>, pub MTensor_getFlattenedLength: ::std::option::Option mint>, pub MTensor_getIntegerData: ::std::option::Option *mut mint>, pub MTensor_getRealData: ::std::option::Option *mut mreal>, pub MTensor_getComplexData: ::std::option::Option *mut mcomplex>, pub Message: ::std::option::Option, pub AbortQ: ::std::option::Option mint>, pub getWSLINK: ::std::option::Option WSLINK>, pub processWSLINK: ::std::option::Option< unsafe extern "C" fn(arg1: WSLINK) -> ::std::os::raw::c_int, >, pub evaluateExpression: ::std::option::Option< unsafe extern "C" fn( arg1: WolframLibraryData, arg2: *mut ::std::os::raw::c_char, arg3: ::std::os::raw::c_int, arg4: mint, arg5: *mut ::std::os::raw::c_void, ) -> ::std::os::raw::c_int, >, pub runtimeData: *mut st_WolframRuntimeData, pub compileLibraryFunctions: *mut st_WolframCompileLibrary_Functions, pub VersionNumber: mint, #[doc = " Added in WolframLibraryVersion 2"] pub registerInputStreamMethod: ::std::option::Option< unsafe extern "C" fn( name: *const ::std::os::raw::c_char, ctor: ::std::option::Option< unsafe extern "C" fn( arg1: MInputStream, msgHead: *const ::std::os::raw::c_char, optionsIn: *mut ::std::os::raw::c_void, ), >, handlerTest: ::std::option::Option< unsafe extern "C" fn( arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_char, ) -> mbool, >, methodData: *mut ::std::os::raw::c_void, destroyMethod: ::std::option::Option< unsafe extern "C" fn(methodData: *mut ::std::os::raw::c_void), >, ) -> mbool, >, pub unregisterInputStreamMethod: ::std::option::Option< unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> mbool, >, pub registerOutputStreamMethod: ::std::option::Option< unsafe extern "C" fn( name: *const ::std::os::raw::c_char, ctor: ::std::option::Option< unsafe extern "C" fn( arg1: MOutputStream, msgHead: *const ::std::os::raw::c_char, optionsIn: *mut ::std::os::raw::c_void, appendMode: mbool, ), >, handlerTest: ::std::option::Option< unsafe extern "C" fn( arg1: *mut ::std::os::raw::c_void, arg2: *mut ::std::os::raw::c_char, ) -> mbool, >, methodData: *mut ::std::os::raw::c_void, destroyMethod: ::std::option::Option< unsafe extern "C" fn(methodData: *mut ::std::os::raw::c_void), >, ) -> mbool, >, pub unregisterOutputStreamMethod: ::std::option::Option< unsafe extern "C" fn(name: *const ::std::os::raw::c_char) -> mbool, >, pub ioLibraryFunctions: *mut st_WolframIOLibrary_Functions, pub getWSLINKEnvironment: ::std::option::Option WSENV>, pub sparseLibraryFunctions: *mut st_WolframSparseLibrary_Functions, pub imageLibraryFunctions: *mut st_WolframImageLibrary_Functions, pub registerLibraryExpressionManager: ::std::option::Option< unsafe extern "C" fn( mname: *const ::std::os::raw::c_char, mfun: ::std::option::Option< unsafe extern "C" fn(arg1: WolframLibraryData, arg2: mbool, arg3: mint), >, ) -> ::std::os::raw::c_int, >, pub unregisterLibraryExpressionManager: ::std::option::Option< unsafe extern "C" fn( mname: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int, >, pub releaseManagedLibraryExpression: ::std::option::Option< unsafe extern "C" fn( mname: *const ::std::os::raw::c_char, id: mint, ) -> ::std::os::raw::c_int, >, pub registerLibraryCallbackManager: ::std::option::Option< unsafe extern "C" fn( name: *const ::std::os::raw::c_char, mfun: ::std::option::Option< unsafe extern "C" fn( arg1: WolframLibraryData, arg2: mint, arg3: MTensor, ) -> mbool, >, ) -> ::std::os::raw::c_int, >, pub unregisterLibraryCallbackManager: ::std::option::Option< unsafe extern "C" fn( name: *const ::std::os::raw::c_char, ) -> ::std::os::raw::c_int, >, pub callLibraryCallbackFunction: ::std::option::Option< unsafe extern "C" fn( id: mint, ArgC: mint, Args: *mut MArgument, Res: MArgument, ) -> ::std::os::raw::c_int, >, pub releaseLibraryCallbackFunction: ::std::option::Option ::std::os::raw::c_int>, #[doc = " security callback"] pub validatePath: ::std::option::Option< unsafe extern "C" fn( path: *mut ::std::os::raw::c_char, type_: ::std::os::raw::c_char, ) -> mbool, >, pub protectedModeQ: ::std::option::Option mbool>, pub rawarrayLibraryFunctions: *mut st_WolframRawArrayLibrary_Functions, pub numericarrayLibraryFunctions: *mut st_WolframNumericArrayLibrary_Functions, #[doc = "Sets the value ParallelThreadNumber and returns the old value, or the input if invalid."] #[doc = "The old value should be stored in a local variable."] #[doc = "The old value must be restored using restoreParallelThreadNumber"] #[doc = "before the setting routine exits."] pub setParallelThreadNumber: ::std::option::Option< unsafe extern "C" fn(arg1: ::std::os::raw::c_int) -> ::std::os::raw::c_int, >, pub restoreParallelThreadNumber: ::std::option::Option, pub getParallelThreadNumber: ::std::option::Option ::std::os::raw::c_int>, } #[test] fn bindgen_test_layout_st_WolframLibraryData() { assert_eq!( ::std::mem::size_of::(), 416usize, concat!("Size of: ", stringify!(st_WolframLibraryData)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(st_WolframLibraryData)) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).UTF8String_disown as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(UTF8String_disown) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_new as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_new) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_free as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_free) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_clone as *const _ as usize }, 24usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_clone) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_shareCount as *const _ as usize }, 32usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_shareCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_disown as *const _ as usize }, 40usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_disown) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_disownAll as *const _ as usize }, 48usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_disownAll) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_setInteger as *const _ as usize }, 56usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_setInteger) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_setReal as *const _ as usize }, 64usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_setReal) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_setComplex as *const _ as usize }, 72usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_setComplex) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_setMTensor as *const _ as usize }, 80usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_setMTensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getInteger as *const _ as usize }, 88usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getInteger) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getReal as *const _ as usize }, 96usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getReal) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getComplex as *const _ as usize }, 104usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getComplex) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getMTensor as *const _ as usize }, 112usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getMTensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getRank as *const _ as usize }, 120usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getRank) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getDimensions as *const _ as usize }, 128usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getDimensions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getType as *const _ as usize }, 136usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getType) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getFlattenedLength as *const _ as usize }, 144usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getFlattenedLength) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getIntegerData as *const _ as usize }, 152usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getIntegerData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getRealData as *const _ as usize }, 160usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getRealData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MTensor_getComplexData as *const _ as usize }, 168usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(MTensor_getComplexData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).Message as *const _ as usize }, 176usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(Message) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).AbortQ as *const _ as usize }, 184usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(AbortQ) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).getWSLINK as *const _ as usize }, 192usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(getWSLINK) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).processWSLINK as *const _ as usize }, 200usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(processWSLINK) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).evaluateExpression as *const _ as usize }, 208usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(evaluateExpression) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).runtimeData as *const _ as usize }, 216usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(runtimeData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).compileLibraryFunctions as *const _ as usize }, 224usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(compileLibraryFunctions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).VersionNumber as *const _ as usize }, 232usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(VersionNumber) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).registerInputStreamMethod as *const _ as usize }, 240usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(registerInputStreamMethod) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).unregisterInputStreamMethod as *const _ as usize }, 248usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(unregisterInputStreamMethod) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).registerOutputStreamMethod as *const _ as usize }, 256usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(registerOutputStreamMethod) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).unregisterOutputStreamMethod as *const _ as usize }, 264usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(unregisterOutputStreamMethod) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).ioLibraryFunctions as *const _ as usize }, 272usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(ioLibraryFunctions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).getWSLINKEnvironment as *const _ as usize }, 280usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(getWSLINKEnvironment) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).sparseLibraryFunctions as *const _ as usize }, 288usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(sparseLibraryFunctions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).imageLibraryFunctions as *const _ as usize }, 296usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(imageLibraryFunctions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .registerLibraryExpressionManager as *const _ as usize }, 304usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(registerLibraryExpressionManager) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .unregisterLibraryExpressionManager as *const _ as usize }, 312usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(unregisterLibraryExpressionManager) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .releaseManagedLibraryExpression as *const _ as usize }, 320usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(releaseManagedLibraryExpression) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .registerLibraryCallbackManager as *const _ as usize }, 328usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(registerLibraryCallbackManager) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .unregisterLibraryCallbackManager as *const _ as usize }, 336usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(unregisterLibraryCallbackManager) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).callLibraryCallbackFunction as *const _ as usize }, 344usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(callLibraryCallbackFunction) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .releaseLibraryCallbackFunction as *const _ as usize }, 352usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(releaseLibraryCallbackFunction) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).validatePath as *const _ as usize }, 360usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(validatePath) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).protectedModeQ as *const _ as usize }, 368usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(protectedModeQ) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).rawarrayLibraryFunctions as *const _ as usize }, 376usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(rawarrayLibraryFunctions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).numericarrayLibraryFunctions as *const _ as usize }, 384usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(numericarrayLibraryFunctions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).setParallelThreadNumber as *const _ as usize }, 392usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(setParallelThreadNumber) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).restoreParallelThreadNumber as *const _ as usize }, 400usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(restoreParallelThreadNumber) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).getParallelThreadNumber as *const _ as usize }, 408usize, concat!( "Offset of field: ", stringify!(st_WolframLibraryData), "::", stringify!(getParallelThreadNumber) ) ); } pub mod MNumericArray_Data_Type { pub type Type = ::std::os::raw::c_uint; pub const MNumericArray_Type_Undef: Type = 0; pub const MNumericArray_Type_Bit8: Type = 1; pub const MNumericArray_Type_UBit8: Type = 2; pub const MNumericArray_Type_Bit16: Type = 3; pub const MNumericArray_Type_UBit16: Type = 4; pub const MNumericArray_Type_Bit32: Type = 5; pub const MNumericArray_Type_UBit32: Type = 6; pub const MNumericArray_Type_Bit64: Type = 7; pub const MNumericArray_Type_UBit64: Type = 8; pub const MNumericArray_Type_Real32: Type = 9; pub const MNumericArray_Type_Real64: Type = 10; pub const MNumericArray_Type_Complex_Real32: Type = 11; pub const MNumericArray_Type_Complex_Real64: Type = 12; pub const MNumericArray_Type_Real16: Type = 13; pub const MNumericArray_Type_Complex_Real16: Type = 14; } pub use self::MNumericArray_Data_Type::Type as numericarray_data_t; pub mod MNumericArray_Convert_Method { pub type Type = ::std::os::raw::c_uint; pub const MNumericArray_Convert_Check: Type = 1; pub const MNumericArray_Convert_Clip_Check: Type = 2; pub const MNumericArray_Convert_Coerce: Type = 3; pub const MNumericArray_Convert_Clip_Coerce: Type = 4; pub const MNumericArray_Convert_Round: Type = 5; pub const MNumericArray_Convert_Clip_Round: Type = 6; pub const MNumericArray_Convert_Scale: Type = 7; pub const MNumericArray_Convert_Clip_Scale: Type = 8; } pub use self::MNumericArray_Convert_Method::Type as numericarray_convert_method_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframNumericArrayLibrary_Functions { pub MNumericArray_new: ::std::option::Option< unsafe extern "C" fn( arg1: numericarray_data_t, arg2: mint, arg3: *const mint, arg4: *mut MNumericArray, ) -> errcode_t, >, pub MNumericArray_free: ::std::option::Option, pub MNumericArray_clone: ::std::option::Option< unsafe extern "C" fn(arg1: MNumericArray, arg2: *mut MNumericArray) -> errcode_t, >, pub MNumericArray_disown: ::std::option::Option, pub MNumericArray_disownAll: ::std::option::Option, pub MNumericArray_shareCount: ::std::option::Option mint>, pub MNumericArray_getType: ::std::option::Option< unsafe extern "C" fn(arg1: MNumericArray) -> numericarray_data_t, >, pub MNumericArray_getRank: ::std::option::Option mint>, pub MNumericArray_getDimensions: ::std::option::Option *const mint>, pub MNumericArray_getFlattenedLength: ::std::option::Option mint>, pub MNumericArray_getData: ::std::option::Option< unsafe extern "C" fn(arg1: MNumericArray) -> *mut ::std::os::raw::c_void, >, pub MNumericArray_convertType: ::std::option::Option< unsafe extern "C" fn( arg1: *mut MNumericArray, arg2: MNumericArray, arg3: numericarray_data_t, arg4: numericarray_convert_method_t, arg5: mreal, ) -> errcode_t, >, } #[test] fn bindgen_test_layout_st_WolframNumericArrayLibrary_Functions() { assert_eq!( ::std::mem::size_of::(), 96usize, concat!( "Size of: ", stringify!(st_WolframNumericArrayLibrary_Functions) ) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(st_WolframNumericArrayLibrary_Functions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_new as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_new) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_free as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_free) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_clone as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_clone) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_disown as *const _ as usize }, 24usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_disown) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_disownAll as *const _ as usize }, 32usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_disownAll) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_shareCount as *const _ as usize }, 40usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_shareCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_getType as *const _ as usize }, 48usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_getType) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_getRank as *const _ as usize }, 56usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_getRank) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_getDimensions as *const _ as usize }, 64usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_getDimensions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_getFlattenedLength as *const _ as usize }, 72usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_getFlattenedLength) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_getData as *const _ as usize }, 80usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_getData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MNumericArray_convertType as *const _ as usize }, 88usize, concat!( "Offset of field: ", stringify!(st_WolframNumericArrayLibrary_Functions), "::", stringify!(MNumericArray_convertType) ) ); } pub type WolframNumericArrayLibrary_Functions = *mut st_WolframNumericArrayLibrary_Functions; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct DataStoreNode_t { _unused: [u8; 0], } pub type DataStoreNode = *mut DataStoreNode_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframIOLibrary_Functions { pub createAsynchronousTaskWithoutThread: ::std::option::Option mint>, pub createAsynchronousTaskWithThread: ::std::option::Option< unsafe extern "C" fn( asyncRunner: ::std::option::Option< unsafe extern "C" fn( asyncTaskID: mint, initData: *mut ::std::os::raw::c_void, ), >, initData: *mut ::std::os::raw::c_void, ) -> mint, >, pub raiseAsyncEvent: ::std::option::Option< unsafe extern "C" fn( asyncTaskID: mint, eventType: *mut ::std::os::raw::c_char, arg1: DataStore, ), >, pub asynchronousTaskAliveQ: ::std::option::Option mbool>, pub asynchronousTaskStartedQ: ::std::option::Option mbool>, pub createDataStore: ::std::option::Option DataStore>, pub DataStore_addInteger: ::std::option::Option, pub DataStore_addReal: ::std::option::Option, pub DataStore_addComplex: ::std::option::Option, pub DataStore_addString: ::std::option::Option< unsafe extern "C" fn(arg1: DataStore, arg2: *mut ::std::os::raw::c_char), >, pub DataStore_addMTensor: ::std::option::Option, pub DataStore_addMRawArray: ::std::option::Option, pub DataStore_addMImage: ::std::option::Option, pub DataStore_addDataStore: ::std::option::Option, pub DataStore_addNamedInteger: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: mint, ), >, pub DataStore_addNamedReal: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: mreal, ), >, pub DataStore_addNamedComplex: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: mcomplex, ), >, pub DataStore_addNamedString: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: *mut ::std::os::raw::c_char, ), >, pub DataStore_addNamedMTensor: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: MTensor, ), >, pub DataStore_addNamedMRawArray: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: MRawArray, ), >, pub DataStore_addNamedMImage: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: MImage, ), >, pub DataStore_addNamedDataStore: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: DataStore, ), >, pub removeAsynchronousTask: ::std::option::Option mint>, pub deleteDataStore: ::std::option::Option, pub copyDataStore: ::std::option::Option DataStore>, pub DataStore_getLength: ::std::option::Option mint>, pub DataStore_getFirstNode: ::std::option::Option DataStoreNode>, pub DataStore_getLastNode: ::std::option::Option DataStoreNode>, pub DataStoreNode_getNextNode: ::std::option::Option DataStoreNode>, pub DataStoreNode_getDataType: ::std::option::Option type_t>, pub DataStoreNode_getData: ::std::option::Option< unsafe extern "C" fn(arg1: DataStoreNode, arg2: *mut MArgument) -> errcode_t, >, pub DataStoreNode_getName: ::std::option::Option< unsafe extern "C" fn( arg1: DataStoreNode, arg2: *mut *mut ::std::os::raw::c_char, ) -> errcode_t, >, pub DataStore_addBoolean: ::std::option::Option, pub DataStore_addNamedBoolean: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: mbool, ), >, pub DataStore_addMNumericArray: ::std::option::Option, pub DataStore_addNamedMNumericArray: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: MNumericArray, ), >, pub DataStore_addMSparseArray: ::std::option::Option, pub DataStore_addNamedMSparseArray: ::std::option::Option< unsafe extern "C" fn( arg1: DataStore, arg2: *mut ::std::os::raw::c_char, arg3: MSparseArray, ), >, } #[test] fn bindgen_test_layout_st_WolframIOLibrary_Functions() { assert_eq!( ::std::mem::size_of::(), 304usize, concat!("Size of: ", stringify!(st_WolframIOLibrary_Functions)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(st_WolframIOLibrary_Functions)) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .createAsynchronousTaskWithoutThread as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(createAsynchronousTaskWithoutThread) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .createAsynchronousTaskWithThread as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(createAsynchronousTaskWithThread) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).raiseAsyncEvent as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(raiseAsyncEvent) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .asynchronousTaskAliveQ as *const _ as usize }, 24usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(asynchronousTaskAliveQ) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .asynchronousTaskStartedQ as *const _ as usize }, 32usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(asynchronousTaskStartedQ) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).createDataStore as *const _ as usize }, 40usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(createDataStore) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addInteger as *const _ as usize }, 48usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addInteger) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addReal as *const _ as usize }, 56usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addReal) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addComplex as *const _ as usize }, 64usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addComplex) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addString as *const _ as usize }, 72usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addString) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addMTensor as *const _ as usize }, 80usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addMTensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addMRawArray as *const _ as usize }, 88usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addMRawArray) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addMImage as *const _ as usize }, 96usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addMImage) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addDataStore as *const _ as usize }, 104usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addDataStore) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedInteger as *const _ as usize }, 112usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedInteger) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedReal as *const _ as usize }, 120usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedReal) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedComplex as *const _ as usize }, 128usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedComplex) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedString as *const _ as usize }, 136usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedString) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedMTensor as *const _ as usize }, 144usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedMTensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedMRawArray as *const _ as usize }, 152usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedMRawArray) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedMImage as *const _ as usize }, 160usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedMImage) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedDataStore as *const _ as usize }, 168usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedDataStore) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .removeAsynchronousTask as *const _ as usize }, 176usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(removeAsynchronousTask) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).deleteDataStore as *const _ as usize }, 184usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(deleteDataStore) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).copyDataStore as *const _ as usize }, 192usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(copyDataStore) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_getLength as *const _ as usize }, 200usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_getLength) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_getFirstNode as *const _ as usize }, 208usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_getFirstNode) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_getLastNode as *const _ as usize }, 216usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_getLastNode) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStoreNode_getNextNode as *const _ as usize }, 224usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStoreNode_getNextNode) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStoreNode_getDataType as *const _ as usize }, 232usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStoreNode_getDataType) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStoreNode_getData as *const _ as usize }, 240usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStoreNode_getData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStoreNode_getName as *const _ as usize }, 248usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStoreNode_getName) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).DataStore_addBoolean as *const _ as usize }, 256usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addBoolean) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedBoolean as *const _ as usize }, 264usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedBoolean) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addMNumericArray as *const _ as usize }, 272usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addMNumericArray) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedMNumericArray as *const _ as usize }, 280usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedMNumericArray) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addMSparseArray as *const _ as usize }, 288usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addMSparseArray) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .DataStore_addNamedMSparseArray as *const _ as usize }, 296usize, concat!( "Offset of field: ", stringify!(st_WolframIOLibrary_Functions), "::", stringify!(DataStore_addNamedMSparseArray) ) ); } pub type WolframIOLibrary_Functions = *mut st_WolframIOLibrary_Functions; pub type raw_t_bit = ::std::os::raw::c_schar; pub type raw_t_ubit8 = ::std::os::raw::c_uchar; pub type raw_t_ubit16 = ::std::os::raw::c_ushort; pub type raw_t_real32 = f32; pub type raw_t_real64 = f64; pub mod MImage_Data_Type { pub type Type = ::std::os::raw::c_int; pub const MImage_Type_Undef: Type = -1; pub const MImage_Type_Bit: Type = 0; pub const MImage_Type_Bit8: Type = 1; pub const MImage_Type_Bit16: Type = 2; pub const MImage_Type_Real32: Type = 3; pub const MImage_Type_Real: Type = 4; } pub use self::MImage_Data_Type::Type as imagedata_t; pub mod MImage_CS_Type { pub type Type = ::std::os::raw::c_int; pub const MImage_CS_Undef: Type = -1; pub const MImage_CS_Gray: Type = 0; pub const MImage_CS_RGB: Type = 1; pub const MImage_CS_HSB: Type = 2; pub const MImage_CS_CMYK: Type = 3; pub const MImage_CS_XYZ: Type = 4; pub const MImage_CS_LUV: Type = 5; pub const MImage_CS_LAB: Type = 6; pub const MImage_CS_LCH: Type = 7; pub const MImage_CS_Automatic: Type = 8; } pub use self::MImage_CS_Type::Type as colorspace_t; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframImageLibrary_Functions { #[doc = " width"] pub MImage_new2D: ::std::option::Option< unsafe extern "C" fn( arg1: mint, arg2: mint, arg3: mint, arg4: imagedata_t, arg5: colorspace_t, arg6: mbool, arg7: *mut MImage, ) -> ::std::os::raw::c_int, >, #[doc = " slices"] pub MImage_new3D: ::std::option::Option< unsafe extern "C" fn( arg1: mint, arg2: mint, arg3: mint, arg4: mint, arg5: imagedata_t, arg6: colorspace_t, arg7: mbool, arg8: *mut MImage, ) -> ::std::os::raw::c_int, >, pub MImage_clone: ::std::option::Option< unsafe extern "C" fn(arg1: MImage, arg2: *mut MImage) -> ::std::os::raw::c_int, >, pub MImage_free: ::std::option::Option, pub MImage_disown: ::std::option::Option, pub MImage_disownAll: ::std::option::Option, pub MImage_shareCount: ::std::option::Option mint>, pub MImage_getDataType: ::std::option::Option imagedata_t>, pub MImage_getRowCount: ::std::option::Option mint>, pub MImage_getColumnCount: ::std::option::Option mint>, pub MImage_getSliceCount: ::std::option::Option mint>, pub MImage_getRank: ::std::option::Option mint>, pub MImage_getChannels: ::std::option::Option mint>, pub MImage_alphaChannelQ: ::std::option::Option mbool>, pub MImage_interleavedQ: ::std::option::Option mbool>, pub MImage_getColorSpace: ::std::option::Option colorspace_t>, pub MImage_getFlattenedLength: ::std::option::Option mint>, #[doc = " image"] pub MImage_getBit: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: *mut raw_t_bit, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_getByte: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: *mut raw_t_ubit8, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_getBit16: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: *mut raw_t_ubit16, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_getReal32: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: *mut raw_t_real32, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_getReal: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: *mut raw_t_real64, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_setBit: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: raw_t_bit, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_setByte: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: raw_t_ubit8, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_setBit16: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: raw_t_ubit16, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_setReal32: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: raw_t_real32, ) -> ::std::os::raw::c_int, >, #[doc = " image"] pub MImage_setReal: ::std::option::Option< unsafe extern "C" fn( arg1: MImage, arg2: *mut mint, arg3: mint, arg4: raw_t_real64, ) -> ::std::os::raw::c_int, >, pub MImage_getRawData: ::std::option::Option< unsafe extern "C" fn(arg1: MImage) -> *mut ::std::os::raw::c_void, >, pub MImage_getBitData: ::std::option::Option *mut raw_t_bit>, pub MImage_getByteData: ::std::option::Option *mut raw_t_ubit8>, pub MImage_getBit16Data: ::std::option::Option *mut raw_t_ubit16>, pub MImage_getReal32Data: ::std::option::Option *mut raw_t_real32>, pub MImage_getRealData: ::std::option::Option *mut raw_t_real64>, #[doc = " type"] pub MImage_convertType: ::std::option::Option< unsafe extern "C" fn(arg1: MImage, arg2: imagedata_t, arg3: mbool) -> MImage, >, } #[test] fn bindgen_test_layout_st_WolframImageLibrary_Functions() { assert_eq!( ::std::mem::size_of::(), 272usize, concat!("Size of: ", stringify!(st_WolframImageLibrary_Functions)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(st_WolframImageLibrary_Functions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_new2D as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_new2D) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_new3D as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_new3D) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_clone as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_clone) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_free as *const _ as usize }, 24usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_free) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_disown as *const _ as usize }, 32usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_disown) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_disownAll as *const _ as usize }, 40usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_disownAll) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_shareCount as *const _ as usize }, 48usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_shareCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getDataType as *const _ as usize }, 56usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getDataType) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getRowCount as *const _ as usize }, 64usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getRowCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getColumnCount as *const _ as usize }, 72usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getColumnCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getSliceCount as *const _ as usize }, 80usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getSliceCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getRank as *const _ as usize }, 88usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getRank) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getChannels as *const _ as usize }, 96usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getChannels) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_alphaChannelQ as *const _ as usize }, 104usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_alphaChannelQ) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_interleavedQ as *const _ as usize }, 112usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_interleavedQ) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getColorSpace as *const _ as usize }, 120usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getColorSpace) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getFlattenedLength as *const _ as usize }, 128usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getFlattenedLength) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getBit as *const _ as usize }, 136usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getBit) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getByte as *const _ as usize }, 144usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getByte) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getBit16 as *const _ as usize }, 152usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getBit16) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getReal32 as *const _ as usize }, 160usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getReal32) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getReal as *const _ as usize }, 168usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getReal) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_setBit as *const _ as usize }, 176usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_setBit) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_setByte as *const _ as usize }, 184usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_setByte) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_setBit16 as *const _ as usize }, 192usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_setBit16) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_setReal32 as *const _ as usize }, 200usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_setReal32) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_setReal as *const _ as usize }, 208usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_setReal) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getRawData as *const _ as usize }, 216usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getRawData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())).MImage_getBitData as *const _ as usize }, 224usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getBitData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getByteData as *const _ as usize }, 232usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getByteData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getBit16Data as *const _ as usize }, 240usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getBit16Data) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getReal32Data as *const _ as usize }, 248usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getReal32Data) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_getRealData as *const _ as usize }, 256usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_getRealData) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MImage_convertType as *const _ as usize }, 264usize, concat!( "Offset of field: ", stringify!(st_WolframImageLibrary_Functions), "::", stringify!(MImage_convertType) ) ); } pub type WolframImageLibrary_Functions = *mut st_WolframImageLibrary_Functions; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframSparseLibrary_Functions { pub MSparseArray_clone: ::std::option::Option< unsafe extern "C" fn( arg1: MSparseArray, arg2: *mut MSparseArray, ) -> ::std::os::raw::c_int, >, pub MSparseArray_free: ::std::option::Option, pub MSparseArray_disown: ::std::option::Option, pub MSparseArray_disownAll: ::std::option::Option, pub MSparseArray_shareCount: ::std::option::Option mint>, pub MSparseArray_getRank: ::std::option::Option mint>, pub MSparseArray_getDimensions: ::std::option::Option *const mint>, pub MSparseArray_getImplicitValue: ::std::option::Option *mut MTensor>, pub MSparseArray_getExplicitValues: ::std::option::Option *mut MTensor>, pub MSparseArray_getRowPointers: ::std::option::Option *mut MTensor>, pub MSparseArray_getColumnIndices: ::std::option::Option *mut MTensor>, pub MSparseArray_getExplicitPositions: ::std::option::Option< unsafe extern "C" fn( arg1: MSparseArray, arg2: *mut MTensor, ) -> ::std::os::raw::c_int, >, pub MSparseArray_resetImplicitValue: ::std::option::Option< unsafe extern "C" fn( arg1: MSparseArray, arg2: MTensor, arg3: *mut MSparseArray, ) -> ::std::os::raw::c_int, >, pub MSparseArray_toMTensor: ::std::option::Option< unsafe extern "C" fn( arg1: MSparseArray, arg2: *mut MTensor, ) -> ::std::os::raw::c_int, >, pub MSparseArray_fromMTensor: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: MTensor, arg3: *mut MSparseArray, ) -> ::std::os::raw::c_int, >, pub MSparseArray_fromExplicitPositions: ::std::option::Option< unsafe extern "C" fn( arg1: MTensor, arg2: MTensor, arg3: MTensor, arg4: MTensor, arg5: *mut MSparseArray, ) -> ::std::os::raw::c_int, >, } #[test] fn bindgen_test_layout_st_WolframSparseLibrary_Functions() { assert_eq!( ::std::mem::size_of::(), 128usize, concat!("Size of: ", stringify!(st_WolframSparseLibrary_Functions)) ); assert_eq!( ::std::mem::align_of::(), 8usize, concat!( "Alignment of ", stringify!(st_WolframSparseLibrary_Functions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_clone as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_clone) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_free as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_free) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_disown as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_disown) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_disownAll as *const _ as usize }, 24usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_disownAll) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_shareCount as *const _ as usize }, 32usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_shareCount) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getRank as *const _ as usize }, 40usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getRank) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getDimensions as *const _ as usize }, 48usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getDimensions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getImplicitValue as *const _ as usize }, 56usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getImplicitValue) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getExplicitValues as *const _ as usize }, 64usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getExplicitValues) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getRowPointers as *const _ as usize }, 72usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getRowPointers) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getColumnIndices as *const _ as usize }, 80usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getColumnIndices) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_getExplicitPositions as *const _ as usize }, 88usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_getExplicitPositions) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_resetImplicitValue as *const _ as usize }, 96usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_resetImplicitValue) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_toMTensor as *const _ as usize }, 104usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_toMTensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_fromMTensor as *const _ as usize }, 112usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_fromMTensor) ) ); assert_eq!( unsafe { &(*(::std::ptr::null::())) .MSparseArray_fromExplicitPositions as *const _ as usize }, 120usize, concat!( "Offset of field: ", stringify!(st_WolframSparseLibrary_Functions), "::", stringify!(MSparseArray_fromExplicitPositions) ) ); } pub type WolframSparseLibrary_Functions = *mut st_WolframSparseLibrary_Functions; 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) ) ); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframRuntimeData { pub _address: u8, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframCompileLibrary_Functions { pub _address: u8, } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct st_WolframRawArrayLibrary_Functions { pub _address: u8, }